bgpd: Fix neighbor command with internal or external keyword and interface

Ticket: CM-7737
Reviewed-by: CCR-3611
Testing: See bug

When configuring a bgp peer that already has some config hung off of it,
such as 'interface v6only' and then configuring remote-as internal/external
will not cause the config to be taken.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
Donald Sharp 2015-09-30 15:05:19 -07:00
parent 77f2455171
commit edcfcd253c

View File

@ -1543,7 +1543,7 @@ peer_remote_as (struct bgp *bgp, union sockunion *su, const char *conf_if,
} }
/* Existing peer's AS number change. */ /* Existing peer's AS number change. */
if (peer->as != *as) if ((peer->as != *as) || (peer->as_type != as_type))
peer_as_change (peer, *as, as_type); peer_as_change (peer, *as, as_type);
} }
else else
@ -2265,7 +2265,7 @@ peer_group_remote_as (struct bgp *bgp, const char *group_name,
for (ALL_LIST_ELEMENTS (group->peer, node, nnode, peer)) for (ALL_LIST_ELEMENTS (group->peer, node, nnode, peer))
{ {
if (peer->as != *as) if ((peer->as != *as) || (peer->as_type != as_type))
peer_as_change (peer, *as, as_type); peer_as_change (peer, *as, as_type);
} }