.modify = bgp_global_afi_safis_afi_safi_ipv4_unicast_aggregate_route_origin_modify,
}
},
+ {
+ .xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv4-unicast/aggregate-route/match-med",
+ .cbs = {
+ .modify = bgp_global_afi_safis_afi_safi_ipv4_unicast_aggregate_route_match_med_modify,
+ }
+ },
{
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv4-unicast/admin-distance-route",
.cbs = {
.modify = bgp_global_afi_safis_afi_safi_ipv6_unicast_aggregate_route_origin_modify,
}
},
+ {
+ .xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv6-unicast/aggregate-route/match-med",
+ .cbs = {
+ .modify = bgp_global_afi_safis_afi_safi_ipv6_unicast_aggregate_route_match_med_modify,
+ }
+ },
{
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv6-unicast/admin-distance-route",
.cbs = {
.modify = bgp_global_afi_safis_afi_safi_ipv4_multicast_aggregate_route_origin_modify,
}
},
+ {
+ .xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv4-multicast/aggregate-route/match-med",
+ .cbs = {
+ .modify = bgp_global_afi_safis_afi_safi_ipv4_multicast_aggregate_route_match_med_modify,
+ }
+ },
{
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv4-multicast/admin-distance-route",
.cbs = {
.modify = bgp_global_afi_safis_afi_safi_ipv6_multicast_aggregate_route_origin_modify,
}
},
+ {
+ .xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv6-multicast/aggregate-route/match-med",
+ .cbs = {
+ .modify = bgp_global_afi_safis_afi_safi_ipv6_multicast_aggregate_route_match_med_modify,
+ }
+ },
{
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv6-multicast/admin-distance-route",
.cbs = {
struct nb_cb_destroy_args *args);
int bgp_global_afi_safis_afi_safi_ipv4_unicast_aggregate_route_origin_modify(
struct nb_cb_modify_args *args);
+int bgp_global_afi_safis_afi_safi_ipv4_unicast_aggregate_route_match_med_modify(
+ struct nb_cb_modify_args *args);
int bgp_global_afi_safis_afi_safi_ipv4_unicast_admin_distance_route_create(
struct nb_cb_create_args *args);
int bgp_global_afi_safis_afi_safi_ipv4_unicast_admin_distance_route_destroy(
struct nb_cb_destroy_args *args);
int bgp_global_afi_safis_afi_safi_ipv6_unicast_aggregate_route_origin_modify(
struct nb_cb_modify_args *args);
+int bgp_global_afi_safis_afi_safi_ipv6_unicast_aggregate_route_match_med_modify(
+ struct nb_cb_modify_args *args);
int bgp_global_afi_safis_afi_safi_ipv6_unicast_admin_distance_route_create(
struct nb_cb_create_args *args);
int bgp_global_afi_safis_afi_safi_ipv6_unicast_admin_distance_route_destroy(
struct nb_cb_destroy_args *args);
int bgp_global_afi_safis_afi_safi_ipv4_multicast_aggregate_route_origin_modify(
struct nb_cb_modify_args *args);
+int bgp_global_afi_safis_afi_safi_ipv4_multicast_aggregate_route_match_med_modify(
+ struct nb_cb_modify_args *args);
int bgp_global_afi_safis_afi_safi_ipv4_multicast_admin_distance_route_create(
struct nb_cb_create_args *args);
int bgp_global_afi_safis_afi_safi_ipv4_multicast_admin_distance_route_destroy(
struct nb_cb_destroy_args *args);
int bgp_global_afi_safis_afi_safi_ipv6_multicast_aggregate_route_origin_modify(
struct nb_cb_modify_args *args);
+int bgp_global_afi_safis_afi_safi_ipv6_multicast_aggregate_route_match_med_modify(
+ struct nb_cb_modify_args *args);
int bgp_global_afi_safis_afi_safi_ipv6_multicast_admin_distance_route_create(
struct nb_cb_create_args *args);
int bgp_global_afi_safis_afi_safi_ipv6_multicast_admin_distance_route_destroy(
"./rmap-policy-export");
origin = yang_dnode_get_enum(args->dnode, "./origin");
+ match_med = yang_dnode_get_bool(args->dnode, "./match-med");
bgp_aggregate_set(bgp, &prefix, afi, safi, rmap_name, summary_only,
as_set, origin, match_med, suppress_map, args->errmsg,
return NB_OK;
}
+/*
+ * XPath:
+ * /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv4-unicast/aggregate-route/match-med
+ */
+int bgp_global_afi_safis_afi_safi_ipv4_unicast_aggregate_route_match_med_modify(
+ struct nb_cb_modify_args *args)
+{
+ switch (args->event) {
+ case NB_EV_VALIDATE:
+ case NB_EV_PREPARE:
+ case NB_EV_ABORT:
+ case NB_EV_APPLY:
+ /* TODO: implement me. */
+ break;
+ }
+
+ return NB_OK;
+}
+
void bgp_global_afi_safi_admin_distance_route_apply_finish(
struct nb_cb_apply_finish_args *args)
{
return NB_OK;
}
+/*
+ * XPath:
+ * /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv6-unicast/aggregate-route/match-med
+ */
+int bgp_global_afi_safis_afi_safi_ipv6_unicast_aggregate_route_match_med_modify(
+ struct nb_cb_modify_args *args)
+{
+ switch (args->event) {
+ case NB_EV_VALIDATE:
+ case NB_EV_PREPARE:
+ case NB_EV_ABORT:
+ case NB_EV_APPLY:
+ /* TODO: implement me. */
+ break;
+ }
+
+ return NB_OK;
+}
+
/*
* XPath:
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv6-unicast/admin-distance-route
return NB_OK;
}
+/*
+ * XPath:
+ * /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv4-multicast/aggregate-route/match-med
+ */
+int bgp_global_afi_safis_afi_safi_ipv4_multicast_aggregate_route_match_med_modify(
+ struct nb_cb_modify_args *args)
+{
+ switch (args->event) {
+ case NB_EV_VALIDATE:
+ case NB_EV_PREPARE:
+ case NB_EV_ABORT:
+ case NB_EV_APPLY:
+ /* TODO: implement me. */
+ break;
+ }
+
+ return NB_OK;
+}
+
/*
* XPath:
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv4-multicast/admin-distance-route
return NB_OK;
}
+/*
+ * XPath:
+ * /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv6-multicast/aggregate-route/match-med
+ */
+int bgp_global_afi_safis_afi_safi_ipv6_multicast_aggregate_route_match_med_modify(
+ struct nb_cb_modify_args *args)
+{
+ switch (args->event) {
+ case NB_EV_VALIDATE:
+ case NB_EV_PREPARE:
+ case NB_EV_ABORT:
+ case NB_EV_APPLY:
+ /* TODO: implement me. */
+ break;
+ }
+
+ return NB_OK;
+}
+
/*
* XPath:
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/global/afi-safis/afi-safi/ipv6-multicast/admin-distance-route
nb_cli_enqueue_change(vty, "./summary-only", NB_OP_MODIFY,
"false");
+ if (!no && match_med)
+ nb_cli_enqueue_change(vty, "./match-med", NB_OP_MODIFY, "true");
+ else
+ nb_cli_enqueue_change(vty, "./match-med", NB_OP_MODIFY,
+ "false");
+
if (rmap_name)
nb_cli_enqueue_change(vty, "./rmap-policy-export", NB_OP_MODIFY,
rmap_name);
nb_cli_enqueue_change(vty, "./summary-only", NB_OP_MODIFY,
"false");
+ if (!no && match_med)
+ nb_cli_enqueue_change(vty, "./match-med", NB_OP_MODIFY, "true");
+ else
+ nb_cli_enqueue_change(vty, "./match-med", NB_OP_MODIFY,
+ "false");
+
if (rmap_name)
nb_cli_enqueue_change(vty, "./rmap-policy-export", NB_OP_MODIFY,
rmap_name);
if (origin != BGP_ORIGIN_UNSPECIFIED)
vty_out(vty, " origin %s", bgp_origin2str(origin));
+ if (yang_dnode_get_bool(dnode, "./match-med"))
+ vty_out(vty, " matching-MED-only");
+
vty_out(vty, "\n");
}
description
"BGP origin type.";
}
+ leaf match-med {
+ type boolean;
+ default "false";
+ description
+ "When set to 'true' aggregate-route matches only
+ med.";
+ }
}
grouping admin-distance {