diff options
author | ajs <ajs> | 2008-01-11 15:57:13 +0000 |
---|---|---|
committer | ajs <ajs> | 2008-01-11 15:57:13 +0000 |
commit | 2f73d36752b61b48c0c14a39d2c13f33ea0411fa (patch) | |
tree | 716f01d8ff1567c49bd1610fe1f5fb959756ad3b /zebra/kernel_socket.c | |
parent | f6bc0eb86aec3cec8ddb18de4f85fb669e3197d2 (diff) | |
download | quagga-2f73d36752b61b48c0c14a39d2c13f33ea0411fa.tar.bz2 quagga-2f73d36752b61b48c0c14a39d2c13f33ea0411fa.tar.xz |
[link-detect] Improve BSD support.
2008-01-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* lib/zebra.h: Revert previous change, no need to include
<net/if_media.h> here.
* zebra/ioctl.c: If HAVE_BSD_LINK_DETECT is defined, include
<net/if_media.h>
(if_get_flags) Remove debug messages about BSD link state.
* zebra/kernel_socket.c: (bsd_linkdetect_translate) If link state
is unknown, we should set the IFF_RUNNING flag.
Diffstat (limited to 'zebra/kernel_socket.c')
-rw-r--r-- | zebra/kernel_socket.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/zebra/kernel_socket.c b/zebra/kernel_socket.c index cd30631b..2e04b031 100644 --- a/zebra/kernel_socket.c +++ b/zebra/kernel_socket.c @@ -300,7 +300,8 @@ ifan_read (struct if_announcemsghdr *ifan) static void bsd_linkdetect_translate (struct if_msghdr *ifm) { - if (ifm->ifm_data.ifi_link_state >= LINK_STATE_UP) + if ((ifm->ifm_data.ifi_link_state >= LINK_STATE_UP) || + (ifm->ifm_data.ifi_link_state == LINK_STATE_UNKNOWN)) SET_FLAG(ifm->ifm_flags, IFF_RUNNING); else UNSET_FLAG(ifm->ifm_flags, IFF_RUNNING); |