Also allow hyphens in proxy username/password

This commit is contained in:
Rodney Cullen 2022-05-09 13:39:46 +01:00
parent 873ba0ab09
commit 00cf3ca644

View file

@ -3,7 +3,7 @@ proxifiedContainers = {
async retrieveAll() {
const result = await browser.storage.local.get("proxifiedContainersKey");
if(!result || !result["proxifiedContainersKey"]) {
if (!result || !result["proxifiedContainersKey"]) {
return null;
}
@ -12,7 +12,7 @@ proxifiedContainers = {
async retrieve(cookieStoreId) {
const result = await this.retrieveAll();
if(!result) {
if (!result) {
return null;
}
@ -44,7 +44,7 @@ proxifiedContainers = {
// Parses a proxy description string of the format type://host[:port] or type://username:password@host[:port] (port is optional)
parseProxy(proxy_str, mozillaVpnData = null) {
const proxyRegexp = /(?<type>(https?)|(socks4?)):\/\/(\b(?<username>\w+):(?<password>\w+)@)?(?<host>((?:\d{1,3}\.){3}\d{1,3}\b)|(\b([\w.-]+)+))(:(?<port>\d+))?/;
const proxyRegexp = /(?<type>(https?)|(socks4?)):\/\/(\b(?<username>[\w.-]+):(?<password>[\w.-]+)@)?(?<host>((?:\d{1,3}\.){3}\d{1,3}\b)|(\b([\w.-]+)+))(:(?<port>\d+))?/;
const matches = proxyRegexp.exec(proxy_str);
if (!matches) {
return false;
@ -58,7 +58,10 @@ proxifiedContainers = {
mozillaVpnData = MozillaVPN.getMozillaProxyInfoObj();
}
return {...matches.groups,...mozillaVpnData};
return {
...matches.groups,
...mozillaVpnData
};
},
// Deletes the proxy information object for a specified cookieStoreId [useful for cleaning]
@ -73,4 +76,4 @@ proxifiedContainers = {
proxifiedContainersKey: proxifiedContainersStore
});
}
};
};