diff options
| author | Donald Sharp <sharpd@nvidia.com> | 2022-12-01 13:06:40 -0500 |
|---|---|---|
| committer | Donald Sharp <sharpd@nvidia.com> | 2022-12-05 09:11:21 -0500 |
| commit | b8579ee71269c8cac7b426a0acff59b129db25dd (patch) | |
| tree | 28021bdccae69756bcce837bae7af1f406ae395c | |
| parent | 69ef3f3136ead5be13ce6b49bdad65052c282f9b (diff) | |
bgpd: Ensure correct flags when inheriting config from a peer group
When a peer is a peer-group based peer, and the config is inherited
from the peer group, let's ensure that the CONFIG_NODE flag stays
no matter what.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
| -rw-r--r-- | bgpd/bgpd.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c index 12ee96ff45..9811b364bf 100644 --- a/bgpd/bgpd.c +++ b/bgpd/bgpd.c @@ -2649,6 +2649,7 @@ static void peer_group2peer_config_copy(struct peer_group *group, { uint32_t flags_tmp; struct peer *conf; + bool config_node = !!CHECK_FLAG(peer->flags, PEER_FLAG_CONFIG_NODE); conf = group->conf; @@ -2676,6 +2677,9 @@ static void peer_group2peer_config_copy(struct peer_group *group, SET_FLAG(peer->flags, flags_tmp); SET_FLAG(peer->flags_invert, conf->flags_invert); + if (config_node) + SET_FLAG(peer->flags, PEER_FLAG_CONFIG_NODE); + /* peer timers apply */ if (!CHECK_FLAG(peer->flags_override, PEER_FLAG_TIMER)) { PEER_ATTR_INHERIT(peer, group, holdtime); |
