summaryrefslogtreecommitdiff
path: root/bgpd/bgp_vty.c
diff options
context:
space:
mode:
authorRuss White <russ@riw.us>2024-03-19 10:18:44 -0400
committerGitHub <noreply@github.com>2024-03-19 10:18:44 -0400
commit80c8e10f5d5e06628c31ca2b478bb2f5b049cedd (patch)
tree11efc879ab3ec235a74f7425e7c2560faad6ff0e /bgpd/bgp_vty.c
parent5e420114e170063729ef8304bc266b16e784d061 (diff)
parent081f6520ff37b3fdd1cdaa8f58c53d0696d8057a (diff)
Merge pull request #15533 from opensourcerouting/fix/add_paths_limit_capability_test
bgpd: Add tests for Paths-Limit capability
Diffstat (limited to 'bgpd/bgp_vty.c')
-rw-r--r--bgpd/bgp_vty.c100
1 files changed, 45 insertions, 55 deletions
diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c
index b1f6e2d828..cd0d6def7d 100644
--- a/bgpd/bgp_vty.c
+++ b/bgpd/bgp_vty.c
@@ -9253,7 +9253,7 @@ DEFPY (no_neighbor_addpath_paths_limit,
peer->addpath_paths_limit[afi][safi].send = 0;
bgp_capability_send(peer, afi, safi, CAPABILITY_CODE_PATHS_LIMIT,
- CAPABILITY_ACTION_UNSET);
+ CAPABILITY_ACTION_SET);
return ret;
}
@@ -14111,33 +14111,28 @@ static void bgp_show_peer(struct vty *vty, struct peer *p, bool use_json,
CHECK_FLAG(
p->af_cap[afi][safi],
PEER_CAP_ADDPATH_AF_TX_RCV)) {
- if (CHECK_FLAG(
- p->af_cap[afi]
- [safi],
- PEER_CAP_ADDPATH_AF_TX_ADV) &&
- CHECK_FLAG(
- p->af_cap[afi]
- [safi],
- PEER_CAP_ADDPATH_AF_TX_RCV))
- json_object_boolean_true_add(
- json_sub,
- "txAdvertisedAndReceived");
- else if (
- CHECK_FLAG(
- p->af_cap[afi]
- [safi],
- PEER_CAP_ADDPATH_AF_TX_ADV))
- json_object_boolean_true_add(
- json_sub,
- "txAdvertised");
- else if (
- CHECK_FLAG(
- p->af_cap[afi]
- [safi],
- PEER_CAP_ADDPATH_AF_TX_RCV))
- json_object_boolean_true_add(
- json_sub,
- "txReceived");
+ json_object_boolean_add(
+ json_sub,
+ "txAdvertisedAndReceived",
+ CHECK_FLAG(p->af_cap[afi]
+ [safi],
+ PEER_CAP_ADDPATH_AF_TX_ADV) &&
+ CHECK_FLAG(
+ p->af_cap[afi]
+ [safi],
+ PEER_CAP_ADDPATH_AF_TX_RCV));
+
+ json_object_boolean_add(
+ json_sub, "txAdvertised",
+ CHECK_FLAG(p->af_cap[afi]
+ [safi],
+ PEER_CAP_ADDPATH_AF_TX_ADV));
+
+ json_object_boolean_add(
+ json_sub, "txReceived",
+ CHECK_FLAG(p->af_cap[afi]
+ [safi],
+ PEER_CAP_ADDPATH_AF_TX_RCV));
}
if (CHECK_FLAG(
@@ -14146,33 +14141,28 @@ static void bgp_show_peer(struct vty *vty, struct peer *p, bool use_json,
CHECK_FLAG(
p->af_cap[afi][safi],
PEER_CAP_ADDPATH_AF_RX_RCV)) {
- if (CHECK_FLAG(
- p->af_cap[afi]
- [safi],
- PEER_CAP_ADDPATH_AF_RX_ADV) &&
- CHECK_FLAG(
- p->af_cap[afi]
- [safi],
- PEER_CAP_ADDPATH_AF_RX_RCV))
- json_object_boolean_true_add(
- json_sub,
- "rxAdvertisedAndReceived");
- else if (
- CHECK_FLAG(
- p->af_cap[afi]
- [safi],
- PEER_CAP_ADDPATH_AF_RX_ADV))
- json_object_boolean_true_add(
- json_sub,
- "rxAdvertised");
- else if (
- CHECK_FLAG(
- p->af_cap[afi]
- [safi],
- PEER_CAP_ADDPATH_AF_RX_RCV))
- json_object_boolean_true_add(
- json_sub,
- "rxReceived");
+ json_object_boolean_add(
+ json_sub,
+ "rxAdvertisedAndReceived",
+ CHECK_FLAG(p->af_cap[afi]
+ [safi],
+ PEER_CAP_ADDPATH_AF_RX_ADV) &&
+ CHECK_FLAG(
+ p->af_cap[afi]
+ [safi],
+ PEER_CAP_ADDPATH_AF_RX_RCV));
+
+ json_object_boolean_add(
+ json_sub, "rxAdvertised",
+ CHECK_FLAG(p->af_cap[afi]
+ [safi],
+ PEER_CAP_ADDPATH_AF_RX_ADV));
+
+ json_object_boolean_add(
+ json_sub, "rxReceived",
+ CHECK_FLAG(p->af_cap[afi]
+ [safi],
+ PEER_CAP_ADDPATH_AF_RX_RCV));
}
if (CHECK_FLAG(