summaryrefslogtreecommitdiffstats
path: root/zebra/zebra_vxlan.h
diff options
context:
space:
mode:
authorQuentin Young <qlyoung@cumulusnetworks.com>2018-03-06 23:57:33 +0100
committerQuentin Young <qlyoung@cumulusnetworks.com>2018-03-12 19:57:05 +0100
commit89f4e5077bd8162dbda0e10a3bbd594c2c698d77 (patch)
tree5e1aa7b4ba59fbee99b093f3a5938bcf691fc748 /zebra/zebra_vxlan.h
parentzebra: add struct zmsghdr (diff)
downloadfrr-89f4e5077bd8162dbda0e10a3bbd594c2c698d77.tar.xz
frr-89f4e5077bd8162dbda0e10a3bbd594c2c698d77.zip
zebra: standardize ZAPI message handler args
A lot of the handler functions that are called directly from the ZAPI input processing code take different argument sets where they don't need to. These functions are called from only one place and all have the same fundamental information available to them to do their work. There is no need to specialize what information is passed to them; it is cleaner and easier to understand when they all accept the same base set of information and extract what they need inline. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Diffstat (limited to 'zebra/zebra_vxlan.h')
-rw-r--r--zebra/zebra_vxlan.h23
1 files changed, 9 insertions, 14 deletions
diff --git a/zebra/zebra_vxlan.h b/zebra/zebra_vxlan.h
index af76a41d8..62c6519d5 100644
--- a/zebra/zebra_vxlan.h
+++ b/zebra/zebra_vxlan.h
@@ -33,6 +33,7 @@
#include "lib/json.h"
#include "zebra/zebra_vrf.h"
+#include "zebra/zserv.h"
/* Is EVPN enabled? */
#define EVPN_ENABLED(zvrf) (zvrf)->advertise_all_vni
@@ -52,20 +53,14 @@ static inline int is_evpn_enabled()
#define VNI_STR_LEN 32
/* zserv handlers */
-extern void zebra_vxlan_remote_macip_add(struct zserv *client, u_short length,
- struct zebra_vrf *zvrf);
-extern void zebra_vxlan_remote_macip_del(struct zserv *client, u_short length,
- struct zebra_vrf *zvrf);
-extern void zebra_vxlan_remote_vtep_add(struct zserv *client, u_short length,
- struct zebra_vrf *zvrf);
-extern void zebra_vxlan_remote_vtep_del(struct zserv *client, u_short length,
- struct zebra_vrf *zvrf);
-extern void zebra_vxlan_advertise_subnet(struct zserv *client, u_short length,
- struct zebra_vrf *zvrf);
-extern void zebra_vxlan_advertise_gw_macip(struct zserv *client, u_short length,
- struct zebra_vrf *zvrf);
-extern void zebra_vxlan_advertise_all_vni(struct zserv *client, u_short length,
- struct zebra_vrf *zvrf);
+extern void zebra_vxlan_remote_macip_add(ZAPI_HANDLER_ARGS);
+extern void zebra_vxlan_remote_macip_del(ZAPI_HANDLER_ARGS);
+extern void zebra_vxlan_remote_vtep_add(ZAPI_HANDLER_ARGS);
+extern void zebra_vxlan_remote_vtep_del(ZAPI_HANDLER_ARGS);
+extern void zebra_vxlan_advertise_subnet(ZAPI_HANDLER_ARGS);
+extern void zebra_vxlan_advertise_gw_macip(ZAPI_HANDLER_ARGS);
+extern void zebra_vxlan_advertise_all_vni(ZAPI_HANDLER_ARGS);
+
extern int is_l3vni_for_prefix_routes_only(vni_t vni);
extern ifindex_t get_l3vni_svi_ifindex(vrf_id_t vrf_id);