diff options
author | Denis Ovsienko <linux@pilot.org.ua> | 2007-09-06 14:34:41 +0000 |
---|---|---|
committer | Denis Ovsienko <linux@pilot.org.ua> | 2007-09-06 14:34:41 +0000 |
commit | 882968e0a2fe65db5aff29149c87f6d292a1cd2d (patch) | |
tree | 6d95bdf399083c5fa585fc4f848052cff05e09e8 | |
parent | 9eda90ce8094683a5315007fbd0f9249a284f36f (diff) |
+ fixed bug #400: adjusted rtread_sysctl.c:route_read()
-rw-r--r-- | zebra/ChangeLog | 6 | ||||
-rw-r--r-- | zebra/rtread_sysctl.c | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/zebra/ChangeLog b/zebra/ChangeLog index fa90cd14..646027b9 100644 --- a/zebra/ChangeLog +++ b/zebra/ChangeLog @@ -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 diff --git a/zebra/rtread_sysctl.c b/zebra/rtread_sysctl.c index 88527b37..b8f5bde7 100644 --- a/zebra/rtread_sysctl.c +++ b/zebra/rtread_sysctl.c @@ -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); } |