Fix a theoretical memory leak in a cannot-realistically-happen situation in rfc2553_c...
[privoxy.git] / filters.c
index 43cdacc..dd554ba 100644 (file)
--- a/filters.c
+++ b/filters.c
@@ -1,4 +1,4 @@
-const char filters_rcs[] = "$Id: filters.c,v 1.133 2010/09/14 07:16:07 fabiankeil Exp $";
+const char filters_rcs[] = "$Id: filters.c,v 1.140 2011/03/03 14:47:28 fabiankeil Exp $";
 /*********************************************************************
  *
  * File        :  $Source: /cvsroot/ijbswa/current/filters.c,v $
@@ -50,11 +50,6 @@ const char filters_rcs[] = "$Id: filters.c,v 1.133 2010/09/14 07:16:07 fabiankei
 #include <string.h>
 #include <assert.h>
 
-#ifdef HAVE_RFC2553
-#include <netdb.h>
-#include <sys/socket.h>
-#endif /* def HAVE_RFC2553 */
-
 #ifndef _WIN32
 #ifndef __OS2__
 #include <unistd.h>
@@ -294,6 +289,10 @@ int block_acl(const struct access_control_addr *dst, const struct client_state *
             {
                return(0);
             }
+            else
+            {
+               return(1);
+            }
          }
          else if (
 #ifdef HAVE_RFC2553
@@ -729,11 +728,11 @@ struct http_response *block_url(struct client_state *csp)
            && !strstr(p, "compatible")    /* MSIE */
            && !strstr(p, "Opera"))        /* and Opera. */
       {
-         rsp->status = strdup("200 Request for blocked URL");
+         rsp->status = strdup("200 Request blocked by Privoxy");
       }
       else
       {
-         rsp->status = strdup("403 Request for blocked URL");
+         rsp->status = strdup("403 Request blocked by Privoxy");
       }
 
       if (rsp->status == NULL)
@@ -1003,10 +1002,9 @@ pcrs_job *compile_dynamic_pcrs_job_list(const struct client_state *csp, const st
       dummy = pcrs_compile_dynamic_command(pattern->str, variables, &error);
       if (NULL == dummy)
       {
-         assert(error < 0);
          log_error(LOG_LEVEL_ERROR,
-            "Adding filter job \'%s\' to dynamic filter %s failed: %s",
-            pattern->str, b->name, pcrs_strerror(error));
+            "Compiling dynamic pcrs job '%s' for '%s' failed with error code %d: %s",
+            pattern->str, b->name, error, pcrs_strerror(error));
          continue;
       }
       else
@@ -1806,8 +1804,14 @@ static jb_err remove_chunked_transfer_coding(char *buffer, size_t *size)
 
       if ((newsize += chunksize) >= *size)
       {
+         /*
+          * XXX: The message is a bit confusing. Isn't the real problem that
+          *      the specified chunk size is greater than the number of bytes
+          *      left in the buffer? This probably means the connection got
+          *      closed prematurely. To be investigated after 3.0.17 is out.
+          */
          log_error(LOG_LEVEL_ERROR,
-            "Chunk size %d exceeds buffer size %d in  \"chunked\" transfer coding",
+            "Chunk size %d exceeds buffer size %d in \"chunked\" transfer coding",
             chunksize, *size);
          return JB_ERR_PARSE;
       }