ID: 45263 User updated by: mimiller at ncsa dot uiuc dot edu Reported By: mimiller at ncsa dot uiuc dot edu Status: Open Bug Type: Reproducible crash Operating System: Windows -PHP Version: 5.2.6 +PHP Version: 5.2.5 New Comment:
$uri='https://somewhere.com/test' should read $uri='https://testvenue3.somewhere.com/VenueServer' Previous Comments: ------------------------------------------------------------------------ [2008-06-13 14:53:39] mimiller at ncsa dot uiuc dot edu Description: ------------ I am seeing behavior in PHP5.2.5 on windows similar to what's described in Bug #35582 Socket Timeout on SOAP request causes program termination. Maybe need to repopen that bug? Here's my code: $uri='https://testvenue3.somewhere.com/VenueServer' $v = new SoapClient($uri.'?WSDL'); The $uri is coming from a database where the offending $uri is just some test data. But there are other valid URIs called subsequently. I could just array_shift the first to avoid the problem, but that's cludgy. So I tried to wrap it with another error handler: set_error_handler('handle_error',E_ALL | E_NOTICE ); $uri='https://somewhere.com/test' $v = new SoapClient($uri.'?WSDL'); restore_error_handler(); and I get the following from my handler function: 2 SoapClient::SoapClient() [function.SoapClient-SoapClient]: php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\Users\mimiller.NCSA\Documents\UIUC\NCSA\www\AGSchedule\AG.php on line 40 https://testvenue3.somewhere.com/VenueServer 2 SoapClient::SoapClient(https://testvenue3.somewhere.com/VenueServer?WSDL) [function.SoapClient-SoapClient]: failed to open stream: No such file or directory in C:\Users\mimiller.NCSA\Documents\UIUC\NCSA\www\AGSchedule\AG.php on line 40 https://testvenue3.somewhere.com/VenueServer 2 SoapClient::SoapClient() [function.SoapClient-SoapClient]: I/O warning : failed to load external entity "https://testvenue3.somewhere.com/VenueServer?WSDL" in C:\Users\mimiller.NCSA\Documents\UIUC\NCSA\www\AGSchedule\AG.php on line 40 https://testvenue3.somewhere.com/VenueServer Which would be fine, but the script dies and outputs the following before I restore_error_handler(): Fatal error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://testvenue3.somewhere.com/VenueServer?WSDL' in C:\Users...snip Which doesn't appear to be my handler function. Regardless, if I'm handling the errors, the script should continue. Reproduce code: --------------- set_error_handler('handle_error',E_ALL | E_NOTICE ); $uri='https://somewhere.com/test' $v = new SoapClient($uri.'?WSDL'); restore_error_handler(); Expected result: ---------------- The script should continue. Actual result: -------------- The script dies. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=45263&edit=1
