summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClaudio Jeker <claudio@cvs.openbsd.org>2007-05-15 20:14:49 +0000
committerClaudio Jeker <claudio@cvs.openbsd.org>2007-05-15 20:14:49 +0000
commitbc23471354c64c53edc49826fe5ce8d43bc9593d (patch)
treeb1686f31fe427592a4aac12b13855a6a2743adb0
parentce668c2144f261f559a5281b8cad56bf46ee16ac (diff)
Update the ifp of bridge cache entries if the entry is not static. This
makes carp(4) fail-over work over bridge(4). OK michele@ jason@
-rw-r--r--sys/net/if_bridge.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c
index 1d9c43b6ade..d507ec0bc34 100644
--- a/sys/net/if_bridge.c
+++ b/sys/net/if_bridge.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_bridge.c,v 1.158 2007/04/10 17:47:55 miod Exp $ */
+/* $OpenBSD: if_bridge.c,v 1.159 2007/05/15 20:14:48 claudio Exp $ */
/*
* Copyright (c) 1999, 2000 Jason L. Wright (jason@thought.net)
@@ -1715,7 +1715,8 @@ bridge_rtupdate(struct bridge_softc *sc, struct ether_addr *ea,
if (setflags) {
q->brt_if = ifp;
q->brt_flags = flags;
- }
+ } else if (!(q->brt_flags & IFBAF_STATIC))
+ q->brt_if = ifp;
if (q->brt_if == ifp)
q->brt_age = 1;