From: Roy Marples Date: Wed, 4 Sep 2019 03:38:22 +0000 (+0300) Subject: Solaris: Improve prior X-Git-Tag: v8.0.4~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e69dd34c175d8b37ab96d4079721bb7305da83fc;p=thirdparty%2Fdhcpcd.git Solaris: Improve prior --- diff --git a/src/if-sun.c b/src/if-sun.c index 63b2c11c..6d101941 100644 --- a/src/if-sun.c +++ b/src/if-sun.c @@ -445,11 +445,15 @@ if_getifaddrs(struct ifaddrs **ifap) continue; /* Total hack */ - ifa->ifa_dstaddr = malloc(sizeof(struct sockaddr_storage)); + ifa->ifa_dstaddr = malloc(sizeof(struct sockaddr_in6)); if (ifa->ifa_dstaddr == NULL) continue; - if_getsubnet(fd, ifa->ifa_name, - ifa->ifa_dstaddr, sizeof(struct sockaddr_storage)); + if (if_getsubnet(fd, ifa->ifa_name, + ifa->ifa_dstaddr, sizeof(struct sockaddr_in6) == -1)) + { + free(ifa->ifa_dstaddr); + ifa->ifa_dstaddr = NULL; + } } close(fd); #endif