summaryrefslogtreecommitdiff
path: root/deps/uv/src/uv-common.c
diff options
context:
space:
mode:
Diffstat (limited to 'deps/uv/src/uv-common.c')
-rw-r--r--deps/uv/src/uv-common.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/deps/uv/src/uv-common.c b/deps/uv/src/uv-common.c
index 4129a36686..c4cf3c7f85 100644
--- a/deps/uv/src/uv-common.c
+++ b/deps/uv/src/uv-common.c
@@ -102,9 +102,7 @@ int uv_ip4_addr(const char* ip, int port, struct sockaddr_in* addr) {
memset(addr, 0, sizeof(*addr));
addr->sin_family = AF_INET;
addr->sin_port = htons(port);
- /* TODO(bnoordhuis) Don't use inet_addr(), no good way to detect errors. */
- addr->sin_addr.s_addr = inet_addr(ip);
- return 0;
+ return uv_inet_pton(AF_INET, ip, &(addr->sin_addr.s_addr));
}
@@ -140,10 +138,7 @@ int uv_ip6_addr(const char* ip, int port, struct sockaddr_in6* addr) {
}
#endif
- /* TODO(bnoordhuis) Return an error when the address is bad. */
- uv_inet_pton(AF_INET6, ip, &addr->sin6_addr);
-
- return 0;
+ return uv_inet_pton(AF_INET6, ip, &addr->sin6_addr);
}
@@ -404,6 +399,9 @@ int uv__getaddrinfo_translate_error(int sys_err) {
#if defined(EAI_BADFLAGS)
case EAI_BADFLAGS: return UV_EAI_BADFLAGS;
#endif
+#if defined(EAI_BADHINTS)
+ case EAI_BADHINTS: return UV_EAI_BADHINTS;
+#endif
#if defined(EAI_CANCELED)
case EAI_CANCELED: return UV_EAI_CANCELED;
#endif
@@ -424,6 +422,12 @@ int uv__getaddrinfo_translate_error(int sys_err) {
case EAI_NONAME: return UV_EAI_NONAME;
# endif
#endif
+#if defined(EAI_OVERFLOW)
+ case EAI_OVERFLOW: return UV_EAI_OVERFLOW;
+#endif
+#if defined(EAI_PROTOCOL)
+ case EAI_PROTOCOL: return UV_EAI_PROTOCOL;
+#endif
#if defined(EAI_SERVICE)
case EAI_SERVICE: return UV_EAI_SERVICE;
#endif