mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-11 22:02:23 +00:00
zebra: add zebra container to rib model
Add zebra container in rib tree. When displaying RIB under vrf, it displays zebra module name. Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
This commit is contained in:
parent
9d86e091bb
commit
56a88b9e1c
@ -654,6 +654,7 @@ module frr-zebra {
|
||||
description
|
||||
"The route's prefix.";
|
||||
}
|
||||
|
||||
list route-entry {
|
||||
key "protocol";
|
||||
leaf protocol {
|
||||
@ -2069,10 +2070,12 @@ module frr-zebra {
|
||||
augment "/frr-vrf:lib/frr-vrf:vrf" {
|
||||
description
|
||||
"Extends VRF model with Zebra-related parameters.";
|
||||
uses ribs;
|
||||
container zebra {
|
||||
uses ribs;
|
||||
}
|
||||
}
|
||||
|
||||
augment "/frr-vrf:lib/frr-vrf:vrf/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop" {
|
||||
augment "/frr-vrf:lib/frr-vrf:vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop" {
|
||||
uses frr-nh:frr-nexthop-operational;
|
||||
}
|
||||
|
||||
|
168
zebra/zebra_nb.c
168
zebra/zebra_nb.c
@ -420,221 +420,221 @@ const struct frr_yang_module_info frr_zebra_info = {
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib",
|
||||
.cbs = {
|
||||
.create = lib_vrf_ribs_rib_create,
|
||||
.destroy = lib_vrf_ribs_rib_destroy,
|
||||
.get_next = lib_vrf_ribs_rib_get_next,
|
||||
.get_keys = lib_vrf_ribs_rib_get_keys,
|
||||
.lookup_entry = lib_vrf_ribs_rib_lookup_entry,
|
||||
.create = lib_vrf_zebra_ribs_rib_create,
|
||||
.destroy = lib_vrf_zebra_ribs_rib_destroy,
|
||||
.get_next = lib_vrf_zebra_ribs_rib_get_next,
|
||||
.get_keys = lib_vrf_zebra_ribs_rib_get_keys,
|
||||
.lookup_entry = lib_vrf_zebra_ribs_rib_lookup_entry,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route",
|
||||
.cbs = {
|
||||
.get_next = lib_vrf_ribs_rib_route_get_next,
|
||||
.get_keys = lib_vrf_ribs_rib_route_get_keys,
|
||||
.lookup_entry = lib_vrf_ribs_rib_route_lookup_entry,
|
||||
.get_next = lib_vrf_zebra_ribs_rib_route_get_next,
|
||||
.get_keys = lib_vrf_zebra_ribs_rib_route_get_keys,
|
||||
.lookup_entry = lib_vrf_zebra_ribs_rib_route_lookup_entry,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/prefix",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/prefix",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_prefix_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_prefix_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry",
|
||||
.cbs = {
|
||||
.get_next = lib_vrf_ribs_rib_route_route_entry_get_next,
|
||||
.get_keys = lib_vrf_ribs_rib_route_route_entry_get_keys,
|
||||
.lookup_entry = lib_vrf_ribs_rib_route_route_entry_lookup_entry,
|
||||
.get_next = lib_vrf_zebra_ribs_rib_route_route_entry_get_next,
|
||||
.get_keys = lib_vrf_zebra_ribs_rib_route_route_entry_get_keys,
|
||||
.lookup_entry = lib_vrf_zebra_ribs_rib_route_route_entry_lookup_entry,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/protocol",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/protocol",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_protocol_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_protocol_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/instance",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/instance",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_instance_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_instance_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/distance",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/distance",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_distance_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_distance_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/metric",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/metric",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_metric_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_metric_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/tag",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/tag",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_tag_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_tag_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/selected",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/selected",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_selected_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_selected_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/installed",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/installed",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_installed_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_installed_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/failed",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/failed",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_failed_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_failed_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/queued",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/queued",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_queued_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_queued_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/internal-flags",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/internal-flags",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_internal_flags_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_internal_flags_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/internal-status",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/internal-status",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_internal_status_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_internal_status_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/uptime",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/uptime",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_uptime_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_uptime_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group",
|
||||
.cbs = {
|
||||
.get_next = lib_vrf_ribs_rib_route_route_entry_nexthop_group_get_next,
|
||||
.get_keys = lib_vrf_ribs_rib_route_route_entry_nexthop_group_get_keys,
|
||||
.lookup_entry = lib_vrf_ribs_rib_route_route_entry_nexthop_group_lookup_entry,
|
||||
.get_next = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_get_next,
|
||||
.get_keys = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_get_keys,
|
||||
.lookup_entry = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_lookup_entry,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/name",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/name",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_name_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_name_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop",
|
||||
.cbs = {
|
||||
.get_next = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_next,
|
||||
.get_keys = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_keys,
|
||||
.lookup_entry = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_lookup_entry,
|
||||
.get_next = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_next,
|
||||
.get_keys = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_keys,
|
||||
.lookup_entry = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_lookup_entry,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/nh-type",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/nh-type",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_nh_type_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_nh_type_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/vrf",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/vrf",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_vrf_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_vrf_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/gateway",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/gateway",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_gateway_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_gateway_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/interface",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/interface",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_interface_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_interface_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/bh-type",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/bh-type",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_bh_type_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_bh_type_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/onlink",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/onlink",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_onlink_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_onlink_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry",
|
||||
.cbs = {
|
||||
.get_next = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_next,
|
||||
.get_keys = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_keys,
|
||||
.lookup_entry = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_lookup_entry,
|
||||
.get_next = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_next,
|
||||
.get_keys = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_keys,
|
||||
.lookup_entry = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_lookup_entry,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/id",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/id",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_id_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_id_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/label",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/label",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_label_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_label_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/ttl",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/ttl",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_ttl_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_ttl_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/traffic-class",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/traffic-class",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_traffic_class_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_traffic_class_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/duplicate",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/duplicate",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_duplicate_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_duplicate_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/recursive",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/recursive",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_recursive_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_recursive_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/active",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/active",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_active_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_active_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/fib",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/fib",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_fib_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_fib_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -680,9 +680,9 @@ const struct frr_yang_module_info frr_zebra_info = {
|
||||
}
|
||||
},
|
||||
{
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/weight",
|
||||
.xpath = "/frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/weight",
|
||||
.cbs = {
|
||||
.get_elem = lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_weight_get_elem,
|
||||
.get_elem = lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_weight_get_elem,
|
||||
}
|
||||
},
|
||||
{
|
||||
|
247
zebra/zebra_nb.h
247
zebra/zebra_nb.h
@ -155,165 +155,172 @@ struct yang_data *lib_interface_zebra_state_remote_vtep_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_interface_zebra_state_mcast_group_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
int lib_vrf_ribs_rib_create(struct nb_cb_create_args *args);
|
||||
int lib_vrf_ribs_rib_destroy(struct nb_cb_destroy_args *args);
|
||||
const void *lib_vrf_ribs_rib_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_get_keys(struct nb_cb_get_keys_args *args);
|
||||
const void *lib_vrf_ribs_rib_lookup_entry(struct nb_cb_lookup_entry_args *args);
|
||||
const void *lib_vrf_ribs_rib_route_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_route_get_keys(struct nb_cb_get_keys_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_create(struct nb_cb_create_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_destroy(struct nb_cb_destroy_args *args);
|
||||
const void *lib_vrf_zebra_ribs_rib_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_get_keys(struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_lookup_entry(struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_prefix_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_protocol_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_protocol_v6_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_vrf_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_distance_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_metric_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_tag_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_selected_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_installed_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_failed_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_queued_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_internal_flags_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_internal_status_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_uptime_get_elem(struct nb_cb_get_elem_args *args);
|
||||
lib_vrf_zebra_ribs_rib_lookup_entry(struct nb_cb_lookup_entry_args *args);
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_nexthop_group_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_route_nexthop_group_get_keys(
|
||||
struct nb_cb_get_keys_args *args);
|
||||
const void *lib_vrf_ribs_rib_route_nexthop_group_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_nexthop_group_name_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_route_get_keys(struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_lookup_entry(struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_prefix_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_protocol_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
const void *lib_vrf_ribs_rib_route_nexthop_group_frr_nexthops_nexthop_get_next(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_protocol_v6_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_vrf_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_distance_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_metric_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_tag_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_selected_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_installed_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_failed_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_queued_get_elem(struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_internal_flags_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_internal_status_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_uptime_get_elem(struct nb_cb_get_elem_args *args);
|
||||
const void *lib_vrf_zebra_ribs_rib_route_nexthop_group_get_next(
|
||||
struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_route_nexthop_group_frr_nexthops_nexthop_get_keys(
|
||||
int lib_vrf_zebra_ribs_rib_route_nexthop_group_get_keys(
|
||||
struct nb_cb_get_keys_args *args);
|
||||
int lib_vrf_ribs_rib_create(struct nb_cb_create_args *args);
|
||||
int lib_vrf_ribs_rib_destroy(struct nb_cb_destroy_args *args);
|
||||
const void *lib_vrf_ribs_rib_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_get_keys(struct nb_cb_get_keys_args *args);
|
||||
const void *lib_vrf_ribs_rib_lookup_entry(struct nb_cb_lookup_entry_args *args);
|
||||
const void *lib_vrf_ribs_rib_route_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_route_get_keys(struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_lookup_entry(struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_prefix_get_elem(struct nb_cb_get_elem_args *args);
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_route_route_entry_get_keys(
|
||||
struct nb_cb_get_keys_args *args);
|
||||
const void *lib_vrf_ribs_rib_route_route_entry_lookup_entry(
|
||||
const void *lib_vrf_zebra_ribs_rib_route_nexthop_group_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_protocol_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_nexthop_group_name_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_instance_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_distance_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_metric_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_tag_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_selected_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_installed_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_failed_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_queued_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_internal_flags_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_internal_status_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_uptime_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
const void *lib_vrf_ribs_rib_route_route_entry_nexthop_group_get_next(
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_nexthop_group_frr_nexthops_nexthop_get_next(
|
||||
struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_route_route_entry_nexthop_group_get_keys(
|
||||
int lib_vrf_zebra_ribs_rib_route_nexthop_group_frr_nexthops_nexthop_get_keys(
|
||||
struct nb_cb_get_keys_args *args);
|
||||
const void *lib_vrf_ribs_rib_route_route_entry_nexthop_group_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_name_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_create(struct nb_cb_create_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_destroy(struct nb_cb_destroy_args *args);
|
||||
const void *lib_vrf_zebra_ribs_rib_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_get_keys(struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_next(
|
||||
lib_vrf_zebra_ribs_rib_lookup_entry(struct nb_cb_lookup_entry_args *args);
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_get_next(struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_route_get_keys(struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_lookup_entry(struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_prefix_get_elem(struct nb_cb_get_elem_args *args);
|
||||
const void *lib_vrf_zebra_ribs_rib_route_route_entry_get_next(
|
||||
struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_keys(
|
||||
int lib_vrf_zebra_ribs_rib_route_route_entry_get_keys(
|
||||
struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_lookup_entry(
|
||||
const void *lib_vrf_zebra_ribs_rib_route_route_entry_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_nh_type_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_protocol_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_instance_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_distance_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_metric_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_tag_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_selected_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_installed_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_failed_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_queued_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_vrf_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_internal_flags_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_gateway_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_internal_status_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_interface_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_uptime_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_bh_type_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_onlink_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_next(
|
||||
const void *lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_get_next(
|
||||
struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_keys(
|
||||
int lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_get_keys(
|
||||
struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_lookup_entry(
|
||||
const void *lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_id_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_name_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_next(
|
||||
struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_keys(
|
||||
struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_nh_type_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_label_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_vrf_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_ttl_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_gateway_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_traffic_class_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_interface_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_duplicate_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_bh_type_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_recursive_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_onlink_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_next(
|
||||
struct nb_cb_get_next_args *args);
|
||||
int lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_keys(
|
||||
struct nb_cb_get_keys_args *args);
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_id_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_active_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_label_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_fib_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_ttl_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_weight_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_traffic_class_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_duplicate_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_recursive_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_active_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_fib_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_weight_get_elem(
|
||||
struct nb_cb_get_elem_args *args);
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
@ -1217,9 +1217,9 @@ int lib_interface_zebra_bandwidth_destroy(struct nb_cb_destroy_args *args)
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib
|
||||
*/
|
||||
int lib_vrf_ribs_rib_create(struct nb_cb_create_args *args)
|
||||
int lib_vrf_zebra_ribs_rib_create(struct nb_cb_create_args *args)
|
||||
{
|
||||
struct vrf *vrf;
|
||||
afi_t afi = AFI_IP;
|
||||
@ -1261,7 +1261,7 @@ int lib_vrf_ribs_rib_create(struct nb_cb_create_args *args)
|
||||
return NB_OK;
|
||||
}
|
||||
|
||||
int lib_vrf_ribs_rib_destroy(struct nb_cb_destroy_args *args)
|
||||
int lib_vrf_zebra_ribs_rib_destroy(struct nb_cb_destroy_args *args)
|
||||
{
|
||||
if (args->event != NB_EV_APPLY)
|
||||
return NB_OK;
|
||||
|
@ -148,11 +148,11 @@ lib_interface_zebra_state_mcast_group_get_elem(struct nb_cb_get_elem_args *args)
|
||||
return yang_data_new_ipv4(args->xpath, &vxlan_info->mcast_grp);
|
||||
}
|
||||
|
||||
const void *lib_vrf_ribs_rib_get_next(struct nb_cb_get_next_args *args)
|
||||
const void *lib_vrf_zebra_ribs_rib_get_next(struct nb_cb_get_next_args *args)
|
||||
{
|
||||
struct vrf *vrf = (struct vrf *)parent_list_entry;
|
||||
struct vrf *vrf = (struct vrf *)args->parent_list_entry;
|
||||
struct zebra_router_table *zrt =
|
||||
(struct zebra_router_table *)list_entry;
|
||||
(struct zebra_router_table *)args->list_entry;
|
||||
|
||||
struct zebra_vrf *zvrf;
|
||||
afi_t afi;
|
||||
@ -160,7 +160,7 @@ const void *lib_vrf_ribs_rib_get_next(struct nb_cb_get_next_args *args)
|
||||
|
||||
zvrf = zebra_vrf_lookup_by_id(vrf->vrf_id);
|
||||
|
||||
if (list_entry == NULL) {
|
||||
if (args->list_entry == NULL) {
|
||||
afi = AFI_IP;
|
||||
safi = SAFI_UNICAST;
|
||||
|
||||
@ -177,23 +177,25 @@ const void *lib_vrf_ribs_rib_get_next(struct nb_cb_get_next_args *args)
|
||||
return zrt;
|
||||
}
|
||||
|
||||
int lib_vrf_ribs_rib_get_keys(struct nb_cb_get_keys_args *args)
|
||||
int lib_vrf_zebra_ribs_rib_get_keys(struct nb_cb_get_keys_args *args)
|
||||
{
|
||||
const struct zebra_router_table *zrt = list_entry;
|
||||
const struct zebra_router_table *zrt = args->list_entry;
|
||||
|
||||
keys->num = 2;
|
||||
args->keys->num = 2;
|
||||
|
||||
snprintf(keys->key[0], sizeof(keys->key[0]), "%s",
|
||||
snprintf(args->keys->key[0], sizeof(args->keys->key[0]), "%s",
|
||||
"frr-zebra:ipv4-unicast");
|
||||
/* TODO: implement key[0], afi-safi identityref */
|
||||
snprintf(keys->key[1], sizeof(keys->key[1]), "%" PRIu32, zrt->tableid);
|
||||
snprintf(args->keys->key[1], sizeof(args->keys->key[1]), "%" PRIu32,
|
||||
zrt->tableid);
|
||||
|
||||
return NB_OK;
|
||||
}
|
||||
|
||||
const void *lib_vrf_ribs_rib_lookup_entry(struct nb_cb_lookup_entry_args *args)
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_lookup_entry(struct nb_cb_lookup_entry_args *args)
|
||||
{
|
||||
struct vrf *vrf = (struct vrf *)parent_list_entry;
|
||||
struct vrf *vrf = (struct vrf *)args->parent_list_entry;
|
||||
struct zebra_vrf *zvrf;
|
||||
afi_t afi = AFI_IP;
|
||||
safi_t safi = SAFI_UNICAST;
|
||||
@ -204,14 +206,15 @@ const void *lib_vrf_ribs_rib_lookup_entry(struct nb_cb_lookup_entry_args *args)
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route
|
||||
*/
|
||||
const void *lib_vrf_ribs_rib_route_get_next(struct nb_cb_get_next_args *args)
|
||||
const void *
|
||||
lib_vrf_zebra_ribs_rib_route_get_next(struct nb_cb_get_next_args *args)
|
||||
{
|
||||
const struct zebra_router_table *zrt = parent_list_entry;
|
||||
const struct route_node *rn = list_entry;
|
||||
const struct zebra_router_table *zrt = args->parent_list_entry;
|
||||
const struct route_node *rn = args->list_entry;
|
||||
|
||||
if (list_entry == NULL)
|
||||
if (args->list_entry == NULL)
|
||||
rn = route_top(zrt->table);
|
||||
else
|
||||
rn = srcdest_route_next((struct route_node *)rn);
|
||||
@ -219,28 +222,24 @@ const void *lib_vrf_ribs_rib_route_get_next(struct nb_cb_get_next_args *args)
|
||||
return rn;
|
||||
}
|
||||
|
||||
int lib_vrf_ribs_rib_route_get_keys(struct nb_cb_get_keys_args *args)
|
||||
int lib_vrf_zebra_ribs_rib_route_get_keys(struct nb_cb_get_keys_args *args)
|
||||
{
|
||||
const struct route_node *rn = list_entry;
|
||||
char dst_buf[PREFIX_STRLEN];
|
||||
const struct prefix *dst_p;
|
||||
const struct route_node *rn = args->list_entry;
|
||||
|
||||
srcdest_rnode_prefixes(rn, &dst_p, NULL);
|
||||
keys->num = 1;
|
||||
strlcpy(keys->key[0], prefix2str(dst_p, dst_buf, sizeof(dst_p)),
|
||||
sizeof(keys->key[0]));
|
||||
args->keys->num = 1;
|
||||
prefix2str(&rn->p, args->keys->key[0], sizeof(args->keys->key[0]));
|
||||
|
||||
return NB_OK;
|
||||
}
|
||||
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_lookup_entry(struct nb_cb_lookup_entry_args *args)
|
||||
lib_vrf_zebra_ribs_rib_route_lookup_entry(struct nb_cb_lookup_entry_args *args)
|
||||
{
|
||||
const struct zebra_router_table *zrt = parent_list_entry;
|
||||
const struct zebra_router_table *zrt = args->parent_list_entry;
|
||||
struct prefix p;
|
||||
struct route_node *rn;
|
||||
|
||||
yang_str2prefix(keys->key[0], &p);
|
||||
yang_str2prefix(args->keys->key[0], &p);
|
||||
|
||||
rn = route_node_lookup(zrt->table, &p);
|
||||
|
||||
@ -253,35 +252,35 @@ lib_vrf_ribs_rib_route_lookup_entry(struct nb_cb_lookup_entry_args *args)
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/prefix
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/prefix
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_prefix_get_elem(struct nb_cb_get_elem_args *args)
|
||||
lib_vrf_zebra_ribs_rib_route_prefix_get_elem(struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
const struct route_node *rn = list_entry;
|
||||
const struct route_node *rn = args->list_entry;
|
||||
|
||||
return yang_data_new_prefix(xpath, &rn->p);
|
||||
return yang_data_new_prefix(args->xpath, &rn->p);
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry
|
||||
*/
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_get_next(struct nb_cb_get_next_args *args)
|
||||
const void *lib_vrf_zebra_ribs_rib_route_route_entry_get_next(
|
||||
struct nb_cb_get_next_args *args)
|
||||
{
|
||||
struct route_entry *re = NULL;
|
||||
|
||||
return re;
|
||||
}
|
||||
|
||||
int lib_vrf_ribs_rib_route_route_entry_get_keys(
|
||||
int lib_vrf_zebra_ribs_rib_route_route_entry_get_keys(
|
||||
struct nb_cb_get_keys_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
return NB_OK;
|
||||
}
|
||||
|
||||
const void *lib_vrf_ribs_rib_route_route_entry_lookup_entry(
|
||||
const void *lib_vrf_zebra_ribs_rib_route_route_entry_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -289,9 +288,9 @@ const void *lib_vrf_ribs_rib_route_route_entry_lookup_entry(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/protocol
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/protocol
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_protocol_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_protocol_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -299,9 +298,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_protocol_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/instance
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/instance
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_instance_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_instance_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -309,9 +308,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_instance_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/distance
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/distance
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_distance_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_distance_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -319,9 +318,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_distance_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/metric
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/metric
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_metric_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_metric_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -329,9 +328,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_metric_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/tag
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/tag
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_tag_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_tag_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -339,9 +338,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_tag_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/selected
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/selected
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_selected_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_selected_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -349,9 +348,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_selected_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/installed
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/installed
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_installed_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_installed_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -359,9 +358,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_installed_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/failed
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/failed
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_failed_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_failed_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -369,9 +368,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_failed_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/queued
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/queued
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_queued_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_queued_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -379,9 +378,11 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_queued_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/internal-flags
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/internal-flags
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_internal_flags_get_elem(
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_internal_flags_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -389,9 +390,11 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_internal_flags_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/internal-status
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/internal-status
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_internal_status_get_elem(
|
||||
struct yang_data *
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_internal_status_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -399,9 +402,9 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_internal_status_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/uptime
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/uptime
|
||||
*/
|
||||
struct yang_data *lib_vrf_ribs_rib_route_route_entry_uptime_get_elem(
|
||||
struct yang_data *lib_vrf_zebra_ribs_rib_route_route_entry_uptime_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -409,23 +412,24 @@ struct yang_data *lib_vrf_ribs_rib_route_route_entry_uptime_get_elem(
|
||||
}
|
||||
|
||||
/*
|
||||
* XPath: /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group
|
||||
*/
|
||||
const void *lib_vrf_ribs_rib_route_route_entry_nexthop_group_get_next(
|
||||
const void *lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_get_next(
|
||||
struct nb_cb_get_next_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int lib_vrf_ribs_rib_route_route_entry_nexthop_group_get_keys(
|
||||
int lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_get_keys(
|
||||
struct nb_cb_get_keys_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
return NB_OK;
|
||||
}
|
||||
|
||||
const void *lib_vrf_ribs_rib_route_route_entry_nexthop_group_lookup_entry(
|
||||
const void *lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -434,10 +438,10 @@ const void *lib_vrf_ribs_rib_route_route_entry_nexthop_group_lookup_entry(
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/name
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/name
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_name_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_name_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -446,17 +450,17 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_name_get_elem(
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop
|
||||
*/
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_next(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_next(
|
||||
struct nb_cb_get_next_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_keys(
|
||||
int lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_keys(
|
||||
struct nb_cb_get_keys_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -464,7 +468,7 @@ int lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_get_ke
|
||||
}
|
||||
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_lookup_entry(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -473,10 +477,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_lookup_ent
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/nh-type
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/nh-type
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_nh_type_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_nh_type_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -485,10 +489,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_nh_type_ge
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/vrf
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/vrf
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_vrf_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_vrf_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -497,10 +501,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_vrf_get_el
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/gateway
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/gateway
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_gateway_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_gateway_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -509,10 +513,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_gateway_ge
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/interface
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/interface
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_interface_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_interface_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -521,10 +525,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_interface_
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/bh-type
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/bh-type
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_bh_type_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_bh_type_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -533,10 +537,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_bh_type_ge
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/onlink
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/onlink
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_onlink_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_onlink_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -545,17 +549,17 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_onlink_get
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry
|
||||
*/
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_next(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_next(
|
||||
struct nb_cb_get_next_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_keys(
|
||||
int lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_get_keys(
|
||||
struct nb_cb_get_keys_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -563,7 +567,7 @@ int lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_l
|
||||
}
|
||||
|
||||
const void *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_lookup_entry(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_lookup_entry(
|
||||
struct nb_cb_lookup_entry_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -572,10 +576,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/id
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/id
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_id_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_id_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -584,10 +588,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/label
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/label
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_label_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_label_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -596,10 +600,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/ttl
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/ttl
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_ttl_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_ttl_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -608,10 +612,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/traffic-class
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/mpls-label-stack/entry/traffic-class
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_traffic_class_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label_stack_entry_traffic_class_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -620,10 +624,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_mpls_label
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/duplicate
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/duplicate
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_duplicate_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_duplicate_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -632,10 +636,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_duplicate_
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/recursive
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/recursive
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_recursive_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_recursive_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -644,10 +648,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_recursive_
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/active
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/active
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_active_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_active_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -656,10 +660,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_active_get
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/fib
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/fib
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_fib_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_fib_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
@ -668,10 +672,10 @@ lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_fib_get_el
|
||||
|
||||
/*
|
||||
* XPath:
|
||||
* /frr-vrf:lib/vrf/frr-zebra:ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/weight
|
||||
* /frr-vrf:lib/vrf/frr-zebra:zebra/ribs/rib/route/route-entry/nexthop-group/frr-nexthops/nexthop/weight
|
||||
*/
|
||||
struct yang_data *
|
||||
lib_vrf_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_weight_get_elem(
|
||||
lib_vrf_zebra_ribs_rib_route_route_entry_nexthop_group_frr_nexthops_nexthop_weight_get_elem(
|
||||
struct nb_cb_get_elem_args *args)
|
||||
{
|
||||
/* TODO: implement me. */
|
||||
|
Loading…
Reference in New Issue
Block a user