Closed erosman closed 2 years ago
Thanks for this excellent summary. Do any of the Firefox options allow for authentication with SOCKS?
Do any of the Firefox options allow for authentication with SOCKS?
Option 3 is the only way to handle SOCKS authentication ATM.
Due to Bug 122752 (from 21 years ago) SOCKS authentication is not available directly in Firefox. Chrome does not have the option. (Issue 256785: SOCKS5 authentication support) Other browsers also do not appear to have SOCKS authentication feature.
Option 3 in MV3 would be like
browser.proxy.onRequest.addListener(onRequest, {urls: ['<all_urls>']});
function onRequest(requestInfo) {
/*
process
------------------
1. get user preferences asynchronously e.g.
await browser.storage.local.get();
2. loop through all proxies
3. convert all patterns to RegEx
4. check if they match the criteria
5. prepare a response with/without user/pass
6. repeat the same for each network connection that can be 100s per tab
*/
}
Chrome has introduced manifest v3 which will come into force by Jan 2023. Firefox will be doing the same at a later date with some minor differences.
The future development of FoxyProxy extensions will be subject to MV3.
Chrome
Similar to the current FoxyProxy extension
'blocking'
in webRequest.onAuthRequiredFirefox
Option 1
Similar code-base as the Chrome extension
Option 2
Note: Due to MV3 service worker limitations, option 2 will entail an async storage call on every
onAuthRequired
which will be fairly resource intensive.Option 3
Similar to the current FoxyProxy extension
Note: Due to MV3 service worker limitations, option 3 will entail an async storage call on every network connection which will be considerably resource intensive.