diff options
author | Dmitry Stogov <dmitry@php.net> | 2010-10-05 11:43:59 +0000 |
---|---|---|
committer | Dmitry Stogov <dmitry@php.net> | 2010-10-05 11:43:59 +0000 |
commit | 8dd1e05d6e0dbccea6e295a2e29fe09c7fcef571 (patch) | |
tree | ad631c90da9fe56570d130568fcea50d00dcbd3b /ext/soap/php_http.c | |
parent | fa3f0bb63f0daf7465da87cfc78ca30ef02b4307 (diff) | |
download | php-git-8dd1e05d6e0dbccea6e295a2e29fe09c7fcef571.tar.gz |
Fixed bug #44248 (RFC2616 transgression while HTTPS request through proxy with SoapClient object).
Diffstat (limited to 'ext/soap/php_http.c')
-rw-r--r-- | ext/soap/php_http.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/soap/php_http.c b/ext/soap/php_http.c index f01a4541d0..e20b7b67f8 100644 --- a/ext/soap/php_http.c +++ b/ext/soap/php_http.c @@ -137,6 +137,13 @@ static php_stream* http_connect(zval* this_ptr, php_url *phpurl, int use_ssl, ph smart_str_appendc(&soap_headers, ':'); smart_str_append_unsigned(&soap_headers, phpurl->port); smart_str_append_const(&soap_headers, " HTTP/1.1\r\n"); + smart_str_append_const(&soap_headers, "Host: "); + smart_str_appends(&soap_headers, phpurl->host); + if (phpurl->port != 80) { + smart_str_appendc(&soap_headers, ':'); + smart_str_append_unsigned(&soap_headers, phpurl->port); + } + smart_str_append_const(&soap_headers, "\r\n"); proxy_authentication(this_ptr, &soap_headers TSRMLS_CC); smart_str_append_const(&soap_headers, "\r\n"); if (php_stream_write(stream, soap_headers.c, soap_headers.len) != soap_headers.len) { |