summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhenning <henning@openbsd.org>2005-03-29 11:20:01 +0000
committerhenning <henning@openbsd.org>2005-03-29 11:20:01 +0000
commitf04d882f4210284ec50c88b0d50a25fc0d3a3ad7 (patch)
treeb841d0d6d8073cd52e997e03398b20b77789bb76
parentwalk & free network and filter lists after parse errors (diff)
downloadwireguard-openbsd-f04d882f4210284ec50c88b0d50a25fc0d3a3ad7.tar.xz
wireguard-openbsd-f04d882f4210284ec50c88b0d50a25fc0d3a3ad7.zip
explicitely check interface flags for IFF_UP in kroute_validate
-rw-r--r--usr.sbin/bgpd/kroute.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/usr.sbin/bgpd/kroute.c b/usr.sbin/bgpd/kroute.c
index 8b6daef62cb..b0d1400c733 100644
--- a/usr.sbin/bgpd/kroute.c
+++ b/usr.sbin/bgpd/kroute.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kroute.c,v 1.119 2005/03/28 14:40:04 henning Exp $ */
+/* $OpenBSD: kroute.c,v 1.120 2005/03/29 11:20:01 henning Exp $ */
/*
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
@@ -762,8 +762,12 @@ kroute_validate(struct kroute *kr)
kr->ifindex, inet_ntoa(kr->prefix),
kr->prefixlen);
return (1);
- } else
- return (kif->k.link_state != LINK_STATE_DOWN);
+ }
+
+ if (!(kif->k.flags & IFF_UP))
+ return (0);
+
+ return (kif->k.link_state != LINK_STATE_DOWN);
}
void