#ifndef FILTERS_H_INCLUDED
#define FILTERS_H_INCLUDED
-#define FILTERS_H_VERSION "$Id: filters.h,v 1.36 2008/05/21 15:35:08 fabiankeil Exp $"
+#define FILTERS_H_VERSION "$Id: filters.h,v 1.46 2013/12/24 13:32:51 fabiankeil Exp $"
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/filters.h,v $
* `ij_untrusted_url', `intercept_url', `re_process_buffer',
* `show_proxy_args', and `trust_url'
*
- * Copyright : Written by and Copyright (C) 2001, 2004 the SourceForge
+ * Copyright : Written by and Copyright (C) 2001-2010 the
* Privoxy team. http://www.privoxy.org/
*
* Based on the Internet Junkbuster originally written
- * by and Copyright (C) 1997 Anonymous Coders and
+ * by and Copyright (C) 1997 Anonymous Coders and
* Junkbusters Corporation. http://www.junkbusters.com
*
- * This program is free software; you can redistribute it
+ * This program is free software; you can redistribute it
* and/or modify it under the terms of the GNU General
* Public License as published by the Free Software
* Foundation; either version 2 of the License, or (at
#include "project.h"
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-struct access_control_addr;
-struct client_state;
-struct http_request;
-struct http_response;
-struct current_action_spec;
-struct url_actions;
-struct url_spec;
-
-
/*
* ACL checking
*/
*/
extern void get_url_actions(struct client_state *csp,
struct http_request *http);
-extern void apply_url_actions(struct current_action_spec *action,
- struct http_request *http,
- struct url_actions *b);
+
+extern struct re_filterfile_spec *get_filter(const struct client_state *csp,
+ const char *requested_name,
+ enum filter_type requested_type);
+
/*
* Determining parent proxies
*/
/*
* Content modification
*/
-
-typedef char *(*filter_function_ptr)();
-extern char *execute_content_filter(struct client_state *csp, filter_function_ptr content_filter);
-
-extern filter_function_ptr get_filter_function(struct client_state *csp);
+extern char *execute_content_filters(struct client_state *csp);
extern char *execute_single_pcrs_command(char *subject, const char *pcrs_command, int *hits);
extern char *rewrite_url(char *old_url, const char *pcrs_command);
extern char *get_last_url(char *subject, const char *redirect_mode);
extern pcrs_job *compile_dynamic_pcrs_job_list(const struct client_state *csp, const struct re_filterfile_spec *b);
+extern int content_requires_filtering(struct client_state *csp);
extern int content_filters_enabled(const struct current_action_spec *action);
+extern int filters_available(const struct client_state *csp);
/*
* Handling Max-Forwards:
*/
extern struct http_response *direct_response(struct client_state *csp);
-
/*
- * Solaris fix:
- */
-#ifndef INADDR_NONE
-#define INADDR_NONE -1
-#endif
-
-/*
* Revision control strings from this header and associated .c file
*/
extern const char filters_rcs[];
extern const char filters_h_rcs[];
-#ifdef __cplusplus
-} /* extern "C" */
-#endif
-
#endif /* ndef FILTERS_H_INCLUDED */
/*