Nathanwoodburn.github.io/proxy.pac

30 lines
15 KiB
Plaintext
Raw Normal View History

2023-02-13 20:14:50 +11:00
function FindProxyForURL(url, host) {
var skipped = [ 'bradesco', 'fm', 'fyi', 'global', 'in', 'xn--j1aef', 'duck', 'property', 'ryukyu', 'xn--9et52u', 'test', 'ibm', 'linde', 'scot', 'tkmaxx', 'xn--mgbaam7a8h', 'xn--zfr164b', 'insure', 'sn', 'va', 'ye', 'bbt', 'dell', 'fitness', 'holdings', 'intuit', 'secure', 'uz', 'agency', 'cipriani', 'eat', 'pt', 'scb', 'estate', 'hdfc', 'mls', 'physio', 'skype', 'target', 'vet', 'caseih', 'nfl', 'reit', 'woodside', 'wtc', 'xn--mgba3a3ejt', 'xn--mgbayh7gpa', 'case', 'homegoods', 'life', 'marriott', 'pwc', 'rs', 'xn--11b4c3d', 'americanfamily', 'ferrero', 'finance', 'gu', 'prudential', 'shopping', 'sj', 'xn--5tzm5g', 'dog', 'foo', 'mint', 'plumbing', 'sa', 'team', 'call', 'kred', 'mobile', 'nagoya', 'qa', 'xn--gckr3f0f', 'erni', 'gdn', 'grainger', 'marketing', 'maserati', 'mobi', 'rocks', 'yokohama', 'caravan', 'dunlop', 'ifm', 'macys', 'xn--hxt814e', 'fishing', 'photos', 'walter', 'xn--1qqw23a', 'playstation', 'su', 'blue', 'lu', 'search', 'viajes', 'xn--mgbc0a9azcg', 'xn--ygbi2ammx', 'nhk', 'stc', 'xn--mxtq1m', 'bg', 'gallup', 'protection', 'vegas', 'xn--3hcrj9c', 'xn--xkc2al3hye2a', 'xn--jlq480n2rg', 'bbc', 'catering', 'genting', 'google', 'jewelry', 'rexroth', 'sohu', 'xyz', 'art', 'redumbrella', 'xn--fzys8d69uvgm', 'aeg', 'cy', 'kosher', 'lundbeck', 'me', 'med', 'mg', 'wedding', 'br', 'camp', 'clothing', 'design', 'events', 'org', 'richardli', 'hn', 'loans', 'rmit', 'unicom', 'cbre', 'hermes', 'lk', 'ma', 'nyc', 'reise', 'seek', 'xn--45brj9c', 'xn--80aswg', 'xn--fiq64b', 'dubai', 'flowers', 'hisamitsu', 'homes', 'soccer', 'statefarm', 'vote', 'xn--p1ai', 'fido', 'abbvie', 'amica', 'box', 'bs', 'country', 'degree', 'energy', 'olayan', 'sfr', 'xn--mgbai9azgqp6j', 'blog', 'diet', 'game', 'mortgage', 'solar', 'sy', 'tokyo', 'xn--55qw42g', 'bj', 'engineer', 'je', 'lego', 'melbourne', 'politie', 'sling', 'xn--pgbs0dh', 'consulting', 'hair', 'ml', 'shriram', 'navy', 'weather', 'wf', 'bosch', 'creditcard', 'direct', 'review', 'volkswagen', 'zara', 'ntt', 'afl', 'bmw', 'clinic', 'final', 'fo', 'foundation', 'lancia', 'shiksha', 'tattoo', 'total', 'xn--rhqv96g', 'bb', 'booking', 'ott', 'star', 'storage', 'tiaa', 'comsec', 'hospital', 'xn--3bst00m', 'xn--vermgensberatung-pwb', 'cooking', 'food', 'glass', 'plus', 'prod', 'shouji', 'xn--nqv7f', 'amfam', 'discover', 'passagens', 've', 'zm', 'author', 'cruise', 'hkt', 'mma', 'praxi', 'bcg', 'horse', 'investments', 'pink', 'xn--jlq61u9w7b', 'xn--tckwe', 'lidl', 'saarland', 'xfinity', 'ba', 'beer', 'by', 'cfa', 'gt', 'nf', 'pictet', 'xn--l1acc', 'immo', 'panasonic', 'raid', 'sc', 'sharp', 'shaw', 'win', 'xn--rvc1e0am3e', 'yun', 'arab', 'avianca', 'bot', 'lgbt', 'temasek', 'xn--ngbc5azd', 'buy', 'cn', 'er', 'now', 'suzuki', 'abudhabi', 'dealer', 'ikano', 'kiwi', 'tw', 'vana', 'xn--42c2d9a', 'mq', 'om', 'software', 'winners', 'cloud', 'codes', 'kerrylogistics', 'nikon', 'photography', 'wine', 'kitchen', 'asda', 'com', 'contact', 'dating', 'dj', 'download', 'jo', 'shop', 'chase', 'coop', 'soy', 'xn--d1alf', 'xn--vermgensberater-ctb', 'credit', 'gw', 'how', 'infiniti', 'guge', 'hm', 'xn--b4w605ferd', 'xn--kcrx77d1x4a', 'allfinanz', 'creditunion', 'extraspace', 'nrw', 'stream', 'bbva', 'bnpparibas', 'kim', 'ski', 'xihuan', 'xn--mgbpl2fh', 'associates', 'xn--3oq18vl8pn36a', 'microsoft', 'school', 'sm', 'top', 'obi', 'dhl', 'ga', 'la', 'ltd', 'nationwide', 'ni', 'nr', 'rich', 'sk', 'teva', 'tz', 'ups', 'goog', 'jpmorgan', 'kr', 'luxe', 'marshalls', 'sh', 'xn--cg4bki', 'allstate', 'auto', 'kindle', 'lease', 'career', 'flights', 'helsinki', 'lc', 'money', 'mormon', 'digital', 'nissan', 'ovh', 'xn--5su34j936bgsg', 'schule', 'vi', 'xn--io0a7i', 'band', 'ec', 'lancaster', 'sbi', 'ss', 'xn--rovu88b', 'ceo', 'crown', 'foodnetwork', 'mitsubishi', 'sca', 'tech', 'tiffany', 'is', 'pw', 'samsung', 'bofa', 'ieee', 'mango', 'vanguard', 'xn--imr513n', 'xn--mgba7c0bbn0a', 'baseball', 'bharti', 'center', 'nba', 'origins', 'tatamotors', 'walmart', 'date', 'ke', 'lexus', 'mckinsey', 'otsuka', 'sakura', 'ollo', 'amsterdam', 'company', 'cu', 'cuisinella', 'gb', 'gifts', 'gop', 're', 'tennis', 'voting', '
// skip any TLD in the list
var tld = host;
var lastDot = tld.lastIndexOf('.');
if (lastDot != -1) {
tld = tld.substr(lastDot+1);
}
tld = tld.toLowerCase();
if (skipped.includes(tld)) {
return 'DIRECT';
}
// skip IP addresses
var isIpV4Addr = /^(\d+.){3}\d+$/;
if (isIpV4Addr.test(host)) {
return "DIRECT";
}
// loosely check if IPv6
if (lastDot == -1 && host.split(':').length > 2) {
return "DIRECT";
}
return "PROXY 100.101.189.97:8080";
}