diff options
author | paul <paul> | 2004-07-09 12:11:31 +0000 |
---|---|---|
committer | paul <paul> | 2004-07-09 12:11:31 +0000 |
commit | f5ba387492ec163f1200d949a984f12ef88538ba (patch) | |
tree | c17eef0501ef903883aae2ec62fba0be1a244fa0 /bgpd/bgp_route.c | |
parent | 4d4653afe362d6ea549c6e21b27afe01fb8b8aac (diff) |
2004-07-09 Sowmini Varadhan <sowmini.varadhan@sun.com>
* 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.
Diffstat (limited to 'bgpd/bgp_route.c')
-rw-r--r-- | bgpd/bgp_route.c | 11 |
1 files changed, 8 insertions, 3 deletions
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; } } |