mirror_frr/zebra
Renato Westphal 60ee8be107 *: change the signature of the northbound callbacks to be more flexible
Having a fixed set of parameters for each northbound callback isn't a
good idea since it makes it difficult to add new parameters whenever
that becomes necessary, as several hundreds or thousands of existing
callbacks need to be updated accordingly.

To remediate this issue, this commit changes the signature of all
northbound callbacks to have a single parameter: a pointer to a
'nb_cb_x_args' structure (where x is different for each type
of callback). These structures encapsulate all real parameters
(both input and output) the callbacks need to have access to. And
adding a new parameter to a given callback is as simple as adding
a new field to the corresponding 'nb_cb_x_args' structure, without
needing to update any instance of that callback in any daemon.

This commit includes a .cocci semantic patch that can be used to
update old code to the new format automatically.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2020-04-23 10:14:32 -03:00
..
.gitignore *: cleanup .gitignore files 2018-09-08 21:30:42 +02:00
connected.c *: Replace __PRETTY_FUNCTION__/__FUNCTION__ to __func__ 2020-03-05 20:23:23 +02:00
connected.h zebra: Do not use connection dest for bcast 2019-08-18 18:54:46 +02:00
debug.c *: move CLI node names to cmd_node->name 2020-04-16 12:53:59 +02:00
debug.h zebra: add a debug category for nexthops 2019-12-23 08:47:38 -05:00
dplane_fpm_nl.c Merge pull request #6253 from opensourcerouting/fpm-extra 2020-04-21 11:28:05 -04:00
if_ioctl_solaris.c *: frr_elevate_privs -> frr_with_privs 2019-09-03 17:18:35 +02:00
if_ioctl.c Revert "Ospf missing interface handling 2" 2019-06-23 19:46:39 -04:00
if_netlink.c zebra: Prevent awful misconfiguration in vrf's 2020-04-22 10:57:29 -04:00
if_netlink.h vrrpd: protodown macvlan in backup state 2019-05-17 00:27:08 +00:00
if_sysctl.c *: spelchek 2018-10-25 20:10:57 +02:00
interface.c Merge pull request #6231 from dslicenc/v6-ra-hoplimit 2020-04-18 22:48:20 +03:00
interface.h Merge pull request #6231 from dslicenc/v6-ra-hoplimit 2020-04-18 22:48:20 +03:00
ioctl_solaris.c *: frr_elevate_privs -> frr_with_privs 2019-09-03 17:18:35 +02:00
ioctl_solaris.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
ioctl.c *: frr_elevate_privs -> frr_with_privs 2019-09-03 17:18:35 +02:00
ioctl.h zebra: removing old intf address code 2019-04-22 13:49:27 -04:00
ipforward_proc.c zebra: Cleanup set but unused variables 2020-02-27 09:41:58 -05:00
ipforward_solaris.c *: frr_elevate_privs -> frr_with_privs 2019-09-03 17:18:35 +02:00
ipforward_sysctl.c *: Replace sizeof something to sizeof(something) 2020-03-08 21:44:53 +02:00
ipforward.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
irdp_interface.c *: replace all random() calls 2020-04-17 20:57:43 -03:00
irdp_main.c *: replace all random() calls 2020-04-17 20:57:43 -03:00
irdp_packet.c *: Replace sizeof something to sizeof(something) 2020-03-08 21:44:53 +02:00
irdp.h *: strip trailing whitespace 2019-09-30 16:44:43 +00:00
kernel_netlink.c zebra: Modify netlink_request to statisfy coverity 2020-04-15 09:01:56 -04:00
kernel_netlink.h zebra: Modify netlink_request to statisfy coverity 2020-04-15 09:01:56 -04:00
kernel_socket.c *: remove line breaks from log messages 2020-03-24 19:43:18 +01:00
kernel_socket.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
label_manager.c zebra,ldpd: use zapi client session id in LM apis 2020-04-16 12:07:54 -04:00
label_manager.h zebra,ldpd: use zapi client session id in LM apis 2020-04-16 12:07:54 -04:00
main.c zebra: nb callbacks support 2020-04-16 08:13:12 -07:00
Makefile build: convert zebra/ to non-recursive build 2017-07-31 23:03:30 +02:00
redistribute.c Zebra: Default route distribute handling. 2020-04-07 10:12:14 -07:00
redistribute.h zebra: revise redistribution delete to improve update case 2019-09-12 08:51:05 -04:00
rib.h zebra: add per-nexthop backup index 2020-03-27 11:50:03 -04:00
router-id.c *: Replace s_addr 0 => INADDR_ANY 2020-02-06 09:00:12 +02:00
router-id.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
rt_netlink.c zebra: Expose vrf lookup by table id out of rt_netlink.c 2020-04-22 10:56:06 -04:00
rt_netlink.h zebra: Expose vrf lookup by table id out of rt_netlink.c 2020-04-22 10:56:06 -04:00
rt_socket.c zebra: BSD null routes were not being installed 2019-11-21 09:37:36 -05:00
rt.h zebra: Add base functionality for nexthop processing via the dataplane 2019-10-25 11:13:36 -04:00
rtadv.c zebra: add ability to set hoplimit for IPv6 RAs 2020-04-15 17:56:57 +00:00
rtadv.h zebra: Don't kill the global rtadv socket when a vrf is deleted 2020-04-02 11:38:26 -04:00
rtread_getmsg.c *: Replace sizeof something to sizeof(something) 2020-03-08 21:44:53 +02:00
rtread_netlink.c zebra: evpn remote delete fetch local entry 2018-12-31 14:40:31 -08:00
rtread_sysctl.c zebra: evpn remote delete fetch local entry 2018-12-31 14:40:31 -08:00
rule_netlink.c zebra: Modify netlink_request to statisfy coverity 2020-04-15 09:01:56 -04:00
rule_netlink.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
rule_socket.c zebra: define some explicit rule replace code paths 2020-04-09 13:37:55 -04:00
sample_plugin.c zebra: Add a sample dataplane plugin module 2019-10-31 16:24:16 -04:00
subdir.am Merge pull request #6231 from dslicenc/v6-ra-hoplimit 2020-04-18 22:48:20 +03:00
table_manager.c *: list_delete_and_null() -> list_delete() 2018-10-02 11:40:52 +02:00
table_manager.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
testrib.conf
zapi_msg.c zebra,ldpd: use zapi client session id in LM apis 2020-04-16 12:07:54 -04:00
zapi_msg.h zebra,ldpd: use zapi client session id in LM apis 2020-04-16 12:07:54 -04:00
zebra_dplane.c zebra: notify data plane providers about shutdown 2020-04-17 20:18:58 -03:00
zebra_dplane.h zebra: adapt and export rmac netlink functions 2020-04-14 13:45:39 -03:00
zebra_errors.c zebra: Prevent awful misconfiguration in vrf's 2020-04-22 10:57:29 -04:00
zebra_errors.h zebra: Prevent awful misconfiguration in vrf's 2020-04-22 10:57:29 -04:00
zebra_fpm_dt.c zebra: fix nexthop_group conversion in fpm code 2020-02-28 08:45:56 -05:00
zebra_fpm_netlink.c zebra: Cleanup dead code 2020-04-22 07:29:15 -04:00
zebra_fpm_private.h Zebra: Build nelink message for RMAC updates 2019-06-17 12:05:38 -07:00
zebra_fpm_protobuf.c *: Do not cast to the same type 2020-04-08 17:15:06 +03:00
zebra_fpm.c *: move CLI node names to cmd_node->name 2020-04-16 12:53:59 +02:00
zebra_gr.c lib, zebra: remove nullity check before XFREE... 2020-03-09 18:16:32 -04:00
zebra_l2.c zebra: Ensure master's ifname is known, even if slave comes up first 2019-08-13 16:29:40 +00:00
zebra_l2.h zebra: Ensure master's ifname is known, even if slave comes up first 2019-08-13 16:29:40 +00:00
zebra_memory.c zebra: use MTYPE_STATIC 2019-06-21 08:54:25 +02:00
zebra_memory.h zebra: use MTYPE_STATIC 2019-06-21 08:54:25 +02:00
zebra_mlag_private.c zebra: SO_PEERCRED is a getsockopt call 2020-03-06 16:03:52 -05:00
zebra_mlag_vty.c zebra: Do not build mlag protobuf support if version 3 is not avail 2019-12-15 09:37:51 -05:00
zebra_mlag_vty.h zebra: Do not build mlag protobuf support if version 3 is not avail 2019-12-15 09:37:51 -05:00
zebra_mlag.c zebra: Fix spelling mistakes found by debian packaging 2020-03-13 19:16:11 -04:00
zebra_mlag.h pimd: Add accidently missed code during upstreaming process 2020-03-06 16:02:52 -05:00
zebra_mpls_netlink.c zebra: convert PW updates to async dataplane 2019-01-25 10:45:57 -05:00
zebra_mpls_null.c zebra: convert PW updates to async dataplane 2019-01-25 10:45:57 -05:00
zebra_mpls_openbsd.c *: Remove parenthesis on return for constants 2020-02-09 14:21:56 +02:00
zebra_mpls_vty.c *: move CLI node names to cmd_node->name 2020-04-16 12:53:59 +02:00
zebra_mpls.c zebra,lib: use const in more apis 2020-03-27 09:37:02 -04:00
zebra_mpls.h zebra,lib: use const in more apis 2020-03-27 09:37:02 -04:00
zebra_mroute.c zebra: Add some additional vrf debug for retrieving mroute info 2018-09-17 09:22:31 -04:00
zebra_mroute.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_nb_config.c *: change the signature of the northbound callbacks to be more flexible 2020-04-23 10:14:32 -03:00
zebra_nb_rpcs.c *: change the signature of the northbound callbacks to be more flexible 2020-04-23 10:14:32 -03:00
zebra_nb_state.c *: change the signature of the northbound callbacks to be more flexible 2020-04-23 10:14:32 -03:00
zebra_nb.c zebra: add weight to nb conversion 2020-04-16 08:58:09 -07:00
zebra_nb.h *: change the signature of the northbound callbacks to be more flexible 2020-04-23 10:14:32 -03:00
zebra_netns_id.c *: Do not cast to the same type 2020-04-08 17:15:06 +03:00
zebra_netns_id.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_netns_notify.c *: frr_elevate_privs -> frr_with_privs 2019-09-03 17:18:35 +02:00
zebra_netns_notify.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_nhg_private.h zebra: don't created connected if duplicate depend 2020-01-30 17:15:05 -05:00
zebra_nhg.c zebra: fix some coverity SA warnings 2020-04-14 07:44:54 -04:00
zebra_nhg.h zebra: handle backup nexthops in nhe/nhgs 2020-03-27 11:50:03 -04:00
zebra_ns.c zebra: read in and sweep rules on startup 2020-04-10 11:05:06 -04:00
zebra_ns.h zebra: Move the supports_nh bool to a better place 2019-10-25 11:13:41 -04:00
zebra_pbr.c zebra: define some explicit rule replace code paths 2020-04-09 13:37:55 -04:00
zebra_pbr.h zebra: define some explicit rule replace code paths 2020-04-09 13:37:55 -04:00
zebra_ptm_redistribute.c zebra: Add missing c-bit uint8_t 2020-03-17 16:01:59 -04:00
zebra_ptm_redistribute.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_ptm.c *: Replace __PRETTY_FUNCTION__/__FUNCTION__ to __func__ 2020-03-05 20:23:23 +02:00
zebra_ptm.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_pw.c *: move CLI node names to cmd_node->name 2020-04-16 12:53:59 +02:00
zebra_pw.h add cplusplus guards to all zebra headers 2019-03-25 16:05:27 +01:00
zebra_rib.c zebra: Add vrf name and id to debugs 2020-04-12 21:03:29 +02:00
zebra_rnh.c *: remove tabs from log messages 2020-03-24 18:47:12 +01:00
zebra_rnh.h zebra: nht resolution default configurable per vrf 2019-08-28 16:19:34 +02:00
zebra_routemap.c zebra: migrate route map commands to northbound 2020-03-23 07:55:13 -03:00
zebra_routemap.h zebra: Disable rmap update thread before routemap_finish while shutting down zebra 2020-03-16 23:57:45 -07:00
zebra_router.c zebra: free unhashable (dup) NHEs via ID table cleanup 2020-04-02 11:41:25 -04:00
zebra_router.h zebra: implement zebra route map northbound 2020-03-23 07:55:13 -03:00
zebra_snmp.c zebra: in_addr_cmp and struct prefix are not happy 2020-04-16 20:14:55 -04:00
zebra_vrf.c zebra: Don't kill the global rtadv socket when a vrf is deleted 2020-04-02 11:38:26 -04:00
zebra_vrf.h zebra: Add vrf name and id to debugs 2020-04-12 21:03:29 +02:00
zebra_vty.c Merge pull request #6247 from FRRouting/nb_conversions 2020-04-16 19:39:14 -04:00
zebra_vxlan_private.h zebra: adapt and export rmac netlink functions 2020-04-14 13:45:39 -03:00
zebra_vxlan.c zebra: clear dup detect cleanup for nb conversion 2020-04-16 08:13:15 -07:00
zebra_vxlan.h zebra: clear dup detect cleanup for nb conversion 2020-04-16 08:13:15 -07:00
zebra.conf.sample *: Remove cvs control points 2017-12-05 17:28:12 -05:00
zserv.c lib,zebra: add a session id for zapi sessions 2020-04-16 12:07:54 -04:00
zserv.h lib,zebra: add a session id for zapi sessions 2020-04-16 12:07:54 -04:00