diff --git a/ext/socket/ancdata.c b/ext/socket/ancdata.c index 5af090c9b9..9344252864 100644 --- a/ext/socket/ancdata.c +++ b/ext/socket/ancdata.c @@ -1114,7 +1114,7 @@ static void * nogvl_sendmsg_func(void *ptr) { struct sendmsg_args_struct *args = ptr; - return (void *)sendmsg(args->fd, args->msg, args->flags); + return (void *)(VALUE)sendmsg(args->fd, args->msg, args->flags); } static ssize_t diff --git a/ext/socket/option.c b/ext/socket/option.c index 1f334bbca0..4cef1c81c4 100644 --- a/ext/socket/option.c +++ b/ext/socket/option.c @@ -452,6 +452,8 @@ inet_ntop(int af, const void *addr, char *numaddr, size_t numaddr_len) #endif return numaddr; } +#elif !defined HAVE_ARPA_INET_H +extern char *inet_ntop(int af, const void *addr, char *numaddr, size_t numaddr_len); #endif /* Although the buffer size needed depends on the prefixes, "%u" may generate "4294967295". */