Fix SOCKSv4 and SOCKSv5 proxy. resolves #214 #220

This commit is contained in:
ngosang
2021-12-12 14:29:38 +01:00
parent 642d67b927
commit b1a6ad7688
3 changed files with 59 additions and 15 deletions

View File

@@ -60,18 +60,35 @@ function buildExtraPrefsFirefox(proxy: Proxy): object {
const port = parseInt(portStr);
const proxyPrefs = {
// Proxy configuration
"network.proxy.ftp": host,
"network.proxy.ftp_port": port,
"network.proxy.http": host,
"network.proxy.http_port": port,
"network.proxy.share_proxy_settings": true,
"network.proxy.socks": host,
"network.proxy.socks_port": port,
"network.proxy.socks_remote_dns": true,
"network.proxy.ssl": host,
"network.proxy.ssl_port": port,
"network.proxy.type": 1
"network.proxy.type": 1,
"network.proxy.share_proxy_settings": true
}
if (proxy.url.indexOf("socks") != -1) {
// SOCKSv4 & SOCKSv5
Object.assign(proxyPrefs, {
"network.proxy.socks": host,
"network.proxy.socks_port": port,
"network.proxy.socks_remote_dns": true
});
if (proxy.url.indexOf("socks4") != -1) {
Object.assign(proxyPrefs, {
"network.proxy.socks_version": 4
});
} else {
Object.assign(proxyPrefs, {
"network.proxy.socks_version": 5
});
}
} else {
// HTTP
Object.assign(proxyPrefs, {
"network.proxy.ftp": host,
"network.proxy.ftp_port": port,
"network.proxy.http": host,
"network.proxy.http_port": port,
"network.proxy.ssl": host,
"network.proxy.ssl_port": port
});
}
// merge objects