]> git.puffer.fish Git - mirror/frr.git/commitdiff
+ fixed bug #400: adjusted rtread_sysctl.c:route_read()
authorDenis Ovsienko <linux@pilot.org.ua>
Thu, 6 Sep 2007 14:34:41 +0000 (14:34 +0000)
committerDenis Ovsienko <linux@pilot.org.ua>
Thu, 6 Sep 2007 14:34:41 +0000 (14:34 +0000)
zebra/ChangeLog
zebra/rtread_sysctl.c

index fa90cd147a849b272eed1dcdbb4ddca2355ce936..646027b93f720a75d0dd01be894f31c15c5737fa 100644 (file)
@@ -1,3 +1,9 @@
+2007-09-06 Denis Ovsienko
+
+       * rtread_sysctl.c: (route_read) Set RTF_DONE on the routing
+         messages when fetching initial kernel FIB, so rtm_read()
+         doesn't skip them.
+
 2007-08-21 Denis Ovsienko
 
        * ioctl_solaris.c: (if_get_mtu) Don't break things if either
index 88527b374391831897c870ec5728ab3cad814a94..b8f5bde70e3da9874749a2e4be01b6f9806efe09 100644 (file)
@@ -68,6 +68,8 @@ route_read (void)
   for (end = buf + bufsiz; buf < end; buf += rtm->rtm_msglen) 
     {
       rtm = (struct rt_msghdr *) buf;
+      /* We must set RTF_DONE here, so rtm_read() doesn't ignore the message. */
+      SET_FLAG (rtm->rtm_flags, RTF_DONE);
       rtm_read (rtm);
     }