Hi! In TCustomSocksWSocket.Connect:
procedure TCustomSocksWSocket.Connect; begin [..] if LowerCase(FProtoStr) <> 'tcp' then begin RaiseException('tcp is the only protocol supported thru socks server'); Exit; end; [..] Let's say that someone has entered 6 in place of TCP in the Proto property (obviously this is useless, as TWSocket do not rely on "Protocol" file, so TCP is always properly converted into 6, but let's assume that TWSocket user did this anyway) - TWSocket won't allow him to connect because it expects TCP, not TCP _or_ 6. My fix: if (LowerCase(FProtoStr) <> 'tcp') and (trim(FProtoStr)<>'6') then begin RaiseException('tcp is the only protocol supported thru socks server'); Exit; end; And small optimization of TCustomSocksWSocket.SocksDoAuthenticate: procedure TCustomSocksWSocket.SocksDoAuthenticate; var Buf : array [0..127] of char; I, J : Integer; begin FSocksState := socksAuthenticate; TriggerSocksAuthState(socksAuthStart); Buf[0] := #$01; {06/03/99} { Socks version } I := 1; J := Length(FSocksUsercode); Buf[I] := chr(j); Move(Pointer(FSocksUsercode)^, Buf[I + 1], J); I := I + 1 + J; J := Length(FSocksPassword); Buf[I] := chr(j); Move(Pointer(FSocksPassword)^, Buf[I + 1], J); I := I + 1 + J; try {TriggerDisplay('Send = ''' + BufToStr(Buf, I) + '''');} Send(@Buf, I); except end; end; Exchanged AnsiStringVar[1] to Pointer(AnsiStringVar)^ (less CPU instructions involved; may malfunction if any delphi version has default string type other than AnsiString), and reduced Length function usage (from 6 to 2; again - less CPU instructions and wasting time for jumping in and out of Length function). This won't give any *significant* speed boost, but I just accidently saw that procedure and simply *had* to change it. ;-) -- Piotr "Hellrayzer" Dalek Author of ICS-Based Hellcore Mailer - an Outlook Express killer http://www.hcm.prv.pl [EMAIL PROTECTED] ---------------------------------------------------------------------- Startuj z INTERIA.PL! >>> http://link.interia.pl/f186c -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be