diff options
Diffstat (limited to 'zebra/ioctl.c')
| -rw-r--r-- | zebra/ioctl.c | 37 |
1 files changed, 16 insertions, 21 deletions
diff --git a/zebra/ioctl.c b/zebra/ioctl.c index a895ed9410..239763754b 100644 --- a/zebra/ioctl.c +++ b/zebra/ioctl.c @@ -48,6 +48,7 @@ void ifreq_set_name(struct ifreq *ifreq, struct interface *ifp) strlcpy(ifreq->ifr_name, ifp->name, sizeof(ifreq->ifr_name)); } +#ifndef HAVE_NETLINK /* call ioctl system call */ int if_ioctl(unsigned long request, caddr_t buffer) { @@ -73,6 +74,7 @@ int if_ioctl(unsigned long request, caddr_t buffer) } return 0; } +#endif /* call ioctl system call */ int vrf_if_ioctl(unsigned long request, caddr_t buffer, vrf_id_t vrf_id) @@ -127,7 +129,6 @@ static int if_ioctl_ipv6(unsigned long request, caddr_t buffer) } return 0; } -#endif /* ! HAVE_NETLINK */ /* * get interface metric @@ -174,6 +175,7 @@ void if_get_mtu(struct interface *ifp) ifp->mtu6 = ifp->mtu = -1; #endif } +#endif /* ! HAVE_NETLINK */ /* * Handler for interface address programming via the zebra dplane, @@ -217,13 +219,6 @@ enum zebra_dplane_result kernel_address_update_ctx( ZEBRA_DPLANE_REQUEST_SUCCESS : ZEBRA_DPLANE_REQUEST_FAILURE); } -#endif /* !HAVE_NETLINK */ - -#ifdef HAVE_NETLINK - -/* TODO -- remove; no use of these apis with netlink any longer */ - -#else /* ! HAVE_NETLINK */ #ifdef HAVE_STRUCT_IFALIASREQ /* @@ -242,7 +237,7 @@ static int if_set_prefix_ctx(const struct zebra_dplane_ctx *ctx) strlcpy((char *)&addreq.ifra_name, dplane_ctx_get_ifname(ctx), sizeof(addreq.ifra_name)); - memset(&addr, 0, sizeof(struct sockaddr_in)); + memset(&addr, 0, sizeof(addr)); addr.sin_addr = p->prefix; addr.sin_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -252,7 +247,7 @@ static int if_set_prefix_ctx(const struct zebra_dplane_ctx *ctx) if (dplane_ctx_intf_is_connected(ctx)) { p = (struct prefix_ipv4 *)dplane_ctx_get_intf_dest(ctx); - memset(&mask, 0, sizeof(struct sockaddr_in)); + memset(&mask, 0, sizeof(mask)); peer.sin_addr = p->prefix; peer.sin_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -262,7 +257,7 @@ static int if_set_prefix_ctx(const struct zebra_dplane_ctx *ctx) sizeof(struct sockaddr_in)); } - memset(&mask, 0, sizeof(struct sockaddr_in)); + memset(&mask, 0, sizeof(mask)); masklen2ip(p->prefixlen, &mask.sin_addr); mask.sin_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -293,7 +288,7 @@ static int if_unset_prefix_ctx(const struct zebra_dplane_ctx *ctx) strlcpy((char *)&addreq.ifra_name, dplane_ctx_get_ifname(ctx), sizeof(addreq.ifra_name)); - memset(&addr, 0, sizeof(struct sockaddr_in)); + memset(&addr, 0, sizeof(addr)); addr.sin_addr = p->prefix; addr.sin_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -303,7 +298,7 @@ static int if_unset_prefix_ctx(const struct zebra_dplane_ctx *ctx) if (dplane_ctx_intf_is_connected(ctx)) { p = (struct prefix_ipv4 *)dplane_ctx_get_intf_dest(ctx); - memset(&mask, 0, sizeof(struct sockaddr_in)); + memset(&mask, 0, sizeof(mask)); peer.sin_addr = p->prefix; peer.sin_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -313,7 +308,7 @@ static int if_unset_prefix_ctx(const struct zebra_dplane_ctx *ctx) sizeof(struct sockaddr_in)); } - memset(&mask, 0, sizeof(struct sockaddr_in)); + memset(&mask, 0, sizeof(mask)); masklen2ip(p->prefixlen, &mask.sin_addr); mask.sin_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -394,7 +389,7 @@ int if_unset_prefix_ctx(const struct zebra_dplane_ctx *ctx) strlcpy(ifreq.ifr_name, dplane_ctx_get_ifname(ctx), sizeof(ifreq.ifr_name)); - memset(&addr, 0, sizeof(struct sockaddr_in)); + memset(&addr, 0, sizeof(addr)); addr.sin_family = p->family; memcpy(&ifreq.ifr_addr, &addr, sizeof(struct sockaddr_in)); ret = if_ioctl(SIOCSIFADDR, (caddr_t)&ifreq); @@ -508,7 +503,7 @@ int if_set_flags(struct interface *ifp, uint64_t flags) int ret; struct ifreq ifreq; - memset(&ifreq, 0, sizeof(struct ifreq)); + memset(&ifreq, 0, sizeof(ifreq)); ifreq_set_name(&ifreq, ifp); ifreq.ifr_flags = ifp->flags; @@ -529,7 +524,7 @@ int if_unset_flags(struct interface *ifp, uint64_t flags) int ret; struct ifreq ifreq; - memset(&ifreq, 0, sizeof(struct ifreq)); + memset(&ifreq, 0, sizeof(ifreq)); ifreq_set_name(&ifreq, ifp); ifreq.ifr_flags = ifp->flags; @@ -568,7 +563,7 @@ static int if_set_prefix6_ctx(const struct zebra_dplane_ctx *ctx) strlcpy((char *)&addreq.ifra_name, dplane_ctx_get_ifname(ctx), sizeof(addreq.ifra_name)); - memset(&addr, 0, sizeof(struct sockaddr_in6)); + memset(&addr, 0, sizeof(addr)); addr.sin6_addr = p->prefix; addr.sin6_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -576,7 +571,7 @@ static int if_set_prefix6_ctx(const struct zebra_dplane_ctx *ctx) #endif memcpy(&addreq.ifra_addr, &addr, sizeof(struct sockaddr_in6)); - memset(&mask, 0, sizeof(struct sockaddr_in6)); + memset(&mask, 0, sizeof(mask)); masklen2ip6(p->prefixlen, &mask.sin6_addr); mask.sin6_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -615,7 +610,7 @@ static int if_unset_prefix6_ctx(const struct zebra_dplane_ctx *ctx) strlcpy((char *)&addreq.ifra_name, dplane_ctx_get_ifname(ctx), sizeof(addreq.ifra_name)); - memset(&addr, 0, sizeof(struct sockaddr_in6)); + memset(&addr, 0, sizeof(addr)); addr.sin6_addr = p->prefix; addr.sin6_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN @@ -623,7 +618,7 @@ static int if_unset_prefix6_ctx(const struct zebra_dplane_ctx *ctx) #endif memcpy(&addreq.ifra_addr, &addr, sizeof(struct sockaddr_in6)); - memset(&mask, 0, sizeof(struct sockaddr_in6)); + memset(&mask, 0, sizeof(mask)); masklen2ip6(p->prefixlen, &mask.sin6_addr); mask.sin6_family = p->family; #ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN |
