1 /* config.h.win - Microsoft Visual C++ version of config.h */
4 /*********************************************************************
6 * File : $Source: /cvsroot/ijbswa/current/config.h,v $
8 * Purpose : This file should be the first thing included in every
9 * .c file. (Before even system headers). It contains
10 * #define statements for various features. It was
11 * introduced because the compile command line started
12 * getting ludicrously long with feature defines.
14 * Copyright : Written by and Copyright (C) 2001 the SourceForge
15 * IJBSWA team. http://ijbswa.sourceforge.net
17 * Based on the Internet Junkbuster originally written
18 * by and Copyright (C) 1997 Anonymous Coders and
19 * Junkbusters Corporation. http://www.junkbusters.com
21 * This program is free software; you can redistribute it
22 * and/or modify it under the terms of the GNU General
23 * Public License as published by the Free Software
24 * Foundation; either version 2 of the License, or (at
25 * your option) any later version.
27 * This program is distributed in the hope that it will
28 * be useful, but WITHOUT ANY WARRANTY; without even the
29 * implied warranty of MERCHANTABILITY or FITNESS FOR A
30 * PARTICULAR PURPOSE. See the GNU General Public
31 * License for more details.
33 * The GNU General Public License should be included with
34 * this file. If not, you can view it at
35 * http://www.gnu.org/copyleft/gpl.html
36 * or write to the Free Software Foundation, Inc., 59
37 * Temple Place - Suite 330, Boston, MA 02111-1307, USA.
41 * Revision 1.6 2001/05/29 09:50:24 jongfoster
42 * Unified blocklist/imagelist/permissionslist.
43 * File format is still under discussion, but the internal changes
46 * Also modified interceptor behaviour:
47 * - We now intercept all URLs beginning with one of the following
48 * prefixes (and *only* these prefixes):
50 * * http://ijbswa.sf.net/config/
51 * * http://ijbswa.sourceforge.net/config/
52 * - New interceptors "home page" - go to http://i.j.b/ to see it.
53 * - Internal changes so that intercepted and fast redirect pages
54 * are not replaced with an image.
55 * - Interceptors now have the option to send a binary page direct
56 * to the client. (i.e. ijb-send-banner uses this)
57 * - Implemented show-url-info interceptor. (Which is why I needed
58 * the above interceptors changes - a typical URL is
59 * "http://i.j.b/show-url-info?url=www.somesite.com/banner.gif".
60 * The previous mechanism would not have intercepted that, and
61 * if it had been intercepted then it then it would have replaced
64 * Revision 1.5 2001/05/26 00:28:36 jongfoster
65 * Automatic reloading of config file.
66 * Removed obsolete SIGHUP support (Unix) and Reload menu option (Win32).
67 * Most of the global variables have been moved to a new
68 * struct configuration_spec, accessed through csp->config->globalname
69 * Most of the globals remaining are used by the Win32 GUI.
71 * Revision 1.4 2001/05/25 22:17:28 jongfoster
72 * Resurrecting these files which are required for the MS Visual C++
75 * Revision 1.2 2001/05/20 01:21:20 jongfoster
76 * Version 2.9.4 checkin.
77 * - Merged popupfile and cookiefile, and added control over PCRS
78 * filtering, in new "permissionsfile".
79 * - Implemented LOG_LEVEL_FATAL, so that if there is a configuration
80 * file error you now get a message box (in the Win32 GUI) rather
81 * than the program exiting with no explanation.
82 * - Made killpopup use the PCRS MIME-type checking and HTTP-header
84 * - Removed tabs from "config"
85 * - Moved duplicated url parsing code in "loaders.c" to a new funcition.
86 * - Bumped up version number.
88 * Revision 1.1.1.1 2001/05/15 13:58:49 oes
89 * Initial import of version 2.9.3 source tree
92 *********************************************************************/
95 /* Define to empty if the keyword does not work. */
98 /* Define to `unsigned' if <sys/types.h> doesn't define. */
101 /* Define if you have the ANSI C header files. */
102 #define STDC_HEADERS 1
105 * Version number - Major (X._._)
107 #define VERSION_MAJOR 2
110 * Version number - Minor (_.X._)
112 #define VERSION_MINOR 9
115 * Version number - Point (_._.X)
117 #define VERSION_POINT 4
120 * Version number, as a string
122 #define VERSION "2.9.4"
125 * Regular expression matching for URLs. (Highly recommended). If this is
126 * not defined then you can ony use prefix matching.
131 * Allow JunkBuster to be "disabled" so it is just a normal non-blocking
132 * non-anonymizing proxy. This is useful if you're trying to access a
133 * blocked or broken site - just change the setting in the config file
134 * and send a SIGHUP (UN*X), or use the handy "Disable" menu option (Windows
140 * Enables arbitrary content modification regexps
145 * If a stream is compressed via gzip (Netscape specific I think), then
146 * it cannot be modified with Perl regexps. This forces it to be
152 * Enables statistics function.
157 * Bypass filtering for 1 page only
162 * Locally redirect remote script-redirect URLs
164 #define FAST_REDIRECTS 1
167 * Split the show-proxy-args page into a page for each config file.
169 #define SPLIT_PROXY_ARGS 1
172 * Kills JavaScript popups - window.open, onunload, etc.
177 * Support for webDAV - e.g. so Microsoft Outlook can access HotMail e-mail
182 * Detect image requests automatically for MSIE. Will fall back to
183 * other image-detection methods (i.e. "+image" permission) for other
186 * You must also define IMAGE_BLOCKING to use this feature.
188 * It detects the following header pair as an image request:
190 * User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
193 * And the following as a HTML request:
195 * User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
196 * Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, * / *
198 * And no, I haven't got that backwards - IE is being wierd.
201 * 1) If you press shift-reload on a blocked HTML page, you get
202 * the image "blocked" page, not the HTML "blocked" page.
203 * 2) Once an image "blocked" page has been sent, viewing it
204 * in it's own browser window *should* bring up the HTML
205 * "blocked" page, but it doesn't. You need to clear the
206 * browser cache to get the HTML version again.
208 * These limitations are due to IE making inconsistent choices
209 * about which "Accept:" header to send.
211 #define DETECT_MSIE_IMAGES 1
214 * Allow blocking using images as well as HTML.
215 * If you do not define this then everything is blocked as HTML.
217 * Note that this is required if you want to use DETECT_MSIE_IMAGES.
219 #define IMAGE_BLOCKING 1
222 * Allows the use of ACL files to control access to the proxy by IP address.
227 * Allows the use of trust files.
229 #define TRUST_FILES 1
232 * Allows the use of jar files to capture cookies.
237 * Use PCRE rather than GNU Regex
241 /* Define if you have the bcopy function. */
244 /* Define if you have the memmove function. */
245 #define HAVE_MEMMOVE 1
247 /* Define if you have the strerror function. */
248 #define HAVE_STRERROR 1
250 #endif /* _CONFIG_H */