1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-08 15:02:10 +03:00

When using EBCDIC encoding, HTTPS through ProxyPass and ProxyRemote doesn't

work correctly. PR 57092

Submitted By: Edward Lu 
Committed By: covener



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1634425 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Eric Covener
2014-10-27 00:55:20 +00:00
parent 94c4cc461f
commit 3eddd534ce
2 changed files with 8 additions and 2 deletions

View File

@@ -2562,6 +2562,7 @@ static apr_status_t send_http_connect(proxy_conn_rec *backend,
nbytes += apr_snprintf(buffer + nbytes, sizeof(buffer) - nbytes,
"Proxy-agent: %s" CRLF CRLF,
ap_get_server_banner());
ap_xlate_proto_to_ascii(buffer, nbytes);
apr_socket_send(backend->sock, buffer, &nbytes);
/* Receive the whole CONNECT response */
@@ -2573,7 +2574,8 @@ static apr_status_t send_http_connect(proxy_conn_rec *backend,
len += nbytes;
left -= nbytes;
buffer[len] = '\0';
if (strstr(buffer + len - nbytes, "\r\n\r\n") != NULL) {
if (strstr(buffer + len - nbytes, CRLF_ASCII CRLF_ASCII) != NULL) {
ap_xlate_proto_from_ascii(buffer, len);
complete = 1;
break;
}
@@ -2585,7 +2587,7 @@ static apr_status_t send_http_connect(proxy_conn_rec *backend,
status = apr_socket_recv(backend->sock, drain_buffer, &nbytes);
drain_buffer[nbytes] = '\0';
nbytes = sizeof(drain_buffer) - 1;
if (strstr(drain_buffer, "\r\n\r\n") != NULL) {
if (strstr(drain_buffer, CRLF_ASCII CRLF_ASCII) != NULL) {
break;
}
}