From: hasso Date: Mon, 24 Jan 2005 09:29:42 +0000 (+0000) Subject: * bgp_route.c: Fix showstopper bug. New route must be selected also X-Git-Tag: frr-2.0-rc1~3229 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=6d69429c1bff7291bac52a05234c12434f152a94;p=matthieu%2Ffrr.git * bgp_route.c: Fix showstopper bug. New route must be selected also if old one is flaged as BGP_INFO_ATTR_CHANGED. --- diff --git a/bgpd/ChangeLog b/bgpd/ChangeLog index f66857c0f0..93dc8c3b8d 100644 --- a/bgpd/ChangeLog +++ b/bgpd/ChangeLog @@ -1,3 +1,8 @@ +2005-01-24 Hasso Tepper + + * bgp_route.c: Fix showstopper bug. New route must be selected also + if old one is flaged as BGP_INFO_ATTR_CHANGED. + 2005-01-17 Hasso Tepper * bgp_route.c: Clear peer's routing table regardless whether it's diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 16fcc89f7b..849cc44fc6 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -1097,7 +1097,8 @@ bgp_best_selection (struct bgp *bgp, struct bgp_node *rn, struct bgp_info_pair * new_select = ri; } - if ( (! old_select) || old_select != new_select) + if ( (! old_select) || old_select != new_select + || CHECK_FLAG (old_select->flags, BGP_INFO_ATTR_CHANGED)) { if (old_select) UNSET_FLAG (old_select->flags, BGP_INFO_SELECTED);