diff --git a/ext/standard/fsock.c b/ext/standard/fsock.c index 13485f9d1977..61e6ccf979fe 100644 --- a/ext/standard/fsock.c +++ b/ext/standard/fsock.c @@ -55,7 +55,7 @@ static void php_fsockopen_stream(INTERNAL_FUNCTION_PARAMETERS, int persistent) struct timeval tv; char *hashkey = NULL; php_stream *stream = NULL; - int err; + int err = 0; char *hostname = NULL; size_t hostname_len; zend_string *errstr = NULL; diff --git a/ext/standard/streamsfuncs.c b/ext/standard/streamsfuncs.c index 6de7d255e067..6792db64b817 100644 --- a/ext/standard/streamsfuncs.c +++ b/ext/standard/streamsfuncs.c @@ -112,7 +112,7 @@ PHP_FUNCTION(stream_socket_client) struct timeval tv; char *hashkey = NULL; php_stream *stream = NULL; - int err; + int err = 0; zend_long flags = PHP_STREAM_CLIENT_CONNECT; zend_string *errstr = NULL; php_stream_context *context = NULL; diff --git a/ext/standard/tests/network/fsockopen_error.phpt b/ext/standard/tests/network/fsockopen_error.phpt index 0474d21d8e42..e23fa9ba4273 100644 --- a/ext/standard/tests/network/fsockopen_error.phpt +++ b/ext/standard/tests/network/fsockopen_error.phpt @@ -20,6 +20,7 @@ $errno = null; $errstr = null; $timeout = 1.5; var_dump( fsockopen($hostname, $port, $errno, $errstr, $timeout) ); +var_dump($errno); var_dump($errstr); echo "Done"; @@ -37,5 +38,6 @@ string(%d) "%a" Warning: fsockopen(): Unable to connect to invalid://127.0.0.1:31337 (Unable to find the socket transport "invalid" - did you forget to enable it when you configured PHP?) in %s on line %d bool(false) +int(0) string(100) "Unable to find the socket transport "invalid" - did you forget to enable it when you configured PHP?" Done diff --git a/ext/standard/tests/network/stream_socket_client_error.phpt b/ext/standard/tests/network/stream_socket_client_error.phpt new file mode 100644 index 000000000000..d003c467a143 --- /dev/null +++ b/ext/standard/tests/network/stream_socket_client_error.phpt @@ -0,0 +1,27 @@ +--TEST-- +Test stream_socket_client() function : error conditions +--FILE-- + +--EXPECTF-- +*** Testing stream_socket_client() : basic error conditions *** + +-- Attempting to connect using an invalid protocol -- + +Warning: stream_socket_client(): Unable to connect to invalid://127.0.0.1:31337 (Unable to find the socket transport "invalid" - did you forget to enable it when you configured PHP?) in %s on line %d +bool(false) +int(0) +string(100) "Unable to find the socket transport "invalid" - did you forget to enable it when you configured PHP?" +Done