fix getaddrinfo error code for non-numeric service with AI_NUMERICSERV
If AI_NUMERICSERV is specified and a numeric service was not provided,
POSIX mandates getaddrinfo return EAI_NONAME. EAI_SERVICE is only for
services that cannot be used on the specified socket type.
diff --git a/src/network/lookup_serv.c b/src/network/lookup_serv.c
index 66ebaea..403b12a 100644
--- a/src/network/lookup_serv.c
+++ b/src/network/lookup_serv.c
@@ -64,7 +64,7 @@
return cnt;
}
- if (flags & AI_NUMERICSERV) return EAI_SERVICE;
+ if (flags & AI_NUMERICSERV) return EAI_NONAME;
size_t l = strlen(name);