diff options
Diffstat (limited to 'zebra')
-rw-r--r-- | zebra/ChangeLog | 2 | ||||
-rw-r--r-- | zebra/kernel_socket.c | 9 |
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 |