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
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: 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

Pull Requests

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: Sat Dec 21 17:01:58 2024 UTC