posix os_socket_accept: stop assuming socklen_t is unsigned int (#4488)
This commit is contained in:
@ -220,12 +220,17 @@ int
|
|||||||
os_socket_accept(bh_socket_t server_sock, bh_socket_t *sock, void *addr,
|
os_socket_accept(bh_socket_t server_sock, bh_socket_t *sock, void *addr,
|
||||||
unsigned int *addrlen)
|
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) {
|
if (*sock < 0) {
|
||||||
return BHT_ERROR;
|
return BHT_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
return BHT_OK;
|
return BHT_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user