]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
Solaris: Harden prior for IFF_POINTOPOINT
authorRoy Marples <roy@marples.name>
Wed, 4 Sep 2019 03:48:11 +0000 (06:48 +0300)
committerRoy Marples <roy@marples.name>
Wed, 4 Sep 2019 03:48:11 +0000 (06:48 +0300)
src/if-sun.c

index 6d101941af940b5e7f8f28ba1624c593352af98e..4f4f0f330dfe541e3b19ae68f901c6c8791108ca 100644 (file)
@@ -439,12 +439,15 @@ if_getifaddrs(struct ifaddrs **ifap)
        for (; ifa != NULL; ifa = ifa->ifa_next) {
                if (ifa->ifa_addr->sa_family != AF_INET6)
                        continue;
+               if (ifa->ifa_flags & IFF_POINTOPOINT)
+                       continue;
 
                sin6 = (struct sockaddr_in6 *)ifa->ifa_addr;
                if (!IN6_IS_ADDR_UNSPECIFIED(&sin6->sin6_addr))
                        continue;
 
                /* Total hack */
+               assert(ifa->ifa_dstaddr == NULL);
                ifa->ifa_dstaddr = malloc(sizeof(struct sockaddr_in6));
                if (ifa->ifa_dstaddr == NULL)
                        continue;