summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2015-08-26 14:18:42 +0200
committerAnatol Belski <ab@php.net>2015-08-26 16:39:54 +0200
commit150dead2d93435b7d097981dad484ad9a42df901 (patch)
tree929e95048c75ed0e25a41991a434f14b75030d25
parent1553ce2093bb959f926cc43a8bf6c3c36d5b0223 (diff)
downloadphp-git-150dead2d93435b7d097981dad484ad9a42df901.tar.gz
add range check to ext/soap
-rw-r--r--ext/soap/soap.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/soap/soap.c b/ext/soap/soap.c
index 0216de39f2..3c4a86c01e 100644
--- a/ext/soap/soap.c
+++ b/ext/soap/soap.c
@@ -1539,6 +1539,11 @@ PHP_METHOD(SoapServer, handle)
return;
}
+ if (ZEND_NUM_ARGS() > 0 && ZEND_SIZE_T_INT_OVFL(arg_len)) {
+ soap_server_fault("Server", "Input string is too long", NULL, NULL, NULL);
+ return;
+ }
+
if (SG(request_info).request_method &&
strcmp(SG(request_info).request_method, "GET") == 0 &&
SG(request_info).query_string &&