From 84a33671b46ec4d36da72c273c5e2699b5c89da3 Mon Sep 17 00:00:00 2001 From: David Carlier Date: Wed, 6 Mar 2024 08:43:42 +0000 Subject: [PATCH] Fix GH-13603 ext/sockets: properly initialised address info data. Led to random characters visible on socket id on macOs. --- ext/sockets/sockets.c | 4 ++-- ext/sockets/tests/gh13603.phpt | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 ext/sockets/tests/gh13603.phpt diff --git a/ext/sockets/sockets.c b/ext/sockets/sockets.c index 2a15aa18945b5..73ba905f9c324 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 0000000000000..9207a992fac3c --- /dev/null +++ b/ext/sockets/tests/gh13603.phpt @@ -0,0 +1,15 @@ +--TEST-- +GH-13603 - socket_getsockname - invalid characters +--EXTENSIONS-- +sockets +--FILE-- +