Index: net/data/proxy_resolver_perftest/no-ads.pac |
diff --git a/net/data/proxy_resolver_perftest/no-ads.pac b/net/data/proxy_resolver_perftest/no-ads.pac |
deleted file mode 100644 |
index e55fa0ffd7e5a33e374a4b248f600ae7c30dff8e..0000000000000000000000000000000000000000 |
--- a/net/data/proxy_resolver_perftest/no-ads.pac |
+++ /dev/null |
@@ -1,1362 +0,0 @@ |
-////////////////////////////////////////////////////////////////////////////// |
-// |
-// John's No-ADS proxy auto configuration script |
-// http://www.schooner.com/~loverso/no-ads/ |
-// loverso@schooner.com |
-// Questions/help web forum at http://www.network54.com/Hide/Forum/223428 |
-// |
-// Copyright 1996-2004, John LoVerso. All Rights Reserved. |
-// |
-// Permission is given to use and distribute this file, as long as this |
-// copyright message and author notice are not removed. |
-// |
-// No responsibility is taken for any errors on inaccuracies inherent |
-// either to the comments or the code of this program, but if reported |
-// to me, then an attempt will be made to fix them. |
-// |
-// ("no monies exchanged" in Copyright clause removed 11/2001) |
-// |
-var noadsver = "$Id: no-ads.pac,v 5.70 2007/05/11 16:56:01 loverso Exp loverso $"; |
- |
-// **** |
-// **** If you do not use a proxy to access the Internet, then the following |
-// **** line is already fine. |
-// **** |
-// **** If you use an a proxy to access the Internet, as required by your |
-// **** ISP or firewall, then change the line below, replacing |
-// **** "DIRECT" with "PROXY hostname:port", using the correct hostname:port |
-// **** for your proxy server. |
-// **** |
-var normal = "DIRECT"; |
- |
-// *** |
-// *** If you are not using a blackhold proxy, then you can leave this |
-// *** setting as is. |
-// *** |
-// *** Otherwise, update the next line with the correct hostname:port |
-// *** of your blackhole proxy server. If you are using Larry Wang's |
-// *** BHP for Windows, you need to change the "0.0.0.0" to "127.0.0.1" |
-// *** |
-var blackhole = "PROXY 0.0.0.0:3421"; |
- |
-// *** |
-// *** If you need a different proxy to access local/internal hosts vs. |
-// *** the rest of the Internet, set 'localproxy' to that value. Otherwise, |
-// *** 'localproxy' defaults to the same value as 'normal', so you do |
-// *** not need to change anything in the normal case. |
-// *** |
-// *** Some typical cases: |
-// *** - 'normal' might be one proxy, and 'localproxy' might be another |
-// *** - 'normal' might be a proxy, and 'localproxy' might be "DIRECT" |
-// *** |
-// *** You will also need to change the LOCAL section below by adding |
-// *** rules to match your local/internal hosts. |
-// *** |
-var localproxy = normal; |
- |
-// *** |
-// *** 'bypass' is the preferred proxy setting for when no-ads is inactive. |
-// *** Either use '= normal' or '= localproxy' (or perhaps just "DIRECT"). |
-// *** This only matters when you need to use a localproxy. |
-// *** (You probably don't need to care about this) |
-// *** |
-var bypass = normal; |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// This simple kludge uses a mechanism built into most browsers (IE, Netscape, |
-// Mozilla, Firefox, and Opera) on most platforms to block connections to |
-// banner ad servers. |
-// |
-// This mechanism uses the "proxy auto configuration" to blackhole requests |
-// to load ad images without forcing all your traffic through an ad-blocking |
-// proxy server. Of course, unlike ad-blocking proxy servers, this does not |
-// otherwise not strip cookies. |
-// |
-// "Proxy auto configuration" invokes the JavaScript FindProxyForURL function |
-// below each time your browser requests a URL. This works even if you have |
-// JavaScript otherwise disabled in your browser! (Which you should!) |
-// |
- |
-// |
-// Send me your additions or comments. I'll credit you in the file. |
-// (But I've removed all email addresses to stop spam harvesters). |
-// |
- |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// These are the basic steps needed to use "no-ads.pac". |
-// Detailed instructions follow below! |
-// |
-// 1. Save this as a file (no-ads.pac) on your local disk |
-// (or, add it to your home page, if you have one) |
-// 2. Select a no-ads "blackhole". |
-// 3. Configure your browser to use this file as its auto proxy configuration. |
-// 4. Clear your browser's cache |
-// (or else it may still show you ads it has saved on your disk). |
-// |
- |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// 1. SAVE THIS FILE |
-// |
-// Copy this file to your local machine; use your home directory (UNIX) |
-// or your Desktop or C:\ directory (Windows). |
-// |
- |
- |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// 2. SELECT A NO-ADS BLACKHOLE |
-// |
-// You can skip this section if you are using any version of Internet Explorer. |
-// You can also skip this section for Netscape 7.1, Mozilla 1.4, or |
-// Firefox 1.0 (or later), as they include PAC failover support (but do |
-// read the note in section "2a" below). |
-// |
-// |
-// The basic trick of no-ads is to match the site or URL of annoying web content |
-// and tell your browser to use a proxy that will deny loading of that resource |
-// (image, page, etc). |
-// |
-// A "black-hole" proxy server is one that always denies loading a web page. |
-// ("send it off to a blackhole"). |
-// |
-// When you initially get "no-ads.pac", it is using this as the blackhole: |
-// |
-// "PROXY 0.0.0.0:3421" |
-// |
-// This says to use the local host at a port which nothing should be listening |
-// on. Thus, this is "a server that doesn't repond." |
-// |
-// This is a good default for all systems, and especially Windows. |
-// However, if you are using the Blackhole Proxy Server on Windows, |
-// be sure to change it to "PROXY 127.0.0.1:3421" |
-// |
-// |
-// Some possibilities for the blackhole: |
-// |
-// a. A server that doesn't respond. |
-// |
-// *** This works for all versions of Internet Explorer. |
-// *** This mostly works for Mozilla, Firefox, and Netscape. |
-// |
-// If you do nothing, then this is configured to direct annoying |
-// content to the proxy running on your own host at port 3421. |
-// Since you shouldn't have anything running on that port, that |
-// connection will timeout and the annoying content will never be |
-// loaded. |
-// |
-// Older versions of Netscape wait to connect to the proxy server |
-// (usually it needs to load part of the image to layout the web |
-// page), and then asks if you want to disable the proxy that |
-// doesn't answer. |
-// |
-// Older versions of Mozilla will give an alert saying it couldn't |
-// connect to the proxy server. |
-// |
-// Mozilla 1.4+, Firefox 1.0+ and Netscape 7.1 will only give |
-// you this alert if the whole page being display is blocked, |
-// rather than just an image on that page. Thus, I still |
-// recommend a blackhole proxy even though it isn't needed. |
-// |
-// Opera will disable your auto proxy config if the proxy server |
-// doesn't respond. |
-// |
-// IE doesn't care that the proxy server isn't responding. As |
-// this avoids a connection for annoying content, it is fastest. |
-// |
-// b. A simple, blackhole server |
-// |
-// When needed, I run a simple "server" at port 3421 that denies |
-// all requests. Some options you can use for this: |
-// |
-// - On Windows, you can try Larry Wang's black-hole proxy program: |
-// |
-// http://leisuresuit10.tripod.com/BlackHoleProxy/ |
-// |
-// I can not vouch that his binaries are virus free, but he does |
-// offer the source code. |
-// |
-// - I use this shell script on UNIX; it is invoked via inetd. |
-// /usr/local/lib/noproxy: |
-// |
-// #!/bin/sh |
-// read a |
-// read b |
-// echo HTTP/1.0 501 No Ads Accepted |
-// echo "" |
-// exit |
-// |
-// Add this line to inetd.conf ('kill -HUP' inetd afterwards): |
-// |
-// 3421 stream tcp nowait nobody /usr/local/lib/noproxy noproxy |
-// |
-// This simple script doesn't work on Linux because of the |
-// (IMHO) broken way its TCP stack works. See the bottom of |
-// http://www.schooner.com/~loverso/no-ads/ for a complete copy |
-// of the `noproxy' shell script. |
-// |
-// If always exec'ing a shell was expensive on your computer |
-// (it isn't on mine), then you could use a "wait"-style Perl |
-// script that would accept() incoming connections. |
-// |
-// - Sean Burke has a black-hole proxy written in Perl script: |
-// |
-// http://www.speech.cs.cmu.edu/~sburke/pub/black_hole_http_server.pl |
-// (This is a standalone server, not run from inetd). |
-// |
-// e. A trick: use an HTTP/1.0 non-proxy server |
-// |
-// An HTTP/1.0 non-proxy server will return a 501 error when |
-// given a proxy request. Thus, just use the address of your |
-// local intranet web server as your blackhole PROXY. |
-// The downside of this is that it will probably also log an |
-// error, which wastes a small amount of resources. |
-// |
-// *** |
-// *** Be sure to update the "blackhole" variable above with a setting of |
-// *** "PROXY hostname:port" that matches your blackhole server!! |
-// *** |
-// |
-// *** |
-// *** If you already use a proxy server to access the WWW, |
-// *** change the "normal" variable above from "DIRECT" to |
-// *** be "PROXY proxy:port" to match your proxy server. |
-// *** |
- |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// 3. TO CONFIGURE YOUR BROWSER |
-// |
-// The Proxy Auto Configuration file can be either on the local disk or |
-// accessed from a web server, with the following constraints: |
-// |
-// a. IE4 can only load the PAC from a web server (http:// URL) |
-// b. Netscape, Mozilla, Firefox and IE (5 or later) can load the |
-// PAC from anywhere. |
-// c. Netscape, Mozilla, Firefox and (probably) Opera require the correct |
-// MIME type when loading the PAC from a web server. |
-// |
-// |
-// To set the Proxy Auto Configuration with Netscape, Mozilla, or Firefox: |
-// |
-// 1. Enable Proxy Auto Config: |
-// |
-// For Netsacpe/Mozilla: |
-// |
-// Open "Edit->Preferences" |
-// Select "Advanced" |
-// Select "Proxies" |
-// |
-// For Firefox (1.0): |
-// |
-// Open "Tools->Options" |
-// Select "Coonection Settings" on the General tab: |
-// |
-// Select the "Auto proxy configuration URL" option. |
-// Enter URL or path of where you've saved this file, such as: |
-// |
-// http://yourserver/no-ads.pac |
-// |
-// If you place this on your local disk, you should use a |
-// file: URL such as: |
-// |
-// file:/home/loverso/no-ads.pac (UNIX) |
-// file:///c:/windows/desktop/no-ads.pac (Windows) |
-// |
-// (file:/ and file:// will work in Mozilla, but file:/// is correct |
-// required for Firefox) |
-// |
-// 2. If you are serving this from a web server, these browsers require |
-// the correct MIME type on the file before using it. You must configure |
-// your web server to provide a "application/x-ns-proxy-autoconfig" |
-// MIME type. |
-// |
-// a. For Apache, name the file with a ".pac" extension and add this |
-// line to the http.conf (or the .htaccess file in the same directory): |
-// |
-// AddType application/x-ns-proxy-autoconfig .pac |
-// |
-// b. For IIS (instructions from Kevin Roth) |
-// |
-// Open Internet Services Manager |
-// Right click on the web site (or directory) you wish to change. |
-// Choose Properties |
-// Click the "HTTP Headers" tab |
-// Click the "File Types" button in the "MIME Map" section |
-// Click the "New Type..." button |
-// Enter "pac" for "Associated Extension" |
-// Enter "application/x-ns-proxy-autoconfig" for "Content Type (MIME)" |
-// Click OK to close the Add type dialog, the MIME types dialog, |
-// and the main properties dialog. |
-// |
-// (This is definately needed for NS, but not for IE) |
-// |
-// |
-// To set the Proxy Auto Configuration with IE: |
-// |
-// 1. Enable Proxy Auto Config: |
-// |
-// Open "Tools->Internet Options" |
-// Select "Connections" tab |
-// Click "LAN Settings" |
-// or Choose an entry from "Dial-up settings" and click "Settings" |
-// |
-// On the settings dialog, select "Use automatic configuration script" |
-// Enter the URL of this file in Address field. |
-// |
-// http://yourserver/no-ads.pac |
-// file:///c:/windows/desktop/no-ads.pac (Windows) |
-// |
-// You can only use a file: URL with IE5 (or later). |
-// ("file:///" with with IE versions after 5.0 SP2) |
-// |
-// 2. Fix Security Settings (IMPORTANT): |
-// |
-// Select "Security" tab |
-// Select "Local intranet" |
-// Click "Sites" box |
-// Unselect "include all sites that bypass the proxy server" option |
-// |
-// 3. Disable "Auto Proxy Caching" (IMPORTANT): |
-// (thanks to Kevin Roth for alerting me of this!) |
-// |
-// IE contains a proxy result caching mechanism that will defeat the |
-// ability to block servers that server both ad and non-ad content. |
-// To prevent this, add the registry key described in this MS KB article: |
-// |
-// http://support.microsoft.com/?kbid=271361 |
-// |
-// You can do so by downloading this file and clicking on it to load |
-// it into the registry. This must be done on a per-user basis. |
-// http://www.schooner.com/~loverso/no-ads/IE-no-auto-proxy-cache.reg |
-// |
-// IE doesn't currently check the MIME type of the PAC file. |
-// |
-// To see some notes from MS on PAC in IE, see |
-// http://msdn.microsoft.com/library/periodic/period99/faq0599.htm |
-// (they seem to have removed this URL) |
-// |
-// |
-// To set the Proxy Auto Configuration with Opera 6 (6.04 on Windows tested): |
-// |
-// 1. Enable Proxy Auto Config: |
-// Open the Preferences (Alt-P) |
-// Select "Network" |
-// Click the "Proxy servers" box |
-// Select "Use automatic proxy configuration" |
-// Enter the URL of this file as |
-// |
-// http://yourserver/no-ads.pac |
-// file://c:/windows/desktop/no-ads.pac |
-// |
-// (file:/// might be needed; I've not tested Opera lately) |
-// |
-// 2. You must use a blackhole proxy for Opera (it will not work with an |
-// address of a server that does not respond). |
-// |
-// 3. Be sure to clear the cache and exit/restart Opera. |
-// |
- |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// 4. CLEAR YOUR BROWSER'S CACHE |
-// |
-// For Internet Explorer: |
-// |
-// Open "Tools->Internet Options" |
-// Select "Delete Files" under "Temporary Internet Files" |
-// Click "OK" |
-// |
-// For Mozilla/Netscape Navigator: |
-// |
-// Open "Edit->Preferences" |
-// Select "Advanced" |
-// Select "Proxies" |
-// Click "Clear Disk Cache" |
-// Click "Clear Memory Cache" |
-// |
-// For Firefox: |
-// |
-// Open "Tools->Options" |
-// Select the "Privay" tab |
-// Scroll down or go to the "Cache" section |
-// Click "Clear" |
-// |
-// For Opera: |
-// |
-// Open "File->Preferences" |
-// Select "History and cache" |
-// Click "Empty now" |
-// |
- |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// To see the definition of this page's JavaScript contents, see |
-// |
-// http://home.netscape.com/eng/mozilla/2.0/relnotes/demo/proxy-live.html |
-// |
-// Microsoft includes this in their KB article: |
-// |
-// http://support.microsoft.com/support/kb/articles/Q209/2/66.ASP |
-// |
-// Special PAC functions: |
-// Hostname: |
-// isPlainHostName(host) |
-// dnsDomainIs(host, domain) |
-// localHostOrDomainIs(host, hostdom) |
-// isResolvable(host) |
-// isInNet(host, pattern, mask) |
-// Utility: |
-// dnsResolve(host) |
-// myIpAddress() |
-// dnsDomainLevels(host) |
-// URL: |
-// shExpMatch(str, shexp) |
-// Time: |
-// weekdayRange(wd1, wd2, gmt) |
-// dateRange(...) |
-// timeRange(...) |
-// |
-// Other functions and methods that may work: |
-// http://developer.netscape.com/docs/manuals/communicator/jsref/win1.htm |
-// Note that "alert()" only works with Netscape4 and IE, and Mozilla 1.4+. |
-// |
-// NOTE: |
-// isInNet() will resolve a hostname to an IP address, and cause |
-// hangs on Mozilla/Firefox. Currently, these are stubbed out and replaced |
-// with shExpMatch(host, "a.b.c.*"), which doesn't do the same thing, |
-// but is sufficient for these purposes. |
-// |
-// Additional Mozilla/Firefox comments: |
-// |
-// All the above PAC functions are implemented in JavaScript, |
-// and are added to the body of your PAC file when it is loaded. |
-// See the "components/nsProxyAutoConfig.js" browser install |
-// directory. |
-// |
-// - shExpMatch() is implemented as three pattern.replaces() |
-// followed by a call to RegExp() (SLOW) |
-// - isPlainHostname() just checks for lack of "." in the string |
-// - dnsDomainIs() just matches strings exactly |
-// - alert() is bound to this.proxyAlert(), which displays a message |
-// in the JavaScript console window |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// Regular Expressions |
-// |
-// Angus Turnbull pointed out the JavaScript 1.2 RE operators to me. |
-// These should work in NS4 and IE4 (or later), but I have only tested on |
-// Mozilla (1.3), IE5.5, and IE6. PLEASE TELL ME IF IT WORKS FOR YOU! |
-// |
-// A good introduction is at: |
-// http://www.evolt.org/article/Regular_Expressions_in_JavaScript/17/36435/ |
-// Some references: |
-// (old Netscape documentation is gone) |
-// http://devedge.netscape.com/library/manuals/2000/javascript/1.5/reference/regexp.html |
-// http://developer.netscape.com/docs/manuals/js/client/jsref/regexp.htm |
-// http://www.webreference.com/js/column5/ |
-// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/js56jsobjRegExpression.asp |
-// http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/js56jsgrpRegExpSyntax.asp |
-// Real-time evaluator: |
-// http://www.cuneytyilmaz.com/prog/jrx/ |
-// |
-// I'm slowly replacing multiple glob patterns with regexps. |
-// By using RE literals of /.../ rather than the constructor 'new RegExp()', |
-// the regexps should be compiled as no-ads.pac is loaded. |
-// |
-// Important notes: |
-// - if using the constructor, \ needs to be quoted; thus "\\." is used |
-// to match a literal '.'. In the RE literal form, I need to end up |
-// quoting any / for a URL path. |
-// - Avoid these for now; they are broken or not supported in "older" |
-// browsers such as NS4 and IE4: |
-// - look-aheads (?=pat) |
-// - non-greedy ? - a ? that follows *,+,?, and {}; (s)? is NOT non-greedy |
-// |
- |
-// matches several common URL paths for ad images: |
-// such as: /banner/ /..._banner/ /banner_... |
-// but matches several words and includes plurals |
-var re_banner = /\/(.*_){0,1}(ad|adverts?|adimage|adframe|adserver|admentor|adview|banner|popup|popunder)(s)?[_.\/]/i; |
- |
-// matches host names staring with "ad" but not (admin|add|adsl) |
-// or any hostname starting with "pop", "clicks", and "cash" |
-// or any hostname containing "banner" |
-// ^(ad(s)?.{0,4}\.|pop|click|cash|[^.]*banner|[^.]*adserv) |
-// ^(ad(?!(min|sl|d\.))|pop|click|cash|[^.]*banner|[^.]*adserv) |
-// ^(ad(?!(min|sl|d\.))|pop|click|cash|[^.]*banner|[^.]*adserv|.*\.ads\.) |
-var re_adhost = /^(www\.)?(ad(?!(ult|obe.*|min|sl|d|olly.*))|tology|pop|click|cash|[^.]*banner|[^.]*adserv|.+\.ads?\.)/i; |
- |
-// neg: |
-// admin.foobar.com |
-// add.iahoo.com |
-// adsl.allow.com |
-// administration.all.net |
-// pos: |
-// fire.ads.ighoo.com |
-// ads.foo.org |
-// ad0121.aaaa.com |
-// adserver.goo.biz |
-// popup.foo.bar |
- |
-/////////////////////////////////////////////////////////////////////////////// |
- |
-var isActive = 1; |
- |
-function FindProxyForURL(url, host) |
-{ |
- // debug |
- // alert("checking: url=" + url + ", host=" + host); |
- |
- // Excellent kludge from Sean M. Burke: |
- // Enable or disable no-ads for the current browser session. |
- // |
- // To disable, visit this URL: http://no-ads.int/off |
- // To re-enable, visit this URL: http://no-ads.int/on |
- // |
- // (this will not work with Mozilla or Opera if the alert()s are present) |
- // |
- // This happens before lowercasing the URL, so make sure you use lowercase! |
- // |
- if (shExpMatch(host, "no-ads.int")) { |
- if (shExpMatch(url, "*/on*")) { |
- isActive = 1; |
- //alert("no-ads is enabled.\n" + url); |
- } else if (shExpMatch(url, "*/off*")) { |
- isActive = 0; |
- //alert("no-ads has been disabled.\n" + url); |
- } else if (shExpMatch(url, "*no-ads.int/")) { |
- alert("no-ads is "+(isActive ? "enabled" : "disabled")+".\n" + url); |
- } else { |
- alert("no-ads unknown option.\n" + url); |
- } |
- |
- return blackhole; |
- } |
- |
- if (!isActive) { |
- // alert("allowing (not active): return " + bypass); |
- return bypass; |
- } |
- |
- // Suggestion from Quinten Martens |
- // Make everything lower case. |
- // WARNING: all shExpMatch rules following MUST be lowercase! |
- url = url.toLowerCase(); |
- host = host.toLowerCase(); |
- |
- // |
- // Local/Internal rule |
- // matches to this rule get the 'local' proxy. |
- // Adding rules here enables the use of 'local' |
- // |
- if (0 |
- // LOCAL |
- // add rules such as: |
- // || dnsDomainIs(host, "schooner.com") |
- // || isPlainHostName(host) |
- // or for a single host |
- // || (host == "some-local-host") |
- ) { |
- // alert("allowing (local): return " + localproxy); |
- return localproxy; |
- } |
- |
- // |
- // Whitelist section from InvisiBill |
- // |
- // Add sites here that should never be matched for ads. |
- // |
- if (0 |
- // WHITELIST |
- // To add whitelist domains, simple add a line such as: |
- // || dnsDomainIs(host, "schooner.com") |
- // or for a single host |
- // || (host == "some-host-name") |
- |
- // Note: whitelisting schooner.com will defeat the "is-it-working" |
- // test page at http://www.schooner.com/~loverso/no-ads/ads/ |
- |
- // Apple.com "Switch" ads |
- || shExpMatch(url, "*.apple.com/switch/ads/*") |
- |
- // SprintPCS |
- || dnsDomainIs(host, ".sprintpcs.com") |
- |
- // Lego |
- || dnsDomainIs(host, ".lego.com") |
- |
- // Dell login popups |
- || host == "ecomm.dell.com" |
- |
- || host == "click2tab.mozdev.org" |
- || host == "addons.mozilla.org" |
- |
- // Uncomment for metacrawler |
- // || (host == "clickit.go2net.com") |
- |
- // Wunderground weather station banners |
- || shExpMatch(url, "*banners.wunderground.com/cgi-bin/banner/ban/wxbanner*") |
- || shExpMatch(url, "*banners.wunderground.com/weathersticker/*") |
- ) { |
- // alert("allowing (whitelist): return " + normal); |
- return normal; |
- } |
- |
- // To add more sites, simply include them in the correct format. |
- // |
- // The sites below are ones I currently block. Tell me of others you add! |
- |
- if (0 |
- // BLOCK |
- // Block IE4/5 "favicon.ico" fetches |
- // (to avoid being tracked as having bookmarked the site) |
- || shExpMatch(url, "*/favicon.ico") |
- |
- ////// |
- // |
- // Global Section |
- // tries to match common names |
- // |
- |
- // RE for common URL paths |
- || re_banner.test(url) |
- |
- // RE for common adserver hostnames. |
- // The regexp matches all hostnames starting with "ad" that are not |
- // admin|add|adsl |
- // (replaces explicit shExpMatch's below) |
- || re_adhost.test(host) |
- |
-// || (re_adhost.test(host) |
-// && !( |
-// shExpMatch(host, "add*") |
-// || shExpMatch(host, "admin*") |
-// || shExpMatch(host, "adsl*") |
-// ) |
-// ) |
-// // or any subdomain "ads" |
-// || (dnsDomainLevels(host) > 2 && shExpMatch(host, "*.ads.*")) |
- |
- ////// |
- // |
- // banner/ad organizations |
- // Just delete the entire namespace |
- // |
- |
- // doubleclick |
- || dnsDomainIs(host, ".doubleclick.com") |
- || dnsDomainIs(host, ".doubleclick.net") |
- || dnsDomainIs(host, ".rpts.net") |
- || dnsDomainIs(host, ".2mdn.net") |
- || dnsDomainIs(host, ".2mdn.com") |
- |
- // these set cookies |
- || dnsDomainIs(host, ".globaltrack.com") |
- || dnsDomainIs(host, ".burstnet.com") |
- || dnsDomainIs(host, ".adbureau.net") |
- || dnsDomainIs(host, ".targetnet.com") |
- || dnsDomainIs(host, ".humanclick.com") |
- || dnsDomainIs(host, ".linkexchange.com") |
- |
- || dnsDomainIs(host, ".fastclick.com") |
- || dnsDomainIs(host, ".fastclick.net") |
- |
- // one whole class C full of ad servers (fastclick) |
- // XXX this might need the resolver |
-// || isInNet(host, "205.180.85.0", "255.255.255.0") |
- || shExpMatch(host, "205.180.85.*") |
- |
- // these use 1x1 images to track you |
- || dnsDomainIs(host, ".admonitor.com") |
- || dnsDomainIs(host, ".focalink.com") |
- |
- || dnsDomainIs(host, ".websponsors.com") |
- || dnsDomainIs(host, ".advertising.com") |
- || dnsDomainIs(host, ".cybereps.com") |
- || dnsDomainIs(host, ".postmasterdirect.com") |
- || dnsDomainIs(host, ".mediaplex.com") |
- || dnsDomainIs(host, ".adtegrity.com") |
- || dnsDomainIs(host, ".bannerbank.ru") |
- || dnsDomainIs(host, ".bannerspace.com") |
- || dnsDomainIs(host, ".theadstop.com") |
- || dnsDomainIs(host, ".l90.com") |
- || dnsDomainIs(host, ".webconnect.net") |
- || dnsDomainIs(host, ".avenuea.com") |
- || dnsDomainIs(host, ".flycast.com") |
- || dnsDomainIs(host, ".engage.com") |
- || dnsDomainIs(host, ".imgis.com") |
- || dnsDomainIs(host, ".datais.com") |
- || dnsDomainIs(host, ".link4ads.com") |
- || dnsDomainIs(host, ".247media.com") |
- || dnsDomainIs(host, ".hightrafficads.com") |
- || dnsDomainIs(host, ".tribalfusion.com") |
- || dnsDomainIs(host, ".rightserve.net") |
- || dnsDomainIs(host, ".admaximize.com") |
- || dnsDomainIs(host, ".valueclick.com") |
- || dnsDomainIs(host, ".adlibris.se") |
- || dnsDomainIs(host, ".vibrantmedia.com") |
- || dnsDomainIs(host, ".coremetrics.com") |
- || dnsDomainIs(host, ".vx2.cc") |
- || dnsDomainIs(host, ".webpower.com") |
- || dnsDomainIs(host, ".everyone.net") |
- || dnsDomainIs(host, ".zedo.com") |
- || dnsDomainIs(host, ".bigbangmedia.com") |
- || dnsDomainIs(host, ".ad-annex.com") |
- || dnsDomainIs(host, ".iwdirect.com") |
- || dnsDomainIs(host, ".adlink.de") |
- || dnsDomainIs(host, ".bidclix.net") |
- || dnsDomainIs(host, ".webclients.net") |
- || dnsDomainIs(host, ".linkcounter.com") |
- || dnsDomainIs(host, ".sitetracker.com") |
- || dnsDomainIs(host, ".adtrix.com") |
- || dnsDomainIs(host, ".netshelter.net") |
- || dnsDomainIs(host, ".rn11.com") |
- // http://vpdc.ru4.com/content/images/66/011.gif |
- || dnsDomainIs(host, ".ru4.com") |
- // no '.' for rightmedia.net |
- || dnsDomainIs(host, "rightmedia.net") |
- || dnsDomainIs(host, ".casalemedia.com") |
- || dnsDomainIs(host, ".casalemedia.com") |
- |
- // C-J |
- || dnsDomainIs(host, ".commission-junction.com") |
- || dnsDomainIs(host, ".qkimg.net") |
- // emjcd.com ... many others |
- |
- // */adv/* |
- || dnsDomainIs(host, ".bluestreak.com") |
- |
- // Virtumundo -- as annoying as they get |
- || dnsDomainIs(host, ".virtumundo.com") |
- || dnsDomainIs(host, ".treeloot.com") |
- || dnsDomainIs(host, ".memberprize.com") |
- |
- // internetfuel and _some_ of the sites they redirect to |
- // (more internetfuel - from Sam G) |
- || dnsDomainIs(host, ".internetfuel.net") |
- || dnsDomainIs(host, ".internetfuel.com") |
- || dnsDomainIs(host, ".peoplecaster.com") |
- || dnsDomainIs(host, ".cupidsdatabase.com") |
- || dnsDomainIs(host, ".automotive-times.com") |
- || dnsDomainIs(host, ".healthy-lifetimes.com") |
- || dnsDomainIs(host, ".us-world-business.com") |
- || dnsDomainIs(host, ".internet-2-web.com") |
- || dnsDomainIs(host, ".my-job-careers.com") |
- || dnsDomainIs(host, ".freeonline.com") |
- || dnsDomainIs(host, ".exitfuel.com") |
- || dnsDomainIs(host, ".netbroadcaster.com") |
- || dnsDomainIs(host, ".spaceports.com") |
- || dnsDomainIs(host, ".mircx.com") |
- || dnsDomainIs(host, ".exitchat.com") |
- || dnsDomainIs(host, ".atdmt.com") |
- || dnsDomainIs(host, ".partner2profit.com") |
- || dnsDomainIs(host, ".centrport.net") |
- || dnsDomainIs(host, ".centrport.com") |
- || dnsDomainIs(host, ".rampidads.com") |
- |
- ////// |
- // |
- // banner servers |
- // (typically these set cookies or serve animated ads) |
- // |
- |
- || dnsDomainIs(host, "commonwealth.riddler.com") |
- || dnsDomainIs(host, "banner.freeservers.com") |
- || dnsDomainIs(host, "usads.futurenet.com") |
- || dnsDomainIs(host, "banners.egroups.com") |
- || dnsDomainIs(host, "ngadclient.hearme.com") |
- || dnsDomainIs(host, "affiliates.allposters.com") |
- || dnsDomainIs(host, "adincl.go2net.com") |
- || dnsDomainIs(host, "webads.bizservers.com") |
- || dnsDomainIs(host, ".addserv.com") |
- || dnsDomainIs(host, ".falkag.net") |
- || (host == "promote.pair.com") |
- |
- // marketwatch.com (flash ads), but CSS get loaded |
- || (dnsDomainIs(host, ".mktw.net") |
- && !shExpMatch(url, "*/css/*")) |
- || dnsDomainIs(host, ".cjt1.net") |
- || dnsDomainIs(host, ".bns1.net") |
- |
- // "undergroundonline" |
- // comes from iframe with this url: http://mediamgr.ugo.com/html.ng/size=728x90&affiliate=megagames&channel=games&subchannel=pc&Network=affiliates&rating=g |
- || dnsDomainIs(host, "image.ugo.com") |
- || dnsDomainIs(host, "mediamgr.ugo.com") |
- |
- // web ads and "cheap Long Distance" |
- || dnsDomainIs(host, "zonecms.com") |
- || dnsDomainIs(host, "zoneld.com") |
- |
- // AOL |
- || dnsDomainIs(host, ".atwola.com") |
- || dnsDomainIs(host, "toolbar.aol.com") |
- |
- // animated ads shown at techbargains |
- || (dnsDomainIs(host, ".overstock.com") |
- && shExpMatch(url, "*/linkshare/*")) |
- || (dnsDomainIs(host, ".supermediastore.com") |
- && shExpMatch(url, "*/lib/supermediastore/*")) |
- || (dnsDomainIs(host, ".shop4tech.com") |
- && shExpMatch(url, "*/assets/*")) |
- || (dnsDomainIs(host, ".softwareandstuff.com") |
- && shExpMatch(url, "*/media/*")) |
- || (dnsDomainIs(host, ".buy.com") |
- && shExpMatch(url, "*/affiliate/*")) |
- |
- || (dnsDomainIs(host, "pdaphonehome.com") |
- && (shExpMatch(url, "*/pocketpcmagbest.gif") |
- || shExpMatch(url, "*/link-msmobiles.gif"))) |
- || (dnsDomainIs(host, "ppc4you.com") |
- && shExpMatch(url, "*/ppc_top_sites.gif")) |
- |
- // more animated ads... these really drive me crazy |
- || (dnsDomainIs(host, ".freewarepalm.com") |
- && shExpMatch(url, "*/sponsors/*")) |
- |
- ////// |
- // |
- // popups/unders |
- // |
- |
- || dnsDomainIs(host, "remotead.cnet.com") |
- || dnsDomainIs(host, ".1st-dating.com") |
- || dnsDomainIs(host, ".mousebucks.com") |
- || dnsDomainIs(host, ".yourfreedvds.com") |
- || dnsDomainIs(host, ".popupsavings.com") |
- || dnsDomainIs(host, ".popupmoney.com") |
- || dnsDomainIs(host, ".popuptraffic.com") |
- || dnsDomainIs(host, ".popupnation.com") |
- || dnsDomainIs(host, ".infostart.com") |
- || dnsDomainIs(host, ".popupad.net") |
- || dnsDomainIs(host, ".usapromotravel.com") |
- || dnsDomainIs(host, ".goclick.com") |
- || dnsDomainIs(host, ".trafficwave.net") |
- || dnsDomainIs(host, ".popupad.net") |
- || dnsDomainIs(host, ".paypopup.com") |
- |
- // Popups from ezboard |
- || dnsDomainIs(host, ".greenreaper.com") |
- || dnsDomainIs(host, ".spewey.com") |
- || dnsDomainIs(host, ".englishharbour.com") |
- || dnsDomainIs(host, ".casino-trade.com") |
- || dnsDomainIs(host, "got2goshop.com") |
- // more ezboard crud (from Miika Asunta) |
- || dnsDomainIs(host, ".addynamix.com") |
- || dnsDomainIs(host, ".trafficmp.com") |
- || dnsDomainIs(host, ".makingmoneyfromhome.net") |
- || dnsDomainIs(host, ".leadcart.com") |
- |
- // http://www.power-mark.com/js/popunder.js |
- || dnsDomainIs(host, ".power-mark.com") |
- |
- ////// |
- // |
- // User tracking (worse than ads) && hit counting "services" |
- // |
- |
- // "web trends live" |
- || dnsDomainIs(host, ".webtrendslive.com") |
- || dnsDomainIs(host, ".wtlive.com") |
- |
- // 1x1 tracking images |
- // ** (but also used in some pay-for-clicks that I want to follow, |
- // ** so disabled for now. 9/2001) |
- // || dnsDomainIs(host, "service.bfast.com") |
- |
- // one whole class C full of ad servers |
- // XXX this might need the resolver |
-// || isInNet(host, "66.40.16.0", "255.255.255.0") |
- || shExpMatch(host, "66.40.16.*") |
- |
- || dnsDomainIs(host, ".web-stat.com") |
- || dnsDomainIs(host, ".superstats.com") |
- || dnsDomainIs(host, ".allhits.ru") |
- || dnsDomainIs(host, ".list.ru") |
- || dnsDomainIs(host, ".counted.com") |
- || dnsDomainIs(host, ".rankyou.com") |
- || dnsDomainIs(host, ".clickcash.com") |
- || dnsDomainIs(host, ".clickbank.com") |
- || dnsDomainIs(host, ".paycounter.com") |
- || dnsDomainIs(host, ".cashcount.com") |
- || dnsDomainIs(host, ".clickedyclick.com") |
- || dnsDomainIs(host, ".clickxchange.com") |
- || dnsDomainIs(host, ".sitestats.com") |
- || dnsDomainIs(host, ".site-stats.com") |
- || dnsDomainIs(host, ".hitbox.com") |
- || dnsDomainIs(host, ".exitdirect.com") |
- || dnsDomainIs(host, ".realtracker.com") |
- || dnsDomainIs(host, ".etracking.com") |
- || dnsDomainIs(host, ".livestat.com") |
- || dnsDomainIs(host, ".spylog.com") |
- || dnsDomainIs(host, ".freestats.com") |
- || dnsDomainIs(host, ".addfreestats.com") |
- || dnsDomainIs(host, ".topclicks.net") |
- || dnsDomainIs(host, ".mystat.pl") |
- || dnsDomainIs(host, ".hitz4you.de") |
- || dnsDomainIs(host, ".hitslink.com") |
- || dnsDomainIs(host, ".thecounter.com") |
- || dnsDomainIs(host, ".roiservice.com") |
- || dnsDomainIs(host, ".overture.com") |
- || dnsDomainIs(host, ".xiti.com") |
- || dnsDomainIs(host, ".cj.com") |
- || dnsDomainIs(host, ".anrdoezrs.net") |
- || dnsDomainIs(host, ".hey.it") |
- || dnsDomainIs(host, ".ppctracking.net") |
- || dnsDomainIs(host, ".darkcounter.com") |
- || dnsDomainIs(host, ".2o7.com") |
- || dnsDomainIs(host, ".2o7.net") |
- || dnsDomainIs(host, ".gostats.com") |
- || dnsDomainIs(host, ".everstats.com") |
- || dnsDomainIs(host, ".onestat.com") |
- || dnsDomainIs(host, ".statcounter.com") |
- || dnsDomainIs(host, ".trafic.ro") |
- || dnsDomainIs(host, ".exitexchange.com") |
- |
- // clickability, via CNN |
- || dnsDomainIs(host, ".clickability.com") |
- || dnsDomainIs(host, ".savethis.com") |
- |
- ////// |
- // |
- // Dead domain parking |
- // |
- || dnsDomainIs(host, ".netster.com") |
- |
- ////// |
- // |
- // Search engine "optimizers" |
- // |
- || dnsDomainIs(host, ".searchmarketing.com") |
- |
- ////// |
- // |
- // Spyware/worms |
- // |
- |
- || dnsDomainIs(host, ".friendgreetings.com") |
- || dnsDomainIs(host, ".permissionedmedia.com") |
- || dnsDomainIs(host, ".searchbarcash.com") |
- |
- ////// |
- // |
- // "Surveys" |
- // |
- |
- || dnsDomainIs(host, ".zoomerang.com") |
- |
- ////// |
- // |
- // "Casino" ads (scams) |
- // |
- |
- || dnsDomainIs(host, ".aceshigh.com") |
- || dnsDomainIs(host, ".idealcasino.net") |
- || dnsDomainIs(host, ".casinobar.net") |
- || dnsDomainIs(host, ".casinoionair.com") |
- |
- || (dnsDomainIs(host, ".go2net.com") |
- && shExpMatch(url, "*adclick*") |
- ) |
- |
- ////// |
- // |
- // Spammers |
- // |
- |
- || dnsDomainIs(host, ".licensed-collectibles.com") |
- || dnsDomainIs(host, ".webdesignprofessional.com") |
- |
- ////// |
- // |
- // Directed at extra annoying places |
- // |
- |
- // Attempts to download ad-supported spyware without asking first |
- || dnsDomainIs(host, ".gator.com") |
- |
- // ebay |
- || ((dnsDomainIs(host, "pics.ebay.com") |
- || dnsDomainIs(host, "pics.ebaystatic.com")) |
- && shExpMatch(url, "*/pics/mops/*/*[0-9]x[0-9]*") |
- ) |
- || (dnsDomainIs(host, "ebayobjects.com") |
- && shExpMatch(url, "*search/keywords*") |
- ) |
- || dnsDomainIs(host, "admarketplace.com") |
- || dnsDomainIs(host, "admarketplace.net") |
- |
- // Bravenet & Ezboard |
- || (dnsDomainIs(host, ".ezboard.com") |
- && shExpMatch(url, "*/bravenet/*") |
- ) |
- || (dnsDomainIs(host, ".bravenet.com") |
- && ( shExpMatch(host, "*counter*") |
- || shExpMatch(url, "*/jsbanner*") |
- || shExpMatch(url, "*/bravenet/*") |
- ) |
- ) |
- |
- // GeoCities |
- // (checking "toto" from Prakash Persaud) |
- || (( dnsDomainIs(host,"geo.yahoo.com") |
- || dnsDomainIs(host,".geocities.com")) |
- && ( |
- shExpMatch(url,"*/toto?s*") |
- || shExpMatch(url, "*geocities.com/js_source*") |
- || dnsDomainIs(host, "visit.geocities.com") |
- ) |
- ) |
- |
- // Yahoo ads (direct and via Akamai) |
- // http://us.a1.yimg.com/us.yimg.com/a/... |
- || (dnsDomainIs(host,"yimg.com") |
- && ( shExpMatch(url,"*yimg.com/a/*") |
- || shExpMatch(url,"*yimg.com/*/adv/*") |
- ) |
- ) |
- // "eyewonder" ads at Yahoo |
- || dnsDomainIs(host,"qz3.net") |
- || dnsDomainIs(host,".eyewonder.com") |
- |
- // background ad images |
- || dnsDomainIs(host,"buzzcity.com") |
- |
- // FortuneCity - ads and tracking |
- || (dnsDomainIs(host,".fortunecity.com") |
- && ( shExpMatch(url,"*/js/adscript*") |
- || shExpMatch(url,"*/js/fctrack*") |
- ) |
- ) |
- |
- // zdnet |
- // tracking webbugs: |
- // http://gserv.zdnet.com/clear/ns.gif?a000009999999999999+2093 |
- || (dnsDomainIs(host, ".zdnet.com") |
- && ( dnsDomainIs(host, "ads3.zdnet.com") |
- || host == "gserv.zdnet.com" |
- || shExpMatch(url, "*/texis/cs/ad.html") |
- || shExpMatch(url, "*/adverts") |
- ) |
- ) |
- |
- // cnet |
- // web bugs and ad redirections |
- // taken care of by hostname rules: |
- // http://adimg.com.com/... |
- // http://adlog.com.com/... |
- // http://dw.com.com/clear/c.gif |
- // http://dw.com.com/redir?astid=2&destUrl=http%3A%2F%2Fwww.buy ... |
- // http://mads.com.com/mac-ad?... |
- || (host == "dw.com.com" || host == "mads.com.com") |
- || (dnsDomainIs(host, ".com.com") |
- && ( host == "dw.com.com" |
- || host == "mads.com.com" |
- ) |
- ) |
- |
- // nytimes |
- || (dnsDomainIs(host, ".nytimes.com") |
- && shExpMatch(url,"*/adx/*") |
- ) |
- |
- // pop-after |
- || dnsDomainIs(host, ".unicast.net") |
- |
- |
- // Be Free affiliate ads |
- || dnsDomainIs(host, ".reporting.net") |
- || dnsDomainIs(host, ".affliate.net") |
- || (dnsDomainIs(host, ".akamai.net") |
- && shExpMatch(url, "*.affiliate.net/*") |
- ) |
- |
- // Infospace.com popunder |
- // for "webmarket.com" & "shopping.dogpile.com" -- just say no! |
- || (dnsDomainIs(host, ".infospace.com") |
- && shExpMatch(url, "*/goshopping/*") |
- ) |
- || dnsDomainIs(host, ".webmarket.com") |
- || dnsDomainIs(host, "shopping.dogpile.com") |
- |
- // goto.com popunder for information.gopher.com |
- || dnsDomainIs(host, "information.gopher.com") |
- |
- // About.com popunder and floating ad bar |
- || (dnsDomainIs(host, ".about.com") |
- && (0 |
- || shExpMatch(url, "*/sprinks/*") |
- || shExpMatch(url, "*about.com/0/js/*") |
- || shExpMatch(url, "*about.com/f/p/*") |
- ) |
- ) |
- |
- // Dell |
- || (dnsDomainIs(host, ".dell.com") |
- && shExpMatch(url, "*/images/affiliates/*") |
- ) |
- |
- // IFilm iframes |
- || (dnsDomainIs(host, ".ifilm.com") |
- && (shExpMatch(url, "*/partners/*") |
- || shExpMatch(url, "*/redirect*") |
- ) |
- ) |
- |
- // tomshardware |
- // they are most annoying: |
- // - cookies on their background images to track you |
- // - looping shockwave ads |
- // this kills most of the crud |
-// || isInNet(host, "216.92.21.0", "255.255.255.0") |
- || ((dnsDomainIs(host, ".tomshardware.com") |
- || shExpMatch(host, "216.92.21.*")) |
- && ( shExpMatch(url, "*/cgi-bin/banner*") |
- || shExpMatch(url, "*/cgi-bin/bd.m*") |
- || shExpMatch(url, "*/images/banner/*") |
- ) |
- ) |
- |
- || shExpMatch(url, "*mapsonus.com/ad.images*") |
- |
- // Slashdot: added these when I saw hidden 1x1 images with cookies |
- || dnsDomainIs(host, "adfu.blockstackers.com") |
- || (dnsDomainIs(host, "slashdot.org") |
- && ( |
- shExpMatch(url, "*/slashdot/pc.gif*") |
- || shExpMatch(url, "*/pagecount.gif*") |
- || shExpMatch(url, "*/adlog.pl*") |
- ) |
- ) |
- || dnsDomainIs(host, "googlesyndication.com") |
- || dnsDomainIs(host, "google-analytics.com") |
- |
- // it-aint-cool.com |
- || (dnsDomainIs(host, "aintitcool.com") |
- && ( |
- shExpMatch(url, "*/newline/*") |
- || shExpMatch(url, "*/drillteammedia/*") |
- || shExpMatch(url, "*/foxsearchlight/*") |
- || shExpMatch(url, "*/media/aol*") |
- || shExpMatch(url, "*swf") |
- ) |
- ) |
- |
- // Staples & CrossMediaServices |
- || (dnsDomainIs(host, ".staples.com") |
- && shExpMatch(url, "*/pixeltracker/*") |
- ) |
- || dnsDomainIs(host, "pt.crossmediaservices.com") |
- |
- // OfficeMax affiliate art (affArt->affart because of toLowerCase) |
- || (dnsDomainIs(host, ".officemax.com") |
- && shExpMatch(url, "*/affart/*") |
- ) |
- |
- // complicated JavaScript for directed ads! |
-// 1/5/2004: allow /js/ as they now use it for graphs |
-// || (dnsDomainIs(host, ".anandtech.com") |
-// && (shExpMatch(url,"*/js/*") |
-// || shExpMatch(url,"*/bnr_*") |
-// ) |
-// ) |
- |
- // hardocp |
- // http://65.119.30.151/UploadFilesForNewegg/onlineads/newegg728hardocp.swf |
- || (host == "hera.hardocp.com") |
- || shExpMatch(url,"*/onlineads/*") |
- |
- // complicated JavaScript for gliding ads! |
- || (dnsDomainIs(host, ".fatwallet.com") |
- && shExpMatch(url,"*/js/*") |
- ) |
- |
- // cnet ads |
- || dnsDomainIs(host, "promo.search.com") |
- |
- // IMDB celeb photos |
- // (Photos/CMSIcons->photos/cmsicons because of toLowerCase) |
- || (dnsDomainIs(host, "imdb.com") |
- && ( shExpMatch(url, "*/photos/cmsicons/*") |
- || shExpMatch(url, "*/icons/*/celeb/*") |
- || shExpMatch(url, "*.swf") |
- ) |
- ) |
- // incredibly annoying IMDB shock/flash ads |
- || dnsDomainIs(host, "kliptracker.com") |
- || dnsDomainIs(host, "klipmart.com") |
- |
- || host == "spinbox.techtracker.com" |
- |
- // Amazon affiliate 'search'. retrieves a JS that writes new HTML |
- // that references one or more images "related to your search". |
- // (If there is a real use for rcm.amazon.com, let me know) |
- // http://rcm.amazon.com/e/cm?t=starlingtechnolo&l=st1&search=cynicism&mode=books&p=11&o=1&bg1=CEE7FF&fc1=000000&lc1=083194&lt1=_blank |
- || host == "rcm.amazon.com" |
- |
- ////// |
- // |
- // "Other Scum And Villainry" |
- // |
- |
- // Popup from "reserved" domains at register.com |
- // (I considered blocking all of register.com) |
- || (dnsDomainIs(host, ".register.com") |
- && (shExpMatch(url,"*.js") |
- || shExpMatch(host, "searchtheweb*") |
- || shExpMatch(host, "futuresite*") |
- ) |
- ) |
- |
- || dnsDomainIs(host, ".oingo.com") |
- || dnsDomainIs(host, ".namingsolutions.com") |
- |
- // "Data collection" |
- || dnsDomainIs(host, ".coremetrics.com") |
- |
- // Sets your home page |
- || dnsDomainIs(host, ".firehunt.com") |
- |
- // tracking |
- || dnsDomainIs(host, ".appliedsemantics.com") |
- |
- // Scum who buy ad space from the above |
- // || dnsDomainIs(host, ".hartfordrents.com") |
- // || dnsDomainIs(host, ".chicagocomputerrentals.com") |
- // || dnsDomainIs(host, ".ccrsolutions.com") |
- // || dnsDomainIs(host, ".rushcomputer.com") |
- // || dnsDomainIs(host, ".localesimates.com") |
- // || dnsDomainIs(host, ".unitedvision.com") |
- // XXX this might need the resolver |
-// || isInNet(host, "216.216.246.31", "255.255.255.255") |
- || (host == "216.216.246.31") |
- |
- // avsforum ads |
-// || isInNet(host, "216.66.21.35", "255.255.255.255") |
- || (host == "216.66.21.35") |
- || dnsDomainIs(host, ".avsads.com") |
- |
- // bogus "search" sites at non-existent sites |
- || dnsDomainIs(host, ".search411.com") |
- |
- // palmgear.com |
- || (dnsDomainIs(host, ".palmgear.com") |
- && ( shExpMatch(url, "*/adsales/*") |
- || shExpMatch(url, "*/emailblast*") |
- ) |
- ) |
- |
- ////// |
- // |
- // Contributed adult sites |
- // |
- |
- || dnsDomainIs(host, ".porntrack.com") |
- || dnsDomainIs(host, ".sexe-portail.com") |
- || dnsDomainIs(host, ".sextracker.com") |
- || dnsDomainIs(host, ".sexspy.com") |
- || dnsDomainIs(host, ".offshoreclicks.com") |
- || dnsDomainIs(host, ".exxxit.com") |
- || dnsDomainIs(host, "private-dailer.biz") |
- || shExpMatch(url, "*retestrak.nl/misc/reet.gif") |
- || shExpMatch(url, "*dontstayin.com/*.swf") |
- |
- // debug |
- // || (alertmatch("NOT:" + url) && 0) |
- |
- ) { |
- |
- // alert("blackholing: " + url); |
- |
- // deny this request |
- return blackhole; |
- |
- } else { |
- // debug |
- // alert("allowing: " + url); |
- |
- // all other requests go direct and avoid any overhead |
- return normal; |
- } |
-} |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// This line is just for testing; you can ignore it. But, if you are having |
-// problems where you think this PAC file isn't being loaded, then change this |
-// to read "if (1)" and the alert box should appear when the browser loads this |
-// file. |
-// |
-// This works for IE4, IE5, IE5.5, IE6 and Netscape 2.x, 3.x, and 4.x. |
-// (For IE6, tested on Win2K) |
-// This does not work for Mozilla before 1.4 (and not for Netscape 6.x). |
-// In Mozilla 1.4+ and Fireox, this will write to the JavaScript console. |
-// |
-if (0) { |
- alert("no-ads.pac: LOADED:\n" + |
- " version: "+noadsver+"\n" + |
- " normal: "+normal+"\n" + |
- " blackhole: "+blackhole+"\n" + |
- " localproxy: "+localproxy+"\n" + |
- " bypass: "+bypass+"\n" |
- // MSG |
- ); |
-} |
- |
-// The above should show you that this JavaScript is executed in an |
-// unprotected global context. NEVER point at someone elses autoconfig file; |
-// always load from your own copy! |
- |
-// an alert that returns true |
-function alertmatch(str) |
-{ |
- // alert("match: "+str); |
- return 1; |
-} |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// Replacement function for dnsDomainIs(). This is to replace the |
-// prefix problem, which a leading '.' used to be used for. |
-// |
-// dnsDomainIs("bar.com", "bar.com") => true |
-// dnsDomainIs("www.bar.com", "bar.com") => true |
-// dnsDomainIs("www.foobar.com", "bar.com") => true <<< incorrect |
-// |
-// isInDomain("bar.com", "bar.com") => true |
-// isInDomain("www.bar.com", "bar.com") => true |
-// isInDomain("www.foobar.com", "bar.com") => false <<< correct |
-// |
-function isInDomain(host, domain) { |
- if (host.length > domain.length) { |
- return (host.substring(host.length - domain.length - 1) == "."+domain); |
- } |
- return (host == domain); |
-} |
- |
-/////////////////////////////////////////////////////////////////////////////// |
-// |
-// Tired of reading boring comments? Try reading today's comics: |
-// http://www.schooner.com/~loverso/comics/ |
-// |
-// or getting a quote from my collection: |
-// http://www.schooner.com/~loverso/quote/ |
-// |
- |
-// eof |
- //intelliserv.net |
- //intellisrv.net |
- //rambler.ru |
- //rightmedia.net |
- //calloffate.com |
- //fairmeasures.com |
- |