summaryrefslogtreecommitdiff
path: root/ext/soap/php_sdl.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2010-11-08 11:34:32 +0000
committerDmitry Stogov <dmitry@php.net>2010-11-08 11:34:32 +0000
commitaa3d81686f6f01acb70a906ce414e05c219a96bf (patch)
tree5cf5f295eb1371d2ab12a2ed3714499bb1092f67 /ext/soap/php_sdl.c
parent18096f4b6811432133e1e6f13b4914d3c1cfd6f9 (diff)
downloadphp-git-aa3d81686f6f01acb70a906ce414e05c219a96bf.tar.gz
Fixed WSDL loading using https through proxy
Diffstat (limited to 'ext/soap/php_sdl.c')
-rw-r--r--ext/soap/php_sdl.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/ext/soap/php_sdl.c b/ext/soap/php_sdl.c
index da7dff8b62..435ebf0e72 100644
--- a/ext/soap/php_sdl.c
+++ b/ext/soap/php_sdl.c
@@ -3250,10 +3250,13 @@ sdlPtr get_sdl(zval *this_ptr, char *uri, long cache_wsdl TSRMLS_DC)
php_stream_context_set_option(context, "http", "proxy", str_proxy);
zval_ptr_dtor(&str_proxy);
- MAKE_STD_ZVAL(str_proxy);
- ZVAL_BOOL(str_proxy, 1);
- php_stream_context_set_option(context, "http", "request_fulluri", str_proxy);
- zval_ptr_dtor(&str_proxy);
+ if (uri_len < sizeof("https://")-1 ||
+ strncasecmp(uri, "https://", sizeof("https://")-1) != 0) {
+ MAKE_STD_ZVAL(str_proxy);
+ ZVAL_BOOL(str_proxy, 1);
+ php_stream_context_set_option(context, "http", "request_fulluri", str_proxy);
+ zval_ptr_dtor(&str_proxy);
+ }
proxy_authentication(this_ptr, &headers TSRMLS_CC);
}