From: Roy Marples Date: Tue, 17 May 2016 21:13:49 +0000 (+0000) Subject: mask is more descriptive than net. Churn. X-Git-Tag: v6.11.1~42 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7f911ce43483c446672b18d67515f021a0fc8bf1;p=thirdparty%2Fdhcpcd.git mask is more descriptive than net. Churn. --- diff --git a/dhcp.c b/dhcp.c index f543ff6d..833568c9 100644 --- a/dhcp.c +++ b/dhcp.c @@ -431,7 +431,7 @@ decode_rfc3442_rt(struct dhcpcd_ctx *ctx, const uint8_t *data, size_t dl) if (ocets > 0) { memcpy(&rt->dest.s_addr, p, ocets); p += ocets; - rt->net.s_addr = htonl(~0U << (32 - cidr)); + rt->mask.s_addr = htonl(~0U << (32 - cidr)); } /* Finally, snag the router */ @@ -626,9 +626,9 @@ get_option_routes(struct interface *ifp, route->gate.s_addr == bootp->yiaddr) { route->gate.s_addr = htonl(INADDR_ANY); - route->net.s_addr = htonl(INADDR_BROADCAST); + route->mask.s_addr = htonl(INADDR_BROADCAST); } else - route->net.s_addr = + route->mask.s_addr = route_netmask(route->dest.s_addr); TAILQ_INSERT_TAIL(routes, route, next); } @@ -761,7 +761,7 @@ make_message(struct bootp **bootpm, const struct interface *ifp, uint8_t type) *bootpm = bootp; if ((type == DHCP_INFORM || type == DHCP_RELEASE || - (type == DHCP_REQUEST && state->net.s_addr == lease->net.s_addr && + (type == DHCP_REQUEST && state->mask.s_addr == lease->mask.s_addr && (state->new == NULL || IS_DHCP(state->new))))) { /* In-case we haven't actually configured the address yet */ @@ -1438,15 +1438,18 @@ get_lease(struct interface *ifp, lease->addr.s_addr = bootp->yiaddr ? bootp->yiaddr : bootp->ciaddr; ctx = ifp->ctx; if (ifp->options->options & DHCPCD_INFORM) { - lease->net = ifp->options->req_mask; - lease->brd.s_addr = lease->addr.s_addr | ~lease->net.s_addr; + lease->mask = ifp->options->req_mask; + lease->brd.s_addr = lease->addr.s_addr | ~lease->mask.s_addr; } else { - if (get_option_addr(ctx, &lease->net, bootp, len, + if (get_option_addr(ctx, &lease->mask, bootp, len, DHO_SUBNETMASK) == -1) - lease->net.s_addr = ipv4_getnetmask(lease->addr.s_addr); + lease->mask.s_addr = + ipv4_getnetmask(lease->addr.s_addr); + if (get_option_addr(ctx, &lease->brd, bootp, len, + DHO_BROADCAST) == -1) + lease->brd.s_addr = + lease->addr.s_addr | ~lease->mask.s_addr; } - if (get_option_addr(ctx, &lease->brd, bootp, len, DHO_BROADCAST) == -1) - lease->brd.s_addr = lease->addr.s_addr | ~lease->net.s_addr; if (get_option_uint32(ctx, &lease->leasetime, bootp, len, DHO_LEASETIME) != 0) lease->leasetime = ~0U; /* Default to infinite lease */ @@ -2080,7 +2083,7 @@ dhcp_arp_conflicted(struct arp_state *astate, const struct arp_msg *amsg) #ifdef IN_IFF_DUPLICATED ia = ipv4_iffindaddr(ifp, &astate->addr, NULL); if (ia) - ipv4_deladdr(ifp, &ia->addr, &ia->net, 1); + ipv4_deladdr(ifp, &ia->addr, &ia->mask, 1); #endif arp_free(astate); eloop_timeout_delete(ifp->ctx->eloop, NULL, ifp); @@ -2129,7 +2132,7 @@ dhcp_bind(struct interface *ifp) if (ifo->options & DHCPCD_STATIC) { logger(ifp->ctx, LOG_INFO, "%s: using static address %s/%d", ifp->name, inet_ntoa(lease->addr), - inet_ntocidr(lease->net)); + inet_ntocidr(lease->mask)); lease->leasetime = ~0U; state->reason = "STATIC"; } else if (ifo->options & DHCPCD_INFORM) { @@ -2304,7 +2307,7 @@ dhcp_arp_address(struct interface *ifp) get_lease(ifp, &l, state->offer, state->offer_len); /* Add the address now, let the kernel handle DAD. */ - ipv4_addaddr(ifp, &l.addr, &l.net, &l.brd); + ipv4_addaddr(ifp, &l.addr, &l.mask, &l.brd); } else logger(ifp->ctx, LOG_INFO, "%s: waiting for DAD on %s", ifp->name, inet_ntoa(addr)); @@ -2316,7 +2319,7 @@ dhcp_arp_address(struct interface *ifp) get_lease(ifp, &l, state->offer, state->offer_len); logger(ifp->ctx, LOG_INFO, "%s: probing address %s/%d", - ifp->name, inet_ntoa(l.addr), inet_ntocidr(l.net)); + ifp->name, inet_ntoa(l.addr), inet_ntocidr(l.mask)); if ((astate = arp_new(ifp, &addr)) != NULL) { astate->probed_cb = dhcp_arp_probed; astate->conflicted_cb = dhcp_arp_conflicted; @@ -2363,7 +2366,7 @@ dhcp_static(struct interface *ifp) state->offer_len = dhcp_message_new(&state->offer, ia ? &ia->addr : &ifo->req_addr, - ia ? &ia->net : &ifo->req_mask); + ia ? &ia->mask : &ifo->req_mask); if (state->offer_len) dhcp_arp_bind(ifp); } @@ -2406,7 +2409,7 @@ dhcp_inform(struct interface *ifp) ia = ipv4_iffindaddr(ifp, &ifo->req_addr, NULL); if (ia != NULL) /* Netmask must be different, delete it. */ - ipv4_deladdr(ifp, &ia->addr, &ia->net, 1); + ipv4_deladdr(ifp, &ia->addr, &ia->mask, 1); state->offer_len = dhcp_message_new(&state->offer, &ifo->req_addr, &ifo->req_mask); if (dhcp_arp_address(ifp) == 0) @@ -2417,7 +2420,7 @@ dhcp_inform(struct interface *ifp) } } - state->offer_len = dhcp_message_new(&state->offer, &ia->addr, &ia->net); + state->offer_len = dhcp_message_new(&state->offer, &ia->addr, &ia->mask); if (state->offer_len) { state->xid = dhcp_xid(ifp); get_lease(ifp, &state->lease, state->offer, state->offer_len); @@ -2915,7 +2918,7 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len, LOGDHCP(LOG_WARNING, "declined duplicate address"); if (type) dhcp_decline(ifp); - ipv4_deladdr(ifp, &ia->addr, &ia->net, 0); + ipv4_deladdr(ifp, &ia->addr, &ia->mask, 0); eloop_timeout_delete(ifp->ctx->eloop, NULL, ifp); eloop_timeout_add_sec(ifp->ctx->eloop, DHCP_RAND_MAX, dhcp_discover, ifp); @@ -3460,7 +3463,8 @@ dhcp_start1(void *arg) get_lease(ifp, &state->lease, state->offer, state->offer_len); state->lease.frominfo = 1; if (state->new == NULL && - ipv4_iffindaddr(ifp, &state->lease.addr, &state->lease.net)) + ipv4_iffindaddr(ifp, + &state->lease.addr, &state->lease.mask)) { /* We still have the IP address from the last lease. * Fake add the address and routes from it so the lease @@ -3470,7 +3474,7 @@ dhcp_start1(void *arg) memcpy(state->new, state->offer, state->offer_len); state->addr = state->lease.addr; - state->net = state->lease.net; + state->mask = state->lease.mask; state->added |= STATE_ADDED | STATE_FAKE; ipv4_buildroutes(ifp->ctx); } else @@ -3597,7 +3601,7 @@ dhcp_abort(struct interface *ifp) void dhcp_handleifa(int cmd, struct interface *ifp, const struct in_addr *addr, - const struct in_addr *net, + const struct in_addr *mask, const struct in_addr *brd, int flags) { @@ -3611,13 +3615,13 @@ dhcp_handleifa(int cmd, struct interface *ifp, if (cmd == RTM_DELADDR) { if (state->addr.s_addr == addr->s_addr && - state->net.s_addr == net->s_addr && + state->mask.s_addr == mask->s_addr && state->brd.s_addr == brd->s_addr) { logger(ifp->ctx, LOG_INFO, "%s: removing IP address %s/%d", ifp->name, inet_ntoa(state->addr), - inet_ntocidr(state->net)); + inet_ntocidr(state->mask)); dhcp_drop(ifp, "EXPIRE"); } return; @@ -3647,7 +3651,7 @@ dhcp_handleifa(int cmd, struct interface *ifp, free(state->old); state->old = state->new; - state->new_len = dhcp_message_new(&state->new, addr, net); + state->new_len = dhcp_message_new(&state->new, addr, mask); if (state->new == NULL) return; state->brd = *brd; @@ -3664,7 +3668,7 @@ dhcp_handleifa(int cmd, struct interface *ifp, state->xid = dhcp_xid(ifp); state->lease.server = *brd; state->addr = *addr; - state->net = *net; + state->mask = *mask; dhcp_inform(ifp); } } diff --git a/dhcp.h b/dhcp.h index 388fcec4..dbb7b1c2 100644 --- a/dhcp.h +++ b/dhcp.h @@ -171,7 +171,7 @@ struct bootp { struct dhcp_lease { struct in_addr addr; - struct in_addr net; + struct in_addr mask; struct in_addr brd; uint32_t leasetime; uint32_t renewaltime; @@ -214,7 +214,7 @@ struct dhcp_state { int raw_fd; struct in_addr addr; - struct in_addr net; + struct in_addr mask; struct in_addr brd; uint8_t added; diff --git a/if-bsd.c b/if-bsd.c index 3cab244d..ed8f82b0 100644 --- a/if-bsd.c +++ b/if-bsd.c @@ -587,9 +587,9 @@ if_copyrt(struct dhcpcd_ctx *ctx, struct rt *rt, struct rt_msghdr *rtm) rt->flags = (unsigned int)rtm->rtm_flags; COPYOUT(rt->dest, rti_info[RTAX_DST]); if (rtm->rtm_addrs & RTA_NETMASK) - COPYOUT(rt->net, rti_info[RTAX_NETMASK]); + COPYOUT(rt->mask, rti_info[RTAX_NETMASK]); else - rt->net.s_addr = INADDR_BROADCAST; + rt->mask.s_addr = INADDR_BROADCAST; COPYOUT(rt->gate, rti_info[RTAX_GATEWAY]); COPYOUT(rt->src, rti_info[RTAX_IFA]); rt->mtu = (unsigned int)rtm->rtm_rmx.rmx_mtu; @@ -688,7 +688,7 @@ if_route(unsigned char cmd, const struct rt *rt) if (subnet == -1) /* unikely */ rtm.hdr.rtm_addrs &= ~RTA_IFA; } - if (rt->net.s_addr == htonl(INADDR_BROADCAST) && + if (rt->mask.s_addr == htonl(INADDR_BROADCAST) && rt->gate.s_addr == htonl(INADDR_ANY)) { #ifdef RTF_CLONING @@ -704,7 +704,7 @@ if_route(unsigned char cmd, const struct rt *rt) rtm.hdr.rtm_flags |= RTF_HOST; #endif } else if (rt->gate.s_addr == htonl(INADDR_LOOPBACK) && - rt->net.s_addr == htonl(INADDR_BROADCAST)) + rt->mask.s_addr == htonl(INADDR_BROADCAST)) { rtm.hdr.rtm_flags |= RTF_HOST | RTF_GATEWAY; /* Going via lo0 so remove the interface flags */ @@ -714,7 +714,7 @@ if_route(unsigned char cmd, const struct rt *rt) rtm.hdr.rtm_addrs |= RTA_NETMASK; if (rtm.hdr.rtm_flags & RTF_STATIC) rtm.hdr.rtm_flags |= RTF_GATEWAY; - if (rt->net.s_addr == htonl(INADDR_BROADCAST)) + if (rt->mask.s_addr == htonl(INADDR_BROADCAST)) rtm.hdr.rtm_flags |= RTF_HOST; } if ((cmd == RTM_ADD || cmd == RTM_CHANGE) && @@ -740,7 +740,7 @@ if_route(unsigned char cmd, const struct rt *rt) } if (rtm.hdr.rtm_addrs & RTA_NETMASK) - ADDADDR(&rt->net); + ADDADDR(&rt->mask); if ((cmd == RTM_ADD || cmd == RTM_CHANGE) && (rtm.hdr.rtm_addrs & (RTA_IFP | RTA_IFA))) @@ -956,7 +956,7 @@ if_copyrt6(struct dhcpcd_ctx *ctx, struct rt6 *rt, struct rt_msghdr *rtm) const unsigned char *p; sin6 = (void *)rti_info[RTAX_NETMASK]; - rt->net = sin6->sin6_addr; + rt->mask = sin6->sin6_addr; e = sin6->sin6_len - offsetof(struct sockaddr_in6, sin6_addr); if (e > sizeof(struct in6_addr)) e = sizeof(struct in6_addr); @@ -966,7 +966,7 @@ if_copyrt6(struct dhcpcd_ctx *ctx, struct rt6 *rt, struct rt_msghdr *rtm) { if (final && *p) { illegal = 1; - rt->net.s6_addr[i++] = 0x00; + rt->mask.s6_addr[i++] = 0x00; continue; } switch (*p & 0xff) { @@ -987,14 +987,14 @@ if_copyrt6(struct dhcpcd_ctx *ctx, struct rt6 *rt, struct rt_msghdr *rtm) break; } if (!illegal) - rt->net.s6_addr[i++] &= *p; + rt->mask.s6_addr[i++] &= *p; else - rt->net.s6_addr[i++] = 0x00; + rt->mask.s6_addr[i++] = 0x00; } - while (i < sizeof(rt->net.s6_addr)) - rt->net.s6_addr[i++] = 0x00; + while (i < sizeof(rt->mask.s6_addr)) + rt->mask.s6_addr[i++] = 0x00; } else - ipv6_mask(&rt->net, 128); + ipv6_mask(&rt->mask, 128); COPYOUT6(rt->gate, rti_info[RTAX_GATEWAY]); DESCOPE(&rt->gate); rt->mtu = (unsigned int)rtm->rtm_rmx.rmx_mtu; @@ -1103,7 +1103,7 @@ if_route6(unsigned char cmd, const struct rt6 *rt) } if (rtm.hdr.rtm_addrs & RTA_NETMASK) - ADDADDR(&rt->net); + ADDADDR(&rt->mask); if (rtm.hdr.rtm_addrs & (RTA_IFP | RTA_IFA)) { rtm.hdr.rtm_index = (unsigned short)rt->iface->index; @@ -1252,7 +1252,7 @@ if_managelink(struct dhcpcd_ctx *ctx) #endif #ifdef INET6 struct rt6 rt6; - struct in6_addr ia6, net6; + struct in6_addr ia6, mask6; struct sockaddr_in6 *sin6; #endif #if (defined(INET) && defined(IN_IFF_TENTATIVE)) || defined(INET6) @@ -1407,7 +1407,7 @@ if_managelink(struct dhcpcd_ctx *ctx) case AF_INET: case 255: /* FIXME: Why 255? */ COPYOUT(rt.dest, rti_info[RTAX_IFA]); - COPYOUT(rt.net, rti_info[RTAX_NETMASK]); + COPYOUT(rt.mask, rti_info[RTAX_NETMASK]); COPYOUT(rt.gate, rti_info[RTAX_BRD]); if (rtm->rtm_type == RTM_NEWADDR) { ifa_flags = if_addrflags(&rt.dest, ifp); @@ -1417,7 +1417,7 @@ if_managelink(struct dhcpcd_ctx *ctx) ifa_flags = 0; ipv4_handleifa(ctx, rtm->rtm_type, NULL, ifp->name, - &rt.dest, &rt.net, &rt.gate, ifa_flags); + &rt.dest, &rt.mask, &rt.gate, ifa_flags); break; #endif #ifdef INET6 @@ -1426,8 +1426,8 @@ if_managelink(struct dhcpcd_ctx *ctx) ia6 = sin6->sin6_addr; DESCOPE(&ia6); sin6 = (void *)rti_info[RTAX_NETMASK]; - net6 = sin6->sin6_addr; - DESCOPE(&net6); + mask6 = sin6->sin6_addr; + DESCOPE(&mask6); if (rtm->rtm_type == RTM_NEWADDR) { ifa_flags = if_addrflags6(&ia6, ifp); if (ifa_flags == -1) @@ -1435,7 +1435,7 @@ if_managelink(struct dhcpcd_ctx *ctx) } else ifa_flags = 0; ipv6_handleifa(ctx, rtm->rtm_type, NULL, - ifp->name, &ia6, ipv6_prefixlen(&net6), + ifp->name, &ia6, ipv6_prefixlen(&mask6), ifa_flags); break; #endif diff --git a/if-linux.c b/if-linux.c index 921c8e02..21a2c317 100644 --- a/if-linux.c +++ b/if-linux.c @@ -475,7 +475,7 @@ if_copyrt(struct dhcpcd_ctx *ctx, struct rt *rt, struct nlmsghdr *nlm) rta = RTA_NEXT(rta, len); } - inet_cidrtoaddr(rtm->rtm_dst_len, &rt->net); + inet_cidrtoaddr(rtm->rtm_dst_len, &rt->mask); if (rt->iface == NULL && rt->src.s_addr != INADDR_ANY) { struct ipv4_addr *ap; @@ -517,7 +517,7 @@ if_copyrt6(struct dhcpcd_ctx *ctx, struct rt6 *rt, struct nlmsghdr *nlm) rt->flags = RTF_REJECT; if (rtm->rtm_scope == RT_SCOPE_HOST) rt->flags |= RTF_HOST; - ipv6_mask(&rt->net, rtm->rtm_dst_len); + ipv6_mask(&rt->mask, rtm->rtm_dst_len); rta = (struct rtattr *)RTM_RTA(rtm); len = RTM_PAYLOAD(nlm); @@ -1425,14 +1425,14 @@ if_route(unsigned char cmd, const struct rt *rt) nlm.rt.rtm_scope = RT_SCOPE_HOST; else if (rt->gate.s_addr == INADDR_ANY || (rt->gate.s_addr == rt->dest.s_addr && - rt->net.s_addr == INADDR_BROADCAST)) + rt->mask.s_addr == INADDR_BROADCAST)) nlm.rt.rtm_scope = RT_SCOPE_LINK; else nlm.rt.rtm_scope = RT_SCOPE_UNIVERSE; nlm.rt.rtm_type = RTN_UNICAST; } - nlm.rt.rtm_dst_len = inet_ntocidr(rt->net); + nlm.rt.rtm_dst_len = inet_ntocidr(rt->mask); add_attr_l(&nlm.hdr, sizeof(nlm), RTA_DST, &rt->dest.s_addr, sizeof(rt->dest.s_addr)); if (cmd == RTM_ADD || cmd == RTM_CHANGE) { @@ -1612,7 +1612,7 @@ if_route6(unsigned char cmd, const struct rt6 *rt) nlm.rt.rtm_type = RTN_UNICAST; } - nlm.rt.rtm_dst_len = ipv6_prefixlen(&rt->net); + nlm.rt.rtm_dst_len = ipv6_prefixlen(&rt->mask); add_attr_l(&nlm.hdr, sizeof(nlm), RTA_DST, &rt->dest.s6_addr, sizeof(rt->dest.s6_addr)); diff --git a/if-options.c b/if-options.c index 49724198..3334d413 100644 --- a/if-options.c +++ b/if-options.c @@ -1090,7 +1090,7 @@ parse_option(struct dhcpcd_ctx *ctx, const char *ifname, struct if_options *ifo, *fp = ' '; return -1; } - if (parse_addr(ctx, &rt->dest, &rt->net, p) == -1 || + if (parse_addr(ctx, &rt->dest, &rt->mask, p) == -1 || parse_addr(ctx, &rt->gate, NULL, np) == -1) { free(rt); @@ -1115,7 +1115,7 @@ parse_option(struct dhcpcd_ctx *ctx, const char *ifname, struct if_options *ifo, return -1; } rt->dest.s_addr = INADDR_ANY; - rt->net.s_addr = INADDR_ANY; + rt->mask.s_addr = INADDR_ANY; if (parse_addr(ctx, &rt->gate, NULL, p) == -1) { free(rt); return -1; diff --git a/if-sun.c b/if-sun.c index 9a54835d..55bee0c4 100644 --- a/if-sun.c +++ b/if-sun.c @@ -547,13 +547,13 @@ if_readraw(struct interface *ifp, int fd, int if_address(const struct interface *ifp, const struct in_addr *addr, - const struct in_addr *net, const struct in_addr *bcast, + const struct in_addr *mask, const struct in_addr *bcast, int action) { UNUSED(ifp); UNUSED(addr); - UNUSED(net); + UNUSED(mask); UNUSED(bcast); UNUSED(action); errno = ENOTSUP; @@ -608,7 +608,7 @@ if_walkrt(struct dhcpcd_ctx *ctx, char *data, size_t len) } memset(&rt, 0, sizeof(rt)); rt.dest.s_addr = re->ipRouteDest; - rt.net.s_addr = re->ipRouteMask; + rt.mask.s_addr = re->ipRouteMask; rt.gate.s_addr = re->ipRouteNextHop; rt.flags = re->ipRouteInfo.re_flags; rt.src.s_addr = re->ipRouteInfo.re_src_addr; @@ -713,7 +713,7 @@ if_walkrt6(struct dhcpcd_ctx *ctx, char *data, size_t len) } memset(&rt, 0, sizeof(rt)); rt.dest = re->ipv6RouteDest; - ipv6_mask(&rt.net, re->ipv6RoutePfxLength); + ipv6_mask(&rt.mask, re->ipv6RoutePfxLength); rt.gate = re->ipv6RouteNextHop; rt.mtu = re->ipv6RouteInfo.re_max_frag; diff --git a/ipv4.c b/ipv4.c index 09e94c99..40034382 100644 --- a/ipv4.c +++ b/ipv4.c @@ -113,7 +113,7 @@ ipv4_getnetmask(uint32_t addr) struct ipv4_addr * ipv4_iffindaddr(struct interface *ifp, - const struct in_addr *addr, const struct in_addr *net) + const struct in_addr *addr, const struct in_addr *mask) { struct ipv4_state *state; struct ipv4_addr *ap; @@ -122,7 +122,7 @@ ipv4_iffindaddr(struct interface *ifp, if (state) { TAILQ_FOREACH(ap, &state->addrs, next) { if ((addr == NULL || ap->addr.s_addr == addr->s_addr) && - (net == NULL || ap->net.s_addr == net->s_addr)) + (mask == NULL || ap->mask.s_addr == mask->s_addr)) return ap; } } @@ -154,8 +154,8 @@ ipv4_iffindmaskaddr(struct interface *ifp, const struct in_addr *addr) state = IPV4_STATE(ifp); if (state) { TAILQ_FOREACH (ap, &state->addrs, next) { - if ((ap->addr.s_addr & ap->net.s_addr) == - (addr->s_addr & ap->net.s_addr)) + if ((ap->addr.s_addr & ap->mask.s_addr) == + (addr->s_addr & ap->mask.s_addr)) return ap; } } @@ -204,8 +204,8 @@ ipv4_srcaddr(const struct rt *rt, struct in_addr *addr) /* Prefer DHCP source address if matching */ dstate = D_CSTATE(rt->iface); if (dstate && - rt->net.s_addr == dstate->net.s_addr && - rt->dest.s_addr == (dstate->addr.s_addr & dstate->net.s_addr)) + rt->mask.s_addr == dstate->mask.s_addr && + rt->dest.s_addr == (dstate->addr.s_addr & dstate->mask.s_addr)) { *addr = dstate->addr; return 1; @@ -214,7 +214,7 @@ ipv4_srcaddr(const struct rt *rt, struct in_addr *addr) /* Then IPv4LL source address if matching */ istate = IPV4LL_CSTATE(rt->iface); if (istate && - rt->net.s_addr == inaddr_llmask.s_addr && + rt->mask.s_addr == inaddr_llmask.s_addr && rt->dest.s_addr == (istate->addr.s_addr & inaddr_llmask.s_addr)) { *addr = istate->addr; @@ -327,7 +327,7 @@ find_route(struct rt_head *rts, const struct rt *r, const struct rt *srt) rt->iface->metric == r->iface->metric)) && #endif (!srt || srt != rt) && - rt->net.s_addr == r->net.s_addr) + rt->mask.s_addr == r->mask.s_addr) return rt; } return NULL; @@ -341,28 +341,28 @@ desc_route(const char *cmd, const struct rt *rt) const char *ifname = rt->iface ? rt->iface->name : NULL; strlcpy(addr, inet_ntoa(rt->dest), sizeof(addr)); - if (rt->net.s_addr == htonl(INADDR_BROADCAST) && + if (rt->mask.s_addr == htonl(INADDR_BROADCAST) && rt->gate.s_addr == htonl(INADDR_ANY)) logger(ctx, LOG_INFO, "%s: %s host route to %s", ifname, cmd, addr); - else if (rt->net.s_addr == htonl(INADDR_BROADCAST)) + else if (rt->mask.s_addr == htonl(INADDR_BROADCAST)) logger(ctx, LOG_INFO, "%s: %s host route to %s via %s", ifname, cmd, addr, inet_ntoa(rt->gate)); else if (rt->dest.s_addr == htonl(INADDR_ANY) && - rt->net.s_addr == htonl(INADDR_ANY) && + rt->mask.s_addr == htonl(INADDR_ANY) && rt->gate.s_addr == htonl(INADDR_ANY)) logger(ctx, LOG_INFO, "%s: %s default route", ifname, cmd); else if (rt->gate.s_addr == htonl(INADDR_ANY)) logger(ctx, LOG_INFO, "%s: %s route to %s/%d", - ifname, cmd, addr, inet_ntocidr(rt->net)); + ifname, cmd, addr, inet_ntocidr(rt->mask)); else if (rt->dest.s_addr == htonl(INADDR_ANY) && - rt->net.s_addr == htonl(INADDR_ANY)) + rt->mask.s_addr == htonl(INADDR_ANY)) logger(ctx, LOG_INFO, "%s: %s default route via %s", ifname, cmd, inet_ntoa(rt->gate)); else logger(ctx, LOG_INFO, "%s: %s route to %s/%d via %s", - ifname, cmd, addr, inet_ntocidr(rt->net), + ifname, cmd, addr, inet_ntocidr(rt->mask), inet_ntoa(rt->gate)); } @@ -381,7 +381,7 @@ ipv4_findrt(struct dhcpcd_ctx *ctx, const struct rt *rt, int flags) #else (!flags || rt->iface == r->iface) && #endif - rt->net.s_addr == r->net.s_addr) + rt->mask.s_addr == r->mask.s_addr) return r; } return NULL; @@ -445,7 +445,7 @@ nc_route(struct rt *ort, struct rt *nrt) /* Don't set default routes if not asked to */ if (nrt->dest.s_addr == 0 && - nrt->net.s_addr == 0 && + nrt->mask.s_addr == 0 && !(nrt->iface->options->options & DHCPCD_GATEWAY)) return -1; @@ -472,7 +472,7 @@ nc_route(struct rt *ort, struct rt *nrt) ort->metric == nrt->metric && #endif ort->dest.s_addr == nrt->dest.s_addr && - ort->net.s_addr == nrt->net.s_addr && + ort->mask.s_addr == nrt->mask.s_addr && ort->gate.s_addr == nrt->gate.s_addr) { if (ort->mtu == nrt->mtu) @@ -548,11 +548,11 @@ add_subnet_route(struct rt_head *rt, const struct interface *ifp) s = D_CSTATE(ifp); /* Don't create a subnet route for these addresses */ - if (s->net.s_addr == INADDR_ANY) + if (s->mask.s_addr == INADDR_ANY) return rt; #ifndef BSD /* BSD adds a route in this instance */ - if (s->net.s_addr == INADDR_BROADCAST) + if (s->mask.s_addr == INADDR_BROADCAST) return rt; #endif @@ -561,8 +561,8 @@ add_subnet_route(struct rt_head *rt, const struct interface *ifp) ipv4_freeroutes(rt); return NULL; } - r->dest.s_addr = s->addr.s_addr & s->net.s_addr; - r->net.s_addr = s->net.s_addr; + r->dest.s_addr = s->addr.s_addr & s->mask.s_addr; + r->mask.s_addr = s->mask.s_addr; r->gate.s_addr = INADDR_ANY; r->mtu = dhcp_get_mtu(ifp); r->src = s->addr; @@ -591,7 +591,7 @@ add_loopback_route(struct rt_head *rt, const struct interface *ifp) return NULL; } r->dest = s->addr; - r->net.s_addr = INADDR_BROADCAST; + r->mask.s_addr = INADDR_BROADCAST; r->gate.s_addr = htonl(INADDR_LOOPBACK); r->mtu = dhcp_get_mtu(ifp); r->src = s->addr; @@ -654,7 +654,7 @@ add_destination_route(struct rt_head *rt, const struct interface *ifp) return NULL; } r->dest.s_addr = INADDR_ANY; - r->net.s_addr = INADDR_ANY; + r->mask.s_addr = INADDR_ANY; r->gate.s_addr = state->brd.s_addr; r->mtu = dhcp_get_mtu(ifp); r->src = state->addr; @@ -688,8 +688,8 @@ add_router_host_route(struct rt_head *rt, const struct interface *ifp) /* match subnet */ cp = (const char *)&rtp->gate.s_addr; cp2 = (const char *)&rtn->dest.s_addr; - cp3 = (const char *)&rtn->net.s_addr; - cplim = cp3 + sizeof(rtn->net.s_addr); + cp3 = (const char *)&rtn->mask.s_addr; + cplim = cp3 + sizeof(rtn->mask.s_addr); while (cp3 < cplim) { if ((*cp++ ^ *cp2++) & *cp3++) break; @@ -728,7 +728,7 @@ add_router_host_route(struct rt_head *rt, const struct interface *ifp) return NULL; } rtn->dest.s_addr = rtp->gate.s_addr; - rtn->net.s_addr = htonl(INADDR_BROADCAST); + rtn->mask.s_addr = htonl(INADDR_BROADCAST); rtn->gate.s_addr = htonl(INADDR_ANY); rtn->mtu = dhcp_get_mtu(ifp); rtn->src = state->addr; @@ -885,7 +885,7 @@ ipv4_buildroutes(struct dhcpcd_ctx *ctx) int ipv4_deladdr(struct interface *ifp, - const struct in_addr *addr, const struct in_addr *net, int keeparp) + const struct in_addr *addr, const struct in_addr *mask, int keeparp) { struct dhcp_state *dstate; int r; @@ -896,9 +896,9 @@ ipv4_deladdr(struct interface *ifp, logger(ifp->ctx, LOG_DEBUG, "%s: deleting IP address %s/%d", - ifp->name, inet_ntoa(*addr), inet_ntocidr(*net)); + ifp->name, inet_ntoa(*addr), inet_ntocidr(*mask)); - r = if_deladdress(ifp, addr, net); + r = if_deladdress(ifp, addr, mask); if (r == -1 && errno != EADDRNOTAVAIL && errno != ENXIO && errno != ENODEV) logger(ifp->ctx, LOG_ERR, "%s: %s: %m", ifp->name, __func__); @@ -907,11 +907,11 @@ ipv4_deladdr(struct interface *ifp, arp_free(astate); a = addr->s_addr; - n = net->s_addr; + n = mask->s_addr; state = IPV4_STATE(ifp); TAILQ_FOREACH(ap, &state->addrs, next) { if (ap->addr.s_addr == addr->s_addr && - ap->net.s_addr == net->s_addr) + ap->mask.s_addr == mask->s_addr) { TAILQ_REMOVE(&state->addrs, ap, next); free(ap); @@ -922,10 +922,10 @@ ipv4_deladdr(struct interface *ifp, /* Have to do this last incase the function arguments * were these very pointers. */ dstate = D_STATE(ifp); - if (dstate && dstate->addr.s_addr == a && dstate->net.s_addr == n) { + if (dstate && dstate->addr.s_addr == a && dstate->mask.s_addr == n) { dstate->added = 0; dstate->addr.s_addr = 0; - dstate->net.s_addr = 0; + dstate->mask.s_addr = 0; } return r; } @@ -942,7 +942,7 @@ delete_address(struct interface *ifp) if (ifo->options & DHCPCD_INFORM || (ifo->options & DHCPCD_STATIC && ifo->req_addr.s_addr == 0)) return 0; - r = ipv4_deladdr(ifp, &state->addr, &state->net, 0); + r = ipv4_deladdr(ifp, &state->addr, &state->mask, 0); return r; } @@ -986,7 +986,7 @@ ipv4_addaddr(struct interface *ifp, const struct in_addr *addr, TAILQ_FOREACH_SAFE(ia, &state->addrs, next, ian) { if (ia->addr.s_addr != addr->s_addr) - ipv4_deladdr(ifp, &ia->addr, &ia->net, 0); + ipv4_deladdr(ifp, &ia->addr, &ia->mask, 0); } } @@ -1008,7 +1008,7 @@ ipv4_addaddr(struct interface *ifp, const struct in_addr *addr, ia->iface = ifp; ia->addr = *addr; - ia->net = *mask; + ia->mask = *mask; ia->brd = *bcast; #ifdef IN_IFF_TENTATIVE ia->addr_flags = IN_IFF_TENTATIVE; @@ -1022,14 +1022,14 @@ ipv4_daddaddr(struct interface *ifp, const struct dhcp_lease *lease) { struct dhcp_state *state; - if (ipv4_addaddr(ifp, &lease->addr, &lease->net, &lease->brd) == NULL) + if (ipv4_addaddr(ifp, &lease->addr, &lease->mask, &lease->brd) == NULL) return -1; state = D_STATE(ifp); state->added = STATE_ADDED; state->addr.s_addr = lease->addr.s_addr; - state->net.s_addr = lease->net.s_addr; + state->mask.s_addr = lease->mask.s_addr; return 0; } @@ -1125,7 +1125,7 @@ ipv4_applyaddr(void *arg) ifn->name, inet_ntoa(lease->addr), ifp->name); - ipv4_deladdr(ifn, &nstate->addr, &nstate->net, 0); + ipv4_deladdr(ifn, &nstate->addr, &nstate->mask, 0); break; } } @@ -1137,26 +1137,26 @@ ipv4_applyaddr(void *arg) continue; ap = ipv4_iffindaddr(ifn, &lease->addr, NULL); if (ap) - ipv4_deladdr(ifn, &ap->addr, &ap->net, 0); + ipv4_deladdr(ifn, &ap->addr, &ap->mask, 0); } } /* If the netmask or broadcast is different, re-add the addresss */ ap = ipv4_iffindaddr(ifp, &lease->addr, NULL); if (ap && - ap->net.s_addr == lease->net.s_addr && + ap->mask.s_addr == lease->mask.s_addr && ap->brd.s_addr == lease->brd.s_addr) logger(ifp->ctx, LOG_DEBUG, "%s: IP address %s/%d already exists", ifp->name, inet_ntoa(lease->addr), - inet_ntocidr(lease->net)); + inet_ntocidr(lease->mask)); else { #if __linux__ /* Linux does not change netmask/broadcast address * for re-added addresses, so we need to delete the old one * first. */ if (ap != NULL) - ipv4_deladdr(ifp, &ap->addr, &ap->net, 0); + ipv4_deladdr(ifp, &ap->addr, &ap->mask, 0); #endif r = ipv4_daddaddr(ifp, lease); if (r == -1 && errno != EEXIST) @@ -1181,7 +1181,7 @@ ipv4_applyaddr(void *arg) state->added = STATE_ADDED; state->addr.s_addr = lease->addr.s_addr; - state->net.s_addr = lease->net.s_addr; + state->mask.s_addr = lease->mask.s_addr; /* Find any freshly added routes, such as the subnet route. * We do this because we cannot rely on recieving the kernel @@ -1204,7 +1204,7 @@ ipv4_applyaddr(void *arg) void ipv4_handleifa(struct dhcpcd_ctx *ctx, int cmd, struct if_head *ifs, const char *ifname, - const struct in_addr *addr, const struct in_addr *net, + const struct in_addr *addr, const struct in_addr *mask, const struct in_addr *brd, int flags) { struct interface *ifp; @@ -1239,7 +1239,7 @@ ipv4_handleifa(struct dhcpcd_ctx *ctx, ap->addr = *addr; TAILQ_INSERT_TAIL(&state->addrs, ap, next); } - ap->net = *net; + ap->mask = *mask; if (brd != NULL) ap->brd = *brd; else @@ -1253,7 +1253,7 @@ ipv4_handleifa(struct dhcpcd_ctx *ctx, } arp_handleifa(cmd, ifp, addr, flags); - dhcp_handleifa(cmd, ifp, addr, net, brd, flags); + dhcp_handleifa(cmd, ifp, addr, mask, brd, flags); } void diff --git a/ipv4.h b/ipv4.h index cf8941da..3da7d46e 100644 --- a/ipv4.h +++ b/ipv4.h @@ -55,7 +55,7 @@ struct rt { TAILQ_ENTRY(rt) next; struct in_addr dest; - struct in_addr net; + struct in_addr mask; struct in_addr gate; const struct interface *iface; #ifdef HAVE_ROUTE_METRIC @@ -71,7 +71,7 @@ TAILQ_HEAD(rt_head, rt); struct ipv4_addr { TAILQ_ENTRY(ipv4_addr) next; struct in_addr addr; - struct in_addr net; + struct in_addr mask; struct in_addr brd; struct interface *iface; int addr_flags; diff --git a/ipv4ll.c b/ipv4ll.c index 5d8dc1f4..6c165546 100644 --- a/ipv4ll.c +++ b/ipv4ll.c @@ -97,7 +97,7 @@ ipv4ll_subnet_route(const struct interface *ifp) } rt->iface = ifp; rt->dest.s_addr = state->addr.s_addr & inaddr_llmask.s_addr; - rt->net = inaddr_llmask; + rt->mask = inaddr_llmask; rt->gate.s_addr = INADDR_ANY; rt->src = state->addr; return rt; @@ -120,7 +120,7 @@ ipv4ll_default_route(const struct interface *ifp) } rt->iface = ifp; rt->dest.s_addr = INADDR_ANY; - rt->net.s_addr = INADDR_ANY; + rt->mask.s_addr = INADDR_ANY; rt->gate.s_addr = INADDR_ANY; rt->src = state->addr; return rt; @@ -444,7 +444,7 @@ ipv4ll_freedrop(struct interface *ifp, int drop) TAILQ_FOREACH_SAFE(ia, &istate->addrs, next, ian) { if (IN_LINKLOCAL(ntohl(ia->addr.s_addr))) { ipv4_deladdr(ifp, &ia->addr, - &ia->net, 0); + &ia->mask, 0); dropped = 1; } } diff --git a/ipv6.c b/ipv6.c index f87a1f60..1e0f234a 100644 --- a/ipv6.c +++ b/ipv6.c @@ -1952,7 +1952,7 @@ find_route6(struct rt6_head *rts, const struct rt6 *r) (r->iface == NULL || rt->iface == NULL || rt->iface->metric == r->iface->metric) && #endif - IN6_ARE_ADDR_EQUAL(&rt->net, &r->net)) + IN6_ARE_ADDR_EQUAL(&rt->mask, &r->mask)) return rt; } return NULL; @@ -1972,16 +1972,16 @@ desc_route(const char *cmd, const struct rt6 *rt) gate = inet_ntop(AF_INET6, &rt->gate, gatebuf, INET6_ADDRSTRLEN); if (IN6_ARE_ADDR_EQUAL(&rt->gate, &in6addr_any)) logger(ctx, LOG_INFO, "%s: %s route to %s/%d", - ifname, cmd, dest, ipv6_prefixlen(&rt->net)); + ifname, cmd, dest, ipv6_prefixlen(&rt->mask)); else if (IN6_ARE_ADDR_EQUAL(&rt->dest, &in6addr_any) && - IN6_ARE_ADDR_EQUAL(&rt->net, &in6addr_any)) + IN6_ARE_ADDR_EQUAL(&rt->mask, &in6addr_any)) logger(ctx, LOG_INFO, "%s: %s default route via %s", ifname, cmd, gate); else logger(ctx, LOG_INFO, "%s: %s%s route to %s/%d via %s", ifname, cmd, rt->flags & RTF_REJECT ? " reject" : "", - dest, ipv6_prefixlen(&rt->net), gate); + dest, ipv6_prefixlen(&rt->mask), gate); } static struct rt6* @@ -1999,7 +1999,7 @@ ipv6_findrt(struct dhcpcd_ctx *ctx, const struct rt6 *rt, int flags) (!flags || rt->iface == r->iface || (rt->flags & RTF_REJECT && r->flags & RTF_REJECT)) && #endif - IN6_ARE_ADDR_EQUAL(&rt->net, &r->net)) + IN6_ARE_ADDR_EQUAL(&rt->mask, &r->mask)) return r; } return NULL; @@ -2061,7 +2061,7 @@ nc_route(struct rt6 *ort, struct rt6 *nrt) /* Don't set default routes if not asked to */ if (IN6_IS_ADDR_UNSPECIFIED(&nrt->dest) && - IN6_IS_ADDR_UNSPECIFIED(&nrt->net) && + IN6_IS_ADDR_UNSPECIFIED(&nrt->mask) && !(nrt->iface->options->options & DHCPCD_GATEWAY)) return -1; @@ -2205,7 +2205,7 @@ make_prefix(const struct interface *ifp, const struct ra *rap, if (r == NULL) return NULL; r->dest = addr->prefix; - ipv6_mask(&r->net, addr->prefix_len); + ipv6_mask(&r->mask, addr->prefix_len); if (addr->flags & IPV6_AF_DELEGATEDPFX) { r->flags |= RTF_REJECT; r->gate = in6addr_loopback; @@ -2223,14 +2223,14 @@ make_router(const struct ra *rap) if (r == NULL) return NULL; r->dest = in6addr_any; - r->net = in6addr_any; + r->mask = in6addr_any; r->gate = rap->from; return r; } #define RT_IS_DEFAULT(rtp) \ (IN6_ARE_ADDR_EQUAL(&((rtp)->dest), &in6addr_any) && \ - IN6_ARE_ADDR_EQUAL(&((rtp)->net), &in6addr_any)) + IN6_ARE_ADDR_EQUAL(&((rtp)->mask), &in6addr_any)) static void ipv6_build_static_routes(struct dhcpcd_ctx *ctx, struct rt6_head *dnr) diff --git a/ipv6.h b/ipv6.h index 5ae8426b..125d1ff0 100644 --- a/ipv6.h +++ b/ipv6.h @@ -188,7 +188,7 @@ struct ipv6_addr { struct rt6 { TAILQ_ENTRY(rt6) next; struct in6_addr dest; - struct in6_addr net; + struct in6_addr mask; struct in6_addr gate; const struct interface *iface; unsigned int flags;