Skip to content

Commit 89c11c5

Browse files
authored
Fix explicit casts and types in espidf_socket.c (#1945)
In the esp-idf platform, Xtensa GCC 8.4.0 reported incompatible pointer warnings when building with the lwip component. Berkeley (POSIX) sockets uses composition in combination with type punning to handle many protocol families, including IPv4 & IPv6. The type punning just has to be made explicit with pointer casts from `sockaddr_in` for IPv4 to the generic `sockaddr`.
1 parent 3d44f11 commit 89c11c5

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

core/shared/platform/esp-idf/espidf_socket.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ os_socket_bind(bh_socket_t socket, const char *host, int *port)
7777
}
7878

7979
socklen = sizeof(addr);
80-
if (getsockname(socket, (void *)&addr, &socklen) == -1) {
80+
if (getsockname(socket, (struct sockaddr *)&addr, &socklen) == -1) {
8181
goto fail;
8282
}
8383

@@ -120,7 +120,7 @@ os_socket_accept(bh_socket_t server_sock, bh_socket_t *sock, void *addr,
120120
unsigned int *addrlen)
121121
{
122122
struct sockaddr addr_tmp;
123-
unsigned int len = sizeof(struct sockaddr);
123+
socklen_t len = sizeof(struct sockaddr);
124124

125125
*sock = accept(server_sock, (struct sockaddr *)&addr_tmp, &len);
126126

@@ -205,7 +205,7 @@ os_socket_addr_remote(bh_socket_t socket, bh_sockaddr_t *sockaddr)
205205
struct sockaddr_in addr;
206206
socklen_t addr_len = sizeof(addr);
207207

208-
if (getpeername(socket, &addr, &addr_len) == -1) {
208+
if (getpeername(socket, (struct sockaddr *)&addr, &addr_len) == -1) {
209209
return BHT_ERROR;
210210
}
211211

@@ -219,7 +219,7 @@ os_socket_addr_local(bh_socket_t socket, bh_sockaddr_t *sockaddr)
219219
struct sockaddr_in addr;
220220
socklen_t addr_len = sizeof(addr);
221221

222-
if (getsockname(socket, &addr, &addr_len) == -1) {
222+
if (getsockname(socket, (struct sockaddr *)&addr, &addr_len) == -1) {
223223
return BHT_ERROR;
224224
}
225225

0 commit comments

Comments
 (0)