decompress_iob(): Fix format specifier in a log message
[privoxy.git] / parsers.c
index e28caba..a16487a 100644 (file)
--- a/parsers.c
+++ b/parsers.c
@@ -68,7 +68,7 @@
 #include <brotli/decode.h>
 #endif
 
-#if !defined(_WIN32) && !defined(__OS2__)
+#if !defined(_WIN32)
 #include <unistd.h>
 #endif
 
@@ -141,10 +141,10 @@ static jb_err server_save_content_length(struct client_state *csp, char **header
 static jb_err server_keep_alive(struct client_state *csp, char **header);
 static jb_err server_proxy_connection(struct client_state *csp, char **header);
 static jb_err client_keep_alive(struct client_state *csp, char **header);
-static jb_err client_save_content_length(struct client_state *csp, char **header);
 static jb_err client_proxy_connection(struct client_state *csp, char **header);
 #endif /* def FEATURE_CONNECTION_KEEP_ALIVE */
 
+static jb_err client_save_content_length(struct client_state *csp, char **header);
 static jb_err client_host_adder       (struct client_state *csp);
 static jb_err client_xtra_adder       (struct client_state *csp);
 static jb_err client_x_forwarded_for_adder(struct client_state *csp);
@@ -188,9 +188,9 @@ static const struct parsers client_patterns[] = {
    { "TE:",                       3,   client_te },
    { "Host:",                     5,   client_host },
    { "if-modified-since:",       18,   client_if_modified_since },
+   { "Content-Length:",          15,   client_save_content_length },
 #ifdef FEATURE_CONNECTION_KEEP_ALIVE
    { "Keep-Alive:",              11,   client_keep_alive },
-   { "Content-Length:",          15,   client_save_content_length },
    { "Proxy-Connection:",        17,   client_proxy_connection },
 #else
    { "Keep-Alive:",              11,   crumble },
@@ -326,7 +326,7 @@ jb_err add_to_iob(struct iob *iob, const size_t buffer_limit, char *src, long n)
    if (need > buffer_limit)
    {
       log_error(LOG_LEVEL_INFO,
-         "Buffer limit reached while extending the buffer (iob). Needed: %d. Limit: %d",
+         "Buffer limit reached while extending the buffer (iob). Needed: %lu. Limit: %lu",
          need, buffer_limit);
       return JB_ERR_MEMORY;
    }
@@ -440,7 +440,7 @@ static jb_err decompress_iob_with_brotli(struct client_state *csp)
    if (decoded_buffer == NULL)
    {
       log_error(LOG_LEVEL_ERROR,
-         "Failed to allocate %d bytes for Brotli decompression",
+         "Failed to allocate %lu bytes for Brotli decompression",
          decoded_buffer_size);
       return JB_ERR_MEMORY;
    }
@@ -461,7 +461,7 @@ static jb_err decompress_iob_with_brotli(struct client_state *csp)
       csp->iob->size = decoded_buffer_size;
 
       log_error(LOG_LEVEL_RE_FILTER,
-         "Decompression successful. Old size: %d, new size: %d.",
+         "Decompression successful. Old size: %lu, new size: %lu.",
          encoded_size, decoded_size);
 
       return JB_ERR_OK;
@@ -526,7 +526,7 @@ jb_err decompress_iob(struct client_state *csp)
        * but it should(?) be valid for deflated data also.
        */
       log_error(LOG_LEVEL_ERROR,
-         "Insufficient data to start decompression. Bytes in buffer: %d",
+         "Insufficient data to start decompression. Bytes in buffer: %ld",
          csp->iob->eod - csp->iob->cur);
       return JB_ERR_COMPRESS;
    }
@@ -727,6 +727,7 @@ jb_err decompress_iob(struct client_state *csp)
       {
          log_error(LOG_LEVEL_ERROR, "Buffer limit reached while decompressing iob");
          freez(buf);
+         inflateEnd(&zstr);
          return JB_ERR_MEMORY;
       }
 
@@ -745,6 +746,7 @@ jb_err decompress_iob(struct client_state *csp)
       {
          log_error(LOG_LEVEL_ERROR, "Out of memory decompressing iob");
          freez(buf);
+         inflateEnd(&zstr);
          return JB_ERR_MEMORY;
       }
       else
@@ -1850,6 +1852,7 @@ static jb_err server_proxy_connection(struct client_state *csp, char **header)
    csp->flags |= CSP_FLAG_SERVER_PROXY_CONNECTION_HEADER_SET;
    return JB_ERR_OK;
 }
+#endif /* def FEATURE_CONNECTION_KEEP_ALIVE */
 
 
 /*********************************************************************
@@ -1882,6 +1885,7 @@ static jb_err proxy_authentication(struct client_state *csp, char **header)
 }
 
 
+#ifdef FEATURE_CONNECTION_KEEP_ALIVE
 /*********************************************************************
  *
  * Function    :  client_keep_alive
@@ -1948,6 +1952,7 @@ static jb_err client_keep_alive(struct client_state *csp, char **header)
 
    return JB_ERR_OK;
 }
+#endif /* def FEATURE_CONNECTION_KEEP_ALIVE */
 
 
 /*********************************************************************
@@ -2020,8 +2025,6 @@ static jb_err client_save_content_length(struct client_state *csp, char **header
 
    return JB_ERR_OK;
 }
-#endif /* def FEATURE_CONNECTION_KEEP_ALIVE */
-
 
 
 /*********************************************************************
@@ -4883,7 +4886,6 @@ static void create_content_length_header(unsigned long long content_length,
 }
 
 
-#ifdef FEATURE_CONNECTION_KEEP_ALIVE
 /*********************************************************************
  *
  * Function    :  get_expected_content_length
@@ -4915,7 +4917,7 @@ unsigned long long get_expected_content_length(struct list *headers)
 
    return content_length;
 }
-#endif
+
 
 /*
   Local Variables: