Opened 8 years ago

Closed 6 years ago

#8048 closed Patch (fixed)

Support SOCKS 4

Reported by: Raphael_FR Owned by:
Priority: normal Component: FileZilla Client
Keywords: Cc:
Component version: Operating system type:
Operating system version:

Description

In the version 2.x of FileZilla, we have the functionnality of "SOCKS 4" in the Proxy.

Some Proxy like Microsoft TMG use only SOCKS 4 and not SOCKS 5, so we can't use FileZilla with this software and it is a missing.

Could you re-add this functionnality ?

Attachments (1)

8084.patch (7.3 KB) - added by Tautvydas Andrikys 7 years ago.
Updated implementation

Download all attachments as: .zip

Change History (5)

comment:1 Changed 7 years ago by Tautvydas Andrikys

Type: Feature requestPatch

Added implementation for this feature

comment:2 Changed 7 years ago by Tim Kosse

Status: newmoreinfo

Thanks, however there are a couple of issues with your patch which need to be fixed before your patch can be applied:

1) wxIPV4address::Hostname is blocking, it can potentially block for minutes. Use asynchronous host lookup instead.

2) In CProxySocket::OnReceive(), you need to take care of partial reads. You expect to receive 8 bytes total, but it can happen that they arrive one byte at a time.

3) Likewise, server might close connection, you're not handling that case either.

4) Due to 2) and 3), you're reading from uninitialized memory.

5) Even in case of error reply from the proxy, you're changing connection state to connected.

6) Please test SFTP over SOCKS 4

7) Double keyboard mnemonic in settings dialog, can't use S as mnemonic for both SOCKS4 and SOCKS5.

Changed 7 years ago by Tautvydas Andrikys

Attachment: 8084.patch added

Updated implementation

comment:3 Changed 7 years ago by Tautvydas Andrikys

Status: moreinfonew

I have fixed/tested #2 - #7, but did not implement #1, couse it would require to implement async hostname lookup(current async lookup in socket class wont fit here).

comment:4 Changed 6 years ago by Tim Kosse

Resolution: fixed
Status: newclosed

Thanks, applied.

Note: See TracTickets for help on using tickets.