php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #42326 SoapServer crash
Submitted: 2007-08-17 07:30 UTC Modified: 2007-08-31 08:07 UTC
From: edman007 at edman007 dot com Assigned: dmitry (profile)
Status: Closed Package: SOAP related
PHP Version: 5.2-CVS-2007-08-16 OS: Linux
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: edman007 at edman007 dot com
New email:
PHP Version: OS:

 

 [2007-08-17 07:30 UTC] edman007 at edman007 dot com
Description:
------------
When running the provided code SoapClient can parse the wsdl file just fine but the server segfaults upon receiving the request

Reproduce code:
---------------
1. download the code from http://edman007.com/test.tar.gz
2. edit the OSCAdmin.wsdl so that the "http://localhost/~edman007/test/server.php" points to your server.php
3. Run client.php

Expected result:
----------------
PHP to remain stable, and either successfully pull the data from the server or a SoapFault

Actual result:
--------------
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1210508384 (LWP 26987)]
zend_hash_find (ht=0xb70f8568, arKey=0x8189374 "http://www.example.com/:productDetailsType", nKeyLength=43, pData=0xb70f8568) at /home/edman007/php-upgrade/php-5.2.3/Zend/zend_hash.c:870
870             h = zend_inline_hash_func(arKey, nKeyLength);
(gdb) 
(gdb) bt full 15
#0  zend_hash_find (ht=0xb70f8568, arKey=0x8189374 "http://www.example.com/:productDetailsType", nKeyLength=43, pData=0xb70f8568) at /home/edman007/php-upgrade/php-5.2.3/Zend/zend_hash.c:870
        h = 135828340
        nIndex = 3067893742
        p = (Bucket *) 0x0
#1  0xb6cc21f1 in get_encoder_ex (sdl=0x818afc8, nscat=0x8189374 "http://www.example.com/:productDetailsType", len=42) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_sdl.c:172
        enc = (encodePtr *) 0x0
#2  0xb6cc1f60 in get_encoder (sdl=0x818afc8, ns=0x818a4c0 "http://www.example.com/", type=0x818b88c "productDetailsType") at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_sdl.c:124
        enc = 0xb70b8b94
        nscat = 0x8189374 "http://www.example.com/:productDetailsType"
        len = 42
#3  0xb6ca8273 in master_to_xml (encode=0xb70da99c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:442
        enc = 0xb70f8568
        ce = (zend_class_entry *) 0x818a53c
        tmp = (zval **) 0x818b878
        type_len = 19
        idx = 3067894481
        pos = 0x818b86c
        type_name = 0x818b88c "productDetailsType"
        node = 0x0
#4  0xb6caf2b8 in guess_xml_convert (type=0x818b02c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:2677
        enc = 0xb70f8568
        ret = 0xb70f8568
#5  0xb6cb05e2 in sdl_guess_convert_xml (enc=0x818b02c, data=0x81892a8, style=2, parent=0x2) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:3100
        type = 0x2b
        ret = 0x0
#6  0xb6ca806f in master_to_xml (encode=0x818b02c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:475
        __nl = 3211682312
        nscat = {c = 0x80a8178 "\001", len = 135828340, a = 3211682376}
        new_enc = (encodePtr *) 0x0
        node = 0x0
#7  0xb6caf2b8 in guess_xml_convert (type=0x818b02c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:2677
        enc = 0xb70f8568
        ret = 0xb70f8568
#8  0xb6cb05e2 in sdl_guess_convert_xml (enc=0x818b02c, data=0x81892a8, style=2, parent=0x2) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:3100
        type = 0x2b
        ret = 0x0
#9  0xb6ca806f in master_to_xml (encode=0x818b02c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:475
        __nl = 3211682552
        nscat = {c = 0x80a8178 "\001", len = 135828340, a = 3211682616}
        new_enc = (encodePtr *) 0x0
        node = 0x0
#10 0xb6caf2b8 in guess_xml_convert (type=0x818b02c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:2677
        enc = 0xb70f8568
        ret = 0xb70f8568
#11 0xb6cb05e2 in sdl_guess_convert_xml (enc=0x818b02c, data=0x81892a8, style=2, parent=0x2) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:3100
        type = 0x2b
        ret = 0x0
#12 0xb6ca806f in master_to_xml (encode=0x818b02c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:475
        __nl = 3211682792
        nscat = {c = 0x80a8178 "\001", len = 135828340, a = 3211682856}
        new_enc = (encodePtr *) 0x0
        node = 0x0
#13 0xb6caf2b8 in guess_xml_convert (type=0x818b02c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:2677
        enc = 0xb70f8568
        ret = 0xb70f8568
#14 0xb6cb05e2 in sdl_guess_convert_xml (enc=0x818b02c, data=0x81892a8, style=2, parent=0x2) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:3100
        type = 0x2b
        ret = 0x0
(More stack frames follow...)

(gdb) bt full -25
#104664 0xb6ca806f in master_to_xml (encode=0x818b02c, data=0x81892a8, style=2, parent=0x823c1a8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:475
        __nl = 135832660
        nscat = {c = 0x8187960 "products", len = 8, a = 135832660}
        new_enc = (encodePtr *) 0xb70b8b94
        node = 0x0
#104665 0xb6cab96d in model_to_xml_object (node=0x823c1a8, model=0x8189bd8, object=0xbfee29a0, style=2, strict=1) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:1601
        data = (zval *) 0x81892a8
        property = 0x23
        enc = 0x818b02c
#104666 0xb6cabcb9 in model_to_xml_object (node=0x823c1a8, model=0x8189b68, object=0xbfee29a0, style=2, strict=1) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:1677
        tmp = (sdlContentModelPtr *) 0x8189bfc
        pos = 0x8189bf0
#104667 0xb6cac23d in to_xml_object (type=0x818bc68, data=0xbfee29a0, style=2, parent=0x81891f8) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:1854
        array_el = 0x81891f8
        xmlParam = 0x823c1a8
        prop = (HashTable *) 0x81891f8
        i = 135827960
        sdlType = 0x818ba6c
#104668 0xb6ca806f in master_to_xml (encode=0x818bc68, data=0xbfee29a0, style=2, parent=0x823c108) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/php_encoding.c:475
        __nl = 3220055512
        nscat = {c = 0x81891d4 "(?\030\b", len = 32, a = 3220055640}
        new_enc = (encodePtr *) 0x818bb54
        node = 0x0
#104669 0xb6ca4277 in serialize_zval (val=0x8189374, param=0xb70f8568, paramName=0x818a310 "out", style=2, parent=0x823c108) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/soap.c:4267
        xmlParam = 0xb6df838c
        enc = 0x818bc68
        defval = {value = {lval = -1074910816, dval = -1.4359979421946516e-39, str = {val = 0xbfee29a0 "\004", len = -1210104332}, ht = 0xbfee29a0, obj = {handle = 3220056480, handlers = 0xb7df45f4}}, 
  refcount = 32, type = 148 '\224', is_ref = 139 '\213'}
#104670 0xb6ca4192 in serialize_parameter (param=0x818a2cc, param_val=0xbfee29a0, index=0, name=0xb7071a28 "return", style=2, parent=0x823c108) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/soap.c:4240
        paramName = 0x818a310 "out"
        xmlParam = 0xb70f8568
        paramNameBuf = "t?\030\b\000\000\000\000?&"
#104671 0xb6ca2223 in serialize_response_call2 (body=0x823c108, function=0x818a10c, function_name=0x818bc08 "GetProductsResponse", uri=0x818bb20 "http://www.example.com/", ret=0xbfee29a0, version=1, 
    main=1) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/soap.c:3594
        method = 0x0
        param = 0x823c0b8
        parameter = 0x818a2cc
        param_count = -1223719576
        style = 1
        use = 2
        ns = 0xb7065582
#104672 0xb6ca25ec in serialize_response_call (function=0x818a10c, function_name=0x818bc08 "GetProductsResponse", uri=0x818bb20 "http://www.example.com/", ret=0xbfee29a0, headers=0x1, version=1)
    at /home/edman007/php-upgrade/php-5.2.3/ext/soap/soap.c:3973
        hdr_enc = 0xb70facb0
        hdr_ns = 0xbfee2a50 "L?\030\b\204?\030\b?\001$\b(\205\027\bd*??ж\030\b\230*??Thܶ8\211\030\b\030?\026\b\230*??\r"
        hdr_name = 0xbfee2a60 "d*??ж\030\b\230*??Thܶ8\211\030\b\030?\026\b\230*??\r"
        hdr_use = -1074901504
        hdr_ret = (zval *) 0x1
        h = (soapHeader *) 0xbfee2b40
        doc = 0x8238f40
        envelope = 0x823c0b8
        body = 0x823c108
        param = 0x818a3ec
        ns = 0x823c048
        use = 2
        head = 0x0
#104673 0xb6c9baf9 in zim_SoapServer_handle (ht=0, return_value=0x818b710, return_value_ptr=0x0, this_ptr=0x8189374, return_value_used=0) at /home/edman007/php-upgrade/php-5.2.3/ext/soap/soap.c:1814
        response_name = 0x818bc08 "GetProductsResponse"
        soap_version = 1
        old_soap_version = 1
        old_sdl = 0x0
        service = 0x818b7c8
        doc_request = 0x823bf88
---Type <return> to continue, or q <return> to quit---
        doc_return = 0x0
        function_name = {value = {lval = 135838572, dval = 2.3409066872423328e-313, str = {val = 0x818bb6c "GetProducts", len = 11}, ht = 0x818bb6c, obj = {handle = 135838572, handlers = 0xb}}, 
  refcount = 1, type = 6 '\006', is_ref = 0 '\0'}
        params = (zval **) 0x818bfa4
        soap_obj = (zval *) 0x0
        retval = {value = {lval = 4, dval = -1.7397722555026501e-43, str = {val = 0x4 <Address 0x4 out of bounds>, len = -1223751200}, ht = 0x4, obj = {handle = 4, handlers = 0xb70f09e0}}, refcount = 1, 
  type = 5 '\005', is_ref = 0 '\0'}
        fn_name = 0x818a410 "??\030\broducts"
        cont_len = "\022C۷\b?\026\b?)?\000\001\000\000\000ж\030\b@\217\030\b?)??\002y"
        num_params = 1
        size = -1074910952
        i = 135838728
        call_status = 0
        buf = (xmlChar *) 0xb <Address 0xb out of bounds>
        function_table = (HashTable *) 0x818b0b0
        soap_headers = (soapHeader *) 0x0
        function = 0x818a10c
        arg = 0x0
        arg_len = -1074910900
        old_encoding = 0x0
        old_class_map = (HashTable *) 0x0
        old_typemap = (HashTable *) 0x0
        old_features = 0
        _old_handler = 0 '\0'
        _old_error_code = 0x0
        _old_error_object = (zval *) 0x0
        _old_soap_version = 1
#104674 0xb6dfa673 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfee2b40) at zend_vm_execute.h:200
        return_reference = 0 '\0'
        opline = (zend_op *) 0x8188dfc
        original_return_value = (zval **) 0x6
        current_scope = (zend_class_entry *) 0x0
        current_this = (zval *) 0x0
        should_change_scope = 1 '\001'
#104675 0xb6df9e39 in execute (op_array=0x8188770) at zend_vm_execute.h:92
        execute_data = {opline = 0x8188dfc, function_state = {function_symbol_table = 0xb70b8b94, function = 0x816e438, reserved = {0xb6dd4fff, 0x8188998, 0xbfee4e20, 0xbfee2b88}}, fbc = 0x816e438, 
  op_array = 0x8188770, object = 0x818b6d0, Ts = 0xbfee2a60, CVs = 0xbfee2a50, original_in_execution = 0 '\0', symbol_table = 0xb70facb0, prev_execute_data = 0x0, old_error_reporting = 0x0}
#104676 0xb6dde561 in zend_execute_scripts (type=8, retval=0x0, file_count=3) at /home/edman007/php-upgrade/php-5.2.3/Zend/zend.c:1134
        files = 0xbfee2c04 ""
        i = 1
        file_handle = (zend_file_handle *) 0xbfee4e20
        orig_op_array = (zend_op_array *) 0x0
        orig_retval_ptr_ptr = (zval **) 0x0
        local_retval = (zval *) 0x0
#104677 0xb6da00af in php_execute_script (primary_file=0xbfee4e20) at /home/edman007/php-upgrade/php-5.2.3/main/main.c:1794
        realfile = "settype\000\002\000\000\000xod?gettype\000\002\000\000\000\000\000??strval\000?\002\000\000\000u`k?doubleval\000\000\000\000\000??floatval\000\000\000\000\000\000\000?intval\000?\002\000\000\000\000???dns_get_record\000?getmxrr\000\002\000\000\000\000\000??dns_get_mx\000\000\000\000\000?checkdnsrr\000\000nqc?dns_check_record\000A\a?LO??\002\000\000\000\000\000\000?gethostb"...
        prepend_file_p = (zend_file_handle *) 0x0
        append_file_p = (zend_file_handle *) 0x0
        prepend_file = {type = 0 '\0', filename = 0x0, opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0, reader = 0, closer = 0, fteller = 0, interactive = 0}}, free_filename = 0 '\0'}
        append_file = {type = 0 '\0', filename = 0x0, opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0, reader = 0, closer = 0, fteller = 0, interactive = 0}}, free_filename = 0 '\0'}
        old_cwd = 0xbfee2c10 "/mnt/hd/public_html/osc/emailOSC"
        retval = 0
#104678 0xb6e573ce in apache_php_module_main (r=0x8234c14, display_source_mode=0) at /home/edman007/php-upgrade/php-5.2.3/sapi/apache/sapi_apache.c:53
        retval = 0
        file_handle = {type = 5 '\005', filename = 0x82366d4 "/home/edman007/public_html/test/server.php", opened_path = 0x0, handle = {fd = 135825588, fp = 0x81888b4, stream = {handle = 0x81888b4, 
      reader = 0xb6db08d0 <_php_stream_read>, closer = 0xb6d9ebe0 <stream_closer_for_zend>, fteller = 0xb6d9ec10 <stream_fteller_for_zend>, interactive = 0}}, free_filename = 0 '\0'}
#104679 0xb6e58073 in send_php (r=0x8234c14, display_source_mode=0, filename=0x0) at /home/edman007/php-upgrade/php-5.2.3/sapi/apache/mod_php5.c:663
        __bailout = {{__jmpbuf = {-1223980140, 136530964, 2, -1074900968, -1074901392, -1226473573}, __mask_was_saved = 0, __saved_mask = {__val = {136539120, 136539172, 136539188, 136539172, 136539120, 
        136539092, 2, 3220066184, 3083972799, 136539172, 136539144, 0, 136539132, 136539188, 136539212, 0, 0, 24, 136530964, 3220066248, 134546373, 136539172, 136539172, 136539092, 134548767, 136532348, 
        3220066276, 23, 3083996786, 0, 136539211, 3220066360}}}}
        retval = 0
        per_dir_conf = (HashTable *) 0x8189374
---Type <return> to continue, or q <return> to quit---
#104680 0xb6e581c2 in send_parsed_php (r=0x8234c14) at /home/edman007/php-upgrade/php-5.2.3/sapi/apache/mod_php5.c:678
        result = 2
#104681 0x08054b3f in ap_invoke_handler ()
No symbol table info available.
#104682 0x0806a4db in ap_some_auth_required ()
No symbol table info available.
#104683 0x0806a53a in ap_process_request ()
No symbol table info available.
#104684 0x0806117c in ap_child_terminate ()
No symbol table info available.
#104685 0x0806134a in ap_child_terminate ()
No symbol table info available.
#104686 0x080614b0 in ap_child_terminate ()
No symbol table info available.
#104687 0x08061b50 in ap_child_terminate ()
No symbol table info available.
#104688 0x08062388 in main ()
No symbol table info available.
(gdb) 


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2007-08-17 16:01 UTC] edman007 at edman007 dot com
Nope, did not help, here is the backtrace

(gdb) bt 15 full
#0  0xb752ab3b in get_encoder (sdl=0x8302600, ns=0x83021d0 "http://www.example.com/", type=0x83013b8 "productDetailsType") at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_sdl.c:118
        enc = (encodePtr) 0x0
        nscat = 0x8300fbc "\b"
        ns_len = 23
        type_len = 18
        len = 42
#1  0xb74ffd39 in master_to_xml (encode=0xb7a530fc, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:450
        enc = (encodePtr) 0x0
        ce = (zend_class_entry *) 0x83022dc
        tmp = (zval **) 0x83013a4
        type_len = 19
        idx = 0
        pos = (HashPosition) 0x8301398
        type_name = 0x83013b8 "productDetailsType"
        node = (xmlNodePtr) 0x0
#2  0xb750b810 in guess_xml_convert (type=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:2685
        enc = (encodePtr) 0xb7a530fc
        ret = (xmlNodePtr) 0xb79e2a80
#3  0xb750cfe2 in sdl_guess_convert_xml (enc=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:3108
        type = (sdlTypePtr) 0x0
        ret = (xmlNodePtr) 0x0
#4  0xb7500367 in master_to_xml (encode=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:483
        node = (xmlNodePtr) 0x0
#5  0xb750b810 in guess_xml_convert (type=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:2685
        enc = (encodePtr) 0xb7a530fc
        ret = (xmlNodePtr) 0xb79e2a80
#6  0xb750cfe2 in sdl_guess_convert_xml (enc=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:3108
        type = (sdlTypePtr) 0x0
        ret = (xmlNodePtr) 0x0
#7  0xb7500367 in master_to_xml (encode=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:483
        node = (xmlNodePtr) 0x0
#8  0xb750b810 in guess_xml_convert (type=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:2685
        enc = (encodePtr) 0xb7a530fc
        ret = (xmlNodePtr) 0xb79e2a80
#9  0xb750cfe2 in sdl_guess_convert_xml (enc=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:3108
        type = (sdlTypePtr) 0x0
        ret = (xmlNodePtr) 0x0
#10 0xb7500367 in master_to_xml (encode=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:483
        node = (xmlNodePtr) 0x0
#11 0xb750b810 in guess_xml_convert (type=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:2685
        enc = (encodePtr) 0xb7a530fc
        ret = (xmlNodePtr) 0xb79e2a80
#12 0xb750cfe2 in sdl_guess_convert_xml (enc=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:3108
        type = (sdlTypePtr) 0x0
        ret = (xmlNodePtr) 0x0
#13 0xb7500367 in master_to_xml (encode=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:483
        node = (xmlNodePtr) 0x0
#14 0xb750b810 in guess_xml_convert (type=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:2685
        enc = (encodePtr) 0xb7a530fc
        ret = (xmlNodePtr) 0xb79e2a80
(More stack frames follow...)
(gdb) bt -25 full
#71353 0xb7500367 in master_to_xml (encode=0x8303450, data=0x8301bcc, style=2, parent=0x8341c88) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:483
        node = (xmlNodePtr) 0x0
#71354 0xb75054f0 in model_to_xml_object (node=0x8341c88, model=0x8306de0, object=0xbfada7a0, style=2, strict=1) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:1609
        data = (zval *) 0x8301bcc
        property = (xmlNodePtr) 0xbfada0d8
        enc = (encodePtr) 0x8303450
#71355 0xb7505882 in model_to_xml_object (node=0x8341c88, model=0x8306d00, object=0xbfada7a0, style=2, strict=1) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:1685
        tmp = (sdlContentModelPtr *) 0x8306e28
        pos = (HashPosition) 0x8306e1c
#71356 0xb750602f in to_xml_object (type=0x8301ff0, data=0xbfada7a0, style=2, parent=0x8341c38) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:1862
        array_el = (sdlTypePtr) 0xb76cd8a1
        xmlParam = (xmlNodePtr) 0x8341c88
        prop = (HashTable *) 0x8301a2c
        i = 137381884
        sdlType = (sdlTypePtr) 0x8301d64
#71357 0xb750d149 in sdl_guess_convert_xml (enc=0x8301ff0, data=0xbfada7a0, style=2, parent=0x8341c38) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:3159
        type = (sdlTypePtr) 0x8301d64
        ret = (xmlNodePtr) 0x0
#71358 0xb7500367 in master_to_xml (encode=0x8301ff0, data=0xbfada7a0, style=2, parent=0x8341c38) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/php_encoding.c:483
        node = (xmlNodePtr) 0x0
#71359 0xb74f801c in serialize_zval (val=0xbfada7a0, param=0x8304670, paramName=0x83046fc "out", style=2, parent=0x8341c38) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/soap.c:4299
        xmlParam = (xmlNodePtr) 0x0
        enc = (encodePtr) 0x8301ff0
        defval = {value = {lval = 137370100, dval = -0.057887793540476823, str = {val = 0x83019f4 "L-0\b,\0320\b", len = -1079139464}, ht = 0x83019f4, obj = {handle = 137370100, handlers = 0xbfada378}}, 
  refcount = 3077312910, type = 160 ' ', is_ref = 167 '?'}
#71360 0xb74f7f13 in serialize_parameter (param=0x8304670, param_val=0xbfada7a0, index=0, name=0xb7997d4e "return", style=2, parent=0x8341c38) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/soap.c:4272
        paramName = 0x83046fc "out"
        xmlParam = (xmlNodePtr) 0x83045cc
        paramNameBuf = "0\b\200*\236??\003\000"
#71361 0xb74f4c6d in serialize_response_call2 (body=0x8341c38, function=0x83042c8, function_name=0x8301710 "GetProductsResponse", uri=0x8301e84 "http://www.example.com/", ret=0xbfada7a0, version=1, main=1)
    at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/soap.c:3626
        method = (xmlNodePtr) 0x0
        param = (xmlNodePtr) 0x8341b88
        parameter = (sdlParamPtr) 0x8304670
        param_count = 1
        style = 2
        use = 2
        ns = (xmlNsPtr) 0x0
#71362 0xb74f6db3 in serialize_response_call (function=0x83042c8, function_name=0x8301710 "GetProductsResponse", uri=0x8301e84 "http://www.example.com/", ret=0xbfada7a0, headers=0x0, version=1)
    at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/soap.c:4005
        doc = (xmlDocPtr) 0x8340af8
        envelope = (xmlNodePtr) 0x8341b88
        body = (xmlNodePtr) 0x8341c38
        param = (xmlNodePtr) 0x4
        ns = (xmlNsPtr) 0x8341be8
        use = 2
        head = (xmlNodePtr) 0x0
#71363 0xb74ed658 in zim_SoapServer_handle (ht=0, return_value=0x83012a0, return_value_ptr=0x0, this_ptr=0x82fc400, return_value_used=0) at /root/php-5.2-cvs/php5.2-200708171430/ext/soap/soap.c:1814
        response_name = 0x8301710 "GetProductsResponse"
        soap_version = 1
        old_soap_version = 1
        old_sdl = (sdlPtr) 0x0
        service = (soapServicePtr) 0x83012dc
        doc_request = (xmlDocPtr) 0x8340af8
        doc_return = (xmlDocPtr) 0x0
        function_name = {value = {lval = 137369160, dval = 2.3409823083372065e-313, str = {val = 0x8301648 "GetProducts", len = 11}, ht = 0x8301648, obj = {handle = 137369160, handlers = 0xb}}, 
  refcount = 1, type = 6 '\006', is_ref = 0 '\0'}
        params = (zval **) 0x83076cc
        soap_obj = (zval *) 0x0
        retval = {value = {lval = 4, dval = -1.2979947415347924e-40, str = {val = 0x4 <Address 0x4 out of bounds>, len = -1213817536}, ht = 0x4, obj = {handle = 4, handlers = 0xb7a69d40}}, refcount = 1, 
  type = 5 '\005', is_ref = 0 '\0'}
        fn_name = 0x83018b0 'Z' <repeats 12 times>, "a-H?߱h?1"
        cont_len = "0\bZ\000\000\000\v\000\000\000 \a\236??\0220\b\204릷???? $j?"
---Type <return> to continue, or q <return> to quit---
        num_params = 1
        size = -1079138344
        i = 4
        call_status = 0
        buf = (xmlChar *) 0xb7a6eb84 "ػ\036\b"
        function_table = (HashTable *) 0x8303594
        soap_headers = (soapHeader *) 0x0
        function = (sdlFunctionPtr) 0x83042c8
        arg = 0x0
        arg_len = 1
        old_encoding = (xmlCharEncodingHandlerPtr) 0x0
        old_class_map = (HashTable *) 0x0
        old_typemap = (HashTable *) 0x0
        old_features = 0
        _old_handler = 0 '\0'
        _old_error_code = 0x0
        _old_error_object = (zval *) 0x0
        _old_soap_version = 1
#71364 0xb76e5591 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfadaab4) at /root/php-5.2-cvs/php5.2-200708171430/Zend/zend_vm_execute.h:200
        return_reference = 0 '\0'
        opline = (zend_op *) 0x8300980
        original_return_value = (zval **) 0xb76e3bd7
        current_scope = (zend_class_entry *) 0x0
        current_this = (zval *) 0x0
        return_value_used = 0
        should_change_scope = 1 '\001'
        ctor_opline = (zend_op *) 0xbfadaad8
#71365 0xb76e61de in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfadaab4) at /root/php-5.2-cvs/php5.2-200708171430/Zend/zend_vm_execute.h:322
No locals.
#71366 0xb76e50f1 in execute (op_array=0x8300010) at /root/php-5.2-cvs/php5.2-200708171430/Zend/zend_vm_execute.h:92
        execute_data = {opline = 0x8300980, function_state = {function_symbol_table = 0x0, function = 0x82ade70, reserved = {0x0, 0xbfadaad8, 0x1, 0x0}}, fbc = 0x82ade70, op_array = 0x8300010, 
  object = 0x82fc400, Ts = 0xbfada980, CVs = 0xbfada960, original_in_execution = 0 '\0', symbol_table = 0xb7a725b0, prev_execute_data = 0x0, old_error_reporting = 0x0}
#71367 0xb76c0817 in zend_execute_scripts (type=8, retval=0x0, file_count=3) at /root/php-5.2-cvs/php5.2-200708171430/Zend/zend.c:1134
        files = 0xbfadab84 ""
        i = 1
        file_handle = (zend_file_handle *) 0xbfadcdf4
        orig_op_array = (zend_op_array *) 0x0
        orig_retval_ptr_ptr = (zval **) 0x0
        local_retval = (zval *) 0x0
#71368 0xb766eade in php_execute_script (primary_file=0xbfadcdf4) at /root/php-5.2-cvs/php5.2-200708171430/main/main.c:1982
        realfile = "\003\000\000\000$?\036\b\220Vk?\230?\031\b` \236?軭?I5j?ػ\036\b\\?/\blX\234??\001\000\000\000\000\000\000\000\000\000\000?˭??[g?\\?/\blX\234??\001\000\000\000\000\000\000\000\000\000\000?i\230??ϭ??gl?mysqli_escape_string\000έ?\002\000\000\000?\033\236??\006\000\000\212i\230??ϭ??gl?mysqli_client_encoding\000?\002\000\000\000?\033\236??\006\000\000wi\230??ϭ??gl?mysqli_bind_"...
        __orig_bailout = (jmp_buf *) 0xbfadcd58
        __bailout = {{__jmpbuf = {120, 135913112, -1079137388, -1079128904, 1084730224, 1215097003}, __mask_was_saved = 0, __saved_mask = {__val = {3215838228, 137656680, 3215838264, 3082950263, 
        3082949408, 137652480, 135913112, 3080626246, 3215838344, 1084738496, 1215092897, 0, 137659192, 137656888, 9, 3082911753, 3086709134, 137656696, 137660591, 0, 429496729, 5, 0, 0, 0, 0, 0, 267, 
        137659328, 3082498036, 135913112, 3082912532}}}}
        prepend_file_p = (zend_file_handle *) 0x0
        append_file_p = (zend_file_handle *) 0x0
        prepend_file = {type = 0 '\0', filename = 0x0, opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0, reader = 0, closer = 0, fteller = 0, interactive = 0}}, free_filename = 0 '\0'}
        append_file = {type = 0 '\0', filename = 0x0, opened_path = 0x0, handle = {fd = 0, fp = 0x0, stream = {handle = 0x0, reader = 0, closer = 0, fteller = 0, interactive = 0}}, free_filename = 0 '\0'}
        old_cwd = 0xbfadaba0 "/home/edman007/public_html/test"
        retval = 0
#71369 0xb7739c7e in php_handler (r=0x8346900) at /root/php-5.2-cvs/php5.2-200708171430/sapi/apache2handler/sapi_apache2.c:631
        zfd = {type = 5 '\005', filename = 0x8347b90 "/home/edman007/public_html/test/server.php", opened_path = 0x0, handle = {fd = 137363904, fp = 0x83001c0, stream = {handle = 0x83001c0, 
      reader = 0xb768379d <_php_stream_read>, closer = 0xb766d251 <stream_closer_for_zend>, fteller = 0xb766d26c <stream_fteller_for_zend>, interactive = 0}}, free_filename = 0 '\0'}
        __orig_bailout = (jmp_buf *) 0x0
        __bailout = {{__jmpbuf = {120, 135913112, -1214341050, -1079128488, 1084738752, 1215928694}, __mask_was_saved = 0, __saved_mask = {__val = {137652480, 3215838616, 134957329, 135913088, 137658920, 
        24, 137658931, 137658931, 137658920, 3215838760, 134987156, 137652480, 137658920, 11, 0, 2, 137652480, 4, 0, 0, 0, 3215838696, 3082947940, 6, 137652400, 3215838760, 135046993, 3215838744, 1, 8, 
        20, 1}}}}
        ctx = (php_struct * volatile) 0x8348248
        conf = (void *) 0x81661e0
        brigade = (apr_bucket_brigade * volatile) 0x8348380
        bucket = (apr_bucket *) 0x0
---Type <return> to continue, or q <return> to quit---
        rv = 0
        parent_req = (request_rec * volatile) 0x0
#71370 0x0807da2a in ap_invoke_handler ()
No symbol table info available.
#71371 0x080b754f in ap_process_request ()
No symbol table info available.
#71372 0x080b43b0 in ap_process_http_connection ()
No symbol table info available.
#71373 0x0808330b in ap_process_connection ()
No symbol table info available.
#71374 0x080d449d in child_main ()
No symbol table info available.
#71375 0x080d47a8 in make_child ()
No symbol table info available.
#71376 0x080d543c in ap_mpm_run ()
No symbol table info available.
#71377 0x080685ca in main ()
No symbol table info available.
 [2007-08-17 20:29 UTC] jani@php.net
Assigned to the maintainer of SOAP extension.
 [2007-08-31 08:07 UTC] dmitry@php.net
You have a bug in your WSDL file. You refer to _type_ productDetailsType.

<xsd:element name="products" type="tns:productDetailsType"/>

However productDetailsType is not a type but element.

<xsd:element name="productDetailsType">

Also classmap works only with types and not with elements.

Anyway PHP must not crash. The crush is fixed in CVS HEAD and PHP_5_2.

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Nov 21 13:01:29 2024 UTC