php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #47049 SoapClient::__soapCall causes a segmentation fault.
Submitted: 2009-01-09 11:47 UTC Modified: 2009-02-18 13:26 UTC
From: uli dot staerk at globalways dot net Assigned: dmitry (profile)
Status: Closed Package: SOAP related
PHP Version: 5.2.8 OS: Linux 2.6.16
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: uli dot staerk at globalways dot net
New email:
PHP Version: OS:

 

 [2009-01-09 11:47 UTC] uli dot staerk at globalways dot net
Description:
------------
I cant not give you any further information as the example shows.

Reproduce code:
---------------
<?php
ini_set('soap.wsdl_cache_enabled',false);

function debug($str) {echo '<pre>'; print_r($str); echo '</pre>'; }

try {
        $client = new SoapClient('reporter.wsdl',
                array('trace' => 1 , 'exceptions' => true)
        );
//      debug(debug($client->__getFunctions())); // works

        $host = array('uuid' => 'foo');
        $software_list = array(array('name' => 'package', 'version' => '1.2.3', 'state' => 'installed'));
        $updates = array();

        $report_id = $client->__soapCall('reportSoftwareStatus',array($host, $software_list, $updates));

}
catch (Exception $e) {
        debug((string)$e);
}

Expected result:
----------------
segmentation fault

Actual result:
--------------
error message ;)

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2009-01-09 12:45 UTC] uli dot staerk at globalways dot net
WSDL: http://uli-staerk.de/temp/report.wsdl

You will need to fill in valid service-address.
 [2009-01-09 12:52 UTC] scottmac@php.net
Thank you for this bug report. To properly diagnose the problem, we
need a backtrace to see what is happening behind the scenes. To
find out how to generate a backtrace, please read
http://bugs.php.net/bugs-generating-backtrace.php for *NIX and
http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32

Once you have generated a backtrace, please submit it to this bug
report and change the status back to "Open". Thank you for helping
us make PHP better.


 [2009-01-14 16:29 UTC] uli dot staerk at globalways dot net
I found the reason why PHP crashed. The WSDL had an invalid service-port-address (namespace):
<http:address location="reporter.php"/>

Correct is:
<soap:address location="reporter.php" />

This error is not reproduceable with other WSDL Documents, where the following exception is thrown:
SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Unexpected WSDL element
 [2009-02-18 13:26 UTC] dmitry@php.net
This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.


 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Nov 23 08:01:28 2024 UTC