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.
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index 1dd8b57..cf65964 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -1688,12 +1688,17 @@
 	{
 	  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;
 	    }
 	}