#################################################################################
#
-# File : $Source: /cvsroot/ijbswa/current/default.filter,v $
+# File : default.filter
#
-# $Id: default.filter,v 1.89 2014/05/05 09:48:55 fabiankeil Exp $
-#
# Purpose : Rules to process the content of web pages
#
-# Copyright : Written by and Copyright (C) 2001-2014 the
-# Privoxy team. http://www.privoxy.org/
+# Copyright : Written by and Copyright (C) 2001-2018 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
# 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
#
s/(<a\s+href[^>]+resizable=)(['"]?)(?:no|0)\2/$1$2yes$2/igU
s/(<a\s+href[^>]+location=)(['"]?)(?:no|0)\2/$1$2yes$2/igU
-s/(<a\s+href[^>]+status=)(['"]?)(?:no|0)\2/$1$2yes1$2/igU
+s/(<a\s+href[^>]+status=)(['"]?)(?:no|0)\2/$1$2yes$2/igU
s/(<a\s+href[^>]+scrolling=)(['"]?)(?:no|0)\2/$1$2auto$2/igU
s/(<a\s+href[^>]+menubar=)(['"]?)(?:no|0)\2/$1$2yes$2/igU
# 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|<img\s+?([^>]*)\ssrc\s*=\s*(['"])([^>\\\2]+)\2|<img src=$2$3$2 $1|siUg
-s|<img\s+?([^>]*)\ssrc\s*=\s*([^'">\\\s]+)|<img src=$2 $1|sig
-s|(<img[^>]+height)\s*=\s*|$1=|sig
+s|<img\s+?([^>]*)\ssrc\s*=\s*(['"])([^>'" ]+)\2|<img src=$2$3$2 $1|siUg
+s|<img\s+?([^>]*)\ssrc\s*=\s*([^'">\\\s]+)|<img src=$2 $1|siUg
+s|(<img[^>]+height)\s*=\s*|$1=|siUg
-s|<img (src=(?:(['"])[^>\\\\2]*\2\|[^'">\\\s]+?))([^>]*)\s+width\s*=\s*((["']?)\d+?\5)(?=[\s>])|<img $1 width=$4$3|siUg
+s|<img (src=(?:(['"])[^>'" ]*\2\|[^'">\\\s]+?))([^>]*)\s+width\s*=\s*((["']?)\d+?\5)(?=[\s>])|<img $1 width=$4$3|siUg
#################################################################################
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.