X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;f=default.filter;h=e19f6cf6a93be93b559a123d87b6d5f11f0e1763;hb=0d018008440f298136ad658a61bb6887d74d97e2;hp=05cea808473d4d0a230fff7fbfdd279a6cd8d201;hpb=6190b0ff666de18129c8c197a4a769fe7c14d622;p=privoxy.git
diff --git a/default.filter b/default.filter
index 05cea808..e19f6cf6 100644
--- a/default.filter
+++ b/default.filter
@@ -1,38 +1,30 @@
-# ********************************************************************
-#
-# File : $Source: /cvsroot/ijbswa/current/default.filter,v $
-#
-# $Id: default.filter,v 1.43 2007/06/01 14:17:04 fabiankeil Exp $
+#################################################################################
+#
+# File : default.filter
#
# Purpose : Rules to process the content of web pages
-#
-# Copyright : Written by and Copyright (C) 2001 - 2007 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.
-#
+#
+# Copyright : Written by and Copyright (C) 2001-2021 the
+# Privoxy team. https://www.privoxy.org/
+#
+# 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:
@@ -52,9 +44,9 @@
#
# Note that you are free to choose the delimiter as you see fit.
#
-# Note2: In addidion to the Perl options gimsx, the following nonstandard
+# Note2: In addition to the Perl options gimsx, the following nonstandard
# options are supported:
-#
+#
# 'U' turns the default to ungreedy matching. Add ? to quantifiers to
# switch back to greedy.
#
@@ -63,7 +55,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
@@ -71,29 +64,29 @@
# escaping anything, therefore you also have to be careful not to chose
# delimiters that appear in the replacement text. For example '<' should
# be save, while '?' will sooner or later cause conflicts with $url.
-#
+#
#################################################################################
#################################################################################
#
-# js-annoyances: Get rid of particularly annoying JavaScript abuse
+# js-annoyances: Get rid of particularly annoying JavaScript abuse.
#
#################################################################################
-FILTER: js-annoyances Get rid of particularly annoying JavaScript abuse
+FILTER: js-annoyances Get rid of particularly annoying JavaScript abuse.
# Note: Most of these jobs would be safer if restricted to a
# )|$1never|sigU
-# If we allow window.open, we want normal window features:
+# If we allow window.open, we want normal window features:
# Test: http://www.htmlgoodies.com/beyond/notitle.html
#
s/(open\s*\([^\)]+resizable=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
-s/(open\s*\([^\)]+location=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
-s/(open\s*\([^\)]+status=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
-s/(open\s*\([^\)]+scroll(?:ing|bars)=)(["']?)(?:no|0)\2/$1$2auto$2/sigU
-s/(open\s*\([^\)]+menubar=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
-s/(open\s*\([^\)]+toolbar=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
-s/(open\s*\([^\)]+directories=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
+s/(open\s*\([^\)]+location=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
+s/(open\s*\([^\)]+status=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
+s/(open\s*\([^\)]+scroll(?:ing|bars)=)(["']?)(?:no|0)\2/$1$2auto$2/sigU
+s/(open\s*\([^\)]+menubar=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
+s/(open\s*\([^\)]+toolbar=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
+s/(open\s*\([^\)]+directories=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
s/(open\s*\([^\)]+fullscreen=)(["']?)(?:yes|1)\2/$1$2no$2/sigU
s/(open\s*\([^\)]+always(?:raised|lowered)=)(["']?)(?:yes|1)\2/$1$2no$2/sigU
s/(open\s*\([^\)]+z-?lock=)(["']?)(?:yes|1)\2/$1$2no$2/sigU
s/(open\s*\([^\)]+hotkeys=)(["']?)(?:yes|1)\2/$1$2no$2/sigU
s/(open\s*\([^\)]+titlebar=)(["']?)(?:no|0)\2/$1$2yes$2/sigU
-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
#################################################################################
#
-# html-annoyances: Get rid of particularly annoying HTML abuse
+# html-annoyances: Get rid of particularly annoying HTML abuse.
#
#################################################################################
-FILTER: html-annoyances Get rid of particularly annoying HTML abuse
+FILTER: html-annoyances Get rid of particularly annoying HTML abuse.
# New browser windows (if allowed -- see no-popups filter below) should be
# resizeable and have a location and status bar
#
-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/(]+resizable=)(['"]?)(?:no|0)\2/$1$2yes$2/igU
+s/(]+location=)(['"]?)(?:no|0)\2/$1$2yes$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
@@ -161,10 +153,10 @@ s-?(blink|marquee).*>--sigU
#################################################################################
#
-# content-cookies: Kill cookies that come in the HTML or JS content
+# content-cookies: Kill cookies that come in the HTML or JS content.
#
#################################################################################
-FILTER: content-cookies Kill cookies that come in the HTML or JS content
+FILTER: content-cookies Kill cookies that come in the HTML or JS content.
# JS cookies, except those used by antiadbuster.com to detect us:
#
@@ -177,35 +169,35 @@ 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@)(?=\s*[^'"])+$1+isU
s@([^\w\s.]\s*)((?:map)?(window|this|parent)\.?)?open\s*\(@$1PrivoxyWindowOpen(@ig
-s+([^'"]\s*