Bug #71332 [Opn->Fbk]: SoapClient crash with bus error

From: Date: Mon, 11 Jan 2016 11:02:48 +0000
Subject: Bug #71332 [Opn->Fbk]: SoapClient crash with bus error
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-198561@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=71332&edit=1

 ID:                 71332
 Updated by:         laruence@php.net
 Reported by:        humbads at alum dot mit dot edu
 Summary:            SoapClient crash with bus error
-Status:             Open
+Status:             Feedback
 Type:               Bug
 Package:            SOAP related
 Operating System:   FreeBSD 10.2
 PHP Version:        5.6.17
 Block user comment: N
 Private report:     N

 New Comment:

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.

I can not reproduce this.


Previous Comments:
------------------------------------------------------------------------
[2016-01-10 20:22:16] humbads at alum dot mit dot edu

Description:
------------
PHP crashes with a "bus error" message when calling the SoapClient constructor with any
WSDL URL and no options.  Everything works fine if WSDL caching is disabled.  Strangely, everything
also works fine when running the sample code from the command line like this:
php -r 'var_dump(new SoapClient("http://www.webservicex.com/globalweather.asmx?wsdl"));'

Here are my SOAP settings - everything should be default:

php -i | grep -i soap
soap
Soap Client => enabled
Soap Server => enabled
soap.wsdl_cache => 1 => 1
soap.wsdl_cache_dir => /tmp => /tmp
soap.wsdl_cache_enabled => 1 => 1
soap.wsdl_cache_limit => 5 => 5
soap.wsdl_cache_ttl => 86400 => 86400

Notes:
* The test script is using a public/free WSDL URL.
* Permissions on the /tmp folder are "drwxrwxrwt", and cached wsdl temporary files are
being created there fine.
* I think PHP is crashing because the error handler is not being triggered in my production code.


Test script:
---------------
<?php
// Disable wsdl cache for workaround
// ini_set('soap.wsdl_cache_enabled', 0);

var_dump(new SoapClient("http://www.webservicex.com/globalweather.asmx?wsdl"));
?>

Expected result:
----------------
object(SoapClient)#1 (2) {
  ["_soap_version"]=>
  int(1)
  ["sdl"]=>
  resource(17) of type (Unknown)
}

Actual result:
--------------
Bus error


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



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


Thread (6 messages)

« previous php.bugs (#198561) next »