[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/soap php_http.c

2009-06-03 Thread Ilia Alshanetsky
iliaa   Wed Jun  3 12:41:47 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_http.c 
/php-srcNEWS 
  Log:
  
  MFB: Fixed bug #46386 (Digest authentication with SOAP module fails against
  MSSQL SOAP services)
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_http.c?r1=1.77.2.11.2.17r2=1.77.2.11.2.18diff_format=u
Index: php-src/ext/soap/php_http.c
diff -u php-src/ext/soap/php_http.c:1.77.2.11.2.17 
php-src/ext/soap/php_http.c:1.77.2.11.2.18
--- php-src/ext/soap/php_http.c:1.77.2.11.2.17  Mon Jan 19 21:57:45 2009
+++ php-src/ext/soap/php_http.c Wed Jun  3 12:41:46 2009
@@ -17,7 +17,7 @@
   |  Dmitry Stogov dmi...@zend.com |
   +--+
 */
-/* $Id: php_http.c,v 1.77.2.11.2.17 2009/01/19 21:57:45 iliaa Exp $ */
+/* $Id: php_http.c,v 1.77.2.11.2.18 2009/06/03 12:41:46 iliaa Exp $ */
 
 #include php_soap.h
 #include ext/standard/base64.h
@@ -614,6 +614,11 @@

smart_str_append_const(soap_headers, \, opaque=\);

smart_str_appendl(soap_headers, Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp));
}
+   if (zend_hash_find(Z_ARRVAL_PP(digest), 
algorithm, sizeof(algorithm), (void **)tmp) == SUCCESS 
+   Z_TYPE_PP(tmp) == IS_STRING) {
+   
smart_str_append_const(soap_headers, \, algorithm=\);
+   
smart_str_appendl(soap_headers, Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp));
+   }
smart_str_append_const(soap_headers, 
\\r\n);
}
} else {
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1540r2=1.2027.2.547.2.1541diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.1540 php-src/NEWS:1.2027.2.547.2.1541
--- php-src/NEWS:1.2027.2.547.2.1540Wed Jun  3 08:59:19 2009
+++ php-src/NEWSWed Jun  3 12:41:46 2009
@@ -19,6 +19,8 @@
 - Fixed bug #48273 (snmp*_real_walk() returns SNMP errors as values).
   (Ilia, lytboris at gmail dot com)
 - Fixed bug #48247 (Crash on errors during startup). (Stas)
+- Fixed bug #46386 (Digest authentication with SOAP module fails against MSSQL 
+  SOAP services). (Ilia, lordelph at gmail dot com)
 - Fixed bug #42143 (The constant NAN is reported as 0 on Windows)
   (Kanwaljeet Singla, Venkat Raman Don)
 



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



[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/soap php_http.c

2009-01-19 Thread Ilia Alshanetsky
iliaa   Mon Jan 19 21:57:47 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_http.c 
/php-srcNEWS 
  Log:
  Fixed bug #47131 (SOAP Extension ignores user_agent ini setting).
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_http.c?r1=1.77.2.11.2.16r2=1.77.2.11.2.17diff_format=u
Index: php-src/ext/soap/php_http.c
diff -u php-src/ext/soap/php_http.c:1.77.2.11.2.16 
php-src/ext/soap/php_http.c:1.77.2.11.2.17
--- php-src/ext/soap/php_http.c:1.77.2.11.2.16  Wed Dec 31 11:17:43 2008
+++ php-src/ext/soap/php_http.c Mon Jan 19 21:57:45 2009
@@ -17,7 +17,7 @@
   |  Dmitry Stogov dmi...@zend.com |
   +--+
 */
-/* $Id: php_http.c,v 1.77.2.11.2.16 2008/12/31 11:17:43 sebastian Exp $ */
+/* $Id: php_http.c,v 1.77.2.11.2.17 2009/01/19 21:57:45 iliaa Exp $ */
 
 #include php_soap.h
 #include ext/standard/base64.h
@@ -438,7 +438,11 @@
smart_str_appendl(soap_headers, 
Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp));
smart_str_append_const(soap_headers, \r\n);
}
-   } else{
+   } else if (FG(user_agent)) {
+   smart_str_append_const(soap_headers, User-Agent: );
+   smart_str_appends(soap_headers, FG(user_agent));
+   smart_str_append_const(soap_headers, \r\n);
+   } else {
smart_str_append_const(soap_headers, User-Agent: 
PHP-SOAP/PHP_VERSION\r\n);
}
 
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1396r2=1.2027.2.547.2.1397diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.1396 php-src/NEWS:1.2027.2.547.2.1397
--- php-src/NEWS:1.2027.2.547.2.1396Sun Jan 18 23:51:15 2009
+++ php-src/NEWSMon Jan 19 21:57:46 2009
@@ -17,6 +17,7 @@
 - Fixed bug in xml_error_string() which resulted in messages being
   off by one. (Scott)
 
+- Fixed bug #47131 (SOAP Extension ignores user_agent ini setting). (Ilia)
 - Fixed bug #47104 (Linking shared extensions fails with icc). (Jani)
 - Fixed bug #47109 (Memory leak on $a-{a.b} when $a is not an object).
   (Etienne, Dmitry)



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



Re: [PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/soap php_http.c

2009-01-19 Thread Hannes Magnusson
On Mon, Jan 19, 2009 at 22:57, Ilia Alshanetsky il...@php.net wrote:
 iliaa   Mon Jan 19 21:57:47 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_http.c
/php-srcNEWS
  Log:
  Fixed bug #47131 (SOAP Extension ignores user_agent ini setting).


 http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_http.c?r1=1.77.2.11.2.16r2=1.77.2.11.2.17diff_format=u
 Index: php-src/ext/soap/php_http.c
 diff -u php-src/ext/soap/php_http.c:1.77.2.11.2.16 
 php-src/ext/soap/php_http.c:1.77.2.11.2.17
 --- php-src/ext/soap/php_http.c:1.77.2.11.2.16  Wed Dec 31 11:17:43 2008
 +++ php-src/ext/soap/php_http.c Mon Jan 19 21:57:45 2009
 @@ -17,7 +17,7 @@
   |  Dmitry Stogov dmi...@zend.com |
   +--+
  */
 -/* $Id: php_http.c,v 1.77.2.11.2.16 2008/12/31 11:17:43 sebastian Exp $ */
 +/* $Id: php_http.c,v 1.77.2.11.2.17 2009/01/19 21:57:45 iliaa Exp $ */

  #include php_soap.h
  #include ext/standard/base64.h
 @@ -438,7 +438,11 @@
smart_str_appendl(soap_headers, 
 Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp));
smart_str_append_const(soap_headers, \r\n);
}
 -   } else{
 +   } else if (FG(user_agent)) {
 +   smart_str_append_const(soap_headers, User-Agent: );
 +   smart_str_appends(soap_headers, FG(user_agent));
 +   smart_str_append_const(soap_headers, \r\n);
 +   } else {
smart_str_append_const(soap_headers, User-Agent: 
 PHP-SOAP/PHP_VERSION\r\n);
}

Why not check the context for user_agent while you are at it?

-Hannes

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



[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/soap php_http.c

2007-07-24 Thread Dmitry Stogov
dmitry  Tue Jul 24 09:27:47 2007 UTC

  Modified files:  (Branch: PHP_5_2)
/php-srcNEWS 
/php-src/ext/soap   php_http.c 
  Log:
  Fixed bug #41983 (Error Fetching http headers terminated by '\n')
  
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.848r2=1.2027.2.547.2.849diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.848 php-src/NEWS:1.2027.2.547.2.849
--- php-src/NEWS:1.2027.2.547.2.848 Tue Jul 24 09:26:34 2007
+++ php-src/NEWSTue Jul 24 09:27:46 2007
@@ -68,6 +68,7 @@
 - Fixed bug #42015 (ldap_rename(): server error DSA is unwilling to perform).
   (bob at mroczka dot com, Jani)
 - Fixed bug #41989 (move_uploaded_file()  relative path in ZTS mode). (Tony)
+- Fixed bug #41983 (Error Fetching http headers terminated by '\n'). (Dmitry)
 - Fixed bug #41964 (strtotime returns a timestamp for non-time string of
   pattern '(A|a) .+'). (Derick)
 - Fixed bug #41961 (Ensure search for hidden private methods does not stray
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_http.c?r1=1.77.2.11.2.11r2=1.77.2.11.2.12diff_format=u
Index: php-src/ext/soap/php_http.c
diff -u php-src/ext/soap/php_http.c:1.77.2.11.2.11 
php-src/ext/soap/php_http.c:1.77.2.11.2.12
--- php-src/ext/soap/php_http.c:1.77.2.11.2.11  Fri Jul 13 09:14:03 2007
+++ php-src/ext/soap/php_http.c Tue Jul 24 09:27:46 2007
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_http.c,v 1.77.2.11.2.11 2007/07/13 09:14:03 dmitry Exp $ */
+/* $Id: php_http.c,v 1.77.2.11.2.12 2007/07/24 09:27:46 dmitry Exp $ */
 
 #include php_soap.h
 #include ext/standard/base64.h
@@ -1153,17 +1153,19 @@
 
/* match */
tmp = pos + typelen;
-   eol = strstr(tmp, \r\n);
+   eol = strchr(tmp, '\n');
if (eol == NULL) {
eol = headers + headerslen;
+   } else if (eol  tmp  *(eol-1) == '\r') {
+   eol--;
}
return estrndup(tmp, eol - tmp);
}
 
/* find next line */
-   pos = strstr(pos, \r\n);
+   pos = strchr(pos, '\n');
if (pos) {
-   pos += 2;
+   pos++;
}
 
} while (pos);
@@ -1203,7 +1205,7 @@
}
 
if (header_chunked) {
-   char done, chunk_size[10];
+   char ch, done, chunk_size[10], headerbuf[8192];
 
done = FALSE;
 
@@ -1231,11 +1233,20 @@
len_size += len_read;
http_buf_size += len_read;
}
-   }
 
-   /* Eat up '\r' '\n' */
-   php_stream_getc(stream);
-   php_stream_getc(stream);
+   /* Eat up '\r' '\n' */
+   ch = php_stream_getc(stream);
+   if (ch == '\r') {
+   ch = php_stream_getc(stream);
+   }
+   if (ch != '\n') {
+   /* Somthing wrong in chunked 
encoding */
+   if (http_buf) {
+   efree(http_buf);
+   }
+   return FALSE;
+   }
+   }
} else {
/* Somthing wrong in chunked encoding */
if (http_buf) {
@@ -1248,6 +1259,19 @@
}
}
 
+   /* Ignore trailer headers */
+   while (1) {
+   if (!php_stream_gets(stream, headerbuf, 
sizeof(headerbuf))) {
+   break;
+   }
+
+   if ((headerbuf[0] == '\r'  headerbuf[1] == '\n') ||
+   (headerbuf[0] == '\n')) {
+   /* empty line marks end of headers */
+   break;
+   }
+   }
+
if (http_buf == NULL) {
http_buf = emalloc(1);
}
@@ -1294,7 +1318,8 @@
break;
}
 
-   if (strcmp(headerbuf, \r\n) == 0) {
+   if ((headerbuf[0] == '\r'  headerbuf[1] == '\n') ||
+   (headerbuf[0] == 

[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/soap php_http.c

2006-06-27 Thread Ilia Alshanetsky
iliaa   Tue Jun 27 23:32:56 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_http.c 
/php-srcNEWS 
  Log:
  Improved the error reporting in SOAP extension on request failure.
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_http.c?r1=1.77.2.11r2=1.77.2.11.2.1diff_format=u
Index: php-src/ext/soap/php_http.c
diff -u php-src/ext/soap/php_http.c:1.77.2.11 
php-src/ext/soap/php_http.c:1.77.2.11.2.1
--- php-src/ext/soap/php_http.c:1.77.2.11   Thu Apr 13 08:18:36 2006
+++ php-src/ext/soap/php_http.c Tue Jun 27 23:32:56 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_http.c,v 1.77.2.11 2006/04/13 08:18:36 dmitry Exp $ */
+/* $Id: php_http.c,v 1.77.2.11.2.1 2006/06/27 23:32:56 iliaa Exp $ */
 
 #include php_soap.h
 #include ext/standard/base64.h
@@ -237,6 +237,7 @@
int http_status;
int content_type_xml = 0;
char *content_encoding;
+   char *http_msg = NULL;
zend_bool old_allow_url_fopen;
 
if (this_ptr == NULL || Z_TYPE_P(this_ptr) != IS_OBJECT) {
@@ -729,6 +730,14 @@
tmp++;
http_status = atoi(tmp);
}
+   tmp = strstr(tmp, );
+   if (tmp != NULL) {
+   tmp++;
+   if (http_msg) {
+   efree(http_msg);
+   }
+   http_msg = estrdup(tmp);
+   }
efree(http_version);
 
/* Try and get headers again */
@@ -842,6 +851,9 @@
zend_hash_del(Z_OBJPROP_P(this_ptr), httpsocket, 
sizeof(httpsocket));
zend_hash_del(Z_OBJPROP_P(this_ptr), _use_proxy, 
sizeof(_use_proxy));
add_soap_fault(this_ptr, HTTP, Error Fetching http body, No 
Content-Length, connection closed or chunked data, NULL, NULL TSRMLS_CC);
+   if (http_msg) {
+   efree(http_msg);
+   }
return FALSE;
}
 
@@ -1044,6 +1056,9 @@
efree(content_encoding);
efree(http_headers);
efree(http_body);
+   if (http_msg) {
+   efree(http_msg);
+   }
add_soap_fault(this_ptr, HTTP, Unknown 
Content-Encoding, NULL, NULL TSRMLS_CC);
return FALSE;
}
@@ -1057,6 +1072,9 @@
efree(http_headers);
efree(http_body);
add_soap_fault(this_ptr, HTTP, Can't uncompress 
compressed response, NULL, NULL TSRMLS_CC);
+   if (http_msg) {
+   efree(http_msg);
+   }
return FALSE;
}
efree(content_encoding);
@@ -1087,27 +1105,16 @@
 
if (error) {
efree(*buffer);
-   if (http_status == 400) {
-   add_soap_fault(this_ptr, HTTP, Bad Request, 
NULL, NULL TSRMLS_CC);
-   } else if (http_status == 401) {
-   add_soap_fault(this_ptr, HTTP, Unauthorized 
Request, NULL, NULL TSRMLS_CC);
-   } else if (http_status == 405) {
-   add_soap_fault(this_ptr, HTTP, Method not 
allowed, NULL, NULL TSRMLS_CC);
-   } else if (http_status == 415) {
-   add_soap_fault(this_ptr, HTTP, Unsupported 
Media Type, NULL, NULL TSRMLS_CC);
-   } else if (http_status = 400  http_status  500) {
-   add_soap_fault(this_ptr, HTTP, Client 
Error, NULL, NULL TSRMLS_CC);
-   } else if (http_status == 500) {
-   add_soap_fault(this_ptr, HTTP, Internal 
Server Error, NULL, NULL TSRMLS_CC);
-   } else if (http_status = 500  http_status  600) {
-   add_soap_fault(this_ptr, HTTP, Server 
Error, NULL, NULL TSRMLS_CC);
-   } else {
-   add_soap_fault(this_ptr, HTTP, Unsupported 
HTTP status code, NULL, NULL TSRMLS_CC);
-   }
+   add_soap_fault(this_ptr, HTTP, http_msg, NULL, NULL 
TSRMLS_CC);
+   efree(http_msg);
return FALSE;
}
}
 
+   if (http_msg) {
+   efree(http_msg);
+   }
+
return TRUE;
 }
 
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.97r2=1.2027.2.547.2.98diff_format=u
Index: php-src/NEWS