summaryrefslogtreecommitdiff
path: root/ext/soap/php_sdl.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2012-03-05 12:59:01 +0000
committerDmitry Stogov <dmitry@php.net>2012-03-05 12:59:01 +0000
commitf05886dbcb8446c2f3da39445a97ec2278f9f8e6 (patch)
tree6e50fd11ec796288e10e25f7854887192777e445 /ext/soap/php_sdl.c
parent56a3f7eca86bda40f5d01d6772d3d70141781cc3 (diff)
downloadphp-git-f05886dbcb8446c2f3da39445a97ec2278f9f8e6.tar.gz
Fixed bug #60887 (SoapClient ignores user_agent option and sends no User-Agent header)
Diffstat (limited to 'ext/soap/php_sdl.c')
-rw-r--r--ext/soap/php_sdl.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/soap/php_sdl.c b/ext/soap/php_sdl.c
index 961dcf29e6..eeedc510f1 100644
--- a/ext/soap/php_sdl.c
+++ b/ext/soap/php_sdl.c
@@ -3259,6 +3259,13 @@ sdlPtr get_sdl(zval *this_ptr, char *uri, long cache_wsdl TSRMLS_DC)
context = php_stream_context_alloc(TSRMLS_C);
}
+ if (zend_hash_find(Z_OBJPROP_P(this_ptr), "_user_agent", sizeof("_user_agent"), (void **) &tmp) == SUCCESS &&
+ Z_TYPE_PP(tmp) == IS_STRING && Z_STRLEN_PP(tmp) > 0) {
+ smart_str_appends(&headers, "User-Agent: ");
+ smart_str_appends(&headers, Z_STRVAL_PP(tmp));
+ smart_str_appends(&headers, "\r\n");
+ }
+
if (zend_hash_find(Z_OBJPROP_P(this_ptr), "_proxy_host", sizeof("_proxy_host"), (void **) &proxy_host) == SUCCESS &&
Z_TYPE_PP(proxy_host) == IS_STRING &&
zend_hash_find(Z_OBJPROP_P(this_ptr), "_proxy_port", sizeof("_proxy_port"), (void **) &proxy_port) == SUCCESS &&