From b84d3a1b6e3e915a0f2e24f13c0445fae8f37a6f Mon Sep 17 00:00:00 2001 From: paul Date: Mon, 17 Nov 2003 10:31:01 +0000 Subject: 2003-11-17 Jay Fenlason * zebra/rt_netlink.c: netlink_parse_info() ignore messages which are not from kernel. Reported to RH by Herbert Xu. See http://rhn.redhat.com/errata/RHSA-2003-307.html and CAN-2003-0858. --- zebra/rt_netlink.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'zebra/rt_netlink.c') diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c index 02cae6ee..9b13bca4 100644 --- a/zebra/rt_netlink.c +++ b/zebra/rt_netlink.c @@ -290,6 +290,13 @@ netlink_parse_info (int (*filter) (struct sockaddr_nl *, struct nlmsghdr *), nl->name, msg.msg_namelen); return -1; } + + /* JF: Ignore messages that aren't from the kernel */ + if ( snl.nl_pid != 0 ) + { + zlog ( NULL, LOG_ERR, "Ignoring message from pid %u", snl.nl_pid ); + continue; + } for (h = (struct nlmsghdr *) buf; NLMSG_OK (h, status); h = NLMSG_NEXT (h, status)) -- cgit v1.2.1