X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=filters.h;h=829a167aa8171654248da0f8128e00e4cc71274b;hp=8e56c687d83f394348b3cc261be6fc6e13f72228;hb=16ba041753d4716294b37fa5f05259b1b69ed64f;hpb=4b09cc22cfc03809991836429732de4eeae5f994 diff --git a/filters.h b/filters.h index 8e56c687..829a167a 100644 --- a/filters.h +++ b/filters.h @@ -1,19 +1,13 @@ #ifndef FILTERS_H_INCLUDED #define FILTERS_H_INCLUDED -#define FILTERS_H_VERSION "$Id: filters.h,v 1.43 2011/09/04 11:10:56 fabiankeil Exp $" /********************************************************************* * * File : $Source: /cvsroot/ijbswa/current/filters.h,v $ * * Purpose : Declares functions to parse/crunch headers and pages. - * Functions declared include: - * `acl_addr', `add_stats', `block_acl', `block_imageurl', - * `block_url', `url_actions', `filter_popups', `forward_url' - * `ij_untrusted_url', `intercept_url', `re_process_buffer', - * `show_proxy_args', and `trust_url' * * Copyright : Written by and Copyright (C) 2001-2010 the - * Privoxy team. http://www.privoxy.org/ + * Privoxy team. https://www.privoxy.org/ * * Based on the Internet Junkbuster originally written * by and Copyright (C) 1997 Anonymous Coders and @@ -42,11 +36,6 @@ #include "project.h" -#ifdef __cplusplus -extern "C" { -#endif - - /* * ACL checking */ @@ -80,9 +69,11 @@ extern int connect_port_is_forbidden(const struct client_state *csp); */ 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 */ @@ -93,14 +84,15 @@ extern const struct forward_spec *forward_url(struct client_state *csp, * Content modification */ extern char *execute_content_filters(struct client_state *csp); +extern int execute_client_body_filters(struct client_state *csp, size_t *content_length); 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 client_body_filters_enabled(const struct current_action_spec *action); extern int filters_available(const struct client_state *csp); /* @@ -108,14 +100,22 @@ extern int filters_available(const struct client_state *csp); */ extern struct http_response *direct_response(struct client_state *csp); -/* - * Revision control strings from this header and associated .c file - */ -extern const char filters_rcs[]; -extern const char filters_h_rcs[]; +#ifdef FUZZ +extern char *gif_deanimate_response(struct client_state *csp); +extern jb_err remove_chunked_transfer_coding(char *buffer, size_t *size); +#endif -#ifdef __cplusplus -} /* extern "C" */ +#ifdef FEATURE_EXTENDED_STATISTICS +extern void register_filter_for_statistics(const char *filter); +extern void update_filter_statistics(const char *filter, int hits); +extern void get_filter_statistics(const char *filter, + unsigned long long *executions, + unsigned long long *pages_modified, + unsigned long long *hits); + +extern void register_block_reason_for_statistics(const char *block_reason); +extern void get_block_reason_count(const char *block_reason, + unsigned long long *count); #endif #endif /* ndef FILTERS_H_INCLUDED */