X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=default.filter;h=2aa9eb4aafcd76042a7f531555830d48ffa86bbc;hp=c845cedb487cd364827cde4982dfe26f16b02d1c;hb=1a723fce2e34538ed80b695803089d1c8b8f456f;hpb=ffc72f36056de144f6ff2b105a6ec91bc811c9bc diff --git a/default.filter b/default.filter index c845cedb..2aa9eb4a 100644 --- a/default.filter +++ b/default.filter @@ -1,38 +1,32 @@ -# ******************************************************************** +################################################################################# # # File : $Source: /cvsroot/ijbswa/current/default.filter,v $ # -# $Id: default.filter,v 1.75 2009/10/03 10:39:33 fabiankeil Exp $ +# $Id: default.filter,v 1.93 2016/05/25 10:50:55 fabiankeil Exp $ # # Purpose : Rules to process the content of web pages # -# Copyright : Written by and Copyright (C) 2001-2009 the +# Copyright : Written by and Copyright (C) 2001-2014 the # Privoxy team. http://www.privoxy.org/ # -# We value your feedback. However, to provide you with the best support, -# please note: -# -# * Use the support forum to get help: -# http://sourceforge.net/tracker/?group_id=11118&atid=211118 -# * Submit bugs only thru our bug forum: -# http://sourceforge.net/tracker/?group_id=11118&atid=111118 -# Make sure that the bug has not already been submitted. Please try -# to verify that it is a Privoxy bug, and not a browser or site -# bug first. If you are using your own custom configuration, please -# try the stock configs to see if the problem is a configuration -# related bug. And if not using the latest development snapshot, -# please try the latest one. Or even better, CVS sources. -# * Submit feature requests only thru our feature request forum: -# http://sourceforge.net/tracker/?atid=361118&group_id=11118&func=browse -# -# For any other issues, feel free to use the mailing lists: -# http://sourceforge.net/mail/?group_id=11118 -# -# Anyone interested in actively participating in development and related -# discussions can join the appropriate mailing list here: -# http://sourceforge.net/mail/?group_id=11118. Archives are available -# here too. -# +# This program is free software; you can redistribute it +# and/or modify it under the terms of the GNU General +# Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will +# be useful, but WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. See the GNU General Public +# License for more details. +# +# The GNU General Public License should be included with +# this file. If not, you can view it at +# http://www.gnu.org/copyleft/gpl.html +# or write to the Free Software Foundation, Inc., 59 +# Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# ################################################################################# # # Syntax: @@ -63,7 +57,8 @@ # quoting. # # 'D' (Dynamic) allows the use of variables. Supported variables are: -# $host, $origin (the IP address the request came from), $path and $url. +# $host, $listen-address, $origin (the IP address the request came +# from), $path and $url. # # Note that '$' is a bad choice as delimiter for dynamic filters as you # might end up with unintended variables if you use a variable name @@ -93,7 +88,7 @@ FILTER: js-annoyances Get rid of particularly annoying JavaScript abuse. # Get rid of Javascript referrer tracking. # Test page: http://www.javascript-page.com/referrer.html # -s|(?:\w+\.)+referrer|"Not Your Business!"|gisU +s|(?:\w+\.)+referrer|false.toString()|gisU # The status bar is for displaying link targets, not pointless blahblah # @@ -128,15 +123,15 @@ s/(open\s*\([^\)]+always(?:raised|lowered)=)(["']?)(?:yes|1)\2/$1$2no$2/sigU ################################################################################# # -# js-events: Kill all JS event bindings and timers (Radically destructive! Only for extra nasty sites). +# js-events: Kill JavaScript event bindings and timers (Radically destructive! Only for extra nasty sites). # ################################################################################# -FILTER: js-events Kill all JS event bindings and timers (Radically destructive! Only for extra nasty sites). +FILTER: js-events Kill JavaScript event bindings and timers (Radically destructive! Only for extra nasty sites). s/(on|event\.)((mouse(over|out|down|up|move))|(un)?load|contextmenu|selectstart)/never/ig # Not events, but abused on the same type of sites: s/(alert|confirm)\s*\(/concat(/ig -s/settimeout\(/concat(/ig +s/set(timeout|interval)\(/concat(/ig ################################################################################# # @@ -150,7 +145,7 @@ FILTER: html-annoyances Get rid of particularly annoying HTML abuse. # s/(]+resizable=)(['"]?)(?:no|0)\2/$1$2yes$2/igU s/(]+location=)(['"]?)(?:no|0)\2/$1$2yes$2/igU -s/(]+status=)(['"]?)(?:no|0)\2/$1$2yes1$2/igU +s/(]+status=)(['"]?)(?:no|0)\2/$1$2yes$2/igU s/(]+scrolling=)(['"]?)(?:no|0)\2/$1$2auto$2/igU s/(]+menubar=)(['"]?)(?:no|0)\2/$1$2yes$2/igU @@ -177,15 +172,15 @@ s|||igU ################################################################################# # -# refresh-tags: Kill automatic refresh tags (for dial-on-demand setups). +# refresh-tags: Kill automatic refresh tags if refresh time is larger than 9 seconds. # ################################################################################# -FILTER: refresh-tags Kill automatic refresh tags (for dial-on-demand setups). +FILTER: refresh-tags Kill automatic refresh tags if refresh time is larger than 9 seconds. # Note: Only deactivates refreshes with more than 9 seconds delay to # preserve monster-stupid but common redirections via meta tags. # -s/\2]*))?\2/\2]*))?\2@ tags to make the banners-by-* fi # This makes banners-by-size more effective and allows both banners-by-size # and banners-by-link to preserve the original image URL in the title attribute. -s|]*)\ssrc\s*=\s*(['"])([^>\\\2]+)\2|]*)\ssrc\s*=\s*(['"])([^>'" ]+)\2|]*)\ssrc\s*=\s*([^'">\\\s]+)|]+height)\s*=\s*|$1=|sig -s|\\\\2]*\2\|[^'">\\\s]+?))([^>]*)\s+width\s*=\s*((["']?)\d+?\5)(?=[\s>])|'" ]*\2\|[^'">\\\s]+?))([^>]*)\s+width\s*=\s*((["']?)\d+?\5)(?=[\s>])|]*)frameborder=(['"]?)(no|0)\2/$1/igU s/(]*)scrolling=(['"]?)(no|0)\2/$1/igU +################################################################################# +# +# iframes: Remove all detected iframes. Should only be enabled for +# individual sites after testing that the iframes are optional. +# +################################################################################# +FILTER: iframes Removes all detected iframes. Should only be enabled for individual sites. +s@@@Uisg + ################################################################################# # @@ -422,7 +426,7 @@ FILTER: fun Text replacements for subversive browsing fun! # SCNR # -s/microsoft(?!.[^\s])/MicroSuck/ig +s/microsoft(?!\.[^\s])/MicroSuck/ig # Buzzword Bingo (example for extended regex syntax) # @@ -575,7 +579,7 @@ s@(]*?)\sping=(['"]?)([^"'>]+)\2([>\s]?)@\ ################################################################################# FILTER: google CSS-based block for Google text ads. Also removes a width limitation and the toolbar advertisement. -s@@\n$0@ # Are these ids still in use? s@(]*) id=(["']?)ads_[^\2]*\2@$1 class="msn_ads"@Uig @@ -764,6 +776,34 @@ CLIENT-HEADER-TAGGER: css-requests Tags detected CSS requests as "CSS-REQUEST". s@^Accept:\s*text/css.*@CSS-REQUEST@i +################################################################################# +# +# range-requests: Tags range requests as "RANGE-REQUEST". +# +# By default Privoxy removes Range headers for requests to +# ressources that will be filtered to make sure the filters +# get the whole picture. Otherwise Range requests could be +# intentionally used to circumvent filters or, less likely, +# filtering a partial response may damage it because it matched +# a pattern that the ressource as a whole wouldn't. +# +# Range requests can be useful and save bandwidth so instead +# of removing Range headers for requests to ressources that +# will be filtered, you may prefer to simply disable filtering +# for those requests. +# +# That's what this tagger is all about. After enabling it, +# you can disable filtering for range requests using the following +# action section: +# +# {-filter -deanimate-gifs} +# TAG:^RANGE-REQUEST +# +################################################################################# +CLIENT-HEADER-TAGGER: range-requests Tags range requests as "RANGE-REQUEST". + +s@^Range:.*@RANGE-REQUEST@i + ################################################################################# # # client-ip-address: Tags the request with the client's IP address. @@ -773,6 +813,16 @@ CLIENT-HEADER-TAGGER: client-ip-address Tags the request with the client's IP ad s@^\w*\s+.*\s+HTTP/\d\.\d\s*@IP-ADDRESS: $origin@D +################################################################################# +# +# listen-address: Tags the request with the listen-address on which the request +# came in. +# +################################################################################# +CLIENT-HEADER-TAGGER: listen-address Tags the request with the listen-address on which the request came in. + +s@^\w*\s+.*\s+HTTP/\d\.\d\s*@LISTEN-ADDRESS: $listen-address@D + ################################################################################# # # http-method: Tags the request with its HTTP method. @@ -809,6 +859,15 @@ CLIENT-HEADER-TAGGER: user-agent Tags the request with the complete User-Agent h s@^User-Agent:.*@$0@i +################################################################################# +# +# referer: Tags the request with the complete Referer header. +# +################################################################################# +CLIENT-HEADER-TAGGER: referer Tags the request with the complete Referer header. + +s@^Referer:.*@$0@i + ################################################################################# # # content-type: Tags the request with the content type declared by the server.