]> granicus.if.org Git - apache/commitdiff
PR62200: EBCDIC: ap_rgetline APR_ENOSPC
authorEric Covener <covener@apache.org>
Tue, 20 Mar 2018 21:17:18 +0000 (21:17 +0000)
committerEric Covener <covener@apache.org>
Tue, 20 Mar 2018 21:17:18 +0000 (21:17 +0000)
On EBCDIC systems, translation does not occur in ap_rgetline() if the line is
larger than the buffer size.

Submitted By: Hank Ibell
Committed By: covener

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

CHANGES
server/protocol.c

diff --git a/CHANGES b/CHANGES
index 36250c224d6c4785ffaaada8112fbeb143194ae7..2f57f83cef468ca034c693b1693fd9e17f80d0f3 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,10 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache 2.5.1
 
+  *) 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>]
+
   *) mod_remoteip: make proxy-protocol work on slave connections, e.g. in HTTP/2
      requests. See also https://github.com/roadrunner2/mod-proxy-protocol/issues/6
      [Stefan Eissing]
index 69634d78bbb6528b64a588285025b28e5b7f5886..31101bd6edf3ea190ac6ea1ccd282399f1712d48 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;