summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhenning <henning@openbsd.org>2005-03-22 12:34:13 +0000
committerhenning <henning@openbsd.org>2005-03-22 12:34:13 +0000
commitbbabf685f395851d7cf8e565db74a5d250d0e7a8 (patch)
treedc5d59b9089dd3932ec81ba70767ffec4bdf5da2
parentfix a typo, don't #define PF_RTIP to something nonmexistant (diff)
downloadwireguard-openbsd-bbabf685f395851d7cf8e565db74a5d250d0e7a8.tar.xz
wireguard-openbsd-bbabf685f395851d7cf8e565db74a5d250d0e7a8.zip
don't step on ospfd routes, claudio yayayaya
-rw-r--r--sbin/routed/routed.88
-rw-r--r--sbin/routed/table.c6
2 files changed, 8 insertions, 6 deletions
diff --git a/sbin/routed/routed.8 b/sbin/routed/routed.8
index 8d90344770a..9169ab3458b 100644
--- a/sbin/routed/routed.8
+++ b/sbin/routed/routed.8
@@ -1,4 +1,4 @@
-.\" $OpenBSD: routed.8,v 1.38 2004/09/08 16:18:12 henning Exp $
+.\" $OpenBSD: routed.8,v 1.39 2005/03/22 12:34:13 henning Exp $
.\"
.\" Copyright (c) 1983, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
@@ -84,10 +84,12 @@ interface on which RIP has not been disabled,
.Nm
deletes all pre-existing
non-static routes in the kernel table,
-except those marked with the RTF_PROTO1 flag (see
+except those marked with either the RTF_PROTO1 or RTF_PROTO2 flag (see
.Xr route 4 ) ,
i.e. routes that have been inserted by
-.Xr bgpd 8 .
+.Xr bgpd 8
+or
+.Xr ospfd 8 .
Static routes in the kernel table are preserved and
included in RIP responses if they have a valid RIP metric
(see
diff --git a/sbin/routed/table.c b/sbin/routed/table.c
index c70578d9051..8b2e71f3b82 100644
--- a/sbin/routed/table.c
+++ b/sbin/routed/table.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: table.c,v 1.16 2004/09/08 16:18:12 henning Exp $ */
+/* $OpenBSD: table.c,v 1.17 2005/03/22 12:34:13 henning Exp $ */
/*
* Copyright (c) 1983, 1988, 1993
@@ -1054,8 +1054,8 @@ read_rt(void)
continue;
}
- /* ignore routes from bgpd */
- if (m.r.rtm.rtm_flags & RTF_PROTO1)
+ /* ignore routes from bgpd and ospfd */
+ if (m.r.rtm.rtm_flags & (RTF_PROTO1|RTF_PROTO2))
continue;
if (m.r.rtm.rtm_type == RTM_IFINFO