From 3d56c8133c8e22976572a03be4cd6a9946a1edd4 Mon Sep 17 00:00:00 2001 From: YAMAMOTO Takashi Date: Mon, 26 Sep 2022 21:06:14 +0900 Subject: [PATCH] Fix NuttX build error after dev/socket was merged (#1517) --- core/shared/platform/common/posix/posix_socket.c | 14 ++++++++++++-- core/shared/platform/nuttx/platform_internal.h | 1 + 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/core/shared/platform/common/posix/posix_socket.c b/core/shared/platform/common/posix/posix_socket.c index adb7b11d..c1c72008 100644 --- a/core/shared/platform/common/posix/posix_socket.c +++ b/core/shared/platform/common/posix/posix_socket.c @@ -426,7 +426,7 @@ os_socket_getbooloption(bh_socket_t socket, int level, int optname, assert(is_enabled); int optval; - int optval_size = sizeof(optval); + socklen_t optval_size = sizeof(optval); if (getsockopt(socket, level, optname, &optval, &optval_size) != 0) { return BHT_ERROR; } @@ -523,15 +523,25 @@ os_socket_get_reuse_addr(bh_socket_t socket, bool *is_enabled) int os_socket_set_reuse_port(bh_socket_t socket, bool is_enabled) { +#if defined(SO_REUSEPORT) /* NuttX doesn't have SO_REUSEPORT */ return os_socket_setbooloption(socket, SOL_SOCKET, SO_REUSEPORT, is_enabled); +#else + errno = ENOTSUP; + return BHT_ERROR; +#endif /* defined(SO_REUSEPORT) */ } int os_socket_get_reuse_port(bh_socket_t socket, bool *is_enabled) { +#if defined(SO_REUSEPORT) /* NuttX doesn't have SO_REUSEPORT */ return os_socket_getbooloption(socket, SOL_SOCKET, SO_REUSEPORT, is_enabled); +#else + errno = ENOTSUP; + return BHT_ERROR; +#endif /* defined(SO_REUSEPORT) */ } int @@ -967,4 +977,4 @@ os_socket_addr_remote(bh_socket_t socket, bh_sockaddr_t *sockaddr) return sockaddr_to_bh_sockaddr((struct sockaddr *)&addr_storage, addr_len, sockaddr); -} \ No newline at end of file +} diff --git a/core/shared/platform/nuttx/platform_internal.h b/core/shared/platform/nuttx/platform_internal.h index 637fa21f..41e20858 100644 --- a/core/shared/platform/nuttx/platform_internal.h +++ b/core/shared/platform/nuttx/platform_internal.h @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include