hotsoup-fbsd# diff -ruN bird-1.2.4 bird-1.2.4-mod
diff -ruN bird-1.2.4/sysdep/bsd/krt-sock.c bird-1.2.4-mod/sysdep/bsd/krt-sock.c
--- bird-1.2.4/sysdep/bsd/krt-sock.c    2010-08-03 15:44:51.000000000 +0000
+++ bird-1.2.4-mod/sysdep/bsd/krt-sock.c        2010-11-03 15:02:15.000000000 +0000
@@ -461,7 +461,7 @@
   f.mtu = ifm->ifm_data.ifi_mtu;
   f.flags = 0;
 
-  if (fl & IFF_UP)
+  if ((fl & IFF_UP) && (ifm->ifm_data.ifi_link_state == LINK_STATE_UP))  
     f.flags |= IF_LINK_UP;
   if (fl & IFF_LOOPBACK)            /* Loopback */
     f.flags |= IF_MULTIACCESS | IF_LOOPBACK | IF_IGNORE;

