#ifndef LOADERS_H_INCLUDED
#define LOADERS_H_INCLUDED
-#define LOADERS_H_VERSION "$Id: loaders.h,v 1.15 2002/01/22 23:46:18 jongfoster Exp $"
+#define LOADERS_H_VERSION "$Id: loaders.h,v 1.23 2008/03/30 14:52:10 fabiankeil Exp $"
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/loaders.h,v $
* the list of active loaders, and to automatically
* unload files that are no longer in use.
*
- * Copyright : Written by and Copyright (C) 2001 the SourceForge
- * IJBSWA team. http://ijbswa.sourceforge.net
+ * Copyright : Written by and Copyright (C) 2001-2009 the
+ * Privoxy team. http://www.privoxy.org/
*
* Based on the Internet Junkbuster originally written
* by and Copyright (C) 1997 Anonymous Coders and
*
* Revisions :
* $Log: loaders.h,v $
+ * Revision 1.23 2008/03/30 14:52:10 fabiankeil
+ * Rename load_actions_file() and load_re_filterfile()
+ * as they load multiple files "now".
+ *
+ * Revision 1.22 2007/06/01 14:12:38 fabiankeil
+ * Add unload_forward_spec() in preparation for forward-override{}.
+ *
+ * Revision 1.21 2006/07/18 14:48:46 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.19 2002/03/26 22:29:55 swa
+ * we have a new homepage!
+ *
+ * Revision 1.18 2002/03/24 13:25:43 swa
+ * name change related issues
+ *
+ * Revision 1.17 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.16 2002/03/07 03:46:17 oes
+ * Fixed compiler warnings
+ *
* Revision 1.15 2002/01/22 23:46:18 jongfoster
* Moving edit_read_line() and simple_read_line() to loaders.c, and
* extending them to support reading MS-DOS, Mac and UNIX style files
struct configuration_spec;
struct url_spec;
-extern void sweep(void);
+extern unsigned int sweep(void);
extern char *read_config_line(char *buf, size_t buflen, FILE *fp, unsigned long *linenum);
extern int check_file_changed(const struct file_list * current,
const char * filename,
extern short int MustReload;
-extern int load_actions_file(struct client_state *csp);
-extern int load_re_filterfile(struct client_state *csp);
+extern int load_action_files(struct client_state *csp);
+extern int load_re_filterfiles(struct client_state *csp);
#ifdef FEATURE_TRUST
extern int load_trustfile(struct client_state *csp);
#endif /* def FEATURE_TRUST */
+#ifdef FEATURE_GRACEFUL_TERMINATION
+#ifdef FEATURE_TRUST
+void unload_current_trust_file(void);
+#endif
+void unload_current_re_filterfile(void);
+#endif /* FEATURE_GRACEFUL_TERMINATION */
+void unload_forward_spec(struct forward_spec *fwd);
extern void add_loader(int (*loader)(struct client_state *),
struct configuration_spec * config);