lib9/p9dialparse: fix segfault on gethostbyname
In some situations, gethostbyname can
return an empty address list.
R=rsc
http://codereview.appspot.com/6443097
diff --git a/src/lib9/_p9dialparse.c b/src/lib9/_p9dialparse.c
index 4ff4d3c..2cc2357 100644
--- a/src/lib9/_p9dialparse.c
+++ b/src/lib9/_p9dialparse.c
@@ -109,7 +109,7 @@
if(strcmp(host, "*") == 0){
ss->ss_family = AF_INET6;
((struct sockaddr_in6*)ss)->sin6_addr = in6addr_any;
- }else if((he = gethostbyname(host)) != nil){
+ }else if((he = gethostbyname(host)) != nil && he->h_addr_list[0] != nil){
ss->ss_family = he->h_addrtype;
switch(ss->ss_family){
case AF_INET: