summaryrefslogtreecommitdiff
path: root/ext/soap
diff options
context:
space:
mode:
authorMark A. Hershberger <mah@debian.(none)>2009-03-25 00:37:48 -0400
committerMark A. Hershberger <mah@debian.(none)>2009-03-25 00:37:48 -0400
commiteddbbea4325e602ddc87c545531609132d4f0e3b (patch)
treef0994206a7e0a6251be7cc6729ba480f0c8729c2 /ext/soap
parent2d4e5b09576bb4f0ba716cc82cdf29ea04d9184b (diff)
downloadphp-eddbbea4325e602ddc87c545531609132d4f0e3b.tar.gz
Imported Upstream version 5.2.3upstream/5.2.3
Diffstat (limited to 'ext/soap')
-rw-r--r--ext/soap/php_encoding.c12
-rw-r--r--ext/soap/php_http.c6
-rw-r--r--ext/soap/php_sdl.c12
-rw-r--r--ext/soap/soap.c34
-rwxr-xr-xext/soap/tests/any.phpt2
-rw-r--r--ext/soap/tests/bugs/bug28751.phpt2
-rw-r--r--ext/soap/tests/bugs/bug29839.phpt4
-rw-r--r--ext/soap/tests/bugs/bug30106.phpt2
-rw-r--r--ext/soap/tests/bugs/bug30799.phpt2
-rw-r--r--ext/soap/tests/bugs/bug30928.phpt2
-rw-r--r--ext/soap/tests/bugs/bug30994.phpt4
-rw-r--r--ext/soap/tests/bugs/bug31422.phpt4
-rw-r--r--ext/soap/tests/bugs/bug31695.phpt2
-rw-r--r--ext/soap/tests/bugs/bug31755.phpt2
-rw-r--r--ext/soap/tests/bugs/bug32776.phpt2
-rwxr-xr-xext/soap/tests/bugs/bug34453.phpt4
-rwxr-xr-xext/soap/tests/bugs/bug35142.phpt2
-rwxr-xr-xext/soap/tests/bugs/bug35273.phpt2
-rwxr-xr-xext/soap/tests/bugs/bug36226.phpt2
-rwxr-xr-xext/soap/tests/bugs/bug36629.phpt4
-rwxr-xr-xext/soap/tests/bugs/bug39815.phpt2
-rwxr-xr-xext/soap/tests/bugs/bug39832.phpt2
-rwxr-xr-xext/soap/tests/bugs/bug41004.phpt2
-rwxr-xr-xext/soap/tests/bugs/bug41337.phpt12
-rwxr-xr-xext/soap/tests/bugs/bug41337.wsdl63
-rwxr-xr-xext/soap/tests/bugs/bug41337_2.phpt12
-rwxr-xr-xext/soap/tests/bugs/bug41337_2.wsdl36
-rwxr-xr-xext/soap/tests/bugs/bug41337_2_1.wsdl47
-rw-r--r--ext/soap/tests/bugs/bug41477.phpt20
-rw-r--r--ext/soap/tests/classmap001.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_012p.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_012s.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_012w.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_013p.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_013s.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_013w.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_014p.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_014s.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_014w.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_015p.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_015s.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/r2_base_015w.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/Base/round2_base.inc2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_001p.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_001s.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_001w.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_002p.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_002s.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_002w.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_004p.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_004s.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_004w.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_005p.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_005s.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/r2_groupB_005w.phpt2
-rw-r--r--ext/soap/tests/interop/Round2/GroupB/round2_groupB.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound1_001w.phpt2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound2_001w.phpt2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclit_003w.phpt2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclitparams_003w.phpt2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/r3_groupD_import2_001w.phpt2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_001w.phpt2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_002w.phpt2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/r3_groupD_rpcenc_003w.phpt2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound1.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound2.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclit.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclitparams.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_emptysa.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_import1.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_import2.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_import3.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupD/round3_groupD_rpcenc.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupE/round3_groupE_list.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupF/round3_groupF_ext.inc2
-rw-r--r--ext/soap/tests/interop/Round3/GroupF/round3_groupF_headers.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimedoc.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimerpc.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimedoc.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimerpc.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_001w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_002w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_003w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_004w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_005w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_006w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_001w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_002w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_003w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_004w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_005w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_006w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_007w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_008w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_009w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_010w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_004w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_005w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_006w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_007w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_008w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_009w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_010w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_011w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_004w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_005w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_006w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_007w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_008w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_009w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_010w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_011w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_doclit.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_rpcenc.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_doclit.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_rpcenc.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupH/round4_groupH_soapfault.inc2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_003w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_008w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_009w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_011w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_014w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_015w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_019w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_020w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_021w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_022w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_023w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_024w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_025w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_028w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_032w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_033w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_035w.phpt2
-rw-r--r--ext/soap/tests/interop/Round4/GroupI/round4_groupI_xsd.inc2
-rw-r--r--ext/soap/tests/schema/schema004.phpt4
-rw-r--r--ext/soap/tests/schema/schema014.phpt2
-rw-r--r--ext/soap/tests/schema/schema016.phpt2
-rw-r--r--ext/soap/tests/schema/schema017.phpt2
-rw-r--r--ext/soap/tests/schema/schema020.phpt2
-rw-r--r--ext/soap/tests/schema/schema022.phpt2
-rw-r--r--ext/soap/tests/schema/schema054.phpt2
-rw-r--r--ext/soap/tests/schema/schema055.phpt2
-rw-r--r--ext/soap/tests/schema/schema063.phpt2
-rw-r--r--ext/soap/tests/schema/test_schema.inc2
-rw-r--r--ext/soap/tests/server001.phpt2
-rw-r--r--ext/soap/tests/server002.phpt2
-rw-r--r--ext/soap/tests/server003.phpt2
-rw-r--r--ext/soap/tests/server004.phpt2
-rw-r--r--ext/soap/tests/server005.phpt2
-rw-r--r--ext/soap/tests/server006.phpt2
-rw-r--r--ext/soap/tests/server009.phpt4
-rw-r--r--ext/soap/tests/server010.phpt4
-rw-r--r--ext/soap/tests/server013.phpt2
-rw-r--r--ext/soap/tests/server014.phpt2
-rw-r--r--ext/soap/tests/server016.phpt2
-rw-r--r--ext/soap/tests/server017.phpt2
-rw-r--r--ext/soap/tests/server018.phpt2
-rw-r--r--ext/soap/tests/server019.phpt33
-rw-r--r--ext/soap/tests/server020.phpt32
-rw-r--r--ext/soap/tests/server021.phpt2
-rwxr-xr-xext/soap/tests/server022.phpt2
-rwxr-xr-xext/soap/tests/server023.phpt2
-rwxr-xr-xext/soap/tests/server024.phpt2
-rwxr-xr-xext/soap/tests/server025.phpt2
-rwxr-xr-xext/soap/tests/server026.phpt2
-rwxr-xr-xext/soap/tests/server028.phpt2
-rw-r--r--ext/soap/tests/server029.phpt55
-rw-r--r--ext/soap/tests/soap12/T42.phpt2
-rw-r--r--ext/soap/tests/soap12/T47.phpt2
-rw-r--r--ext/soap/tests/soap12/soap12-test.inc2
-rwxr-xr-xext/soap/tests/typemap001.phpt2
-rwxr-xr-xext/soap/tests/typemap002.phpt2
-rwxr-xr-xext/soap/tests/typemap005.phpt2
-rwxr-xr-xext/soap/tests/typemap006.phpt2
-rwxr-xr-xext/soap/tests/typemap009.phpt2
-rwxr-xr-xext/soap/tests/typemap010.phpt2
-rwxr-xr-xext/soap/tests/typemap013.phpt2
178 files changed, 581 insertions, 139 deletions
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c
index b82bf7dbe..af7a8e1f1 100644
--- a/ext/soap/php_encoding.c
+++ b/ext/soap/php_encoding.c
@@ -17,7 +17,7 @@
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_encoding.c,v 1.103.2.21.2.32 2007/05/02 17:24:16 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.33 2007/05/04 06:19:34 dmitry Exp $ */
#include <time.h>
@@ -1595,6 +1595,8 @@ static int model_to_xml_object(xmlNodePtr node, sdlContentModelPtr model, zval *
property = xmlNewNode(NULL, BAD_CAST("BOGUS"));
xmlAddChild(node, property);
set_xsi_nil(property);
+ } else if (Z_TYPE_P(data) == IS_NULL && model->min_occurs == 0) {
+ return 1;
} else {
property = master_to_xml(enc, data, style, node);
if (property->children && property->children->content &&
@@ -3356,8 +3358,12 @@ static int is_map(zval *array)
int i, count = zend_hash_num_elements(Z_ARRVAL_P(array));
zend_hash_internal_pointer_reset(Z_ARRVAL_P(array));
- for (i = 0;i < count;i++) {
- if (zend_hash_get_current_key_type(Z_ARRVAL_P(array)) == HASH_KEY_IS_STRING) {
+ for (i = 0; i < count; i++) {
+ char *str_index;
+ ulong num_index;
+
+ if (zend_hash_get_current_key(Z_ARRVAL_P(array), &str_index, &num_index, 0) == HASH_KEY_IS_STRING ||
+ num_index != i) {
return TRUE;
}
zend_hash_move_forward(Z_ARRVAL_P(array));
diff --git a/ext/soap/php_http.c b/ext/soap/php_http.c
index d41bf6997..137c49e6d 100644
--- a/ext/soap/php_http.c
+++ b/ext/soap/php_http.c
@@ -17,11 +17,12 @@
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_http.c,v 1.77.2.11.2.8 2007/02/24 02:17:26 helly Exp $ */
+/* $Id: php_http.c,v 1.77.2.11.2.10 2007/05/10 21:52:10 tony2001 Exp $ */
#include "php_soap.h"
#include "ext/standard/base64.h"
#include "ext/standard/md5.h"
+#include "ext/standard/php_rand.h"
static char *get_http_header_value(char *headers, char *type);
static int get_http_body(php_stream *socketd, int close, char *headers, char **response, int *out_size TSRMLS_DC);
@@ -469,10 +470,9 @@ try_again:
char HA1[33], HA2[33], response[33], cnonce[33], nc[9];
PHP_MD5_CTX md5ctx;
unsigned char hash[16];
- unsigned int ctx;
PHP_MD5Init(&md5ctx);
- snprintf(cnonce, sizeof(cnonce), "%d", php_rand_r(&ctx));
+ snprintf(cnonce, sizeof(cnonce), "%ld", php_rand(TSRMLS_C));
PHP_MD5Update(&md5ctx, (unsigned char*)cnonce, strlen(cnonce));
PHP_MD5Final(hash, &md5ctx);
make_digest(cnonce, hash);
diff --git a/ext/soap/php_sdl.c b/ext/soap/php_sdl.c
index e2d830c44..ba53cdc6e 100644
--- a/ext/soap/php_sdl.c
+++ b/ext/soap/php_sdl.c
@@ -17,7 +17,7 @@
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_sdl.c,v 1.88.2.12.2.7 2007/02/23 20:40:55 stas Exp $ */
+/* $Id: php_sdl.c,v 1.88.2.12.2.9 2007/05/21 13:13:50 dmitry Exp $ */
#include "php_soap.h"
#include "ext/libxml/php_libxml.h"
@@ -654,6 +654,7 @@ static sdlPtr load_wsdl(zval *this_ptr, char *struri TSRMLS_DC)
for (i = 0; i < n; i++) {
xmlNodePtr *tmp, service;
xmlNodePtr trav, port;
+ int has_soap_port = 0;
zend_hash_get_current_data(&ctx.services, (void **)&tmp);
service = *tmp;
@@ -716,8 +717,15 @@ static sdlPtr load_wsdl(zval *this_ptr, char *struri TSRMLS_DC)
trav2 = trav2->next;
}
if (!address) {
- soap_error0(E_ERROR, "Parsing WSDL: No address associated with <port>");
+ if (has_soap_port || trav->next || i < n-1) {
+ efree(tmpbinding);
+ trav = trav->next;
+ continue;
+ } else {
+ soap_error0(E_ERROR, "Parsing WSDL: No address associated with <port>");
+ }
}
+ has_soap_port = 1;
location = get_attribute(address->properties, "location");
if (!location) {
diff --git a/ext/soap/soap.c b/ext/soap/soap.c
index 1b26a8df3..5b5b3e80e 100644
--- a/ext/soap/soap.c
+++ b/ext/soap/soap.c
@@ -17,7 +17,7 @@
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
-/* $Id: soap.c,v 1.156.2.28.2.23 2007/05/02 08:22:13 dmitry Exp $ */
+/* $Id: soap.c,v 1.156.2.28.2.25 2007/05/27 17:46:46 iliaa Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -140,8 +140,6 @@ static void soap_error_handler(int error_num, const char *error_filename, const
SOAP_GLOBAL(soap_version) = _old_soap_version;
#endif
-#define HTTP_RAW_POST_DATA "HTTP_RAW_POST_DATA"
-
#define ZERO_PARAM() \
if (ZEND_NUM_ARGS() != 0) \
WRONG_PARAM_COUNT;
@@ -316,11 +314,11 @@ ZEND_BEGIN_ARG_INFO(__call_args, 0)
ZEND_ARG_PASS_INFO(0)
ZEND_END_ARG_INFO()
ZEND_BEGIN_ARG_INFO_EX(__soap_call_args, 0, 0, 2)
- ZEND_ARG_PASS_INFO(0)
- ZEND_ARG_PASS_INFO(0)
- ZEND_ARG_PASS_INFO(0)
- ZEND_ARG_PASS_INFO(0)
- ZEND_ARG_PASS_INFO(1)
+ ZEND_ARG_INFO(0, function_name)
+ ZEND_ARG_INFO(0, arguments)
+ ZEND_ARG_INFO(0, options)
+ ZEND_ARG_INFO(0, input_headers)
+ ZEND_ARG_INFO(1, output_headers)
ZEND_END_ARG_INFO()
#else
unsigned char __call_args[] = { 2, BYREF_NONE, BYREF_NONE };
@@ -1403,7 +1401,7 @@ PHP_METHOD(SoapServer, handle)
sdlPtr old_sdl = NULL;
soapServicePtr service;
xmlDocPtr doc_request=NULL, doc_return;
- zval function_name, **params, **raw_post, *soap_obj, retval;
+ zval function_name, **params, *soap_obj, retval;
char *fn_name, cont_len[30];
int num_params = 0, size, i, call_status = 0;
xmlChar *buf;
@@ -1478,8 +1476,9 @@ PHP_METHOD(SoapServer, handle)
}
if (ZEND_NUM_ARGS() == 0) {
- if (zend_hash_find(&EG(symbol_table), HTTP_RAW_POST_DATA, sizeof(HTTP_RAW_POST_DATA), (void **) &raw_post)!=FAILURE
- && ((*raw_post)->type==IS_STRING)) {
+ if (SG(request_info).raw_post_data) {
+ char *post_data = SG(request_info).raw_post_data;
+ int post_data_length = SG(request_info).raw_post_data_length;
zval **server_vars, **encoding;
zend_is_auto_global("_SERVER", sizeof("_SERVER")-1 TSRMLS_CC);
@@ -1497,13 +1496,13 @@ PHP_METHOD(SoapServer, handle)
zend_hash_exists(EG(function_table), "gzinflate", sizeof("gzinflate"))) {
ZVAL_STRING(&func, "gzinflate", 0);
params[0] = &param;
- ZVAL_STRINGL(params[0], Z_STRVAL_PP(raw_post)+10, Z_STRLEN_PP(raw_post)-10, 0);
+ ZVAL_STRINGL(params[0], post_data+10, post_data_length-10, 0);
INIT_PZVAL(params[0]);
} else if (strcmp(Z_STRVAL_PP(encoding),"deflate") == 0 &&
zend_hash_exists(EG(function_table), "gzuncompress", sizeof("gzuncompress"))) {
ZVAL_STRING(&func, "gzuncompress", 0);
params[0] = &param;
- ZVAL_STRINGL(params[0], Z_STRVAL_PP(raw_post), Z_STRLEN_PP(raw_post), 0);
+ ZVAL_STRINGL(params[0], post_data, post_data_length, 0);
INIT_PZVAL(params[0]);
} else {
php_error_docref(NULL TSRMLS_CC, E_ERROR,"Request is compressed with unknown compression '%s'",Z_STRVAL_PP(encoding));
@@ -1516,16 +1515,9 @@ PHP_METHOD(SoapServer, handle)
php_error_docref(NULL TSRMLS_CC, E_ERROR,"Can't uncompress compressed request");
}
} else {
- doc_request = soap_xmlParseMemory(Z_STRVAL_PP(raw_post),Z_STRLEN_PP(raw_post));
+ doc_request = soap_xmlParseMemory(post_data, post_data_length);
}
} else {
- if (SG(request_info).request_method &&
- strcmp(SG(request_info).request_method, "POST") == 0) {
- if (!zend_ini_long("always_populate_raw_post_data", sizeof("always_populate_raw_post_data"), 0)) {
- php_error_docref(NULL TSRMLS_CC, E_ERROR, "PHP-SOAP requires 'always_populate_raw_post_data' to be on please check your php.ini file");
- }
- }
- soap_server_fault("Server", "Bad Request. Can't find HTTP_RAW_POST_DATA", NULL, NULL, NULL TSRMLS_CC);
return;
}
} else {
diff --git a/ext/soap/tests/any.phpt b/ext/soap/tests/any.phpt
index 054319fe3..3805f3f3a 100755
--- a/ext/soap/tests/any.phpt
+++ b/ext/soap/tests/any.phpt
@@ -2,6 +2,8 @@
SOAP handling of <any>
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/bugs/bug28751.phpt b/ext/soap/tests/bugs/bug28751.phpt
index e850b7f75..1f382f39f 100644
--- a/ext/soap/tests/bugs/bug28751.phpt
+++ b/ext/soap/tests/bugs/bug28751.phpt
@@ -29,7 +29,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/bugs/bug29839.phpt b/ext/soap/tests/bugs/bug29839.phpt
index fb75b8be2..f14866954 100644
--- a/ext/soap/tests/bugs/bug29839.phpt
+++ b/ext/soap/tests/bugs/bug29839.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #29839 incorrect convert (xml:lang to lang)
+Bug #29839 (incorrect convert (xml:lang to lang))
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
@@ -38,4 +38,4 @@ echo "ok\n";
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://test-uri"><SOAP-ENV:Body><string xml:lang="en"><ns1:value>hello</ns1:value></string></SOAP-ENV:Body></SOAP-ENV:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://test-uri"><SOAP-ENV:Body><string xml:lang="en"><ns1:value>hello</ns1:value></string></SOAP-ENV:Body></SOAP-ENV:Envelope>
-ok \ No newline at end of file
+ok
diff --git a/ext/soap/tests/bugs/bug30106.phpt b/ext/soap/tests/bugs/bug30106.phpt
index a17aa1768..1745f5698 100644
--- a/ext/soap/tests/bugs/bug30106.phpt
+++ b/ext/soap/tests/bugs/bug30106.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #30106 SOAP cannot not parse 'ref' element. Causes Uncaught SoapFault exception.
+Bug #30106 (SOAP cannot not parse 'ref' element. Causes Uncaught SoapFault exception)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
diff --git a/ext/soap/tests/bugs/bug30799.phpt b/ext/soap/tests/bugs/bug30799.phpt
index 3e902bfb2..c478c7372 100644
--- a/ext/soap/tests/bugs/bug30799.phpt
+++ b/ext/soap/tests/bugs/bug30799.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #30799 SoapServer doesn't handle private or protected properties
+Bug #30799 (SoapServer doesn't handle private or protected properties)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
diff --git a/ext/soap/tests/bugs/bug30928.phpt b/ext/soap/tests/bugs/bug30928.phpt
index 2a013aed5..a4873af1c 100644
--- a/ext/soap/tests/bugs/bug30928.phpt
+++ b/ext/soap/tests/bugs/bug30928.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #30928 When Using WSDL, SoapServer doesn't handle private or protected properties
+Bug #30928 (When Using WSDL, SoapServer doesn't handle private or protected properties)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
diff --git a/ext/soap/tests/bugs/bug30994.phpt b/ext/soap/tests/bugs/bug30994.phpt
index 0b9f3a281..4d0d933d1 100644
--- a/ext/soap/tests/bugs/bug30994.phpt
+++ b/ext/soap/tests/bugs/bug30994.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #30994 SOAP server unable to handle request with references
+Bug #30994 (SOAP server unable to handle request with references)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
@@ -40,7 +40,7 @@ function bassCall() {
$x = new SoapServer(NULL, array("uri"=>"http://spock/kunta/kunta"));
$x->addFunction("bassCall");
-$x->handle();
+$x->handle($HTTP_RAW_POST_DATA);
?>
--EXPECT--
<?xml version="1.0" encoding="UTF-8"?>
diff --git a/ext/soap/tests/bugs/bug31422.phpt b/ext/soap/tests/bugs/bug31422.phpt
index 4103d05f3..b10f4ecc4 100644
--- a/ext/soap/tests/bugs/bug31422.phpt
+++ b/ext/soap/tests/bugs/bug31422.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #31422 No Error-Logging on SoapServer-Side
+Bug #31422 (No Error-Logging on SoapServer-Side)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--INI--
@@ -32,7 +32,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECTF--
diff --git a/ext/soap/tests/bugs/bug31695.phpt b/ext/soap/tests/bugs/bug31695.phpt
index 8277ce623..0779e3db4 100644
--- a/ext/soap/tests/bugs/bug31695.phpt
+++ b/ext/soap/tests/bugs/bug31695.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #31695 Cannot redefine endpoint when using WSDL
+Bug #31695 (Cannot redefine endpoint when using WSDL)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
diff --git a/ext/soap/tests/bugs/bug31755.phpt b/ext/soap/tests/bugs/bug31755.phpt
index 7901d6e0b..a0f8a4c48 100644
--- a/ext/soap/tests/bugs/bug31755.phpt
+++ b/ext/soap/tests/bugs/bug31755.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #31422 No Error-Logging on SoapServer-Side
+Bug #31422 (No Error-Logging on SoapServer-Side)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
diff --git a/ext/soap/tests/bugs/bug32776.phpt b/ext/soap/tests/bugs/bug32776.phpt
index fd6dcdf42..6736fb4be 100644
--- a/ext/soap/tests/bugs/bug32776.phpt
+++ b/ext/soap/tests/bugs/bug32776.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #32776 SOAP doesn't support one-way operations
+Bug #32776 (SOAP doesn't support one-way operations)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
diff --git a/ext/soap/tests/bugs/bug34453.phpt b/ext/soap/tests/bugs/bug34453.phpt
index 60277ca72..8e2501761 100755
--- a/ext/soap/tests/bugs/bug34453.phpt
+++ b/ext/soap/tests/bugs/bug34453.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #29839 incorrect convert (xml:lang to lang)
+Bug #29839 (incorrect convert (xml:lang to lang))
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
@@ -38,4 +38,4 @@ echo "ok\n";
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://test-uri"><SOAP-ENV:Body><string xml:lang="en"><ns1:value>hello</ns1:value></string></SOAP-ENV:Body></SOAP-ENV:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://test-uri"><SOAP-ENV:Body><string xml:lang="en"><ns1:value>hello</ns1:value></string></SOAP-ENV:Body></SOAP-ENV:Envelope>
-ok \ No newline at end of file
+ok
diff --git a/ext/soap/tests/bugs/bug35142.phpt b/ext/soap/tests/bugs/bug35142.phpt
index 7ab49430c..8d366c8f3 100755
--- a/ext/soap/tests/bugs/bug35142.phpt
+++ b/ext/soap/tests/bugs/bug35142.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #35142 SOAP Client/Server Complex Object Support
+Bug #35142 (SOAP Client/Server Complex Object Support)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--INI--
diff --git a/ext/soap/tests/bugs/bug35273.phpt b/ext/soap/tests/bugs/bug35273.phpt
index 9c33d891c..cd238bad1 100755
--- a/ext/soap/tests/bugs/bug35273.phpt
+++ b/ext/soap/tests/bugs/bug35273.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #35273 Error in mapping soap - java types
+Bug #35273 (Error in mapping soap - java types)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
diff --git a/ext/soap/tests/bugs/bug36226.phpt b/ext/soap/tests/bugs/bug36226.phpt
index 2d3461d61..8d3d42b89 100755
--- a/ext/soap/tests/bugs/bug36226.phpt
+++ b/ext/soap/tests/bugs/bug36226.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #36226 SOAP Inconsistent handling when passing potential arrays.
+Bug #36226 (SOAP Inconsistent handling when passing potential arrays)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--INI--
diff --git a/ext/soap/tests/bugs/bug36629.phpt b/ext/soap/tests/bugs/bug36629.phpt
index 7982cfa6b..b22345363 100755
--- a/ext/soap/tests/bugs/bug36629.phpt
+++ b/ext/soap/tests/bugs/bug36629.phpt
@@ -27,7 +27,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
$HTTP_RAW_POST_DATA = <<<EOF
<?xml version="1.0" encoding="ISO-8859-1"?>
@@ -42,7 +42,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/bugs/bug39815.phpt b/ext/soap/tests/bugs/bug39815.phpt
index ced64cddf..1bc49b1f9 100755
--- a/ext/soap/tests/bugs/bug39815.phpt
+++ b/ext/soap/tests/bugs/bug39815.phpt
@@ -7,6 +7,8 @@ if (!function_exists('setlocale')) die('skip setlocale() not available');
if (!@setlocale(LC_ALL, 'sv_SE', 'sv_SE.ISO8859-1')) die('skip sv_SE locale not available');
if (!@setlocale(LC_ALL, 'en_US', 'en_US.ISO8859-1')) die('skip en_US locale not available');
?>
+--INI--
+precision=14
--FILE--
<?php
function test(){
diff --git a/ext/soap/tests/bugs/bug39832.phpt b/ext/soap/tests/bugs/bug39832.phpt
index b8510f32c..527ca897b 100755
--- a/ext/soap/tests/bugs/bug39832.phpt
+++ b/ext/soap/tests/bugs/bug39832.phpt
@@ -22,7 +22,7 @@ function Test($x) {
$x = new SoapServer(dirname(__FILE__)."/bug39832.wsdl");
$x->addFunction("Test");
-$x->handle();
+$x->handle($HTTP_RAW_POST_DATA);
?>
--EXPECT--
<?xml version="1.0" encoding="UTF-8"?>
diff --git a/ext/soap/tests/bugs/bug41004.phpt b/ext/soap/tests/bugs/bug41004.phpt
index 7359ead38..743ae9d3f 100755
--- a/ext/soap/tests/bugs/bug41004.phpt
+++ b/ext/soap/tests/bugs/bug41004.phpt
@@ -1,5 +1,5 @@
--TEST--
-Bug #41004 minOccurs="0" and null class member variable
+Bug #41004 (minOccurs="0" and null class member variable)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
diff --git a/ext/soap/tests/bugs/bug41337.phpt b/ext/soap/tests/bugs/bug41337.phpt
new file mode 100755
index 000000000..8f44e2781
--- /dev/null
+++ b/ext/soap/tests/bugs/bug41337.phpt
@@ -0,0 +1,12 @@
+--TEST--
+Bug #41337 (WSDL parsing doesn't ignore non soap bindings)
+--SKIPIF--
+<?php require_once('skipif.inc'); ?>
+--FILE--
+<?php
+ini_set("soap.wsdl_cache_enabled",0);
+$client = new SoapClient(dirname(__FILE__)."/bug41337.wsdl");
+echo "ok\n";
+?>
+--EXPECT--
+ok
diff --git a/ext/soap/tests/bugs/bug41337.wsdl b/ext/soap/tests/bugs/bug41337.wsdl
new file mode 100755
index 000000000..14e5dc4b4
--- /dev/null
+++ b/ext/soap/tests/bugs/bug41337.wsdl
@@ -0,0 +1,63 @@
+<?xml version="1.0" ?>
+<definitions
+ xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:si="http://soapinterop.org/xsd"
+ xmlns:tns="http://linuxsrv.home/~dmitry/soap/test.wsdl"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
+ targetNamespace="http://linuxsrv.home/~dmitry/soap/test.wsdl">
+
+ <types>
+ <xsd:schema targetNamespace="http://linuxsrv.home/~dmitry/soap/test.wsdl">
+ <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
+ <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/" />
+ </xsd:schema>
+ </types>
+
+ <message name="AddRequest">
+ <part name="x" type="xsd:double" />
+ <part name="y" type="xsd:double" />
+ </message>
+ <message name="AddResponse">
+ <part name="result" type="xsd:double" />
+ </message>
+
+ <portType name="TestServicePortType">
+ <operation name="Add">
+ <input message="tns:AddRequest" />
+ <output message="tns:AddResponse" />
+ </operation>
+ </portType>
+
+ <binding name="TestServiceBinding2" type="tns:TestServicePortType">
+ <operation name="Add">
+ <input/>
+ <output/>
+ </operation>
+ </binding>
+
+ <binding name="TestServiceBinding" type="tns:TestServicePortType">
+ <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="Add">
+ <soap:operation soapAction="Add" style="rpc" />
+ <input>
+ <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+ </input>
+ <output>
+ <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+ </output>
+ </operation>
+ </binding>
+
+ <service name="TestService">
+ <port name="TestServicePort2" binding="tns:TestServiceBinding"/>
+ <port name="TestServicePort" binding="tns:TestServiceBinding">
+ <soap:address location="http://linuxsrv.home/~dmitry/soap/soap_server.php" />
+ </port>
+ </service>
+
+</definitions>
diff --git a/ext/soap/tests/bugs/bug41337_2.phpt b/ext/soap/tests/bugs/bug41337_2.phpt
new file mode 100755
index 000000000..0e4504e73
--- /dev/null
+++ b/ext/soap/tests/bugs/bug41337_2.phpt
@@ -0,0 +1,12 @@
+--TEST--
+Bug #41337 (WSDL parsing doesn't ignore non soap bindings)
+--SKIPIF--
+<?php require_once('skipif.inc'); ?>
+--FILE--
+<?php
+ini_set("soap.wsdl_cache_enabled",0);
+$client = new SoapClient(dirname(__FILE__)."/bug41337_2.wsdl");
+echo "ok\n";
+?>
+--EXPECT--
+ok
diff --git a/ext/soap/tests/bugs/bug41337_2.wsdl b/ext/soap/tests/bugs/bug41337_2.wsdl
new file mode 100755
index 000000000..46c078a0e
--- /dev/null
+++ b/ext/soap/tests/bugs/bug41337_2.wsdl
@@ -0,0 +1,36 @@
+<?xml version="1.0" ?>
+<definitions
+ xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:si="http://soapinterop.org/xsd"
+ xmlns:tns="http://linuxsrv.home/~dmitry/soap/test.wsdl"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
+ targetNamespace="http://linuxsrv.home/~dmitry/soap/test.wsdl">
+
+ <import namespace="http://linuxsrv.home/~dmitry/soap/test.wsdl"
+ location="bug41337_2_1.wsdl" />
+
+ <binding name="TestServiceBinding" type="tns:TestServicePortType">
+ <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
+ <operation name="Add">
+ <soap:operation soapAction="Add" style="rpc" />
+ <input>
+ <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+ </input>
+ <output>
+ <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+ </output>
+ </operation>
+ </binding>
+
+ <service name="TestService">
+ <port name="TestServicePort" binding="tns:TestServiceBinding">
+ <soap:address location="http://linuxsrv.home/~dmitry/soap/soap_server.php" />
+ </port>
+ </service>
+
+</definitions>
diff --git a/ext/soap/tests/bugs/bug41337_2_1.wsdl b/ext/soap/tests/bugs/bug41337_2_1.wsdl
new file mode 100755
index 000000000..857dc6ccf
--- /dev/null
+++ b/ext/soap/tests/bugs/bug41337_2_1.wsdl
@@ -0,0 +1,47 @@
+<?xml version="1.0" ?>
+<definitions
+ xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:si="http://soapinterop.org/xsd"
+ xmlns:tns="http://linuxsrv.home/~dmitry/soap/test.wsdl"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
+ targetNamespace="http://linuxsrv.home/~dmitry/soap/test.wsdl">
+
+ <types>
+ <xsd:schema targetNamespace="http://linuxsrv.home/~dmitry/soap/test.wsdl">
+ <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
+ <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/" />
+ </xsd:schema>
+ </types>
+
+ <message name="AddRequest">
+ <part name="x" type="xsd:double" />
+ <part name="y" type="xsd:double" />
+ </message>
+ <message name="AddResponse">
+ <part name="result" type="xsd:double" />
+ </message>
+
+ <portType name="TestServicePortType">
+ <operation name="Add">
+ <input message="tns:AddRequest" />
+ <output message="tns:AddResponse" />
+ </operation>
+ </portType>
+
+ <binding name="TestServiceBinding2" type="tns:TestServicePortType">
+ <operation name="Add">
+ <input/>
+ <output/>
+ </operation>
+ </binding>
+
+ <service name="TestService2">
+ <port name="TestServicePort2" binding="tns:TestServiceBinding"/>
+ </service>
+
+</definitions>
diff --git a/ext/soap/tests/bugs/bug41477.phpt b/ext/soap/tests/bugs/bug41477.phpt
new file mode 100644
index 000000000..a103e6920
--- /dev/null
+++ b/ext/soap/tests/bugs/bug41477.phpt
@@ -0,0 +1,20 @@
+--TEST--
+Bug #41477 (no arginfo about SoapClient::__soapCall())
+--SKIPIF--
+<?php require_once('skipif.inc'); ?>
+--FILE--
+<?php
+$objRfClass = new ReflectionClass('SoapClient');
+$objRfMethod = $objRfClass->getMethod('__soapCall');
+$arrParams = $objRfMethod->getParameters();
+foreach($arrParams as $objRfParam)
+{
+ var_dump($objRfParam->getName());
+}
+?>
+--EXPECT--
+string(13) "function_name"
+string(9) "arguments"
+string(7) "options"
+string(13) "input_headers"
+string(14) "output_headers"
diff --git a/ext/soap/tests/classmap001.phpt b/ext/soap/tests/classmap001.phpt
index 1908ddd1e..6ac81aae3 100644
--- a/ext/soap/tests/classmap001.phpt
+++ b/ext/soap/tests/classmap001.phpt
@@ -41,7 +41,7 @@ $options=Array(
$server = new SoapServer(dirname(__FILE__)."/classmap.wsdl",$options);
$server->setClass("test");
-$server->handle();
+$server->handle($GLOBALS['HTTP_RAW_POST_DATA']);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_012p.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_012p.phpt
index b30abdc2d..1a8e186b4 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_012p.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_012p.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 012 (php/direct): echoFloat
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(NULL,array("location"=>"test://","uri"=>"http://soapinterop.org/","trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_012s.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_012s.phpt
index 107814bc8..c235e7323 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_012s.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_012s.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 012 (soap/direct): echoFloat
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(NULL,array("location"=>"test://","uri"=>"http://soapinterop.org/","trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_012w.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_012w.phpt
index aae41109c..a48ac7b23 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_012w.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_012w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 012 (php/wsdl): echoFloat
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round2_base.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_013p.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_013p.phpt
index 940a3ddbd..0a1b9d17a 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_013p.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_013p.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 013 (php/direct): echoFloatArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(NULL,array("location"=>"test://","uri"=>"http://soapinterop.org/","trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_013s.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_013s.phpt
index 67dbe28cc..f83e8f73e 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_013s.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_013s.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 013 (soap/direct): echoFloatArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = new SoapParam(new SoapVar(array(
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_013w.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_013w.phpt
index 428860414..8481de447 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_013w.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_013w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 013 (php/wsdl): echoFloatArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round2_base.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_014p.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_014p.phpt
index 986d7e40b..59608c2a8 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_014p.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_014p.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 014 (php/direct): echoStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_014s.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_014s.phpt
index 7e3ac0f65..191add359 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_014s.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_014s.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 014 (soap/direct): echoStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = new SoapParam(new SoapVar(array(
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_014w.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_014w.phpt
index a601c9fa6..104f244e3 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_014w.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_014w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 014 (php/wsdl): echoStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_015p.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_015p.phpt
index 702da37b9..d6dc55bd0 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_015p.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_015p.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 015 (php/direct): echoStructArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_015s.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_015s.phpt
index dafb53065..7a50b9bcc 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_015s.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_015s.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 015 (soap/direct): echoStructArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round2/Base/r2_base_015w.phpt b/ext/soap/tests/interop/Round2/Base/r2_base_015w.phpt
index 9ffd2e5e1..51d344f24 100644
--- a/ext/soap/tests/interop/Round2/Base/r2_base_015w.phpt
+++ b/ext/soap/tests/interop/Round2/Base/r2_base_015w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 base 015 (php/wsdl): echoStructArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round2/Base/round2_base.inc b/ext/soap/tests/interop/Round2/Base/round2_base.inc
index b197f5bdd..29879547d 100644
--- a/ext/soap/tests/interop/Round2/Base/round2_base.inc
+++ b/ext/soap/tests/interop/Round2/Base/round2_base.inc
@@ -76,5 +76,5 @@ class SOAP_Interop_Base {
$server = new SoapServer(dirname(__FILE__)."/round2_base.wsdl");
$server->setClass("SOAP_Interop_Base");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001p.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001p.phpt
index 756b7eb52..e3bc42f8e 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001p.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001p.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 001 (php/direct): echoStructAsSimpleTypes
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(NULL,array("location"=>"test://","uri"=>"http://soapinterop.org/","trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001s.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001s.phpt
index e036bf4ca..b0b40f7d7 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001s.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001s.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 001 (soap/direct): echoStructAsSimpleTypes
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = new SoapParam(new SoapVar(array(
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001w.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001w.phpt
index 3e74c451c..b47df6a68 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001w.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_001w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 001 (php/wsdl): echoStructAsSimpleTypes
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round2_groupB.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002p.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002p.phpt
index e5c994394..c6f04dbcc 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002p.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002p.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 002 (php/direct): echoSimpleTypesAsStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(NULL,array("location"=>"test://","uri"=>"http://soapinterop.org/","trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002s.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002s.phpt
index 6ad0d5b86..744b3deaa 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002s.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002s.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 002 (soap/direct): echoSimpleTypesAsStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(NULL,array("location"=>"test://","uri"=>"http://soapinterop.org/","trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002w.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002w.phpt
index 54d2a5302..610d866be 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002w.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_002w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 002 (php/wsdl): echoSimpleTypesAsStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round2_groupB.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004p.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004p.phpt
index 0649e85cf..e0147b038 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004p.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004p.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 004 (php/direct): echoNestedStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = (object)array(
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004s.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004s.phpt
index 48c3bda9d..c207e721a 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004s.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004s.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 004 (soap/direct): echoNestedStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = new SoapParam(new SoapVar(array(
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004w.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004w.phpt
index 26c75fdec..4393ad9bb 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004w.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_004w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 004 (php/wsdl): echoNestedStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = (object)array(
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005p.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005p.phpt
index 6848d8592..e4a4b8ee2 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005p.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005p.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 005 (php/direct): echoNestedArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = (object)array(
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005s.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005s.phpt
index e08f2602d..b734e4560 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005s.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005s.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 005 (soap/direct): echoNestedArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = new SoapParam(new SoapVar(array(
diff --git a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005w.phpt b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005w.phpt
index 53475102b..f38866b37 100644
--- a/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005w.phpt
+++ b/ext/soap/tests/interop/Round2/GroupB/r2_groupB_005w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round2 groupB 005 (php/wsdl): echoNestedArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$param = (object)array(
diff --git a/ext/soap/tests/interop/Round2/GroupB/round2_groupB.inc b/ext/soap/tests/interop/Round2/GroupB/round2_groupB.inc
index ef00e3bfd..a40f09cc4 100644
--- a/ext/soap/tests/interop/Round2/GroupB/round2_groupB.inc
+++ b/ext/soap/tests/interop/Round2/GroupB/round2_groupB.inc
@@ -33,5 +33,5 @@ class SOAP_Interop_GroupB {
$server = new SoapServer(dirname(__FILE__)."/round2_groupB.wsdl");
$server->setClass("SOAP_Interop_GroupB");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound1_001w.phpt b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound1_001w.phpt
index 8718693cb..1fef6bae4 100644
--- a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound1_001w.phpt
+++ b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound1_001w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round3 GroupD Compound1 001 (php/wsdl): echoPerson
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class Person {
diff --git a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound2_001w.phpt b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound2_001w.phpt
index 79830f410..6534047ad 100644
--- a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound2_001w.phpt
+++ b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_compound2_001w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round3 GroupD Compound2 001 (php/wsdl): echoEmployee
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class Person {
diff --git a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclit_003w.phpt b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclit_003w.phpt
index c9c217292..8529cbd73 100644
--- a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclit_003w.phpt
+++ b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclit_003w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round3 GroupD Doc Lit 003 (php/wsdl): echoStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclitparams_003w.phpt b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclitparams_003w.phpt
index 0c3aa1cdd..0531daf40 100644
--- a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclitparams_003w.phpt
+++ b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_doclitparams_003w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round3 GroupD Doc Lit Parameters 003 (php/wsdl): echoStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import2_001w.phpt b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import2_001w.phpt
index 4795eb157..06e403679 100644
--- a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import2_001w.phpt
+++ b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import2_001w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round3 GroupD Import2 001 (php/wsdl): echoStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_001w.phpt b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_001w.phpt
index a142cf1f0..2f7721ab1 100644
--- a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_001w.phpt
+++ b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_001w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round3 GroupD Import3 001 (php/wsdl): echoStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_002w.phpt b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_002w.phpt
index 1a670731a..29fb6f3e5 100644
--- a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_002w.phpt
+++ b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_import3_002w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round3 GroupD Import3 002 (php/wsdl): echoStructArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_rpcenc_003w.phpt b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_rpcenc_003w.phpt
index a3c2bc049..f8d6cef1d 100644
--- a/ext/soap/tests/interop/Round3/GroupD/r3_groupD_rpcenc_003w.phpt
+++ b/ext/soap/tests/interop/Round3/GroupD/r3_groupD_rpcenc_003w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round3 GroupD RPC Encoded 003 (php/wsdl): echoStruct
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound1.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound1.inc
index 0525b0b51..8e2866995 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound1.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound1.inc
@@ -13,5 +13,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_compound1.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound2.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound2.inc
index 81b96cdbf..8f470bad7 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound2.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_compound2.inc
@@ -8,5 +8,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_compound2.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclit.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclit.inc
index 8ca0338f5..a9da5653e 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclit.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclit.inc
@@ -24,5 +24,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_doclit.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclitparams.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclitparams.inc
index 2042cfc17..6561ff135 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclitparams.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_doclitparams.inc
@@ -25,5 +25,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_doclitparams.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_emptysa.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_emptysa.inc
index b239c4543..ee38a1213 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_emptysa.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_emptysa.inc
@@ -10,5 +10,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_emptysa.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import1.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import1.inc
index 2e56d1897..ecde53e15 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import1.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import1.inc
@@ -10,5 +10,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_import1.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import2.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import2.inc
index a0893c6b7..5957c374a 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import2.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import2.inc
@@ -10,5 +10,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_import2.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import3.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import3.inc
index 398f97ecf..3a3df9791 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import3.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_import3.inc
@@ -15,5 +15,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_import3.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_rpcenc.inc b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_rpcenc.inc
index 645ab3a61..e88df3312 100644
--- a/ext/soap/tests/interop/Round3/GroupD/round3_groupD_rpcenc.inc
+++ b/ext/soap/tests/interop/Round3/GroupD/round3_groupD_rpcenc.inc
@@ -24,5 +24,5 @@ class SOAP_Interop_GroupD {
$server = new SoapServer(dirname(__FILE__)."/round3_groupD_rpcenc.wsdl");
$server->setClass("SOAP_Interop_GroupD");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupE/round3_groupE_list.inc b/ext/soap/tests/interop/Round3/GroupE/round3_groupE_list.inc
index 83454c077..19a769c00 100644
--- a/ext/soap/tests/interop/Round3/GroupE/round3_groupE_list.inc
+++ b/ext/soap/tests/interop/Round3/GroupE/round3_groupE_list.inc
@@ -12,6 +12,6 @@ class SOAP_Interop_GroupE {
$server = new SoapServer(dirname(__FILE__)."/round3_groupE_list.wsdl");
$server->setClass("SOAP_Interop_GroupE");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
var_dump($d);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupF/round3_groupF_ext.inc b/ext/soap/tests/interop/Round3/GroupF/round3_groupF_ext.inc
index 44bc83bdc..e90586efd 100644
--- a/ext/soap/tests/interop/Round3/GroupF/round3_groupF_ext.inc
+++ b/ext/soap/tests/interop/Round3/GroupF/round3_groupF_ext.inc
@@ -10,5 +10,5 @@ class SOAP_Interop_GroupF {
$server = new SoapServer(dirname(__FILE__)."/round3_groupF_ext.wsdl");
$server->setClass("SOAP_Interop_GroupF");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round3/GroupF/round3_groupF_headers.inc b/ext/soap/tests/interop/Round3/GroupF/round3_groupF_headers.inc
index ee6581119..b7e67b0f5 100644
--- a/ext/soap/tests/interop/Round3/GroupF/round3_groupF_headers.inc
+++ b/ext/soap/tests/interop/Round3/GroupF/round3_groupF_headers.inc
@@ -18,5 +18,5 @@ class SOAP_Interop_GroupF {
$server = new SoapServer(dirname(__FILE__)."/round3_groupF_ext.wsdl");
$server->setClass("SOAP_Interop_GroupF");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?> \ No newline at end of file
diff --git a/ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimedoc.inc b/ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimedoc.inc
index c2a27186d..bf95d0aef 100644
--- a/ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimedoc.inc
+++ b/ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimedoc.inc
@@ -29,5 +29,5 @@ class SOAP_Interop_GroupG {
$server = new SoapServer(dirname(__FILE__)."/round4_groupG_dimedoc.wsdl");
$server->setClass("SOAP_Interop_GroupG");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimerpc.inc b/ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimerpc.inc
index 2f3c00aa1..9dcbed73a 100644
--- a/ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimerpc.inc
+++ b/ext/soap/tests/interop/Round4/GroupG/round4_groupG_dimerpc.inc
@@ -29,5 +29,5 @@ class SOAP_Interop_GroupG {
$server = new SoapServer(dirname(__FILE__)."/round4_groupG_dimerpc.wsdl");
$server->setClass("SOAP_Interop_GroupG");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimedoc.inc b/ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimedoc.inc
index 8ed272ed1..ef9d9b8c7 100644
--- a/ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimedoc.inc
+++ b/ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimedoc.inc
@@ -21,5 +21,5 @@ class SOAP_Interop_GroupG {
$server = new SoapServer(dirname(__FILE__)."/round4_groupG_dimedoc.wsdl");
$server->setClass("SOAP_Interop_GroupG");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimerpc.inc b/ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimerpc.inc
index 8ed272ed1..ef9d9b8c7 100644
--- a/ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimerpc.inc
+++ b/ext/soap/tests/interop/Round4/GroupG/round4_groupG_mimerpc.inc
@@ -21,5 +21,5 @@ class SOAP_Interop_GroupG {
$server = new SoapServer(dirname(__FILE__)."/round4_groupG_dimedoc.wsdl");
$server->setClass("SOAP_Interop_GroupG");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_001w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_001w.phpt
index fd898a1e2..25ddc3af7 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_001w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_001w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex Doc Lit 001 (php/wsdl): echoSOAPStructFault
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_002w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_002w.phpt
index 22275ac4f..cbb58ae72 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_002w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_002w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex Doc Lit 002 (php/wsdl): echoBaseStructFault
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_003w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_003w.phpt
index 3fb4e1154..621574c3d 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_003w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_003w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex Doc Lit 003 (php/wsdl): echoExtendedStructFault
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_004w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_004w.phpt
index 42ea0eef2..5309fab21 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_004w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_004w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex Doc Lit 004 (php/wsdl): echoMultipleFaults1(1)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_005w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_005w.phpt
index 34e9baf7d..24498004f 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_005w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_005w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex Doc Lit 005 (php/wsdl): echoMultipleFaults1(2)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_006w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_006w.phpt
index db21c2e51..fd799b666 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_006w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_doclit_006w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex Doc Lit 006 (php/wsdl): echoMultipleFaults1(3)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_001w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_001w.phpt
index b8a550410..29998414f 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_001w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_001w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 001 (php/wsdl): echoSOAPStructFault
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_002w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_002w.phpt
index e8d555246..a91410586 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_002w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_002w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 002 (php/wsdl): echoBaseStructFault
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class BaseStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_003w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_003w.phpt
index c0212a558..baf1f13db 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_003w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_003w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 003 (php/wsdl): echoExtendedStructFault
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class BaseStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_004w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_004w.phpt
index 9d1eb61cd..eb0fc3e73 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_004w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_004w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 004 (php/wsdl): echoMultipleFaults1(1)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_005w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_005w.phpt
index 9ca53bbd7..45c89a654 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_005w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_005w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 005 (php/wsdl): echoMultipleFaults1(2)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_006w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_006w.phpt
index 61d9a6b7c..b7e3debaa 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_006w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_006w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 006 (php/wsdl): echoMultipleFaults1(3)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_007w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_007w.phpt
index d76711dd2..7b74828d4 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_007w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_007w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 007 (php/wsdl): echoMultipleFaults2(1)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class BaseStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_008w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_008w.phpt
index e409ef7b7..6dda13aaa 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_008w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_008w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 008 (php/wsdl): echoMultipleFaults2(2)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class BaseStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_009w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_009w.phpt
index 1c9ccafa4..1b512166c 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_009w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_009w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 009 (php/wsdl): echoMultipleFaults2(3)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class BaseStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_010w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_010w.phpt
index f0acdbdc0..7f8ebbe2e 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_010w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_complex_rpcenc_010w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Complex RPC Enc 010 (php/wsdl): echoMultipleFaults2(4)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class BaseStruct {
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_004w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_004w.phpt
index 00530b56c..1d2068ada 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_004w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_004w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple Doc Lit 004 (php/wsdl): echoMultipleFaults1(1)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_005w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_005w.phpt
index ac77defb8..9179233f2 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_005w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_005w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple Doc Lit 005 (php/wsdl): echoMultipleFaults1(2)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_006w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_006w.phpt
index 5246dad51..7d85cafd8 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_006w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_006w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple Doc Lit 006 (php/wsdl): echoMultipleFaults1(3)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_007w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_007w.phpt
index acf66959c..023f4d595 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_007w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_007w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple Doc Lit 007 (php/wsdl): echoMultipleFaults1(4)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_008w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_008w.phpt
index 27c9623db..b34ed31a8 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_008w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_008w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple Doc Lit 008 (php/wsdl): echoMultipleFaults2(1)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_009w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_009w.phpt
index 783e52047..f184f51c7 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_009w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_009w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple Doc Lit 009 (php/wsdl): echoMultipleFaults2(2)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_010w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_010w.phpt
index 8d05a088d..dc8416c5b 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_010w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_010w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple Doc Lit 010 (php/wsdl): echoMultipleFaults2(3)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_011w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_011w.phpt
index 0af808b48..0992c3574 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_011w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_doclit_011w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple Doc Lit 011 (php/wsdl): echoMultipleFaults2(4)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_004w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_004w.phpt
index b8907d562..abe697f27 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_004w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_004w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple RPC Enc 004 (php/wsdl): echoMultipleFaults1(1)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_005w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_005w.phpt
index 5822e7a72..b4da77e7a 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_005w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_005w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple RPC Enc 005 (php/wsdl): echoMultipleFaults1(2)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_006w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_006w.phpt
index ee75cbdfe..f49d6fdef 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_006w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_006w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple RPC Enc 006 (php/wsdl): echoMultipleFaults1(3)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_007w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_007w.phpt
index 704257f7e..8decba9bf 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_007w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_007w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple RPC Enc 007 (php/wsdl): echoMultipleFaults1(4)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_008w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_008w.phpt
index e85a6480e..7b743bddf 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_008w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_008w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple RPC Enc 008 (php/wsdl): echoMultipleFaults2(1)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_009w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_009w.phpt
index 999cd2892..792542a63 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_009w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_009w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple RPC Enc 009 (php/wsdl): echoMultipleFaults2(2)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_010w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_010w.phpt
index ae7ffa76f..784648cda 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_010w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_010w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple RPC Enc 010 (php/wsdl): echoMultipleFaults2(3)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_011w.phpt b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_011w.phpt
index 7278d6758..892638022 100644
--- a/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_011w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupH/r4_groupH_simple_rpcenc_011w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupH Simple RPC Enc 011 (php/wsdl): echoMultipleFaults2(4)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_doclit.inc b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_doclit.inc
index 1c31aa3da..a27f96e27 100644
--- a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_doclit.inc
+++ b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_doclit.inc
@@ -34,5 +34,5 @@ class SOAP_Interop_GroupH {
$server = new SoapServer(dirname(__FILE__)."/round4_groupH_complex_doclit.wsdl");
$server->setClass("SOAP_Interop_GroupH");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_rpcenc.inc b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_rpcenc.inc
index 6dec18647..52165ba56 100644
--- a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_rpcenc.inc
+++ b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_complex_rpcenc.inc
@@ -34,5 +34,5 @@ class SOAP_Interop_GroupH {
$server = new SoapServer(dirname(__FILE__)."/round4_groupH_complex_rpcenc.wsdl");
$server->setClass("SOAP_Interop_GroupH");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_doclit.inc b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_doclit.inc
index 6a04cfd2d..e0e35f182 100644
--- a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_doclit.inc
+++ b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_doclit.inc
@@ -52,5 +52,5 @@ class SOAP_Interop_GroupH {
$server = new SoapServer(dirname(__FILE__)."/round4_groupH_simple_doclit.wsdl");
$server->setClass("SOAP_Interop_GroupH");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_rpcenc.inc b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_rpcenc.inc
index 0b85a34f9..d39f06096 100644
--- a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_rpcenc.inc
+++ b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_simple_rpcenc.inc
@@ -52,5 +52,5 @@ class SOAP_Interop_GroupH {
$server = new SoapServer(dirname(__FILE__)."/round4_groupH_simple_rpcenc.wsdl");
$server->setClass("SOAP_Interop_GroupH");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_soapfault.inc b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_soapfault.inc
index cf6c3741c..a92484e1d 100644
--- a/ext/soap/tests/interop/Round4/GroupH/round4_groupH_soapfault.inc
+++ b/ext/soap/tests/interop/Round4/GroupH/round4_groupH_soapfault.inc
@@ -18,5 +18,5 @@ class SOAP_Interop_GroupH {
$server = new SoapServer(dirname(__FILE__)."/round4_groupH_soapfault.wsdl");
$server->setClass("SOAP_Interop_GroupH");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_003w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_003w.phpt
index 705e2a976..d12ecd4d0 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_003w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_003w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 003 (php/wsdl): echoFloat
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupI_xsd.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_008w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_008w.phpt
index 4f7c0f9d7..f8e65cf00 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_008w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_008w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 008 (php/wsdl): echoComplexType
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_009w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_009w.phpt
index 25fa95287..7388a874c 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_009w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_009w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 009 (php/wsdl): echoComplexType(minOccur=0)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_011w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_011w.phpt
index 1362a310e..f0d3c8712 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_011w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_011w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 011 (php/wsdl): echoFloatMultiOccurs
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupI_xsd.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_014w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_014w.phpt
index 052333a27..97e816419 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_014w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_014w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 014 (php/wsdl): echoComplexTypeMultiOccurs(1)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_015w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_015w.phpt
index ac7de377b..87542911d 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_015w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_015w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 015 (php/wsdl): echoComplexTypeMultiOccurs(nil)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_019w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_019w.phpt
index 3673be2a6..5c605bcc8 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_019w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_019w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 019 (php/wsdl): echoComplexTypeAsSimpleTypes
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_020w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_020w.phpt
index 4ba0fda7d..3faaaf111 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_020w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_020w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 020 (php/wsdl): echoComplexTypeAsSimpleTypes(minOccurs=0)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_021w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_021w.phpt
index 23c9598eb..98da2702d 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_021w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_021w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 021 (php/wsdl): echoSimpleTypesAsComplexType
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupI_xsd.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_022w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_022w.phpt
index bbe48d21c..4f294c54e 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_022w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_022w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 022 (php/wsdl): echoSimpleTypesAsComplexType(minOccurs=0)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/round4_groupI_xsd.wsdl",array("trace"=>1,"exceptions"=>0));
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_023w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_023w.phpt
index 97fcb02b3..0d6832eec 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_023w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_023w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 023 (php/wsdl): echoNestedComplexType
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_024w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_024w.phpt
index 94f178724..faf8041c0 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_024w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_024w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 024 (php/wsdl): echoNestedComplexType(minOccurs=0)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexTypeComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_025w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_025w.phpt
index 37c67014d..a9813aa7b 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_025w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_025w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 025 (php/wsdl): echoNestedMultiOccurs
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPMultiOccursComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_028w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_028w.phpt
index 22366b437..723870dd8 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_028w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_028w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 028 (php/wsdl): echoAnyType
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
class SOAPComplexType {
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_032w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_032w.phpt
index 2a366fdaa..5068b5f3a 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_032w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_032w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 032 (php/wsdl): echoVoidSoapHeader(3)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$hdr = new SoapHeader("http://soapinterop.org/","echoMeComplexTypeRequest", array("varInt"=>34,"varString"=>"arg","varFloat"=>12.345), 1);
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_033w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_033w.phpt
index 846d2a0e2..dc03cda72 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_033w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_033w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 033 (php/wsdl): echoVoidSoapHeader(4)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$hdr = new SoapHeader("http://soapinterop.org/","echoMeComplexTypeRequest", array("varInt"=>34,"varFloat"=>12.345), 1);
diff --git a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_035w.phpt b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_035w.phpt
index 183783d01..19c0e23f9 100644
--- a/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_035w.phpt
+++ b/ext/soap/tests/interop/Round4/GroupI/r4_groupI_xsd_035w.phpt
@@ -2,6 +2,8 @@
SOAP Interop Round4 GroupI XSD 035 (php/wsdl): echoVoidSoapHeader(6)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$hdr = new SoapHeader("http://soapinterop.org/","echoMeComplexTypeRequest", array("varInt"=>34,"varString"=>"arg","varFloat"=>12.345), 1, SOAP_ACTOR_NEXT);
diff --git a/ext/soap/tests/interop/Round4/GroupI/round4_groupI_xsd.inc b/ext/soap/tests/interop/Round4/GroupI/round4_groupI_xsd.inc
index 0c50f199e..74ca5775f 100644
--- a/ext/soap/tests/interop/Round4/GroupI/round4_groupI_xsd.inc
+++ b/ext/soap/tests/interop/Round4/GroupI/round4_groupI_xsd.inc
@@ -194,5 +194,5 @@ class SOAP_Interop_GroupI {
$server = new SoapServer(dirname(__FILE__)."/round4_groupI_xsd.wsdl");
$server->setClass("SOAP_Interop_GroupI");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
?>
diff --git a/ext/soap/tests/schema/schema004.phpt b/ext/soap/tests/schema/schema004.phpt
index b851f7605..93ed1d17f 100644
--- a/ext/soap/tests/schema/schema004.phpt
+++ b/ext/soap/tests/schema/schema004.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 4: simpleType/restriction (reference to undefined type)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
@@ -17,4 +19,4 @@ echo "ok";
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://test-uri/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:test><testParam xsi:type="ns1:testType">123.5</testParam></ns1:test></SOAP-ENV:Body></SOAP-ENV:Envelope>
string(5) "123.5"
-ok \ No newline at end of file
+ok
diff --git a/ext/soap/tests/schema/schema014.phpt b/ext/soap/tests/schema/schema014.phpt
index 0ffff86e6..3dab5f350 100644
--- a/ext/soap/tests/schema/schema014.phpt
+++ b/ext/soap/tests/schema/schema014.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 14: simpleType/union
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
diff --git a/ext/soap/tests/schema/schema016.phpt b/ext/soap/tests/schema/schema016.phpt
index 462fc7140..11e9436bc 100644
--- a/ext/soap/tests/schema/schema016.phpt
+++ b/ext/soap/tests/schema/schema016.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 16: simpleType/union (inline type)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
diff --git a/ext/soap/tests/schema/schema017.phpt b/ext/soap/tests/schema/schema017.phpt
index e7674cfc4..6689c363e 100644
--- a/ext/soap/tests/schema/schema017.phpt
+++ b/ext/soap/tests/schema/schema017.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 17: union with list
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
diff --git a/ext/soap/tests/schema/schema020.phpt b/ext/soap/tests/schema/schema020.phpt
index 3ceb3de62..344757a32 100644
--- a/ext/soap/tests/schema/schema020.phpt
+++ b/ext/soap/tests/schema/schema020.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 20: union with list
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
diff --git a/ext/soap/tests/schema/schema022.phpt b/ext/soap/tests/schema/schema022.phpt
index fd598f624..a8f5bb9ca 100644
--- a/ext/soap/tests/schema/schema022.phpt
+++ b/ext/soap/tests/schema/schema022.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 22: list of unions
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
diff --git a/ext/soap/tests/schema/schema054.phpt b/ext/soap/tests/schema/schema054.phpt
index b1ff74e41..5adf2f588 100644
--- a/ext/soap/tests/schema/schema054.phpt
+++ b/ext/soap/tests/schema/schema054.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 54: Apache Map
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
diff --git a/ext/soap/tests/schema/schema055.phpt b/ext/soap/tests/schema/schema055.phpt
index f6ead2f13..14dbdb7c1 100644
--- a/ext/soap/tests/schema/schema055.phpt
+++ b/ext/soap/tests/schema/schema055.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 55: Apache Map (extension)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
diff --git a/ext/soap/tests/schema/schema063.phpt b/ext/soap/tests/schema/schema063.phpt
index dd60422a2..7fda578d9 100644
--- a/ext/soap/tests/schema/schema063.phpt
+++ b/ext/soap/tests/schema/schema063.phpt
@@ -2,6 +2,8 @@
SOAP XML Schema 63: standard unsignedLong type
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
include "test_schema.inc";
diff --git a/ext/soap/tests/schema/test_schema.inc b/ext/soap/tests/schema/test_schema.inc
index 06e139b40..8c7d9d034 100644
--- a/ext/soap/tests/schema/test_schema.inc
+++ b/ext/soap/tests/schema/test_schema.inc
@@ -66,7 +66,7 @@ EOF;
if ($style == "rpc") {
$HTTP_RAW_POST_DATA = $req;
ob_start();
- $y->handle();
+ $y->handle($HTTP_RAW_POST_DATA);
ob_end_clean();
echo $req;
var_dump($val);
diff --git a/ext/soap/tests/server001.phpt b/ext/soap/tests/server001.phpt
index 582759f06..649e01365 100644
--- a/ext/soap/tests/server001.phpt
+++ b/ext/soap/tests/server001.phpt
@@ -24,7 +24,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server002.phpt b/ext/soap/tests/server002.phpt
index 8416f4fb0..d0a53b8cc 100644
--- a/ext/soap/tests/server002.phpt
+++ b/ext/soap/tests/server002.phpt
@@ -28,7 +28,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server003.phpt b/ext/soap/tests/server003.phpt
index d4a15e0d6..a808c6f3e 100644
--- a/ext/soap/tests/server003.phpt
+++ b/ext/soap/tests/server003.phpt
@@ -23,7 +23,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server004.phpt b/ext/soap/tests/server004.phpt
index 5bfef4fcd..5d98d3f5e 100644
--- a/ext/soap/tests/server004.phpt
+++ b/ext/soap/tests/server004.phpt
@@ -31,7 +31,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server005.phpt b/ext/soap/tests/server005.phpt
index 4aae3b2d9..9536771be 100644
--- a/ext/soap/tests/server005.phpt
+++ b/ext/soap/tests/server005.phpt
@@ -27,7 +27,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server006.phpt b/ext/soap/tests/server006.phpt
index f382d9f2f..da328ebfe 100644
--- a/ext/soap/tests/server006.phpt
+++ b/ext/soap/tests/server006.phpt
@@ -33,7 +33,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server009.phpt b/ext/soap/tests/server009.phpt
index 0a7b30f40..0a3412715 100644
--- a/ext/soap/tests/server009.phpt
+++ b/ext/soap/tests/server009.phpt
@@ -37,7 +37,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
ob_clean();
$HTTP_RAW_POST_DATA = <<<EOF
@@ -55,7 +55,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
ob_end_flush();
echo "ok\n";
diff --git a/ext/soap/tests/server010.phpt b/ext/soap/tests/server010.phpt
index 76cc1e694..bac16d290 100644
--- a/ext/soap/tests/server010.phpt
+++ b/ext/soap/tests/server010.phpt
@@ -33,7 +33,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
ob_clean();
$HTTP_RAW_POST_DATA = <<<EOF
@@ -51,7 +51,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
ob_end_flush();
echo "ok\n";
?>
diff --git a/ext/soap/tests/server013.phpt b/ext/soap/tests/server013.phpt
index 4bb94c79c..68c480111 100644
--- a/ext/soap/tests/server013.phpt
+++ b/ext/soap/tests/server013.phpt
@@ -35,7 +35,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server014.phpt b/ext/soap/tests/server014.phpt
index 737526487..fcb62a542 100644
--- a/ext/soap/tests/server014.phpt
+++ b/ext/soap/tests/server014.phpt
@@ -29,7 +29,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server016.phpt b/ext/soap/tests/server016.phpt
index 77bce9fb3..8934f46af 100644
--- a/ext/soap/tests/server016.phpt
+++ b/ext/soap/tests/server016.phpt
@@ -26,7 +26,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server017.phpt b/ext/soap/tests/server017.phpt
index cc4af5e70..3ff0acb4e 100644
--- a/ext/soap/tests/server017.phpt
+++ b/ext/soap/tests/server017.phpt
@@ -25,7 +25,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server018.phpt b/ext/soap/tests/server018.phpt
index 22c37a09b..b033ed9c5 100644
--- a/ext/soap/tests/server018.phpt
+++ b/ext/soap/tests/server018.phpt
@@ -25,7 +25,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server019.phpt b/ext/soap/tests/server019.phpt
index 4ad9c5ee8..defdac5b9 100644
--- a/ext/soap/tests/server019.phpt
+++ b/ext/soap/tests/server019.phpt
@@ -1,20 +1,14 @@
--TEST--
SOAP Server 19: compressed request (gzip)
--SKIPIF--
-<?php require_once('skipif.inc');
- if (!extension_loaded('zlib')) die('skip zlib extension not available');
+<?php
+ if (php_sapi_name()=='cli') echo 'skip';
+ require_once('skipif.inc');
+ if (!extension_loaded('zlib')) die('skip zlib extension not available');
?>
---FILE--
-<?php
-function test() {
- return "Hello World";
-}
-
-$server = new soapserver(null,array('uri'=>"http://testuri.org"));
-$server->addfunction("test");
-
-$HTTP_RAW_POST_DATA = gzencode(<<<EOF
-<?xml version="1.0" encoding="ISO-8859-1"?>
+--INI--
+precision=14
+--POST--
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
@@ -25,9 +19,16 @@ $HTTP_RAW_POST_DATA = gzencode(<<<EOF
<ns1:test xmlns:ns1="http://testuri.org" />
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
-EOF
-, 9, FORCE_GZIP);
-$_SERVER['HTTP_CONTENT_ENCODING'] = "gzip";
+--GZIP_POST--
+1
+--FILE--
+<?php
+function test() {
+ return "Hello World";
+}
+
+$server = new soapserver(null,array('uri'=>"http://testuri.org"));
+$server->addfunction("test");
$server->handle();
echo "ok\n";
?>
diff --git a/ext/soap/tests/server020.phpt b/ext/soap/tests/server020.phpt
index bacbc5784..1bd58931e 100644
--- a/ext/soap/tests/server020.phpt
+++ b/ext/soap/tests/server020.phpt
@@ -1,19 +1,14 @@
--TEST--
SOAP Server 20: compressed request (deflate)
--SKIPIF--
-<?php require_once('skipif.inc');
- if (!extension_loaded('zlib')) die('skip zlib extension not available');
+<?php
+ if (php_sapi_name()=='cli') echo 'skip';
+ require_once('skipif.inc');
+ if (!extension_loaded('zlib')) die('skip zlib extension not available');
?>
---FILE--
-<?php
-function test() {
- return "Hello World";
-}
-
-$server = new soapserver(null,array('uri'=>"http://testuri.org"));
-$server->addfunction("test");
-
-$HTTP_RAW_POST_DATA = gzcompress(<<<EOF
+--INI--
+precision=14
+--POST--
<?xml version="1.0" encoding="ISO-8859-1"?>
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
@@ -25,9 +20,16 @@ $HTTP_RAW_POST_DATA = gzcompress(<<<EOF
<ns1:test xmlns:ns1="http://testuri.org" />
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
-EOF
-, 9);
-$_SERVER['HTTP_CONTENT_ENCODING'] = "deflate";
+--DEFLATE_POST--
+1
+--FILE--
+<?php
+function test() {
+ return "Hello World";
+}
+
+$server = new soapserver(null,array('uri'=>"http://testuri.org"));
+$server->addfunction("test");
$server->handle();
echo "ok\n";
?>
diff --git a/ext/soap/tests/server021.phpt b/ext/soap/tests/server021.phpt
index 787e959fb..d9913060b 100644
--- a/ext/soap/tests/server021.phpt
+++ b/ext/soap/tests/server021.phpt
@@ -31,7 +31,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server022.phpt b/ext/soap/tests/server022.phpt
index 90b06d5a1..ff79a1518 100755
--- a/ext/soap/tests/server022.phpt
+++ b/ext/soap/tests/server022.phpt
@@ -32,7 +32,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server023.phpt b/ext/soap/tests/server023.phpt
index c227204d3..5614599f3 100755
--- a/ext/soap/tests/server023.phpt
+++ b/ext/soap/tests/server023.phpt
@@ -28,7 +28,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server024.phpt b/ext/soap/tests/server024.phpt
index 0ddd9cec3..7db30621d 100755
--- a/ext/soap/tests/server024.phpt
+++ b/ext/soap/tests/server024.phpt
@@ -40,7 +40,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server025.phpt b/ext/soap/tests/server025.phpt
index eb5d647eb..975ad0065 100755
--- a/ext/soap/tests/server025.phpt
+++ b/ext/soap/tests/server025.phpt
@@ -37,7 +37,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server026.phpt b/ext/soap/tests/server026.phpt
index a473a8540..720ade86c 100755
--- a/ext/soap/tests/server026.phpt
+++ b/ext/soap/tests/server026.phpt
@@ -28,7 +28,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server028.phpt b/ext/soap/tests/server028.phpt
index 17194b9e3..4bea8ebd7 100755
--- a/ext/soap/tests/server028.phpt
+++ b/ext/soap/tests/server028.phpt
@@ -32,7 +32,7 @@ $HTTP_RAW_POST_DATA = <<<EOF
</SOAP-ENV:Envelope>
EOF;
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/server029.phpt b/ext/soap/tests/server029.phpt
new file mode 100644
index 000000000..26db9fd9c
--- /dev/null
+++ b/ext/soap/tests/server029.phpt
@@ -0,0 +1,55 @@
+--TEST--
+SOAP Server 29-CGI: new/addfunction/handle
+--POST--
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<SOAP-ENV:Envelope
+ SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:si="http://soapinterop.org/xsd">
+ <SOAP-ENV:Body>
+ <ns1:test xmlns:ns1="http://testuri.org" />
+ </SOAP-ENV:Body>
+</SOAP-ENV:Envelope>
+--SKIPIF--
+<?php
+ if (php_sapi_name()=='cli') echo 'skip';
+ require_once('skipif.inc');
+?>
+--FILE--
+<?php
+
+echo "INPUT: \n";
+echo file_get_contents("php://input") . "\n";
+echo "\n\n-----------\n\n";
+
+function test() {
+ return "Hello World";
+}
+
+$server = new soapserver(null,array('uri'=>"http://testuri.org"));
+$server->addfunction("test");
+$server->handle();
+echo "ok\n";
+?>
+--EXPECT--
+INPUT:
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<SOAP-ENV:Envelope
+ SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:si="http://soapinterop.org/xsd">
+ <SOAP-ENV:Body>
+ <ns1:test xmlns:ns1="http://testuri.org" />
+ </SOAP-ENV:Body>
+</SOAP-ENV:Envelope>
+
+
+-----------
+
+<?xml version="1.0" encoding="UTF-8"?>
+<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://testuri.org" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:testResponse><return xsi:type="xsd:string">Hello World</return></ns1:testResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
+ok \ No newline at end of file
diff --git a/ext/soap/tests/soap12/T42.phpt b/ext/soap/tests/soap12/T42.phpt
index c9cca6d30..87e0a77f4 100644
--- a/ext/soap/tests/soap12/T42.phpt
+++ b/ext/soap/tests/soap12/T42.phpt
@@ -2,6 +2,8 @@
SOAP 1.2: T42 echoStructArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$HTTP_RAW_POST_DATA = <<<EOF
diff --git a/ext/soap/tests/soap12/T47.phpt b/ext/soap/tests/soap12/T47.phpt
index f53a5b59f..852dec0a2 100644
--- a/ext/soap/tests/soap12/T47.phpt
+++ b/ext/soap/tests/soap12/T47.phpt
@@ -2,6 +2,8 @@
SOAP 1.2: T47 echoFloatArray
--SKIPIF--
<?php require_once('skipif.inc'); ?>
+--INI--
+precision=14
--FILE--
<?php
$HTTP_RAW_POST_DATA = <<<EOF
diff --git a/ext/soap/tests/soap12/soap12-test.inc b/ext/soap/tests/soap12/soap12-test.inc
index 864398d46..576fb2e42 100644
--- a/ext/soap/tests/soap12/soap12-test.inc
+++ b/ext/soap/tests/soap12/soap12-test.inc
@@ -125,6 +125,6 @@ class Soap12test {
$server = new soapserver(dirname(__FILE__)."/soap12-test.wsdl", array('soap_version'=>SOAP_1_2,'actor'=>"http://example.org/ts-tests/C"));
$server->setClass("Soap12test");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
diff --git a/ext/soap/tests/typemap001.phpt b/ext/soap/tests/typemap001.phpt
index d76170a74..c3b5b8444 100755
--- a/ext/soap/tests/typemap001.phpt
+++ b/ext/soap/tests/typemap001.phpt
@@ -51,7 +51,7 @@ $options=Array(
$server = new SoapServer(dirname(__FILE__)."/classmap.wsdl",$options);
$server->setClass("test");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/typemap002.phpt b/ext/soap/tests/typemap002.phpt
index ee80c5981..478e1ee4e 100755
--- a/ext/soap/tests/typemap002.phpt
+++ b/ext/soap/tests/typemap002.phpt
@@ -47,7 +47,7 @@ $options=Array(
$server = new SoapServer(dirname(__FILE__)."/classmap.wsdl",$options);
$server->setClass("test");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/typemap005.phpt b/ext/soap/tests/typemap005.phpt
index b016519a7..6e3001d0b 100755
--- a/ext/soap/tests/typemap005.phpt
+++ b/ext/soap/tests/typemap005.phpt
@@ -52,7 +52,7 @@ $options=Array(
$server = new SoapServer(NULL,$options);
$server->setClass("test");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/typemap006.phpt b/ext/soap/tests/typemap006.phpt
index 1e3609a8b..7b1fc4df2 100755
--- a/ext/soap/tests/typemap006.phpt
+++ b/ext/soap/tests/typemap006.phpt
@@ -48,7 +48,7 @@ $options=Array(
$server = new SoapServer(NULL,$options);
$server->setClass("test");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/typemap009.phpt b/ext/soap/tests/typemap009.phpt
index 337aea65c..208fb43db 100755
--- a/ext/soap/tests/typemap009.phpt
+++ b/ext/soap/tests/typemap009.phpt
@@ -47,7 +47,7 @@ $options=Array(
$server = new SoapServer(dirname(__FILE__)."/classmap.wsdl",$options);
$server->setClass("test");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/typemap010.phpt b/ext/soap/tests/typemap010.phpt
index 44d2746bd..b6ec26803 100755
--- a/ext/soap/tests/typemap010.phpt
+++ b/ext/soap/tests/typemap010.phpt
@@ -47,7 +47,7 @@ $options=Array(
$server = new SoapServer(dirname(__FILE__)."/classmap.wsdl",$options);
$server->setClass("test");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--
diff --git a/ext/soap/tests/typemap013.phpt b/ext/soap/tests/typemap013.phpt
index 99003c8dc..9ad02cb5e 100755
--- a/ext/soap/tests/typemap013.phpt
+++ b/ext/soap/tests/typemap013.phpt
@@ -47,7 +47,7 @@ $options=Array(
$server = new SoapServer(dirname(__FILE__)."/classmap.wsdl",$options);
$server->setClass("test");
-$server->handle();
+$server->handle($HTTP_RAW_POST_DATA);
echo "ok\n";
?>
--EXPECT--