From f1ac8a28d8f3c93ef42c20460992f74822975f11 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Wed, 20 Apr 2011 20:02:35 -0400 Subject: disallow blank strings as service or host name --- src/network/getaddrinfo.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/network/getaddrinfo.c b/src/network/getaddrinfo.c index c0f135f3..494b412a 100644 --- a/src/network/getaddrinfo.c +++ b/src/network/getaddrinfo.c @@ -75,6 +75,7 @@ int getaddrinfo(const char *host, const char *serv, const struct addrinfo *hint, type = proto==IPPROTO_UDP ? SOCK_DGRAM : SOCK_STREAM; if (serv) { + if (!*serv) return EAI_SERVICE; port = strtoul(serv, &z, 0); if (!*z && port > 65535) return EAI_SERVICE; if (!port) { @@ -107,6 +108,8 @@ int getaddrinfo(const char *host, const char *serv, const struct addrinfo *hint, return 0; } + if (!*host) return EAI_NONAME; + /* Try as a numeric address */ if (__ipparse(&sa, family, host) >= 0) { buf = calloc(sizeof *buf, 1+EXTRA); -- cgit v1.2.1