diff options
author | Don Slice <dslice@cumulusnetworks.com> | 2019-03-02 20:40:17 +0100 |
---|---|---|
committer | Don Slice <dslice@cumulusnetworks.com> | 2019-03-02 20:44:10 +0100 |
commit | 390485fdc96dbdd56c42d1db5d73c985411f8b4b (patch) | |
tree | b0a8cd4804bc75b11d07ac87bd00ba7dcecf669d /bgpd/bgpd.c | |
parent | Merge pull request #3894 from donaldsharp/install_replace (diff) | |
download | frr-390485fdc96dbdd56c42d1db5d73c985411f8b4b.tar.xz frr-390485fdc96dbdd56c42d1db5d73c985411f8b4b.zip |
bpgd: resolve more neighbor peer-group issues
Found in testing that in a certain sequence, a neighbor's peer-group
membership would be lost. This fix resolves that issue. Additionally
found that "no neighbor swp1 remote-as 2" would sometimes leave the
config with "neighbor swp1 remote-as 0" rather than removing from the
config. That one is also resolved.
Signed-off-by: Don Slice <dslice@cumulusnetworks.com>
Diffstat (limited to 'bgpd/bgpd.c')
-rw-r--r-- | bgpd/bgpd.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c index a920cfeee..1a73301e4 100644 --- a/bgpd/bgpd.c +++ b/bgpd/bgpd.c @@ -2722,7 +2722,7 @@ int peer_group_bind(struct bgp *bgp, union sockunion *su, struct peer *peer, peer->sort = group->conf->sort; } - if (!group->conf->as) { + if (!group->conf->as && peer_sort(peer)) { if (peer_sort(group->conf) != BGP_PEER_INTERNAL && peer_sort(group->conf) != peer_sort(peer)) { if (as) |