]> granicus.if.org Git - apache/commitdiff
* Handle request bodies larger than 2 GB by converting the Content-Length
authorRuediger Pluem <rpluem@apache.org>
Tue, 12 Dec 2006 21:22:36 +0000 (21:22 +0000)
committerRuediger Pluem <rpluem@apache.org>
Tue, 12 Dec 2006 21:22:36 +0000 (21:22 +0000)
  header string of the request correctly to apr_off_t.

PR: 40883

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@486320 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
modules/proxy/mod_proxy_http.c

diff --git a/CHANGES b/CHANGES
index ee782852b78aeec2bc8c6847cf3ec9e6534d83e7..bdd8825d996dc53e0a6a0473feab889d6d9c4f1a 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -2,6 +2,10 @@
 Changes with Apache 2.3.0
   [Remove entries to the current 2.0 and 2.2 section below, when backported]
 
+  *) mod_proxy_http: Handle request bodies larger than 2 GB by converting
+     the Content-Length header of the request correctly. PR 40883.
+     [Ruediger Pluem, toadie <toadie643 gmail.com>]
+
   *) core: Do not replace a Date header set by a proxied backend server.
      PR 40232. [Ruediger Pluem]
 
index 3c118b171f9b70efd3bc30b7945ec793df921d80..a7538726f76e0dc480d433b28f95c31a2a255a8b 100644 (file)
@@ -333,7 +333,10 @@ static apr_status_t stream_reqbody_cl(apr_pool_t *p,
 
     if (old_cl_val) {
         add_cl(p, bucket_alloc, header_brigade, old_cl_val);
-        cl_val = atol(old_cl_val);
+        if (APR_SUCCESS != (status = apr_strtoff(&cl_val, old_cl_val, NULL,
+                                                 0))) {
+            return status;
+        }
     }
     terminate_headers(bucket_alloc, header_brigade);