diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2020-09-19 08:32:02 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-09-19 08:32:02 -0400 |
| commit | 1f79037b72f0ec93153f9505a11bce9812429993 (patch) | |
| tree | 78740adab0bcabe30ea868424ff3b4550ddccf42 | |
| parent | 68f383438dc0d498eaef42037b0e6f90b0fcda01 (diff) | |
| parent | f5399474a40447a2e18e8d215a0791bbd1bc59f6 (diff) | |
Merge pull request #7036 from ton31337/fix/do_not_allow_setting_maximum-prefix-out_global
bgpd: maximum-prefix-out command fixes
| -rw-r--r-- | bgpd/bgp_updgrp.c | 4 | ||||
| -rw-r--r-- | doc/user/bgp.rst | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/bgpd/bgp_updgrp.c b/bgpd/bgp_updgrp.c index ace18000f8..d2e563b237 100644 --- a/bgpd/bgp_updgrp.c +++ b/bgpd/bgp_updgrp.c @@ -373,11 +373,13 @@ static unsigned int updgrp_hash_key_make(const void *p) * There are certain peers that must get their own update-group: * - lonesoul peers * - peers that negotiated ORF + * - maximum-prefix-out is set */ if (CHECK_FLAG(peer->flags, PEER_FLAG_LONESOUL) || CHECK_FLAG(peer->af_cap[afi][safi], PEER_CAP_ORF_PREFIX_SM_RCV) || CHECK_FLAG(peer->af_cap[afi][safi], - PEER_CAP_ORF_PREFIX_SM_OLD_RCV)) + PEER_CAP_ORF_PREFIX_SM_OLD_RCV) + || CHECK_FLAG(peer->af_flags[afi][safi], PEER_FLAG_MAX_PREFIX_OUT)) key = jhash_1word(jhash(peer->host, strlen(peer->host), SEED2), key); diff --git a/doc/user/bgp.rst b/doc/user/bgp.rst index 9983911581..764428cb0a 100644 --- a/doc/user/bgp.rst +++ b/doc/user/bgp.rst @@ -1399,6 +1399,9 @@ Configuring Peers Sets a maximum number of prefixes we can send to a given peer. + Since sent prefix count is managed by update-groups, this option + creates a separate update-group for outgoing updates. + .. index:: [no] neighbor PEER local-as AS-NUMBER [no-prepend] [replace-as] .. clicmd:: [no] neighbor PEER local-as AS-NUMBER [no-prepend] [replace-as] |
