Filled in a function comment.
[privoxy.git] / acconfig.h
1 #ifndef _CONFIG_H
2 #define _CONFIG_H
3 /*********************************************************************
4  *
5  * File        :  $Source: /cvsroot/ijbswa/current/acconfig.h,v $
6  *
7  * Purpose     :  This file should be the first thing included in every
8  *                .c file.  (Before even system headers).  It contains 
9  *                #define statements for various features.  It was
10  *                introduced because the compile command line started
11  *                getting ludicrously long with feature defines.
12  *
13  * Copyright   :  Written by and Copyright (C) 2001 the SourceForge
14  *                IJBSWA team.  http://ijbswa.sourceforge.net
15  *
16  *                Based on the Internet Junkbuster originally written
17  *                by and Copyright (C) 1997 Anonymous Coders and 
18  *                Junkbusters Corporation.  http://www.junkbusters.com
19  *
20  *                This program is free software; you can redistribute it 
21  *                and/or modify it under the terms of the GNU General
22  *                Public License as published by the Free Software
23  *                Foundation; either version 2 of the License, or (at
24  *                your option) any later version.
25  *
26  *                This program is distributed in the hope that it will
27  *                be useful, but WITHOUT ANY WARRANTY; without even the
28  *                implied warranty of MERCHANTABILITY or FITNESS FOR A
29  *                PARTICULAR PURPOSE.  See the GNU General Public
30  *                License for more details.
31  *
32  *                The GNU General Public License should be included with
33  *                this file.  If not, you can view it at
34  *                http://www.gnu.org/copyleft/gpl.html
35  *                or write to the Free Software Foundation, Inc., 59
36  *                Temple Place - Suite 330, Boston, MA  02111-1307, USA.
37  *
38  * Revisions   :
39  *    $Log: acconfig.h,v $
40  *    Revision 1.2  2001/05/22 17:43:35  oes
41  *
42  *    - Enabled filtering banners by size rather than URL
43  *      by adding patterns that replace all standard banner
44  *      sizes with the "Junkbuster" gif to the re_filterfile
45  *
46  *    - Enabled filtering WebBugs by providing a pattern
47  *      which kills all 1x1 images
48  *
49  *    - Added support for PCRE_UNGREEDY behaviour to pcrs,
50  *      which is selected by the (nonstandard and therefore
51  *      capital) letter 'U' in the option string.
52  *      It causes the quantifiers to be ungreedy by default.
53  *      Appending a ? turns back to greedy (!).
54  *
55  *    - Added a new interceptor ijb-send-banner, which
56  *      sends back the "Junkbuster" gif. Without imagelist or
57  *      MSIE detection support, or if tinygif = 1, or the
58  *      URL isn't recognized as an imageurl, a lame HTML
59  *      explanation is sent instead.
60  *
61  *    - Added new feature, which permits blocking remote
62  *      script redirects and firing back a local redirect
63  *      to the browser.
64  *      The feature is conditionally compiled, i.e. it
65  *      can be disabled with --disable-fast-redirects,
66  *      plus it must be activated by a "fast-redirects"
67  *      line in the config file, has its own log level
68  *      and of course wants to be displayed by show-proxy-args
69  *      Note: Boy, all the #ifdefs in 1001 locations and
70  *      all the fumbling with configure.in and acconfig.h
71  *      were *way* more work than the feature itself :-(
72  *
73  *    - Because a generic redirect template was needed for
74  *      this, tinygif = 3 now uses the same.
75  *
76  *    - Moved GIFs, and other static HTTP response templates
77  *      to project.h
78  *
79  *    - Many minor fixes
80  *
81  *    - Removed some >400 CRs again (Jon, you really worked
82  *      a lot! ;-)
83  *
84  *    Revision 1.1.1.1  2001/05/15 13:58:45  oes
85  *    Initial import of version 2.9.3 source tree
86  *
87  *
88  *********************************************************************/
89 \f
90 @TOP@
91
92 /*
93  * Version number - Major (X._._)
94  */
95 #undef VERSION_MAJOR
96
97 /*
98  * Version number - Minor (_.X._)
99  */
100 #undef VERSION_MINOR
101
102 /*
103  * Version number - Point (_._.X)
104  */
105 #undef VERSION_POINT
106
107 /*
108  * Version number, as a string
109  */
110 #undef VERSION
111
112 /*
113  * Regular expression matching for URLs.  (Highly recommended).  If this is 
114  * not defined then you can ony use prefix matching.
115  */
116 #undef REGEX
117
118 /*
119  * Allow JunkBuster to be "disabled" so it is just a normal non-blocking
120  * non-anonymizing proxy.  This is useful if you're trying to access a
121  * blocked or broken site - just change the setting in the config file
122  * and send a SIGHUP (UN*X), or use the handy "Disable" menu option (Windows
123  * GUI).
124  */
125 #undef TOGGLE
126
127 /*
128  * Enables arbitrary content modification regexps
129  */
130 #undef PCRS
131
132 /*
133  * If a stream is compressed via gzip (Netscape specific I think), then
134  * it cannot be modified with Perl regexps.  This forces it to be 
135  * uncompressed.
136  */
137 #undef DENY_GZIP
138
139 /*
140  * Enables statistics function.
141  */
142 #undef STATISTICS
143
144 /*
145  * Bypass filtering for 1 page only
146  */
147 #undef FORCE_LOAD
148
149 /*
150  * Locally redirect remote script-redirect URLs
151  */
152 #undef FAST_REDIRECTS
153
154 /*
155  * Split the show-proxy-args page into a page for each config file.
156  */
157 #undef SPLIT_PROXY_ARGS
158
159 /*
160  * Kills JavaScript popups - window.open, onunload, etc.
161  */
162 #undef KILLPOPUPS
163
164 /*
165  * Support for webDAV - e.g. so Microsoft Outlook can access HotMail e-mail
166  */
167 #undef WEBDAV
168
169 /*
170  * Detect image requests automatically for MSIE.  Will fall back to
171  * other image-detection methods (i.e. USE_IMAGE_LIST) for other
172  * browsers.
173  *
174  * It detects the following header pair as an image request:
175  *
176  * User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
177  * Accept: * / *
178  *
179  * And the following as a HTML request:
180  *
181  * User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
182  * Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, * / *
183  *
184  * And no, I haven't got that backwards - IE is being wierd.
185  *
186  * Known limitations: 
187  * 1) If you press shift-reload on a blocked HTML page, you get
188  *    the image "blocked" page, not the HTML "blocked" page.
189  * 2) Once an image "blocked" page has been sent, viewing it 
190  *    in it's own browser window *should* bring up the HTML
191  *    "blocked" page, but it doesn't.  You need to clear the 
192  *    browser cache to get the HTML version again.
193  *
194  * These limitations are due to IE making inconsistent choices
195  * about which "Accept:" header to send.
196  */
197 #undef DETECT_MSIE_IMAGES
198
199 /*
200  * Use image list to detect images.
201  * If you do not define this then everything is treated as HTML.
202  *
203  * Whatever the setting of this value, DETECT_MSIE_IMAGES will 
204  * override it for people using Internet Explorer.
205  */
206 #undef USE_IMAGE_LIST
207
208 /*
209  * Allows the use of ACL files to control access to the proxy by IP address.
210  */
211 #undef ACL_FILES
212
213 /*
214  * Allows the use of trust files.
215  */
216 #undef TRUST_FILES
217
218 /*
219  * Allows the use of jar files to capture cookies.
220  */
221 #undef JAR_FILES
222
223 /*
224  * Use PCRE rather than GNU Regex
225  */
226 #undef PCRE
227
228 /*
229  * Define this to use the Windows GUI for editing the blocklist.
230  * FIXME: This feature is only partially implemented and does not work
231  * FIXME: This #define can never be set by ./configure.
232  */
233 #undef WIN_GUI_EDIT
234
235 @BOTTOM@
236
237 #endif /* _CONFIG_H */