summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorthompsa <thompsa@FreeBSD.org>2006-01-02 22:29:41 +0000
committerthompsa <thompsa@FreeBSD.org>2006-01-02 22:29:41 +0000
commita81b11ae212bc4ccc2fbf53ea67c33b7850ef6f1 (patch)
tree7372fa9688701698e3131fa21ac4d2db7f9d8eb1 /sys
parent28b37041d3db0572a5c669f3c06191bf10a4ecad (diff)
downloadFreeBSD-src-a81b11ae212bc4ccc2fbf53ea67c33b7850ef6f1.zip
FreeBSD-src-a81b11ae212bc4ccc2fbf53ea67c33b7850ef6f1.tar.gz
Reset the route expiry time on each update rather than always letting them get
GC'd and recreated.
Diffstat (limited to 'sys')
-rw-r--r--sys/net/if_bridge.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c
index 08ce4b7..a61b45c 100644
--- a/sys/net/if_bridge.c
+++ b/sys/net/if_bridge.c
@@ -2152,11 +2152,10 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t *dst,
}
brt->brt_ifp = dst_if;
- if (setflags) {
+ brt->brt_expire = (flags & IFBAF_STATIC) ? 0 :
+ time_uptime + sc->sc_brttimeout;
+ if (setflags)
brt->brt_flags = flags;
- brt->brt_expire = (flags & IFBAF_STATIC) ? 0 :
- time_uptime + sc->sc_brttimeout;
- }
return (0);
}
OpenPOWER on IntegriCloud