]> git.proxmox.com Git - mirror_frr.git/blobdiff - zebra/rtadv.c
zebra: reorganize zserv, batch i/o
[mirror_frr.git] / zebra / rtadv.c
index 56decdcdbabefd52077c5e7329a5606c7be61955..d0b821bfd21d1ce1988ef555a191bd02523d5d5e 100644 (file)
@@ -43,7 +43,6 @@
 #include "zebra/zserv.h"
 #include "zebra/zebra_ns.h"
 #include "zebra/zebra_vrf.h"
-#include "zebra/zserv.h"
 
 extern struct zebra_privs_t zserv_privs;
 
@@ -802,7 +801,7 @@ static void ipv6_nd_suppress_ra_set(struct interface *ifp,
  * if the operator has explicitly enabled RA. The enable request can also
  * specify a RA interval (in seconds).
  */
-void zebra_interface_radv_set(ZAPI_HANDLER_ARGS, int set)
+static void zebra_interface_radv_set(ZAPI_HANDLER_ARGS, int enable)
 {
        struct stream *s;
        ifindex_t ifindex;
@@ -810,7 +809,7 @@ void zebra_interface_radv_set(ZAPI_HANDLER_ARGS, int set)
        struct zebra_if *zif;
        int ra_interval;
 
-       s = client->ibuf;
+       s = msg;
 
        /* Get interface index and RA interval. */
        STREAM_GETL(s, ifindex);
@@ -818,26 +817,27 @@ void zebra_interface_radv_set(ZAPI_HANDLER_ARGS, int set)
 
        if (IS_ZEBRA_DEBUG_EVENT)
                zlog_debug("%u: IF %u RA %s from client %s, interval %ds",
-                          zvrf_id(zvrf), ifindex, set ? "enable" : "disable",
+                          zvrf_id(zvrf), ifindex,
+                          enable ? "enable" : "disable",
                           zebra_route_string(client->proto), ra_interval);
 
        /* Locate interface and check VRF match. */
        ifp = if_lookup_by_index_per_ns(zebra_ns_lookup(NS_DEFAULT), ifindex);
        if (!ifp) {
                zlog_warn("%u: IF %u RA %s client %s - interface unknown",
-                         zvrf_id(zvrf), ifindex, set ? "enable" : "disable",
+                         zvrf_id(zvrf), ifindex, enable ? "enable" : "disable",
                          zebra_route_string(client->proto));
                return;
        }
        if (ifp->vrf_id != zvrf_id(zvrf)) {
                zlog_warn("%u: IF %u RA %s client %s - VRF mismatch, IF VRF %u",
-                         zvrf_id(zvrf), ifindex, set ? "enable" : "disable",
+                         zvrf_id(zvrf), ifindex, enable ? "enable" : "disable",
                          zebra_route_string(client->proto), ifp->vrf_id);
                return;
        }
 
        zif = ifp->info;
-       if (set) {
+       if (enable) {
                SET_FLAG(zif->rtadv.ra_configured, BGP_RA_CONFIGURED);
                ipv6_nd_suppress_ra_set(ifp, RA_ENABLE);
                if (ra_interval
@@ -860,12 +860,11 @@ stream_failure:
 
 void zebra_interface_radv_disable(ZAPI_HANDLER_ARGS)
 {
-       zebra_interface_radv_set(client, hdr, zvrf, 0);
+       zebra_interface_radv_set(client, hdr, msg, zvrf, 0);
 }
-
 void zebra_interface_radv_enable(ZAPI_HANDLER_ARGS)
 {
-       zebra_interface_radv_set(client, hdr, zvrf, 1);
+       zebra_interface_radv_set(client, hdr, msg, zvrf, 1);
 }
 
 DEFUN (ipv6_nd_suppress_ra,