]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
Ignore all messages raised by dhcpcd.
authorRoy Marples <roy@marples.name>
Fri, 6 Sep 2013 09:38:23 +0000 (09:38 +0000)
committerRoy Marples <roy@marples.name>
Fri, 6 Sep 2013 09:38:23 +0000 (09:38 +0000)
if-bsd.c

index 4cf87187e54eec54c65877040cd59cb88840f7e9..ba607e3b52546d6ee007322e6513a03f6f8ee0a2 100644 (file)
--- a/if-bsd.c
+++ b/if-bsd.c
@@ -566,6 +566,9 @@ manage_link(int fd)
                e = link_buf + bytes;
                for (p = link_buf; p < e; p += rtm->rtm_msglen) {
                        rtm = (struct rt_msghdr *)(void *)p;
+                       // Ignore messages generated by us
+                       if (rtm->rtm_pid == getpid())
+                               break;
                        switch(rtm->rtm_type) {
 #ifdef RTM_IFANNOUNCE
                        case RTM_IFANNOUNCE:
@@ -609,8 +612,6 @@ manage_link(int fd)
                                if (~rtm->rtm_addrs &
                                    (RTA_DST | RTA_GATEWAY | RTA_NETMASK))
                                        break;
-                               if (rtm->rtm_pid == getpid())
-                                       break;
                                cp = (char *)(void *)(rtm + 1);
                                sa = (struct sockaddr *)(void *)cp;
                                if (sa->sa_family != AF_INET)