diff --git a/yang/frr-zebra.yang b/yang/frr-zebra.yang index 40d5ddc72b..22fb391e5c 100644 --- a/yang/frr-zebra.yang +++ b/yang/frr-zebra.yang @@ -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; } diff --git a/zebra/zebra_nb.c b/zebra/zebra_nb.c index 1f3468d6dc..aad60aac6a 100644 --- a/zebra/zebra_nb.c +++ b/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, } }, { diff --git a/zebra/zebra_nb.h b/zebra/zebra_nb.h index 09a9edff99..b880dea357 100644 --- a/zebra/zebra_nb.h +++ b/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 diff --git a/zebra/zebra_nb_config.c b/zebra/zebra_nb_config.c index e7780e5338..a6aa72cf48 100644 --- a/zebra/zebra_nb_config.c +++ b/zebra/zebra_nb_config.c @@ -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; diff --git a/zebra/zebra_nb_state.c b/zebra/zebra_nb_state.c index 83252f5929..0abc48eb46 100644 --- a/zebra/zebra_nb_state.c +++ b/zebra/zebra_nb_state.c @@ -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. */