From: Rich Felker Date: Wed, 27 Nov 2013 05:54:03 +0000 (-0500) Subject: reject invalid address families in getaddrinfo X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=cabe9aa974aca34c0fda91028c770dee96ba51dc;p=musl reject invalid address families in getaddrinfo subsequent code assumes the address family requested is either unspecified or one of IPv4/IPv6, and could malfunction if this constraint is not met, so other address families should be explicitly rejected. --- diff --git a/src/network/getaddrinfo.c b/src/network/getaddrinfo.c index e58db6cf..5d45be74 100644 --- a/src/network/getaddrinfo.c +++ b/src/network/getaddrinfo.c @@ -62,6 +62,9 @@ int getaddrinfo(const char *restrict host, const char *restrict serv, const stru int result; int cnt; + if (family != AF_INET && family != AF_INET6 && family != AF_UNSPEC) + return EAI_FAMILY; + if (host && strlen(host)>255) return EAI_NONAME; if (serv && strlen(serv)>32) return EAI_SERVICE;