aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2010-10-07 00:37:40 +0000
committerXin LI <delphij@FreeBSD.org>2010-10-07 00:37:40 +0000
commit6ba5b27ed0a70b63c6595f81ddaab1393ff0ffdc (patch)
tree933d3201ee4cb9f860b7b46e228d87503dcdb420 /sys/netinet
parent6d10ecfbf26bab41c74a368b55e6db33b9a8e328 (diff)
Notes
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/ip_carp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c
index 69fea3f5c0e6..924decf19052 100644
--- a/sys/netinet/ip_carp.c
+++ b/sys/netinet/ip_carp.c
@@ -1349,7 +1349,8 @@ carp_setrun(struct carp_softc *sc, sa_family_t af)
CARP_SCLOCK_ASSERT(sc);
if (SC2IFP(sc)->if_flags & IFF_UP &&
- sc->sc_vhid > 0 && (sc->sc_naddrs || sc->sc_naddrs6))
+ sc->sc_vhid > 0 && (sc->sc_naddrs || sc->sc_naddrs6) &&
+ sc->sc_carpdev->if_link_state == LINK_STATE_UP)
SC2IFP(sc)->if_drv_flags |= IFF_DRV_RUNNING;
else {
SC2IFP(sc)->if_drv_flags &= ~IFF_DRV_RUNNING;