iliaa Thu Oct 5 00:38:18 2006 UTC
Modified files:
/php-src/ext/openssl xp_ssl.c
Log:
MFB: Fixed bug #39039 (SSL: fatal protocol error when fetching HTTPS from
servers running Google web server).
http://cvs.php.net/viewvc.cgi/php-src/ext/openssl/xp_ssl.c?r1=1.26&r2=1.27&diff_format=u
Index: php-src/ext/openssl/xp_ssl.c
diff -u php-src/ext/openssl/xp_ssl.c:1.26 php-src/ext/openssl/xp_ssl.c:1.27
--- php-src/ext/openssl/xp_ssl.c:1.26 Fri May 26 01:48:23 2006
+++ php-src/ext/openssl/xp_ssl.c Thu Oct 5 00:38:18 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: xp_ssl.c,v 1.26 2006/05/26 01:48:23 pajoye Exp $ */
+/* $Id: xp_ssl.c,v 1.27 2006/10/05 00:38:18 iliaa Exp $ */
#include "php.h"
#include "ext/standard/file.h"
@@ -57,17 +57,20 @@
* in an error condition arising from a network connection problem */
static int is_http_stream_talking_to_iis(php_stream *stream TSRMLS_DC)
{
- if (stream->wrapperdata && stream->wrapper &&
strcmp(stream->wrapper->wops->label, "HTTP") == 0) {
+ if (stream->wrapperdata && stream->wrapper &&
strcasecmp(stream->wrapper->wops->label, "HTTP") == 0) {
/* the wrapperdata is an array zval containing the headers */
zval **tmp;
#define SERVER_MICROSOFT_IIS "Server: Microsoft-IIS"
+#define SERVER_GOOGLE "Server: GFE/"
zend_hash_internal_pointer_reset(Z_ARRVAL_P(stream->wrapperdata));
while (SUCCESS ==
zend_hash_get_current_data(Z_ARRVAL_P(stream->wrapperdata), (void**)&tmp)) {
if (strncasecmp(Z_STRVAL_PP(tmp), SERVER_MICROSOFT_IIS,
sizeof(SERVER_MICROSOFT_IIS)-1) == 0) {
return 1;
+ } else if (strncasecmp(Z_STRVAL_PP(tmp), SERVER_GOOGLE,
sizeof(SERVER_GOOGLE)-1) == 0) {
+ return 1;
}
zend_hash_move_forward(Z_ARRVAL_P(stream->wrapperdata));
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php