Module Name:    src
Committed By:   roy
Date:           Wed Jun 10 16:32:43 UTC 2015

Modified Files:
        src/external/apache2/mDNSResponder/dist/mDNSPosix: mDNSUNP.c

Log Message:
Teach mdnsd about IN_IFF_NOTREADY and IN_IFF_DETACHED.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 \
    src/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSUNP.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSUNP.c
diff -u src/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSUNP.c:1.5 src/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSUNP.c:1.6
--- src/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSUNP.c:1.5	Fri Jan 16 20:16:36 2015
+++ src/external/apache2/mDNSResponder/dist/mDNSPosix/mDNSUNP.c	Wed Jun 10 16:32:42 2015
@@ -279,6 +279,15 @@ struct ifi_info *get_ifi_info(int family
             continue;   /* ignore if interface not up */
 
 	/* Skip addresses we can't use */
+#ifdef SIOCGIFAFLAG_IN
+	if (ifr->ifr_addr.sa_family == AF_INET) {
+		ifrcopy = *ifr;
+		if (ioctl(sockfd, SIOCGIFAFLAG_IN, &ifrcopy) < 0)
+			goto gotError;
+		if (ifrcopy.ifr_addrflags & (IN_IFF_NOTREADY | IN_IFF_DETACHED))
+			continue;
+	}
+#endif
 #ifdef SIOCGIFAFLAG_IN6
         if (ifr->ifr_addr.sa_family == AF_INET6) {
 		struct in6_ifreq ifr6;

Reply via email to