jongfoster [Fri, 1 Jun 2001 17:56:07 +0000 (17:56 +0000)]
Removing generated files config.h and pcre/chartables.c
Now use a custom build step to copy config.h.win to config.h
New VC++ project pcre/vc_dftables.dsp will generate pcre/chartables.c
Also adding the new files list.[ch], actions.[ch] to the console build.
jongfoster [Fri, 1 Jun 2001 17:05:32 +0000 (17:05 +0000)]
Correcting some typos, and an obsolete comment.
oes [Fri, 1 Jun 2001 13:56:20 +0000 (13:56 +0000)]
Adapted patterns to new syntax and fixed yahoo.com login
oes [Fri, 1 Jun 2001 10:32:47 +0000 (10:32 +0000)]
Added constants for anchoring selection bitmap
oes [Fri, 1 Jun 2001 10:31:51 +0000 (10:31 +0000)]
Added character class matching to trivimatch; renamed to simplematch
oes [Fri, 1 Jun 2001 10:30:55 +0000 (10:30 +0000)]
Added optional left-anchoring to domaincmp
oes [Fri, 1 Jun 2001 03:27:04 +0000 (03:27 +0000)]
Fixed line continuation problem
jongfoster [Thu, 31 May 2001 21:52:16 +0000 (21:52 +0000)]
Removing obsolete settings.
jongfoster [Thu, 31 May 2001 21:40:00 +0000 (21:40 +0000)]
Removing some commented out, obsolete blocks of code.
jongfoster [Thu, 31 May 2001 21:38:52 +0000 (21:38 +0000)]
Added list.[ch] and actions.[ch]
jongfoster [Thu, 31 May 2001 21:37:11 +0000 (21:37 +0000)]
GUI changes to rename "permissions file" to "actions file".
jongfoster [Thu, 31 May 2001 21:36:07 +0000 (21:36 +0000)]
Added RCS for actions.[ch] and list.[ch]
jongfoster [Thu, 31 May 2001 21:33:53 +0000 (21:33 +0000)]
Changes for new actions file, replacing permissionsfile
and parts of the config file. Also added support for
list_shared.
jongfoster [Thu, 31 May 2001 21:32:15 +0000 (21:32 +0000)]
Changed to include many of the new actions.
This should really be renamed actionsfile.
jongfoster [Thu, 31 May 2001 21:30:33 +0000 (21:30 +0000)]
Removed list code - it's now in list.[ch]
Renamed "permission" to "action", and changed many features
to use the actions file rather than the global config.
jongfoster [Thu, 31 May 2001 21:28:49 +0000 (21:28 +0000)]
Removed all permissionsfile code - it's now called the actions
file, and (almost) all the code is in actions.c
jongfoster [Thu, 31 May 2001 21:27:13 +0000 (21:27 +0000)]
Removed many options from the config file and into the
"actions" file: add_forwarded, suppress_vanilla_wafer,
wafer, add_header, user_agent, referer, from
Also globally replaced "permission" with "action".
jongfoster [Thu, 31 May 2001 21:24:47 +0000 (21:24 +0000)]
Changed "permission" to "action" throughout.
Removed DEFAULT_USER_AGENT - it must now be specified manually.
Moved vanilla wafer check into chat(), since we must now
decide whether or not to add it based on the URL.
jongfoster [Thu, 31 May 2001 21:21:30 +0000 (21:21 +0000)]
Permissionsfile / actions file changes:
- Changed "permission" to "action" throughout
- changes to file format to allow string parameters
- Moved helper functions to actions.c
jongfoster [Thu, 31 May 2001 21:18:45 +0000 (21:18 +0000)]
Added files actions.[ch], actionlist.h, list.[ch] to Makefile
jongfoster [Thu, 31 May 2001 21:17:20 +0000 (21:17 +0000)]
New file containing list of the actions to parse for.
jongfoster [Thu, 31 May 2001 21:16:46 +0000 (21:16 +0000)]
Moved functions to process the action list into this new file.
jongfoster [Thu, 31 May 2001 21:11:53 +0000 (21:11 +0000)]
- Moved linked list support to new "list.c" file.
Structure definitions are still in project.h,
function prototypes are now in "list.h".
- Added support for "struct list_share", which is identical
to "struct list" except it saves memory by not duplicating
the strings. Obviously, this only works if there is some
other way of managing the memory used by the strings.
(These list_share lists are used for lists which last
for only 1 request, and where all the list entries are
just coming directly from entries in the actionsfile.)
Note that you still need to destroy list_share lists
properly to free the nodes - it's only the strings
which are shared.
oes [Thu, 31 May 2001 17:35:20 +0000 (17:35 +0000)]
- Enhanced domain part globbing with infix and prefix asterisk
matching and optional unanchored operation
oes [Thu, 31 May 2001 17:33:13 +0000 (17:33 +0000)]
CRLF -> LF
joergs [Thu, 31 May 2001 15:50:59 +0000 (15:50 +0000)]
Included some changes from my personal permissionsfile.
oes [Tue, 29 May 2001 23:25:24 +0000 (23:25 +0000)]
- load_config_line() and load_permissions_file() now use chomp()
oes [Tue, 29 May 2001 23:11:38 +0000 (23:11 +0000)]
- Moved strsav() from showargs to miscutil
oes [Tue, 29 May 2001 23:10:09 +0000 (23:10 +0000)]
- Introduced chomp()
- Moved strsav() from showargs to miscutil
joergs [Tue, 29 May 2001 20:14:01 +0000 (20:14 +0000)]
AmigaOS bugfix: PCRS needs a lot of stack, stacksize for child threads
increased.
joergs [Tue, 29 May 2001 20:11:19 +0000 (20:11 +0000)]
'/* inside comment' warning removed.
joergs [Tue, 29 May 2001 20:09:15 +0000 (20:09 +0000)]
HTTP_REDIRECT_TEMPLATE fixed.
joergs [Tue, 29 May 2001 20:05:06 +0000 (20:05 +0000)]
Fixed exit() macro not exiting if called before InitAmiga()
(junkbuster --help and --version).
joergs [Tue, 29 May 2001 20:02:48 +0000 (20:02 +0000)]
Changes for AmigaOS added.
oes [Tue, 29 May 2001 12:47:12 +0000 (12:47 +0000)]
Trying to make sure that locally changed files
don't get accidentally committed. Use -f for these.
oes [Tue, 29 May 2001 11:54:01 +0000 (11:54 +0000)]
Changed banner blocking patterns to new interceptor
oes [Tue, 29 May 2001 11:53:23 +0000 (11:53 +0000)]
"See why" link added to "blocked" page
oes [Tue, 29 May 2001 11:52:21 +0000 (11:52 +0000)]
Conditional compilation of w32_socket_error
jongfoster [Tue, 29 May 2001 09:50:24 +0000 (09:50 +0000)]
Unified blocklist/imagelist/permissionslist.
File format is still under discussion, but the internal changes
are (mostly) done.
Also modified interceptor behaviour:
- We now intercept all URLs beginning with one of the following
prefixes (and *only* these prefixes):
* http://i.j.b/
* http://ijbswa.sf.net/config/
* http://ijbswa.sourceforge.net/config/
- New interceptors "home page" - go to http://i.j.b/ to see it.
- Internal changes so that intercepted and fast redirect pages
are not replaced with an image.
- Interceptors now have the option to send a binary page direct
to the client. (i.e. ijb-send-banner uses this)
- Implemented show-url-info interceptor. (Which is why I needed
the above interceptors changes - a typical URL is
"http://i.j.b/show-url-info?url=www.somesite.com/banner.gif".
The previous mechanism would not have intercepted that, and
if it had been intercepted then it then it would have replaced
it with an image.)
jongfoster [Tue, 29 May 2001 08:54:25 +0000 (08:54 +0000)]
Rewrote the innards of ssplit() to be easier to understand,
faster, and to use less memory. Didn't change the interface
except to give the parameters meaningful names.
jongfoster [Mon, 28 May 2001 17:26:33 +0000 (17:26 +0000)]
Fixing segfault if last header was crunched.
Fixing Windows build (snprintf() is _snprintf() under Win32, but we
can use the cross-platform sprintf() instead.)
jongfoster [Mon, 28 May 2001 17:21:44 +0000 (17:21 +0000)]
Correcting misleading comments
jongfoster [Mon, 28 May 2001 16:15:17 +0000 (16:15 +0000)]
Improved reporting of errors under Win32.
jongfoster [Mon, 28 May 2001 16:14:00 +0000 (16:14 +0000)]
Fixing bug in LOG_LEVEL_LOG
oes [Sun, 27 May 2001 22:17:04 +0000 (22:17 +0000)]
- re_process_buffer no longer writes the modified buffer
to the client, which was very ugly. It now returns the
buffer, which it is then written by chat.
- content_length now adjusts the Content-Length: header
for modified documents rather than crunch()ing it.
(Length info in csp->content_length, which is 0 for
unmodified documents)
- For this to work, sed() is called twice when filtering.
oes [Sun, 27 May 2001 13:19:06 +0000 (13:19 +0000)]
Patched Joergs solution for the content-length in.
jongfoster [Sat, 26 May 2001 17:28:32 +0000 (17:28 +0000)]
Fixed LOG_LEVEL_LOG
jongfoster [Sat, 26 May 2001 17:27:53 +0000 (17:27 +0000)]
Added support for CLF and fixed LOG_LEVEL_LOG.
Also did CRLF->LF fix of my previous patch.
jongfoster [Sat, 26 May 2001 17:25:14 +0000 (17:25 +0000)]
Added support for CLF (Common Log Format) and fixed LOG_LEVEL_LOG
jongfoster [Sat, 26 May 2001 17:13:28 +0000 (17:13 +0000)]
Filled in a function comment.
jongfoster [Sat, 26 May 2001 17:12:07 +0000 (17:12 +0000)]
Fatal errors loading configuration files now give better error messages.
jongfoster [Sat, 26 May 2001 15:26:15 +0000 (15:26 +0000)]
ACL feature now provides more security by immediately dropping
connections from untrusted hosts.
jongfoster [Sat, 26 May 2001 15:21:28 +0000 (15:21 +0000)]
Activity animation in Win32 GUI now works even if debug==0
jongfoster [Sat, 26 May 2001 14:15:18 +0000 (14:15 +0000)]
Cosmetic fix: // -> block comment
jongfoster [Sat, 26 May 2001 13:39:32 +0000 (13:39 +0000)]
Only crunches Content-Length header if applying RE filtering.
Without this fix, Microsoft Windows Update wouldn't work.
jongfoster [Sat, 26 May 2001 13:24:31 +0000 (13:24 +0000)]
New #define, WIN_GUI_EDIT, enables the (embryonic) Win32 GUI editor.
This #define cannot be set from ./configure - there's no point, it
doesn't work yet. See feature request # 425722
(I missed this file in my original checkin)
jongfoster [Sat, 26 May 2001 13:19:17 +0000 (13:19 +0000)]
This is generated from w32.rc by Visual C++.
No need to have it in CVS.
jongfoster [Sat, 26 May 2001 01:26:34 +0000 (01:26 +0000)]
New #define, WIN_GUI_EDIT, enables the (embryonic) Win32 GUI editor.
This #define cannot be set from ./configure - there's no point, it
doesn't work yet. See feature request # 425722
jongfoster [Sat, 26 May 2001 00:55:20 +0000 (00:55 +0000)]
Removing duplicated code. load_forwardfile() now uses create_url_spec()
jongfoster [Sat, 26 May 2001 00:37:42 +0000 (00:37 +0000)]
Cosmetic indentation correction.
jongfoster [Sat, 26 May 2001 00:31:30 +0000 (00:31 +0000)]
Fixing compiler warning about comparing signed/unsigned.
jongfoster [Sat, 26 May 2001 00:28:36 +0000 (00:28 +0000)]
Automatic reloading of config file.
Removed obsolete SIGHUP support (Unix) and Reload menu option (Win32).
Most of the global variables have been moved to a new
struct configuration_spec, accessed through csp->config->globalname
Most of the globals remaining are used by the Win32 GUI.
jongfoster [Fri, 25 May 2001 22:43:18 +0000 (22:43 +0000)]
Fixing minor memory leak and buffer overflow.
jongfoster [Fri, 25 May 2001 22:34:30 +0000 (22:34 +0000)]
Hard tabs->Spaces
jongfoster [Fri, 25 May 2001 22:33:40 +0000 (22:33 +0000)]
CRLF->LF
jongfoster [Fri, 25 May 2001 22:17:28 +0000 (22:17 +0000)]
Resurrecting these files which are required for the MS Visual C++
build only.
jongfoster [Fri, 25 May 2001 21:57:54 +0000 (21:57 +0000)]
Now gives a warning under Windows if you try to bind
it to a port that's already in use.
jongfoster [Fri, 25 May 2001 21:56:06 +0000 (21:56 +0000)]
Added FIXME comment to (broken) LOG_LEVEL_LOG
jongfoster [Fri, 25 May 2001 21:55:08 +0000 (21:55 +0000)]
Now cleans up properly on FATAL (removes taskbar icon etc)
jongfoster [Fri, 25 May 2001 21:53:27 +0000 (21:53 +0000)]
Fixing indentation
oes [Fri, 25 May 2001 14:12:40 +0000 (14:12 +0000)]
Fixed bug: Empty substitutes now detected
oes [Fri, 25 May 2001 13:55:03 +0000 (13:55 +0000)]
Reinstalled Rodneys jobs for (frame)borders
oes [Fri, 25 May 2001 11:03:55 +0000 (11:03 +0000)]
Added sanity check for NULL jobs to pcrs_exec_substitution
oes [Fri, 25 May 2001 10:12:44 +0000 (10:12 +0000)]
Fixed default case in switch statement (# -> *)
swa [Thu, 24 May 2001 07:52:24 +0000 (07:52 +0000)]
added header. removed ^M.
swa [Thu, 24 May 2001 07:41:33 +0000 (07:41 +0000)]
added header
swa [Thu, 24 May 2001 07:35:07 +0000 (07:35 +0000)]
removed ^M in order to test cvs.
oes [Wed, 23 May 2001 12:27:33 +0000 (12:27 +0000)]
Fixed ugly indentation of my last changes
oes [Wed, 23 May 2001 10:39:05 +0000 (10:39 +0000)]
- Added support for escaping the comment character
in config files by a backslash
- Added support for line continuation in config
files
- Fixed a buffer overflow bug with long config lines
oes [Wed, 23 May 2001 08:05:41 +0000 (08:05 +0000)]
Deleted config.h and pcrs/chartables.h because they are auto
generated in the build process
joergs [Wed, 23 May 2001 00:13:58 +0000 (00:13 +0000)]
AmigaOS support fixed.
oes [Tue, 22 May 2001 18:56:28 +0000 (18:56 +0000)]
CRLF -> LF
oes [Tue, 22 May 2001 18:54:49 +0000 (18:54 +0000)]
- 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
- Some minor fixes
- Removed some >400 CRs again (Jon, you really worked
a lot! ;-)
oes [Tue, 22 May 2001 18:46:04 +0000 (18:46 +0000)]
- 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
- Some minor fixes
- Removed some >400 CRs again (Jon, you really worked
a lot! ;-)
oes [Tue, 22 May 2001 17:43:35 +0000 (17:43 +0000)]
- 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! ;-)
oes [Tue, 22 May 2001 15:48:30 +0000 (15:48 +0000)]
- 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 and has its own log level.
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! ;-)
jongfoster [Mon, 21 May 2001 19:34:01 +0000 (19:34 +0000)]
Made failure to bind() a fatal error.
jongfoster [Mon, 21 May 2001 19:32:54 +0000 (19:32 +0000)]
Added another #ifdef _WIN_CONSOLE
jongfoster [Sun, 20 May 2001 16:44:47 +0000 (16:44 +0000)]
Removing last hardcoded JunkBusters.com URLs.
jongfoster [Sun, 20 May 2001 15:20:02 +0000 (15:20 +0000)]
Fixed "Release" build target.
jongfoster [Sun, 20 May 2001 15:08:28 +0000 (15:08 +0000)]
New MS VC++ 97 project for console mode.
jongfoster [Sun, 20 May 2001 15:07:54 +0000 (15:07 +0000)]
File is now ignored if _WIN_CONSOLE is defined.
jongfoster [Sun, 20 May 2001 01:21:20 +0000 (01:21 +0000)]
Version 2.9.4 checkin.
- Merged popupfile and cookiefile, and added control over PCRS
filtering, in new "permissionsfile".
- Implemented LOG_LEVEL_FATAL, so that if there is a configuration
file error you now get a message box (in the Win32 GUI) rather
than the program exiting with no explanation.
- Made killpopup use the PCRS MIME-type checking and HTTP-header
skipping.
- Removed tabs from "config"
- Moved duplicated url parsing code in "loaders.c" to a new funcition.
- Bumped up version number.
jongfoster [Sun, 20 May 2001 01:11:40 +0000 (01:11 +0000)]
Added support for LOG_LEVEL_FATAL
Renamed LOG_LEVEL_FRC to LOG_LEVEL_FORCE,
and LOG_LEVEL_REF to LOG_LEVEL_RE_FILTER
oes [Thu, 17 May 2001 23:12:38 +0000 (23:12 +0000)]
Deleted junkbstr.txt, since it's generated by make anyway.
oes [Thu, 17 May 2001 23:02:36 +0000 (23:02 +0000)]
- Made referrer option accept 'L' as a substitute for '§'
oes [Thu, 17 May 2001 23:01:01 +0000 (23:01 +0000)]
- Cleaned CRLF's from the sources and related files
jongfoster [Thu, 17 May 2001 22:56:17 +0000 (22:56 +0000)]
Cosmetic documentation update.
- Added required image files into CVS, they are no longer loaded
from junkbusters.com
- Modified HTML files to be fully complient HTML 4.01, using CSS etc.
- Most of the links to junkbusters.com have been replaced with ones
within the documentation set, or to the SourceForge project.
- Added bold "these files are out of date" warning.
oes [Thu, 17 May 2001 22:52:35 +0000 (22:52 +0000)]
- Cleaned CRLF's from the sources and related files
oes [Thu, 17 May 2001 22:42:01 +0000 (22:42 +0000)]
- Cleaned CRLF's from the sources and related files
- Repaired logging for REF and FRC