summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorclaudio <claudio@openbsd.org>2007-05-15 20:14:48 +0000
committerclaudio <claudio@openbsd.org>2007-05-15 20:14:48 +0000
commita4d99de1994845424b01a2873ad2a4ed79087a58 (patch)
tree65da225ad476193a22f4c8df59b7562aa8d00119
parentallows for incomplete locations (without arch) and for repositories to (diff)
downloadwireguard-openbsd-a4d99de1994845424b01a2873ad2a4ed79087a58.tar.xz
wireguard-openbsd-a4d99de1994845424b01a2873ad2a4ed79087a58.zip
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;