From: Fabian Keil Date: Fri, 1 Jun 2007 16:31:55 +0000 (+0000) Subject: Change sed() to return a jb_err in preparation for forward-override{}. X-Git-Tag: v_3_0_7~229 X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=commitdiff_plain;h=05a9c3cbb9ebcc6510dd39d91e2ff12c5300d382 Change sed() to return a jb_err in preparation for forward-override{}. --- diff --git a/parsers.c b/parsers.c index 1eec5976..950e9c2c 100644 --- a/parsers.c +++ b/parsers.c @@ -1,4 +1,4 @@ -const char parsers_rcs[] = "$Id: parsers.c,v 1.101 2007/05/14 10:16:41 fabiankeil Exp $"; +const char parsers_rcs[] = "$Id: parsers.c,v 1.102 2007/05/27 12:39:32 fabiankeil Exp $"; /********************************************************************* * * File : $Source: /cvsroot/ijbswa/current/parsers.c,v $ @@ -44,6 +44,9 @@ const char parsers_rcs[] = "$Id: parsers.c,v 1.101 2007/05/14 10:16:41 fabiankei * * Revisions : * $Log: parsers.c,v $ + * Revision 1.102 2007/05/27 12:39:32 fabiankeil + * Adjust "X-Filter: No" to disable dedicated header filters. + * * Revision 1.101 2007/05/14 10:16:41 fabiankeil * Streamline client_cookie_adder(). * @@ -1446,13 +1449,13 @@ jb_err scan_headers(struct client_state *csp) * headers (client or server) * 3 : csp = Current client state (buffers, headers, etc...) * - * Returns : Single pointer to a fully formed header, or NULL - * on out-of-memory error. + * Returns : JB_ERR_OK in case off success, or + * JB_ERR_MEMORY on out-of-memory error. * *********************************************************************/ -char *sed(const struct parsers pats[], - const add_header_func_ptr more_headers[], - struct client_state *csp) +jb_err sed(const struct parsers pats[], + const add_header_func_ptr more_headers[], + struct client_state *csp) { struct list_entry *p; const struct parsers *v; @@ -1516,12 +1519,7 @@ char *sed(const struct parsers pats[], } } - if (err != JB_ERR_OK) - { - return NULL; - } - - return list_to_text(csp->headers); + return err; } diff --git a/parsers.h b/parsers.h index 1ebb45af..87cb0697 100644 --- a/parsers.h +++ b/parsers.h @@ -1,6 +1,6 @@ #ifndef PARSERS_H_INCLUDED #define PARSERS_H_INCLUDED -#define PARSERS_H_VERSION "$Id: parsers.h,v 1.37 2007/03/20 15:22:17 fabiankeil Exp $" +#define PARSERS_H_VERSION "$Id: parsers.h,v 1.38 2007/03/25 14:27:11 fabiankeil Exp $" /********************************************************************* * * File : $Source: /cvsroot/ijbswa/current/parsers.h,v $ @@ -43,6 +43,11 @@ * * Revisions : * $Log: parsers.h,v $ + * Revision 1.38 2007/03/25 14:27:11 fabiankeil + * Let parse_header_time() return a jb_err code + * instead of a pointer that can only be used to + * check for NULL anyway. + * * Revision 1.37 2007/03/20 15:22:17 fabiankeil * - Remove filter_client_header() and filter_client_header(), * filter_header() now checks the shiny new @@ -254,7 +259,7 @@ extern jb_err add_to_iob(struct client_state *csp, char *buf, int n); extern jb_err decompress_iob(struct client_state *csp); extern char *get_header(struct client_state *csp); extern char *get_header_value(const struct list *header_list, const char *header_name); -extern char *sed(const struct parsers pats[], const add_header_func_ptr more_headers[], struct client_state *csp); +extern jb_err sed(const struct parsers pats[], const add_header_func_ptr more_headers[], struct client_state *csp); extern void get_http_time(int time_offset, char *buf); extern jb_err parse_header_time(const char *header_time, time_t *result); extern jb_err get_destination_from_headers(const struct list *headers, struct http_request *http); @@ -262,7 +267,7 @@ extern jb_err get_destination_from_headers(const struct list *headers, struct ht /* XXX: Why do we export these anyway? */ extern jb_err crumble (struct client_state *csp, char **header); extern jb_err connection (struct client_state *csp, char **header); -extern jb_err filter_header (struct client_state *csp, char **header); +extern jb_err filter_header (struct client_state *csp, char **header); extern jb_err client_referrer (struct client_state *csp, char **header); extern jb_err client_uagent (struct client_state *csp, char **header);