mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-06 14:29:47 +00:00
Revert "bgpd: default originate transactional callbacks"
This reverts commit 7c54def292
.
This commit is contained in:
parent
665a65cdc7
commit
7a52bb4efb
108
bgpd/bgp_nb.c
108
bgpd/bgp_nb.c
@ -2576,12 +2576,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_neighbor_afi_safis_afi_safi_ipv4_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -2884,12 +2878,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_neighbor_afi_safis_afi_safi_ipv6_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -3116,12 +3104,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_neighbor_afi_safis_afi_safi_ipv4_multicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-multicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-multicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -3348,12 +3330,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_neighbor_afi_safis_afi_safi_ipv6_multicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-multicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-multicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -3580,12 +3556,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_neighbor_afi_safis_afi_safi_ipv4_labeled_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-labeled-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-labeled-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -3812,12 +3782,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_neighbor_afi_safis_afi_safi_ipv6_labeled_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-labeled-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv6-labeled-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -4532,12 +4496,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_unnumbered_neighbor_afi_safis_afi_safi_ipv4_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_unnumbered_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -4840,12 +4798,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_unnumbered_neighbor_afi_safis_afi_safi_ipv6_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_unnumbered_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -5072,12 +5024,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_unnumbered_neighbor_afi_safis_afi_safi_ipv4_multicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-multicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_unnumbered_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-multicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -5303,12 +5249,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_unnumbered_neighbor_afi_safis_afi_safi_ipv6_multicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-multicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_unnumbered_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-multicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -5534,12 +5474,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_unnumbered_neighbor_afi_safis_afi_safi_ipv4_labeled_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-labeled-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_unnumbered_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-labeled-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -5766,12 +5700,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_neighbors_unnumbered_neighbor_afi_safis_afi_safi_ipv6_labeled_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-labeled-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_unnumbered_neighbor_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv6-labeled-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -6486,12 +6414,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_peer_groups_peer_group_afi_safis_afi_safi_ipv4_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_peer_group_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -6794,12 +6716,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_peer_groups_peer_group_afi_safis_afi_safi_ipv6_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_peer_group_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -7026,12 +6942,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_peer_groups_peer_group_afi_safis_afi_safi_ipv4_multicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-multicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_peer_group_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-multicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -7264,12 +7174,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_peer_groups_peer_group_afi_safis_afi_safi_ipv6_multicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-multicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_peer_group_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-multicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -7502,12 +7406,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_peer_groups_peer_group_afi_safis_afi_safi_ipv4_labeled_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-labeled-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_peer_group_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-labeled-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
@ -7734,12 +7632,6 @@ const struct frr_yang_module_info frr_bgp_info = {
|
||||
.modify = bgp_peer_groups_peer_group_afi_safis_afi_safi_ipv6_labeled_unicast_as_path_options_replace_peer_as_modify,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-labeled-unicast/default-originate",
|
||||
.cbs = {
|
||||
.apply_finish = bgp_peer_group_afi_safi_default_originate_apply_finish,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv6-labeled-unicast/default-originate/originate",
|
||||
.cbs = {
|
||||
|
@ -3759,12 +3759,6 @@ void bgp_unnumbered_neighbor_afi_safi_prefix_limit_apply_finish(
|
||||
struct nb_cb_apply_finish_args *args);
|
||||
void bgp_peer_group_afi_safi_prefix_limit_apply_finish(
|
||||
struct nb_cb_apply_finish_args *args);
|
||||
void bgp_neighbor_afi_safi_default_originate_apply_finish(
|
||||
struct nb_cb_apply_finish_args *args);
|
||||
void bgp_unnumbered_neighbor_afi_safi_default_originate_apply_finish(
|
||||
struct nb_cb_apply_finish_args *args);
|
||||
void bgp_peer_group_afi_safi_default_originate_apply_finish(
|
||||
struct nb_cb_apply_finish_args *args);
|
||||
|
||||
/* xpath macros */
|
||||
/* route-list */
|
||||
|
@ -13986,70 +13986,6 @@ int bgp_neighbors_neighbor_afi_safis_afi_safi_ipv4_unicast_as_path_options_repla
|
||||
return NB_OK;
|
||||
}
|
||||
|
||||
static int
|
||||
bgp_peer_afi_safi_default_originate_apply(struct nb_cb_apply_finish_args *args,
|
||||
struct peer *peer, afi_t afi,
|
||||
safi_t safi)
|
||||
{
|
||||
bool originate = false;
|
||||
int ret = 0;
|
||||
struct route_map *route_map = NULL;
|
||||
const char *rmap = NULL;
|
||||
|
||||
originate = yang_dnode_get_bool(args->dnode, "./originate");
|
||||
|
||||
if (yang_dnode_exists(args->dnode, "./route-map")) {
|
||||
rmap = yang_dnode_get_string(args->dnode, "./route-map");
|
||||
route_map = route_map_lookup_by_name(rmap);
|
||||
if (!route_map) {
|
||||
snprintf(args->errmsg, args->errmsg_len,
|
||||
"The route-map '%s' does not exist.", rmap);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
// zlog_debug("%s: originate %u route-map %s", __func__, originate,
|
||||
// rmap);
|
||||
if (originate)
|
||||
ret = peer_default_originate_set(peer, afi, safi, rmap,
|
||||
route_map);
|
||||
else
|
||||
ret = peer_default_originate_unset(peer, afi, safi);
|
||||
|
||||
return bgp_nb_errmsg_return(args->errmsg, args->errmsg_len, ret);
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate
|
||||
*/
|
||||
void bgp_neighbor_afi_safi_default_originate_apply_finish(
|
||||
struct nb_cb_apply_finish_args *args)
|
||||
{
|
||||
struct bgp *bgp;
|
||||
const char *peer_str;
|
||||
struct peer *peer;
|
||||
const struct lyd_node *nbr_dnode;
|
||||
const struct lyd_node *nbr_af_dnode;
|
||||
const char *af_name;
|
||||
afi_t afi;
|
||||
safi_t safi;
|
||||
|
||||
nbr_af_dnode = yang_dnode_get_parent(args->dnode, "afi-safi");
|
||||
af_name = yang_dnode_get_string(nbr_af_dnode, "./afi-safi-name");
|
||||
yang_afi_safi_identity2value(af_name, &afi, &safi);
|
||||
|
||||
nbr_dnode = yang_dnode_get_parent(nbr_af_dnode, "neighbor");
|
||||
bgp = nb_running_get_entry(nbr_dnode, NULL, true);
|
||||
peer_str = yang_dnode_get_string(nbr_dnode, "./remote-address");
|
||||
peer = bgp_neighbor_peer_lookup(bgp, peer_str, args->errmsg,
|
||||
args->errmsg_len);
|
||||
if (!peer)
|
||||
return;
|
||||
|
||||
bgp_peer_afi_safi_default_originate_apply(args, peer, afi, safi);
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate/originate
|
||||
@ -22395,37 +22331,6 @@ int bgp_neighbors_unnumbered_neighbor_afi_safis_afi_safi_ipv4_unicast_as_path_op
|
||||
return NB_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate
|
||||
*/
|
||||
void bgp_unnumbered_neighbor_afi_safi_default_originate_apply_finish(
|
||||
struct nb_cb_apply_finish_args *args)
|
||||
{
|
||||
struct bgp *bgp;
|
||||
const char *peer_str;
|
||||
struct peer *peer;
|
||||
const struct lyd_node *nbr_dnode;
|
||||
const struct lyd_node *nbr_af_dnode;
|
||||
const char *af_name;
|
||||
afi_t afi;
|
||||
safi_t safi;
|
||||
|
||||
nbr_af_dnode = yang_dnode_get_parent(args->dnode, "afi-safi");
|
||||
af_name = yang_dnode_get_string(nbr_af_dnode, "./afi-safi-name");
|
||||
yang_afi_safi_identity2value(af_name, &afi, &safi);
|
||||
|
||||
nbr_dnode = yang_dnode_get_parent(nbr_af_dnode, "unnumbered-neighbor");
|
||||
bgp = nb_running_get_entry(nbr_dnode, NULL, true);
|
||||
peer_str = yang_dnode_get_string(nbr_dnode, "./interface");
|
||||
peer = bgp_unnumbered_neighbor_peer_lookup(bgp, peer_str, args->errmsg,
|
||||
args->errmsg_len);
|
||||
if (!peer)
|
||||
return;
|
||||
|
||||
bgp_peer_afi_safi_default_originate_apply(args, peer, afi, safi);
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate/originate
|
||||
@ -30717,36 +30622,6 @@ int bgp_peer_groups_peer_group_afi_safis_afi_safi_ipv4_unicast_as_path_options_r
|
||||
return NB_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/neighbors/unnumbered-neighbor/afi-safis/afi-safi/ipv4-unicast/default-originate
|
||||
*/
|
||||
void bgp_peer_group_afi_safi_default_originate_apply_finish(
|
||||
struct nb_cb_apply_finish_args *args)
|
||||
{
|
||||
struct bgp *bgp;
|
||||
const char *peer_str;
|
||||
struct peer *peer;
|
||||
const struct lyd_node *nbr_dnode;
|
||||
const struct lyd_node *nbr_af_dnode;
|
||||
const char *af_name;
|
||||
afi_t afi;
|
||||
safi_t safi;
|
||||
|
||||
nbr_af_dnode = yang_dnode_get_parent(args->dnode, "afi-safi");
|
||||
af_name = yang_dnode_get_string(nbr_af_dnode, "./afi-safi-name");
|
||||
yang_afi_safi_identity2value(af_name, &afi, &safi);
|
||||
|
||||
nbr_dnode = yang_dnode_get_parent(nbr_af_dnode, "peer-group");
|
||||
bgp = nb_running_get_entry(nbr_dnode, NULL, true);
|
||||
peer_str = yang_dnode_get_string(nbr_dnode, "./peer-group-name");
|
||||
peer = bgp_peer_group_peer_lookup(bgp, peer_str);
|
||||
if (!peer)
|
||||
return;
|
||||
|
||||
bgp_peer_afi_safi_default_originate_apply(args, peer, afi, safi);
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-routing:routing/control-plane-protocols/control-plane-protocol/frr-bgp:bgp/peer-groups/peer-group/afi-safis/afi-safi/ipv4-unicast/default-originate/originate
|
||||
|
Loading…
Reference in New Issue
Block a user