Block requests to secure-eu.nmrodam.com/
[privoxy.git] / regression-tests.action
index 1307c0e..92b4388 100644 (file)
@@ -1,14 +1,15 @@
 #############################################################################
 #
 # This is a configuration file for Privoxy-Regression-Test
-# (included in the source tarball's tools directory).
+# (included in the source tarball's tools directory and available at
+# https://www.privoxy.org/gitweb/?p=privoxy.git;a=blob;f=tools/privoxy-regression-test.pl;hb=HEAD).
 #
-# After referencing it in your Privoxy configuration both Privoxy and
+# After referencing this file in your Privoxy configuration both Privoxy and
 # Privoxy-Regression-Test should be good to go.
 #
 #############################################################################
 #
-# Copyright (c) 2007-2020 Fabian Keil <fk@fabiankeil.de>
+# Copyright (c) 2007-2023 Fabian Keil <fk@fabiankeil.de>
 #
 # Permission to use, copy, modify, and distribute this software for any
 # purpose with or without fee is hereby granted, provided that the above
@@ -25,7 +26,7 @@
 #############################################################################
 
 {{settings}}
-for-privoxy-version=3.0.29
+for-privoxy-version=3.0.33
 
 # Some dependencies Privoxy-Regression-Test should know about:
 #
@@ -107,7 +108,10 @@ TAG:^hide-accept-language\{block\}$
 # Set Header    = Referer: http://
 # Expect Header = REMOVAL
 #
-# Set Header    = Referer: https://p.p/
+# Set Header    = Referer: https://www.privoxy.org/
+# Expect Header = REMOVAL
+#
+# Set Header    = Referer: http://www.privoxy.org/
 # Expect Header = REMOVAL
 TAG:^hide-referrer\{conditional-block\}$
 
@@ -127,7 +131,10 @@ TAG:^hide-referrer\{conditional-block\}$
 # Set Header    = Referer: http://
 # Expect Header = Referer: http://p.p/
 #
-# Set Header    = Referer: https://p.p/
+# Set Header    = Referer: https://www.privoxy.org/
+# Expect Header = Referer: http://p.p/
+#
+# Set Header    = Referer: http://www.privoxy.org/
 # Expect Header = Referer: http://p.p/
 TAG:^hide-referrer\{conditional-forge\}$
 
@@ -605,6 +612,11 @@ TAG:^Connection: close$
 TAG:^connection-sharing disabled$
 
 {}
+# XXX: This test is expected to fail when using "https://p.p/"
+#      as CGI prefix with https inspection enabled but can't
+#      yet be automatically skipped. By design connections aren't
+#      shared when using "https://" so Privoxy does not remove the
+#      header.
 # Set Header    = Connection: close
 # Expect Header = REMOVAL
 # Level = 16
@@ -623,6 +635,15 @@ TAG:^connection-sharing enabled$
 TAG:^No Host header$
 
 {}
+# XXX: This test is expected to fail when using "https://p.p/"
+#      as CGI prefix with https inspection enabled but can't
+#      yet be automatically skipped. The reason for the test
+#      failure is that Privoxy-Regression-Test only modifies
+#      the Host header for the CONNECT request, not for the
+#      actual request that follows. Changing that would not
+#      fix the test though as a modified Host header in the
+#      actual request would result in Privoxy attempting to
+#      connect to it.
 # Set Header    = Host: whatever.example.org
 # Expect Header = NO CHANGE
 TAG:^Host header other than the target host$
@@ -712,7 +733,7 @@ TAG:^Proxy-Authorization header forwarding$
 # Expect Status Code = 404
 # Level = 18
 # Fetch Test = http://p.p/die
-# Expect Status Code = 200
+# Expect Status Code = 403
 # Level = 19
 # Fetch Test = http://p.p/show-status
 # Fetch Test = http://config.privoxy.org/show-status?file=actions&index=0
@@ -815,6 +836,10 @@ TAG:^Proxy-Authorization header forwarding$
 # Fetch Test = http://p.p/favicon.ico
 # Fetch Test = http://p.p/robots.txt
 # Fetch Test = http://p.p/send-banner
+# Fetch Test = http://p.p/send-banner?type=r
+# Fetch Test = http://p.p/send-banner?type=auto
+# Fetch Test = http://p.p/send-banner?type=blank
+# Fetch Test = http://p.p/send-banner?type=pattern
 # Trusted CGI Request = http://p.p/send-stylesheet
 # Fetch Test = http://p.p/send-stylesheet
 # Expect Status Code = 403
@@ -828,6 +853,7 @@ TAG:^Proxy-Authorization header forwarding$
 # Fetch Test = http://p.p/toggle-client-tag
 # Expect Status Code = 403
 # Level = 24
+# Fetch Test = http://p.p/wpad.dat
 
 # Trusted CGI Request = http://p.p/edit-actions
 # Expect Status Code = 302
@@ -878,6 +904,11 @@ TAG:^Proxy-Authorization header forwarding$
 # Level = 12
 # Trusted CGI Request = http://p.p/send-stylesheet
 
+# CVE-2021-20217
+# Fetch Test = http://config.privoxy.org/?1&0
+# OVE-20210203-0001
+# Fetch Test = http://config.privoxy.org/show-url-info?url=0%%0A0
+
 # The following tests depend on Privoxy being configured to deliver the user manual
 
 # Fetch Test = http://p.p/user-manual
@@ -1110,6 +1141,11 @@ redirect.example.net/
 # Redirect Destination = http://redirected.example.net/&parameter1=part-of-the-redirected-url1&parameter2=part-of-the-redirected-url1
 redirect2.example.net/
 
+# Redirected URL = http://redirect3.example.net/01-02-03-04-05-06-07-08-09
+# Redirect Destination = http://redirect3.example.net/09-08-07-06-05-04-03-02-01
+{+redirect{s@/(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)@/$9-$8-$7-$6-$5-$4-$3-$2-$1@}}
+redirect3.example.net/01-02-03-04-05-06-07-08-09
+
 {+delay-response{1}}
 # Fetch Test = http://config.privoxy.org/show-url-info?url=http%3A%2F%2Fwww.example.com%2Fprivoxy-test-delay-response
 config.privoxy.org/show-url-info\?url=http%3A%2F%2Fwww\.example\.com%2Fprivoxy-test-delay-response
@@ -1121,3 +1157,8 @@ PCRE-HOST-PATTERN:^a{3}\.example\.org$
 # Blocked URL = http://bbb.example.org/
 # Level = 26
 PCRE-HOST-PATTERN:^(bbb|ccc|ddd)\.example\.org$
+
+{+block{Block should not apply because the path pattern is left-anchored}}
+# Sticky Actions = -block
+# URL = http://www.example.org/tralala/blafasel
+www.example.org/blafasel