php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #46113 SOAP can't handle ZIP response
Submitted: 2008-09-18 10:12 UTC Modified: 2009-05-06 01:00 UTC
From: syabro at gmail dot com Assigned:
Status: No Feedback Package: SOAP related
PHP Version: 5.2.6 OS: *
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: syabro at gmail dot com
New email:
PHP Version: OS:

 

 [2008-09-18 10:12 UTC] syabro at gmail dot com
Description:
------------
When soap response is zipped php fails with windows error ""
Memory can't be read.







Reproduce code:
---------------
Response example:
http://syabro.com/response.xml


Expected result:
----------------
String variable, that contain's zip.


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2008-09-18 10:21 UTC] syabro at gmail dot com
Probally error occurs wher SOAPClient tried to parse zipped data in 
<data> tag or with CDATA section.
 [2008-09-18 10:59 UTC] pajoye@php.net
Does it use the stream zip format? Like what is available in java's soap or rpc?
 [2008-09-18 11:09 UTC] syabro at gmail dot com
Hmmmmm... I said wrong. Request is not zipped. It's CONTAINS zip in 
response. If you look in my response example U'll see an CDATA 
content with zip.
 [2008-09-19 05:57 UTC] syabro at gmail dot com
OK
I'll try to say more.

I try use standart SoapClient to work with SOAP service at 
http://portal.crog.ru/spo.asmx?WSDL with WS-Security and WS-
Addressing
with libraries
http://www.cdatazone.org/index.php?/pages/source.html

and use modified script from 
http://www.cdatazone.org/files/soap-wsa-example.phps

sources to reproduce error are here
http://sybro.com/capital.zip

php -f parse.php

When I call SOAP method GetSpoPartById 
I get segmentation fault on php5.2.6 under windows xp and linux 
debian etch

Let's see CapitalTourUpdater::getSpoByGuid()

...
public function getSpoByGuid( $guid )
{
// error produced here  - segmentation fault
// soapClient extended from SoapClient
 $response = $this->soapClient->GetSpoPartById( array('id'=>$guid) );
 var_dump( $response );
}


By the way SOAP method GetSpoCardLog calls normally
Let's see
CapitalTourUpdater::getUpdatedSpoGuids()
//normal executin of Soap call
$response = $this->soapClient->GetSpoCardLog($arrParameters_Query);

With HTTP sniffer I've seen that request goes to server, and server 
return valid response
As I write before response's example available at 
http://syabro.com/response.xml

Linux callstack:
gdb php
gdb> run -f parse.php
gdb>bt
#0  0x00002ba6682085d0 in strlen () from /lib/libc.so.6
#1  0x00000000005ce244 in delete_encoder ()
#2  0x00000000005cfc6d in master_to_zval ()
#3  0x00000000005d002c in master_to_zval ()
#4  0x00000000005d071f in master_to_zval ()
#5  0x00000000005ce56b in get_conversion ()
#6  0x00000000005cff0a in master_to_zval ()
#7  0x00000000005cfe62 in master_to_zval ()
#8  0x00000000005d071f in master_to_zval ()
#9  0x00000000005ce56b in get_conversion ()
#10 0x00000000005d014e in master_to_zval ()
#11 0x00000000005cfe62 in master_to_zval ()
#12 0x00000000005d071f in master_to_zval ()
#13 0x00000000005ce56b in get_conversion ()

------------------------ error in parsing SOAP Response packet ----
#14 0x00000000005df61a in parse_packet_soap ()
---------------------------------------------------------------------
-------------------
#15 0x00000000005c8313 in zim_SoapClient_SoapClient ()
#16 0x00000000005c8b82 in zim_SoapClient___call ()
#17 0x0000000000700c0d in zend_call_function ()
#18 0x000000000071f5d4 in zend_call_method ()
#19 0x0000000000726191 in zend_std_call_user_call ()
#20 0x00002ba668795f8a in xdebug_execute_internal
(current_execute_data=0x7fff444ae010, return_value_used=1)
   at /home/xen/img/deb/xdebug-2.0.0/xdebug-2.0.0/xdebug.c:1570
#21 0x0000000000739148 in execute ()
#22 0x00000000007296a3 in execute ()
#23 0x00002ba668795c40 in xdebug_execute (op_array=0x2ba66662a798)
   at /home/xen/img/deb/xdebug-2.0.0/xdebug-2.0.0/xdebug.c:1506
#24 0x0000000000738da5 in execute ()
#25 0x00000000007296a3 in execute ()
#26 0x00002ba668795c40 in xdebug_execute (op_array=0x2ba666622b30)
   at /home/xen/img/deb/xdebug-2.0.0/xdebug-2.0.0/xdebug.c:1506
#27 0x000000000070b603 in zend_execute_scripts ()
#28 0x00000000006cbb98 in php_execute_script ()
#29 0x000000000078862b in main ()
 [2009-04-28 18:54 UTC] jani@php.net
Please try using this CVS snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/


 [2009-05-06 01:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Apr 25 04:01:38 2024 UTC