From f5ba387492ec163f1200d949a984f12ef88538ba Mon Sep 17 00:00:00 2001 From: paul Date: Fri, 9 Jul 2004 12:11:31 +0000 Subject: 2004-07-09 Sowmini Varadhan * bgp_packet.c: (bgp_collision_detect) Send NOTIFY on new socket if that is connection we're closing. (bgp_read) invalid marker check applies to KEEPALIVE too. * bgp_route.c: Ignore multicast NRLI, dont send NOTIFY. --- bgpd/bgp_route.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'bgpd/bgp_route.c') diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 1dd8b571..cf65964b 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -1688,12 +1688,17 @@ bgp_nlri_parse (struct peer *peer, struct attr *attr, struct bgp_nlri *packet) { if (IN_CLASSD (ntohl (p.u.prefix4.s_addr))) { + /* + * From draft-ietf-idr-bgp4-22, Section 6.3: + * If a BGP router receives an UPDATE message with a + * semantically incorrect NLRI field, in which a prefix is + * semantically incorrect (eg. an unexpected multicast IP + * address), it should ignore the prefix. + */ zlog (peer->log, LOG_ERR, "IPv4 unicast NLRI is multicast address %s", inet_ntoa (p.u.prefix4)); - bgp_notify_send (peer, - BGP_NOTIFY_UPDATE_ERR, - BGP_NOTIFY_UPDATE_INVAL_NETWORK); + return -1; } } -- cgit v1.2.1