From 46d4e248bb20421f844fa4cb75b7c07f4029aaec Mon Sep 17 00:00:00 2001 From: YAMAMOTO Takashi Date: Thu, 17 Jul 2025 09:04:13 +0900 Subject: [PATCH] posix os_socket_accept: stop assuming socklen_t is unsigned int (#4488) --- core/shared/platform/common/posix/posix_socket.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/core/shared/platform/common/posix/posix_socket.c b/core/shared/platform/common/posix/posix_socket.c index 85f2ab0e9..89a13068f 100644 --- a/core/shared/platform/common/posix/posix_socket.c +++ b/core/shared/platform/common/posix/posix_socket.c @@ -220,12 +220,17 @@ int os_socket_accept(bh_socket_t server_sock, bh_socket_t *sock, void *addr, unsigned int *addrlen) { - *sock = accept(server_sock, addr, addrlen); - + if (addr == NULL) { + *sock = accept(server_sock, NULL, NULL); + } + else { + socklen_t len = *addrlen; + *sock = accept(server_sock, addr, &len); + *addrlen = len; + } if (*sock < 0) { return BHT_ERROR; } - return BHT_OK; }