Для соединения по tcp использую библиотеку synapse. Подключение происходит через proxy. Иногда случается, что попытка соединения происходит очень долго, больше 5, а бывало и больше 20 минут. Timeout везде где можно установлен. TBlockSocket.Connect обрывается по таймауту как часики. А вот TBlockSocket.SSLDoConnect напрочь игнорирует его...
TTCPBlockSocket *tcp;
tcp = new TTCPBlockSocket;
tcp->SetTimeout(8000);
tcp->SocksType = ST_Socks5;
tcp->SocksIP = ProxyHost;
tcp->SocksPort = ProxyPort;
tcp->SocksUsername = ProxyLogin;
tcp->SocksPassword = ProxyPass;
tcp->SocksTimeout = 8000;
tcp->CloseSocket(); // Закрывыем сокс
tcp->SSLDoShutdown(); // закрываем ssl
tcp->Connect(Host, Port); // подключаемся к серваку
tcp->SSLDoConnect(); // поднимаем ssl соединение
// вот на этой строке и висит минутами
Есть мыслишки?