From bdb498f8b1e61dd5a9ed6263fabe159c2ed0c401 Mon Sep 17 00:00:00 2001 From: Andrius Bentkus Date: Tue, 22 Jan 2013 14:13:26 +0100 Subject: [PATCH] unix, windows: return UV_EINVAL, not UV_EFAULT A wrong multicast membership should return EINVAL. --- src/unix/udp.c | 3 +-- src/win/udp.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/unix/udp.c b/src/unix/udp.c index f79b09cd..8388ba6c 100644 --- a/src/unix/udp.c +++ b/src/unix/udp.c @@ -542,8 +542,7 @@ int uv_udp_set_membership(uv_udp_t* handle, const char* multicast_addr, optname = IP_DROP_MEMBERSHIP; break; default: - uv__set_sys_error(handle->loop, EFAULT); - return -1; + return uv__set_artificial_error(handle->loop, UV_EINVAL); } if (setsockopt(handle->io_watcher.fd, IPPROTO_IP, optname, (void*) &mreq, sizeof mreq) == -1) { diff --git a/src/win/udp.c b/src/win/udp.c index 56b46239..6d2cde30 100644 --- a/src/win/udp.c +++ b/src/win/udp.c @@ -615,8 +615,7 @@ int uv_udp_set_membership(uv_udp_t* handle, const char* multicast_addr, optname = IP_DROP_MEMBERSHIP; break; default: - uv__set_artificial_error(handle->loop, UV_EFAULT); - return -1; + return uv__set_artificial_error(handle->loop, UV_EINVAL); } if (setsockopt(handle->socket,