]> granicus.if.org Git - apache/commitdiff
Merge r1827359 from trunk:
authorEric Covener <covener@apache.org>
Tue, 20 Mar 2018 21:19:41 +0000 (21:19 +0000)
committerEric Covener <covener@apache.org>
Tue, 20 Mar 2018 21:19:41 +0000 (21:19 +0000)
PR62200: EBCDIC: ap_rgetline APR_ENOSPC

On EBCDIC systems, translation does not occur in ap_rgetline() if the line is
larger than the buffer size.

(note: No STATUS vote for EBCDIC fix)

Submitted By: Hank Ibell
Committed By: covener

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1827360 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
server/protocol.c

diff --git a/CHANGES b/CHANGES
index 963411b75d234686206c324265a58eb878d2da9a..2c263d6b0f52fb82509a01085a498fb1bd22a114 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,10 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache 2.4.34
 
+ *) core: On ECBDIC platforms, some errors related to oversized headers
+     may be misreported or be logged as ASCII escapes.  PR62200
+     [Hank Ibell <hwibell gmail.com>]
+
 Changes with Apache 2.4.33
 
   *) core: Fix request timeout logging and possible crash for error_log hooks.
index 69946332976d8800f8b4c752c3368aab4488ef4e..334757799e5c42c7ee2dbb8b888fc1a071ed883f 100644 (file)
@@ -476,7 +476,7 @@ AP_DECLARE(apr_status_t) ap_rgetline(char **s, apr_size_t n,
     apr_status_t rv;
 
     rv = ap_rgetline_core(s, n, read, r, fold, bb);
-    if (rv == APR_SUCCESS) {
+    if (rv == APR_SUCCESS || APR_STATUS_IS_ENOSPC(rv)) {
         ap_xlate_proto_from_ascii(*s, *read);
     }
     return rv;