dmitry                                   Tue, 05 Oct 2010 11:43:59 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=304084

Log:
Fixed bug #44248 (RFC2616 transgression while HTTPS request through proxy with 
SoapClient object).

Bug: http://bugs.php.net/44248 (Assigned) RFC2616 transgression while HTTPS 
request through proxy with SoapClient object
      
Changed paths:
    U   php/php-src/branches/PHP_5_2/NEWS
    U   php/php-src/branches/PHP_5_2/ext/soap/php_http.c
    U   php/php-src/branches/PHP_5_3/NEWS
    U   php/php-src/branches/PHP_5_3/ext/soap/php_http.c
    U   php/php-src/trunk/ext/soap/php_http.c

Modified: php/php-src/branches/PHP_5_2/NEWS
===================================================================
--- php/php-src/branches/PHP_5_2/NEWS   2010-10-05 11:28:56 UTC (rev 304083)
+++ php/php-src/branches/PHP_5_2/NEWS   2010-10-05 11:43:59 UTC (rev 304084)
@@ -16,6 +16,8 @@
   (Sriram Natarajan)
 - Fixed bug #52390 (mysqli_report() should be per-request setting). (Kalle)
 - Fixed bug #51008 (Zend/tests/bug45877.phpt fails). (Dmitry)
+- Fixed bug #44248 (RFC2616 transgression while HTTPS request through proxy
+  with SoapClient object). (Dmitry)

 22 Jul 2010, PHP 5.2.14
 - Reverted bug fix #49521 (PDO fetchObject sets values before calling

Modified: php/php-src/branches/PHP_5_2/ext/soap/php_http.c
===================================================================
--- php/php-src/branches/PHP_5_2/ext/soap/php_http.c    2010-10-05 11:28:56 UTC 
(rev 304083)
+++ php/php-src/branches/PHP_5_2/ext/soap/php_http.c    2010-10-05 11:43:59 UTC 
(rev 304084)
@@ -167,6 +167,13 @@
                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) {

Modified: php/php-src/branches/PHP_5_3/NEWS
===================================================================
--- php/php-src/branches/PHP_5_3/NEWS   2010-10-05 11:28:56 UTC (rev 304083)
+++ php/php-src/branches/PHP_5_3/NEWS   2010-10-05 11:43:59 UTC (rev 304084)
@@ -121,6 +121,8 @@
 - Fixed bug #48831 (php -i has different output to php --ini). (Richard,
   Pierre)
 - Fixed bug #45921 (Can't initialize character set hebrew). (Andrey)
+- Fixed bug #44248 (RFC2616 transgression while HTTPS request through proxy
+  with SoapClient object). (Dmitry)

 22 Jul 2010, PHP 5.3.3
 - Upgraded bundled sqlite to version 3.6.23.1. (Ilia)

Modified: php/php-src/branches/PHP_5_3/ext/soap/php_http.c
===================================================================
--- php/php-src/branches/PHP_5_3/ext/soap/php_http.c    2010-10-05 11:28:56 UTC 
(rev 304083)
+++ php/php-src/branches/PHP_5_3/ext/soap/php_http.c    2010-10-05 11:43:59 UTC 
(rev 304084)
@@ -137,6 +137,13 @@
                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) {

Modified: php/php-src/trunk/ext/soap/php_http.c
===================================================================
--- php/php-src/trunk/ext/soap/php_http.c       2010-10-05 11:28:56 UTC (rev 
304083)
+++ php/php-src/trunk/ext/soap/php_http.c       2010-10-05 11:43:59 UTC (rev 
304084)
@@ -137,6 +137,13 @@
                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) {

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to