]> git.proxmox.com Git - mirror_frr.git/blame - ripngd/ripng_nb.h
Merge pull request #13649 from donaldsharp/unlock_the_node_or_else
[mirror_frr.git] / ripngd / ripng_nb.h
CommitLineData
acddc0ed 1// SPDX-License-Identifier: GPL-2.0-or-later
ca473936
RW
2/*
3 * Copyright (C) 2018 NetDEF, Inc.
4 * Renato Westphal
ca473936
RW
5 */
6
7#ifndef _FRR_RIPNG_NB_H_
8#define _FRR_RIPNG_NB_H_
9
10extern const struct frr_yang_module_info frr_ripngd_info;
11
12/* Mandatory callbacks. */
60ee8be1
RW
13int ripngd_instance_create(struct nb_cb_create_args *args);
14int ripngd_instance_destroy(struct nb_cb_destroy_args *args);
15const void *ripngd_instance_get_next(struct nb_cb_get_next_args *args);
16int ripngd_instance_get_keys(struct nb_cb_get_keys_args *args);
17const void *ripngd_instance_lookup_entry(struct nb_cb_lookup_entry_args *args);
18int ripngd_instance_allow_ecmp_modify(struct nb_cb_modify_args *args);
ca473936 19int ripngd_instance_default_information_originate_modify(
60ee8be1
RW
20 struct nb_cb_modify_args *args);
21int ripngd_instance_default_metric_modify(struct nb_cb_modify_args *args);
22int ripngd_instance_network_create(struct nb_cb_create_args *args);
23int ripngd_instance_network_destroy(struct nb_cb_destroy_args *args);
24int ripngd_instance_interface_create(struct nb_cb_create_args *args);
25int ripngd_instance_interface_destroy(struct nb_cb_destroy_args *args);
26int ripngd_instance_offset_list_create(struct nb_cb_create_args *args);
27int ripngd_instance_offset_list_destroy(struct nb_cb_destroy_args *args);
28int ripngd_instance_offset_list_access_list_modify(
29 struct nb_cb_modify_args *args);
30int ripngd_instance_offset_list_metric_modify(struct nb_cb_modify_args *args);
31int ripngd_instance_passive_interface_create(struct nb_cb_create_args *args);
32int ripngd_instance_passive_interface_destroy(struct nb_cb_destroy_args *args);
33int ripngd_instance_redistribute_create(struct nb_cb_create_args *args);
34int ripngd_instance_redistribute_destroy(struct nb_cb_destroy_args *args);
35int ripngd_instance_redistribute_route_map_modify(
36 struct nb_cb_modify_args *args);
ca473936 37int ripngd_instance_redistribute_route_map_destroy(
60ee8be1
RW
38 struct nb_cb_destroy_args *args);
39int ripngd_instance_redistribute_metric_modify(struct nb_cb_modify_args *args);
40int ripngd_instance_redistribute_metric_destroy(
41 struct nb_cb_destroy_args *args);
e40c4208
CH
42int ripngd_instance_if_route_maps_if_route_map_create(
43 struct nb_cb_create_args *args);
44int ripngd_instance_if_route_maps_if_route_map_destroy(
45 struct nb_cb_destroy_args *args);
46int ripngd_instance_if_route_maps_if_route_map_in_route_map_modify(
47 struct nb_cb_modify_args *args);
48int ripngd_instance_if_route_maps_if_route_map_in_route_map_destroy(
49 struct nb_cb_destroy_args *args);
50int ripngd_instance_if_route_maps_if_route_map_out_route_map_modify(
51 struct nb_cb_modify_args *args);
52int ripngd_instance_if_route_maps_if_route_map_out_route_map_destroy(
53 struct nb_cb_destroy_args *args);
60ee8be1
RW
54int ripngd_instance_static_route_create(struct nb_cb_create_args *args);
55int ripngd_instance_static_route_destroy(struct nb_cb_destroy_args *args);
56int ripngd_instance_aggregate_address_create(struct nb_cb_create_args *args);
57int ripngd_instance_aggregate_address_destroy(struct nb_cb_destroy_args *args);
58int ripngd_instance_timers_flush_interval_modify(
59 struct nb_cb_modify_args *args);
ca473936 60int ripngd_instance_timers_holddown_interval_modify(
60ee8be1
RW
61 struct nb_cb_modify_args *args);
62int ripngd_instance_timers_update_interval_modify(
63 struct nb_cb_modify_args *args);
64const void *ripngd_instance_state_neighbors_neighbor_get_next(
65 struct nb_cb_get_next_args *args);
ca473936 66int ripngd_instance_state_neighbors_neighbor_get_keys(
60ee8be1 67 struct nb_cb_get_keys_args *args);
ca473936 68const void *ripngd_instance_state_neighbors_neighbor_lookup_entry(
60ee8be1 69 struct nb_cb_lookup_entry_args *args);
ca473936 70struct yang_data *ripngd_instance_state_neighbors_neighbor_address_get_elem(
60ee8be1 71 struct nb_cb_get_elem_args *args);
ca473936 72struct yang_data *ripngd_instance_state_neighbors_neighbor_last_update_get_elem(
60ee8be1 73 struct nb_cb_get_elem_args *args);
ca473936
RW
74struct yang_data *
75ripngd_instance_state_neighbors_neighbor_bad_packets_rcvd_get_elem(
60ee8be1 76 struct nb_cb_get_elem_args *args);
ca473936
RW
77struct yang_data *
78ripngd_instance_state_neighbors_neighbor_bad_routes_rcvd_get_elem(
60ee8be1 79 struct nb_cb_get_elem_args *args);
ca473936 80const void *
60ee8be1
RW
81ripngd_instance_state_routes_route_get_next(struct nb_cb_get_next_args *args);
82int ripngd_instance_state_routes_route_get_keys(
83 struct nb_cb_get_keys_args *args);
ca473936 84const void *ripngd_instance_state_routes_route_lookup_entry(
60ee8be1
RW
85 struct nb_cb_lookup_entry_args *args);
86struct yang_data *ripngd_instance_state_routes_route_prefix_get_elem(
87 struct nb_cb_get_elem_args *args);
88struct yang_data *ripngd_instance_state_routes_route_next_hop_get_elem(
89 struct nb_cb_get_elem_args *args);
90struct yang_data *ripngd_instance_state_routes_route_interface_get_elem(
91 struct nb_cb_get_elem_args *args);
92struct yang_data *ripngd_instance_state_routes_route_metric_get_elem(
93 struct nb_cb_get_elem_args *args);
94int clear_ripng_route_rpc(struct nb_cb_rpc_args *args);
95int lib_interface_ripng_split_horizon_modify(struct nb_cb_modify_args *args);
ca473936
RW
96
97/* Optional 'apply_finish' callbacks. */
60ee8be1
RW
98void ripngd_instance_redistribute_apply_finish(
99 struct nb_cb_apply_finish_args *args);
100void ripngd_instance_timers_apply_finish(struct nb_cb_apply_finish_args *args);
ca473936
RW
101
102/* Optional 'cli_show' callbacks. */
25605051 103void cli_show_router_ripng(struct vty *vty, const struct lyd_node *dnode,
ca473936 104 bool show_defaults);
25605051 105void cli_show_ripng_allow_ecmp(struct vty *vty, const struct lyd_node *dnode,
ca473936
RW
106 bool show_defaults);
107void cli_show_ripng_default_information_originate(struct vty *vty,
25605051 108 const struct lyd_node *dnode,
ca473936 109 bool show_defaults);
25605051
IR
110void cli_show_ripng_default_metric(struct vty *vty,
111 const struct lyd_node *dnode,
ca473936 112 bool show_defaults);
25605051
IR
113void cli_show_ripng_network_prefix(struct vty *vty,
114 const struct lyd_node *dnode,
ca473936 115 bool show_defaults);
25605051
IR
116void cli_show_ripng_network_interface(struct vty *vty,
117 const struct lyd_node *dnode,
ca473936 118 bool show_defaults);
25605051 119void cli_show_ripng_offset_list(struct vty *vty, const struct lyd_node *dnode,
ca473936 120 bool show_defaults);
25605051
IR
121void cli_show_ripng_passive_interface(struct vty *vty,
122 const struct lyd_node *dnode,
ca473936 123 bool show_defaults);
25605051 124void cli_show_ripng_redistribute(struct vty *vty, const struct lyd_node *dnode,
ca473936 125 bool show_defaults);
25605051 126void cli_show_ripng_route(struct vty *vty, const struct lyd_node *dnode,
ca473936 127 bool show_defaults);
25605051
IR
128void cli_show_ripng_aggregate_address(struct vty *vty,
129 const struct lyd_node *dnode,
ca473936 130 bool show_defaults);
25605051 131void cli_show_ripng_timers(struct vty *vty, const struct lyd_node *dnode,
ca473936 132 bool show_defaults);
25605051
IR
133void cli_show_ipv6_ripng_split_horizon(struct vty *vty,
134 const struct lyd_node *dnode,
ca473936
RW
135 bool show_defaults);
136
137#endif /* _FRR_RIPNG_NB_H_ */