ID:               47049
 User updated by:  uli dot staerk at globalways dot net
 Reported By:      uli dot staerk at globalways dot net
-Status:           Feedback
+Status:           Open
 Bug Type:         Reproducible crash
 Operating System: Linux 2.6.16
 PHP Version:      5.2.8
 New Comment:

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


Previous Comments:
------------------------------------------------------------------------

[2009-01-09 12:52:53] scott...@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-09 12:45:47] 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 11:47:46] 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 ;)


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=47049&edit=1

Reply via email to