Closed fralken closed 2 years ago
Kudos, SonarCloud Quality Gate passed!
Great work! I hope to test this intensively next week. I can't really judge the code. Possibly @versat will already find it ready to merge :)
@jschwartzenberg have you performed any test on this?
Yeah, very limited though, but so far works fine!
Yeah, very limited though, but so far works fine!
I'll merge this PR as soon as you approve it.
I just tested socks support as well. Works great!! I see versat already approved, so this is fully ready to merge. Quite a major feature to have full PAC support for socks as well! Thanks a lot!!
Pac file support is working but has some issues:
proxy_thread()
function only, which means it is available only for http proxy connections but not for socks5 or tunnel connectionspacparser_find_proxy()
is parsed, a temporary list of proxies is created and proxies are resolvedThis PR moves the pac logic inside the
proxy_connect()
function, so that it is available for http proxy, socks5 and tunnel connections. Also, the lists of proxies created when parsing the string, returned bypacparser_find_proxy()
, are cached so that each proxy is resolved only once.All this proxy logic is moved into two new files,
proxy.c
andproxy.h
, to better separate logic.In addition, configuration of pac has been simplified, so instead of having
It is enough to write
Finally, documentation has been updated (some features were still missing)