summaryrefslogtreecommitdiff
path: root/usr.sbin/ospfd
diff options
context:
space:
mode:
authorClaudio Jeker <claudio@cvs.openbsd.org>2015-10-24 16:42:19 +0000
committerClaudio Jeker <claudio@cvs.openbsd.org>2015-10-24 16:42:19 +0000
commit23e18626bf7d5288f257118882b4198d906ffa92 (patch)
treee1ea22a6c72f33d0f5b11c4e764984cdd1efef0b /usr.sbin/ospfd
parent744462971ac7ce590079475c6b97dc3e9d794a50 (diff)
Filter our RTM_GET messages which are not from us.
Diffstat (limited to 'usr.sbin/ospfd')
-rw-r--r--usr.sbin/ospfd/kroute.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/usr.sbin/ospfd/kroute.c b/usr.sbin/ospfd/kroute.c
index b8e53405ba2..5878a2558f3 100644
--- a/usr.sbin/ospfd/kroute.c
+++ b/usr.sbin/ospfd/kroute.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kroute.c,v 1.103 2015/09/27 17:31:50 stsp Exp $ */
+/* $OpenBSD: kroute.c,v 1.104 2015/10/24 16:42:18 claudio Exp $ */
/*
* Copyright (c) 2004 Esben Norby <norby@openbsd.org>
@@ -1370,6 +1370,11 @@ rtmsg_process(char *buf, size_t len)
if (rtm->rtm_tableid != kr_state.rdomain)
continue;
+ if (rtm->rtm_type == RTM_GET &&
+ rtm->rtm_pid != kr_state.pid &&
+ rtm->rtm_pid != 0)
+ continue;
+
if ((sa = rti_info[RTAX_DST]) == NULL)
continue;