From: Benito v. d. Z. <be...@be...> - 2013-05-14 20:31:06
|
Found the issue. Socks expects the port address to be big endian but the line blcksock:3321 Result := Result + CodeInt(ResolvePort(Port)); encodes it as little endian, so it fails. This works: Result := Result + CodeInt(SwapEndian(ResolvePort(Port))); On 05/14/2013 02:41 AM, Benito van der Zander wrote: > Hi, > I'm trying to use THttpSend over a SOCKS proxy (e.g. TOR), but it is not > working. > Behaves kind of like a timeout (and SocksLastError is 6). > What is wrong? > > var > xyz: TStrings; > HTTP: THTTPSend; > result: Boolean; > begin > xyz := TStringList.Create; > HTTP := THTTPSend.Create; > > http.Sock.SocksIP:='127.0.0.1'; > http.Sock.SocksPort:='9050'; > http.Sock.SocksTimeout:=100000; > > result := HTTP.HTTPMethod('GET', 'http://google.de'); > xyz.LoadFromStream(HTTP.Document); > > writeln(result); > writeln(http.sock.SocksLastError); > writeln(copy(xyz.text,1,1000)); > end. > > > This works fine: curl --proxy socks://127.0.0.1:9050 http://www.google.de > > > Benito > > ------------------------------------------------------------------------------ > AlienVault Unified Security Management (USM) platform delivers complete > security visibility with the essential security capabilities. Easily and > efficiently configure, manage, and operate all of your security controls > from a single console and one unified framework. Download a free trial. > http://p.sf.net/sfu/alienvault_d2d > _______________________________________________ > synalist-public mailing list > syn...@li... > https://lists.sourceforge.net/lists/listinfo/synalist-public > |