]> granicus.if.org Git - php/commitdiff
Fixed bug: #17732.
authorfoobar <sniper@php.net>
Sun, 16 Jun 2002 02:24:18 +0000 (02:24 +0000)
committerfoobar <sniper@php.net>
Sun, 16 Jun 2002 02:24:18 +0000 (02:24 +0000)
xmlrpc_decode_request() and xmlrpc_set_type() expect some parameters to be
passed by reference.

ext/rpc/xmlrpc/xmlrpc-epi-php.c
ext/xmlrpc/xmlrpc-epi-php.c

index 103ca28dd253df038416e80381f2bf0bd76ebc8a..474f71c00484ad49fd58329bb0d06590359b61d7 100644 (file)
@@ -77,13 +77,16 @@ ZEND_DECLARE_MODULE_GLOBALS(xmlrpc)
 
 static int le_xmlrpc_server;
 
+static unsigned char second_arg_force_ref[] = { 3, BYREF_NONE, BYREF_FORCE, BYREF_NONE };
+static unsigned char first_arg_force_ref[] = { 2, BYREF_FORCE, BYREF_NONE };
+
 function_entry xmlrpc_functions[] = {
        PHP_FE(xmlrpc_encode,                                                                   NULL) 
        PHP_FE(xmlrpc_decode,                                                                   NULL)
-       PHP_FE(xmlrpc_decode_request,                                                   NULL)
+       PHP_FE(xmlrpc_decode_request,                                                   second_arg_force_ref)
        PHP_FE(xmlrpc_encode_request,                                                   NULL)
        PHP_FE(xmlrpc_get_type,                                                                 NULL)
-       PHP_FE(xmlrpc_set_type,                                                                 NULL)
+       PHP_FE(xmlrpc_set_type,                                                                 first_arg_force_ref)
        PHP_FE(xmlrpc_server_create,                                                    NULL)
        PHP_FE(xmlrpc_server_destroy,                                                   NULL)
        PHP_FE(xmlrpc_server_register_method,                                   NULL)
index 103ca28dd253df038416e80381f2bf0bd76ebc8a..474f71c00484ad49fd58329bb0d06590359b61d7 100644 (file)
@@ -77,13 +77,16 @@ ZEND_DECLARE_MODULE_GLOBALS(xmlrpc)
 
 static int le_xmlrpc_server;
 
+static unsigned char second_arg_force_ref[] = { 3, BYREF_NONE, BYREF_FORCE, BYREF_NONE };
+static unsigned char first_arg_force_ref[] = { 2, BYREF_FORCE, BYREF_NONE };
+
 function_entry xmlrpc_functions[] = {
        PHP_FE(xmlrpc_encode,                                                                   NULL) 
        PHP_FE(xmlrpc_decode,                                                                   NULL)
-       PHP_FE(xmlrpc_decode_request,                                                   NULL)
+       PHP_FE(xmlrpc_decode_request,                                                   second_arg_force_ref)
        PHP_FE(xmlrpc_encode_request,                                                   NULL)
        PHP_FE(xmlrpc_get_type,                                                                 NULL)
-       PHP_FE(xmlrpc_set_type,                                                                 NULL)
+       PHP_FE(xmlrpc_set_type,                                                                 first_arg_force_ref)
        PHP_FE(xmlrpc_server_create,                                                    NULL)
        PHP_FE(xmlrpc_server_destroy,                                                   NULL)
        PHP_FE(xmlrpc_server_register_method,                                   NULL)