]> git.puffer.fish Git - mirror/frr.git/commitdiff
Ensure that during event-driven route-map processing, the peer status is
authorDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 20 May 2015 01:04:00 +0000 (18:04 -0700)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 20 May 2015 01:04:00 +0000 (18:04 -0700)
considered, if required. Attempting to do certain processing while the
peer is not Established can lead to errors.

bgpd/bgp_routemap.c

index f133a57a197e6248eb445d99bbb38a8c8e9c4c58..09bbb01fe9daee4ed86154d88574f88490de2ddd 100644 (file)
@@ -2670,7 +2670,7 @@ bgp_route_map_process_peer (char *rmap_name, struct peer *peer,
          filter->map[RMAP_IN].map =
            route_map_lookup_by_name (filter->map[RMAP_IN].name);
 
-         if (route_update)
+         if (route_update && peer->status == Established)
            {
              if (CHECK_FLAG (peer->af_flags[afi][safi],
                              PEER_FLAG_SOFT_RECONFIG))
@@ -2717,7 +2717,7 @@ bgp_route_map_process_peer (char *rmap_name, struct peer *peer,
          update = 1;
        }
 
-      if (update && route_update)
+      if (update && route_update && peer->status == Established)
        {
          if (CHECK_FLAG (peer->af_flags[afi][safi],
                          PEER_FLAG_SOFT_RECONFIG))