summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Ovsienko <linux@pilot.org.ua>2007-08-21 16:15:39 +0000
committerDenis Ovsienko <linux@pilot.org.ua>2007-08-21 16:15:39 +0000
commit1ba27564f3852083839bfa1f91889cb46c780f2f (patch)
tree52dba3326d078a18f74db335b567bab13f394eff
parenta13663ae74e806c3cd3d01b28b39193e550a907f (diff)
Looks like bug #320 is finally fixed now.
-rw-r--r--zebra/ChangeLog2
-rw-r--r--zebra/kernel_socket.c9
2 files changed, 11 insertions, 0 deletions
diff --git a/zebra/ChangeLog b/zebra/ChangeLog
index abe8199b..fa90cd14 100644
--- a/zebra/ChangeLog
+++ b/zebra/ChangeLog
@@ -3,6 +3,8 @@
* ioctl_solaris.c: (if_get_mtu) Don't break things if either
IPv6 was disabled at compile time or the current interface
hasn't it enabled.
+ * kernel_socket.c: (ifm_read) Don't forget to call if_get_mtu()
+ for updated interfaces.
2007-08-17 Denis Ovsienko
diff --git a/zebra/kernel_socket.c b/zebra/kernel_socket.c
index 9d2310b9..ff858bd3 100644
--- a/zebra/kernel_socket.c
+++ b/zebra/kernel_socket.c
@@ -472,6 +472,15 @@ ifm_read (struct if_msghdr *ifm)
if_delete_update (ifp);
}
#endif /* RTM_IFANNOUNCE */
+ if (if_is_up (ifp))
+ {
+#if defined(__bsdi__)
+ if_kvm_get_mtu (ifp);
+#else
+ if_get_mtu (ifp);
+#endif /* __bsdi__ */
+ if_get_metric (ifp);
+ }
}
#ifdef HAVE_NET_RT_IFLIST