+ * Revision 1.49 2008/03/29 12:13:45 fabiankeil
+ * Remove send-wafer and send-vanilla-wafer actions.
+ *
+ * Revision 1.48 2008/03/28 18:17:14 fabiankeil
+ * In action_used_to_be_valid(), loop through an array of formerly
+ * valid actions instead of using an OR-chain of strcmpic() calls.
+ *
+ * Revision 1.47 2008/03/28 15:13:37 fabiankeil
+ * Remove inspect-jpegs action.
+ *
+ * Revision 1.46 2008/03/27 18:27:20 fabiankeil
+ * Remove kill-popups action.
+ *
+ * Revision 1.45 2008/03/24 11:21:02 fabiankeil
+ * Share the action settings for multiple patterns in the same
+ * section so we waste less memory for gigantic block lists
+ * (and load them slightly faster). Reported by Franz Schwartau.
+ *
+ * Revision 1.44 2008/03/04 18:30:34 fabiankeil
+ * Remove the treat-forbidden-connects-like-blocks action. We now
+ * use the "blocked" page for forbidden CONNECT requests by default.
+ *
+ * Revision 1.43 2008/03/01 14:00:43 fabiankeil
+ * Let the block action take the reason for the block
+ * as argument and show it on the "blocked" page.
+ *
+ * Revision 1.42 2008/02/09 15:15:38 fabiankeil
+ * List active and inactive actions in the show-url-info's
+ * "Final results" section separately. Patch submitted by Lee
+ * in #1830056, modified to list active actions first.
+ *
+ * Revision 1.41 2008/01/28 20:17:40 fabiankeil
+ * - Mark some parameters as immutable.
+ * - Hide update_action_bits_for_all_tags() while it's unused.
+ *
+ * Revision 1.40 2007/05/21 10:26:50 fabiankeil
+ * - Use strlcpy() instead of strcpy().
+ * - Provide a reason why loading the actions
+ * file might have failed.
+ *
+ * Revision 1.39 2007/04/17 18:21:45 fabiankeil
+ * Split update_action_bits() into
+ * update_action_bits_for_all_tags()
+ * and update_action_bits_for_tag().
+ *
+ * Revision 1.38 2007/04/15 16:39:20 fabiankeil
+ * Introduce tags as alternative way to specify which
+ * actions apply to a request. At the moment tags can be
+ * created based on client and server headers.
+ *
+ * Revision 1.37 2007/03/11 15:56:12 fabiankeil
+ * Add kludge to log unknown aliases and actions before exiting.
+ *
+ * Revision 1.36 2006/12/28 17:15:42 fabiankeil
+ * Fix gcc43 conversion warning.
+ *
+ * Revision 1.35 2006/07/18 14:48:45 david__schmidt
+ * Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
+ * with what was really the latest development (the v_3_0_branch branch)
+ *
+ * Revision 1.32.2.6 2006/01/29 23:10:56 david__schmidt
+ * Multiple filter file support
+ *
+ * Revision 1.32.2.5 2005/06/09 01:18:41 david__schmidt
+ * Tweaks to conditionally include pthread.h if FEATURE_PTHREAD is enabled -
+ * this becomes important when jcc.h gets included later down the line.
+ *
+ * Revision 1.32.2.4 2003/12/03 10:33:11 oes
+ * - Implemented Privoxy version requirement through
+ * for-privoxy-version= statement in {{settings}}
+ * block
+ * - Fix for unchecked out-of-memory condition
+ *
+ * Revision 1.32.2.3 2003/02/28 12:52:10 oes
+ * Fixed memory leak reported by Dan Price in Bug #694713
+ *
+ * Revision 1.32.2.2 2002/11/20 14:36:55 oes
+ * Extended unload_current_actions_file() to multiple AFs.
+ * Thanks to Oliver Stoeneberg for the hint.
+ *
+ * Revision 1.32.2.1 2002/05/26 12:13:16 roro
+ * Change unsigned to unsigned long in actions_name struct. This closes
+ * SourceForge Bug #539284.
+ *
+ * Revision 1.32 2002/05/12 21:36:29 jongfoster
+ * Correcting function comments
+ *
+ * Revision 1.31 2002/05/06 07:56:50 oes
+ * Made actions_to_html independent of FEATURE_CGI_EDIT_ACTIONS
+ *
+ * Revision 1.30 2002/04/30 11:14:52 oes
+ * Made csp the first parameter in *action_to_html
+ *
+ * Revision 1.29 2002/04/26 19:30:54 jongfoster
+ * - current_action_to_html(): Adding help link for the "-" form of
+ * one-string actions.
+ * - Some actions had "<br>-", some "<br> -" (note the space).
+ * Standardizing on no space.
+ * - Greatly simplifying some of the code by using string_join()
+ * where appropriate.
+ *
+ * Revision 1.28 2002/04/26 12:53:15 oes
+ * - CGI AF editor now writes action lines split into
+ * single lines with line continuation
+ * - actions_to_html now embeds each action name in
+ * link to chapter
+ * - current_action_to_text is now called current_action_to_html
+ * and acts like actions_to_html
+ *
+ * Revision 1.27 2002/04/24 02:10:31 oes
+ * - Jon's patch for multiple AFs:
+ * - split load_actions_file, add load_one_actions_file
+ * - make csp->actions_list files an array
+ * - remember file id with each action
+ * - Copy_action now frees dest action before copying
+ *
+ * Revision 1.26 2002/03/26 22:29:54 swa
+ * we have a new homepage!
+ *
+ * Revision 1.25 2002/03/24 13:25:43 swa
+ * name change related issues
+ *
+ * Revision 1.24 2002/03/16 23:54:06 jongfoster
+ * Adding graceful termination feature, to help look for memory leaks.
+ * If you enable this (which, by design, has to be done by hand
+ * editing config.h) and then go to http://i.j.b/die, then the program
+ * will exit cleanly after the *next* request. It should free all the
+ * memory that was used.
+ *
+ * Revision 1.23 2002/03/07 03:46:16 oes
+ * Fixed compiler warnings
+ *
+ * Revision 1.22 2002/01/21 00:27:02 jongfoster
+ * Allowing free_action(NULL).
+ * Moving the functions that #include actionlist.h to the end of the file,
+ * because the Visual C++ 97 debugger gets extremely confused if you try
+ * to debug any code that comes after them in the file.
+ *
+ * Revision 1.21 2002/01/17 20:54:44 jongfoster
+ * Renaming free_url to free_url_spec, since it frees a struct url_spec.
+ *
+ * Revision 1.20 2001/11/22 21:56:49 jongfoster
+ * Making action_spec->flags into an unsigned long rather than just an
+ * unsigned int.
+ * Fixing a bug in the display of -add-header and -wafer
+ *
+ * Revision 1.19 2001/11/13 00:14:07 jongfoster
+ * Fixing stupid bug now I've figured out what || means.
+ * (It always returns 0 or 1, not one of it's paramaters.)
+ *
+ * Revision 1.18 2001/11/07 00:06:06 steudten
+ * Add line number in error output for lineparsing for
+ * actionsfile.
+ *
+ * Revision 1.17 2001/10/25 03:40:47 david__schmidt
+ * Change in porting tactics: OS/2's EMX porting layer doesn't allow multiple
+ * threads to call select() simultaneously. So, it's time to do a real, live,
+ * native OS/2 port. See defines for __EMX__ (the porting layer) vs. __OS2__
+ * (native). Both versions will work, but using __OS2__ offers multi-threading.
+ *
+ * Revision 1.16 2001/10/23 21:30:30 jongfoster
+ * Adding error-checking to selected functions.
+ *
+ * Revision 1.15 2001/10/14 21:58:22 jongfoster
+ * Adding support for the CGI-based editor:
+ * - Exported get_actions()
+ * - Added new function free_alias_list()
+ * - Added support for {{settings}} and {{description}} blocks
+ * in the actions file. They are currently ignored.
+ * - Added restriction to only one {{alias}} block which must appear
+ * first in the file, to simplify the editor's rewriting rules.
+ * - Note that load_actions_file() is no longer used by the CGI-based
+ * editor, but some of the other routines in this file are.
+ *
+ * Revision 1.14 2001/09/22 16:36:59 jongfoster
+ * Removing unused parameter fs from read_config_line()
+ *
+ * Revision 1.13 2001/09/16 15:47:37 jongfoster
+ * First version of CGI-based edit interface. This is very much a
+ * work-in-progress, and you can't actually use it to edit anything
+ * yet. You must #define FEATURE_CGI_EDIT_ACTIONS for these changes
+ * to have any effect.
+ *
+ * Revision 1.12 2001/09/16 13:21:27 jongfoster
+ * Changes to use new list functions.
+ *
+ * Revision 1.11 2001/09/14 00:17:32 jongfoster
+ * Tidying up memory allocation. New function init_action().
+ *
+ * Revision 1.10 2001/09/10 10:14:34 oes
+ * Removing unused variable
+ *
+ * Revision 1.9 2001/07/30 22:08:36 jongfoster
+ * Tidying up #defines:
+ * - All feature #defines are now of the form FEATURE_xxx
+ * - Permanently turned off WIN_GUI_EDIT
+ * - Permanently turned on WEBDAV and SPLIT_PROXY_ARGS
+ *
+ * Revision 1.8 2001/06/29 13:19:52 oes
+ * Removed logentry from cancelled commit
+ *
+ * Revision 1.7 2001/06/09 10:55:28 jongfoster
+ * Changing BUFSIZ ==> BUFFER_SIZE
+ *
+ * Revision 1.6 2001/06/07 23:04:34 jongfoster
+ * Made get_actions() static.
+ *
+ * Revision 1.5 2001/06/03 19:11:48 oes
+ * adapted to new enlist_unique arg format
+ *
+ * Revision 1.4 2001/06/01 20:03:42 jongfoster
+ * Better memory management - current_action->strings[] now
+ * contains copies of the strings, not the original.
+ *