I, like many of dcpp users are behind a firewall or nat router and we do appreciate the development of socks proxy support. But is it working properly?? I believe not. I did not had the change to look at the code yet, although it has changed a lot since i last seen it, I suspect that it has at least a bug when dealing with that option.
The problem is that, when you are using a proxy, the dc client should act like it is in active mode, and that's not what is happening.
What I would like to know is if anybody is looking into this?
I'm really not willing to dig into the code right now, but if some of you are having the same problem, i'll give it a try
Cheers
SOCKS Proxy: Is it working properly??
Moderator: Moderators
ok, after a quick look at the code i've found the incorrect code: It is under client.cpp.
There are some lines like this:
that must be changed in order for the socks to work as it should, because socks are also like active...
Tomorrow I will try changing them and I'll post it here for comments..
There are some lines like this:
Code: Select all
if(SETTING(CONNECTION_TYPE) == SettingsManager::CONNECTION_ACTIVE) {
...
} else {
...
}
Tomorrow I will try changing them and I'll post it here for comments..
-
- DC++ Contributor
- Posts: 3212
- Joined: 2003-01-07 21:46
- Location: .pa.us
Well, actually I think the SOCK5 support works the way it was designed to. If you only want it to proxy hub connections and not client to client connections, then there's been a suggestion for a quasi-active mode.
The changelog says:
If you want a quasi-active mode, check out the changes in BCDC++, I believe SOCKS5 proxying is treated the way you desire in it.
The changelog says:
Code: Select all
-- 0.20 --
* Added socks5 support (more or less...no gssapi support), works like passive mode. M:5 means socks5 in the <++ tag.
(No, I won't be adding socks4 as it doesn't support UDP forwarding)
Well, I now see that the effort was to make the client-to-hub connection more easy for those behind firewalls, but the greatest improvement in using socks is, for me, to mimic an active connection in all aspects, removing that limitation of being unable to transfer files passive to passive.
To the client point of view, it is far more beneficial to work that way than to remove hub bandwidth.
Like I said, I will try to change that code (when I have some spare time) in order to make it work. I think it is of interest of the main release to allow every users behind firewalls to be able to download files from other users behind firewalls.
If you don't agree with me, or you thing that that is already being done, please tell me so that I won't work in vain
To the client point of view, it is far more beneficial to work that way than to remove hub bandwidth.
Like I said, I will try to change that code (when I have some spare time) in order to make it work. I think it is of interest of the main release to allow every users behind firewalls to be able to download files from other users behind firewalls.
If you don't agree with me, or you thing that that is already being done, please tell me so that I won't work in vain
-
- DC++ Contributor
- Posts: 3212
- Joined: 2003-01-07 21:46
- Location: .pa.us
oohh, but I have read the specs.. and I know it is possible because I already did it once with version 0.161. Yes, I implemented SOCKS4 and 5 in DC++ before (sorry for not posting, but back then dc++ had other problems that arne, I and some others were dealing with as you can see in the dc++ changelog:
DC++ evolved and I'm glad that socks is implemented. Now that I have some time, I can continue to contribute to the great comunity of dc++. For now, I just need socks to be fully working
From then I just used my private build for my use until I stopped using it because of time.-- 0.16 2002-03-15 --
* Fixed a resource leak that might have caused the sudden deaths (thanks carxor)
DC++ evolved and I'm glad that socks is implemented. Now that I have some time, I can continue to contribute to the great comunity of dc++. For now, I just need socks to be fully working