diff --git a/NEWS b/NEWS index 2de10b7bc03..019f4a79a69 100644 --- a/NEWS +++ b/NEWS @@ -16,6 +16,10 @@ PHP NEWS . Fixed bug GH-13544 (Pre-PHP 8.2 compatibility for mt_srand with unknown modes). (timwolla) +- Sockets: + . Fixed bug GH-13604 (socket_getsockname returns random characters in the + end of the socket name). (David Carlier) + - SPL: . Fixed bug GH-13531 (Unable to resize SplfixedArray after being unserialized in PHP 8.2.15). (nielsdos) diff --git a/ext/sockets/sockets.c b/ext/sockets/sockets.c index 2a15aa18945..73ba905f9c3 100644 --- a/ext/sockets/sockets.c +++ b/ext/sockets/sockets.c @@ -917,7 +917,7 @@ PHP_FUNCTION(socket_read) PHP_FUNCTION(socket_getsockname) { zval *arg1, *addr, *port = NULL; - php_sockaddr_storage sa_storage; + php_sockaddr_storage sa_storage = {0}; php_socket *php_sock; struct sockaddr *sa; struct sockaddr_in *sin; @@ -994,7 +994,7 @@ PHP_FUNCTION(socket_getsockname) PHP_FUNCTION(socket_getpeername) { zval *arg1, *arg2, *arg3 = NULL; - php_sockaddr_storage sa_storage; + php_sockaddr_storage sa_storage = {0}; php_socket *php_sock; struct sockaddr *sa; struct sockaddr_in *sin; diff --git a/ext/sockets/tests/gh13603.phpt b/ext/sockets/tests/gh13603.phpt new file mode 100644 index 00000000000..9207a992fac --- /dev/null +++ b/ext/sockets/tests/gh13603.phpt @@ -0,0 +1,15 @@ +--TEST-- +GH-13603 - socket_getsockname - invalid characters +--EXTENSIONS-- +sockets +--FILE-- +