[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.
diff --git a/zebra/kernel_socket.c b/zebra/kernel_socket.c
index cd30631..2e04b03 100644
--- a/zebra/kernel_socket.c
+++ b/zebra/kernel_socket.c
@@ -300,7 +300,8 @@
 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);