From 41ad7b46e5a3ac9cbd560fd38fcfb0eb3ad68f12 Mon Sep 17 00:00:00 2001 From: oes Date: Tue, 22 May 2001 17:43:35 +0000 Subject: [PATCH] - Enabled filtering banners by size rather than URL by adding patterns that replace all standard banner sizes with the "Junkbuster" gif to the re_filterfile - Enabled filtering WebBugs by providing a pattern which kills all 1x1 images - Added support for PCRE_UNGREEDY behaviour to pcrs, which is selected by the (nonstandard and therefore capital) letter 'U' in the option string. It causes the quantifiers to be ungreedy by default. Appending a ? turns back to greedy (!). - Added a new interceptor ijb-send-banner, which sends back the "Junkbuster" gif. Without imagelist or MSIE detection support, or if tinygif = 1, or the URL isn't recognized as an imageurl, a lame HTML explanation is sent instead. - Added new feature, which permits blocking remote script redirects and firing back a local redirect to the browser. The feature is conditionally compiled, i.e. it can be disabled with --disable-fast-redirects, plus it must be activated by a "fast-redirects" line in the config file, has its own log level and of course wants to be displayed by show-proxy-args Note: Boy, all the #ifdefs in 1001 locations and all the fumbling with configure.in and acconfig.h were *way* more work than the feature itself :-( - Because a generic redirect template was needed for this, tinygif = 3 now uses the same. - Moved GIFs, and other static HTTP response templates to project.h - Many minor fixes - Removed some >400 CRs again (Jon, you really worked a lot! ;-) --- acconfig.h | 10 +++++++++- config | 32 +++++++++++++++++++++++++++++--- 2 files changed, 38 insertions(+), 4 deletions(-) diff --git a/acconfig.h b/acconfig.h index edf5c08a..7d89427a 100644 --- a/acconfig.h +++ b/acconfig.h @@ -2,7 +2,7 @@ #define _CONFIG_H /********************************************************************* * - * File : $Source: /home/administrator/cvs/ijb/acconfig.h,v $ + * File : $Source: /cvsroot/ijbswa/current/acconfig.h,v $ * * Purpose : This file should be the first thing included in every * .c file. (Before even system headers). It contains @@ -37,6 +37,9 @@ * * Revisions : * $Log: acconfig.h,v $ + * Revision 1.1.1.1 2001/05/15 13:58:45 oes + * Initial import of version 2.9.3 source tree + * * *********************************************************************/ @@ -99,6 +102,11 @@ */ #undef FORCE_LOAD +/* + * Locally redirect remote script-redirect URLs + */ +#undef FAST_REDIRECTS + /* * Split the show-proxy-args page into a page for each config file. */ diff --git a/config b/config index b5b39754..9a20fb7e 100644 --- a/config +++ b/config @@ -1,7 +1,7 @@ # Sample Configuration file for the Internet Junkbuster 2.0 # -# $Id: config,v 1.2 2001/05/17 22:37:46 oes Exp $ +# $Id: config,v 1.3 2001/05/20 01:21:20 jongfoster Exp $ # # Table of Contents @@ -339,9 +339,9 @@ referer L # # As an example of the last option: # -# tinygif 3 http://www.junkbusters.com/images/fb.gif +# tinygif 3 http://no.where/ijb-send-banner.gif # -# Will replace every blocked image with the "fb.gif" image. +# Will replace every blocked image with an image built into junkbuster. # # There is one non-obvious benefit to using option "3". If you use # option 3, your Web browser will likely cache the image you specify @@ -353,6 +353,31 @@ referer L # tinygif 2 +# +# Many sites, like yahoo.com, don't just link to other sites. +# Instead, they will link to some script on their own server, +# giving the destination as a parameter, which will then redirect +# you to the final target. +# +# URLs resulting from this scheme typically look like: +# http://some.place/some_script?http://some.where-else +# +# Sometimes, there are even multiple consecutive redirects encoded +# in the URL. These redirections via scripts make your web browing +# more traceable, since the server from which you follow such a link +# can see where you go to. Apart from that, valuable bandwidth and +# time is wasted, while your browser aks the server for one redirect +# after the other. Plus, it feeds the advertisers. +# +# The fast-redirects option enables interception of these requests +# by junkbuster, who will cut off all but the last valid URL in the +# request and send a local redirect back to your browser without +# contacting the remote site. +# +# Default: Don't intercept script-redirect URLs +# +fast-redirects + # # The debug option sets the level of debugging information to log in # the logfile (and to the console in the Windows version). A debug @@ -367,6 +392,7 @@ tinygif 2 # debug 16 # LOG = log all data into the logfile # debug 32 # FRC = debug force feature # debug 64 # REF = debug regular expression filter +# debug 128 # RED = debug fast redirects # # Multiple "debug" directives, are OK - they're logical-OR'd # together. -- 2.39.2