]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
s/ipaddr/addr/ so we don't have ipaddr.ipaddr.v4/v6
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Wed, 3 May 2017 18:11:31 +0000 (14:11 -0400)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Wed, 3 May 2017 18:11:31 +0000 (14:11 -0400)
40 files changed:
src/include/inet.h
src/lib/util/inet.c
src/lib/util/socket.c
src/lib/util/tcp.c
src/lib/util/value.c
src/main/client.c
src/main/command.c
src/main/listen.c
src/main/process.c
src/main/radclient.c
src/main/radsniff.c
src/main/realms.c
src/main/session.c
src/main/snmp.c
src/main/stats.c
src/main/tls_listen.c
src/main/unit_test_module.c
src/main/xlat_eval.c
src/modules/proto_arp/proto_arp.c
src/modules/proto_bfd/proto_bfd.c
src/modules/proto_detail/proto_detail.c
src/modules/proto_dhcp/dhcp.c
src/modules/proto_dhcp/dhcpclient.c
src/modules/proto_dhcp/proto_dhcp.c
src/modules/proto_tacacs/tacacs.c
src/modules/rlm_detail/rlm_detail.c
src/modules/rlm_preprocess/rlm_preprocess.c
src/modules/rlm_radius_client/rlm_radius_client.c
src/modules/rlm_radutmp/rlm_radutmp.c
src/modules/rlm_realm/rlm_realm.c
src/modules/rlm_redis/cluster.c
src/modules/rlm_redis_ippool/redis_ippool.h
src/modules/rlm_redis_ippool/rlm_redis_ippool.c
src/modules/rlm_redis_ippool/rlm_redis_ippool_tool.c
src/modules/rlm_unix/rlm_unix.c
src/protocols/radius/base.c
src/protocols/radius/list.c
src/protocols/radius/packet.c
src/tests/util/radius1_test.c
src/tests/util/radius_schedule_test.c

index 50af7a0d660d657fbc9e0311895008dc54b490e1..153b5de50558565dc755c594c77c103215a99ca8 100644 (file)
@@ -45,7 +45,7 @@ typedef struct fr_ipaddr_t {
        union {
                struct in_addr  v4;             //!< IPv4 address.
                struct in6_addr v6;             //!< IPv6 address.
-       } ipaddr;
+       } addr;
        uint8_t         prefix;                 //!< Prefix length - Between 0-32 for IPv4 and 0-128 for IPv6.
        uint32_t        zone_id;                //!< A host may have multiple link-local interfaces
                                                //!< the scope ID allows the application to specify which of
index 91799301a8c4474cf6fcdcc8771e97b638921af1..9c6d753609279bd26ca6bbff86ce4267219844e5 100644 (file)
@@ -92,11 +92,11 @@ void fr_ipaddr_mask(fr_ipaddr_t *addr, uint8_t prefix)
 
        switch (addr->af) {
        case AF_INET:
-               addr->ipaddr.v4 = fr_inaddr_mask(&addr->ipaddr.v4, prefix);
+               addr->addr.v4 = fr_inaddr_mask(&addr->addr.v4, prefix);
                break;
 
        case AF_INET6:
-               addr->ipaddr.v6 = fr_in6addr_mask(&addr->ipaddr.v6, prefix);
+               addr->addr.v6 = fr_in6addr_mask(&addr->addr.v6, prefix);
                break;
 
        default:
@@ -155,7 +155,7 @@ int fr_inet_hton(fr_ipaddr_t *out, int af, char const *hostname, bool fallback)
 
                if (af == AF_UNSPEC) af = AF_INET;
 
-               if (!inet_pton(af, hostname, &(out->ipaddr))) return -1;
+               if (!inet_pton(af, hostname, &(out->addr))) return -1;
 
                out->af = af;
                return 0;
@@ -233,7 +233,7 @@ char const *fr_inet_ntoh(fr_ipaddr_t const *src, char *out, size_t outlen)
         *      No DNS lookups
         */
        if (!fr_dns_lookups) {
-               return inet_ntop(src->af, &(src->ipaddr), out, outlen);
+               return inet_ntop(src->af, &(src->addr), out, outlen);
        }
 
        if (!fr_ipaddr_to_sockaddr(src, 0, &ss, &salen)) {
@@ -379,7 +379,7 @@ int fr_inet_pton4(fr_ipaddr_t *out, char const *value, ssize_t inlen, bool resol
                 *      Allow '*' as the wildcard address usually 0.0.0.0
                 */
                if ((value[0] == '*') && (value[1] == '\0')) {
-                       out->ipaddr.v4.s_addr = htonl(INADDR_ANY);
+                       out->addr.v4.s_addr = htonl(INADDR_ANY);
 
                /*
                 *      Convert things which are obviously integers to IP addresses
@@ -388,10 +388,10 @@ int fr_inet_pton4(fr_ipaddr_t *out, char const *value, ssize_t inlen, bool resol
                 *      IP address.
                 */
                } else if (is_integer(value) || ((value[0] == '0') && (value[1] == 'x'))) {
-                       out->ipaddr.v4.s_addr = htonl(strtoul(value, NULL, 0));
+                       out->addr.v4.s_addr = htonl(strtoul(value, NULL, 0));
 
                } else if (!resolve) {
-                       if (inet_pton(AF_INET, value, &out->ipaddr.v4.s_addr) <= 0) {
+                       if (inet_pton(AF_INET, value, &out->addr.v4.s_addr) <= 0) {
                                fr_strerror_printf("Failed to parse IPv4 addreess string \"%s\"", value);
                                return -1;
                        }
@@ -422,7 +422,7 @@ int fr_inet_pton4(fr_ipaddr_t *out, char const *value, ssize_t inlen, bool resol
         *
         *      @todo we should allow hostnames to be parsed as prefixes.
         */
-       if (ip_prefix_addr_from_str(&out->ipaddr.v4, buffer) <= 0) {
+       if (ip_prefix_addr_from_str(&out->addr.v4, buffer) <= 0) {
                fr_strerror_printf("Failed to parse IPv4 prefix string \"%s\"", value);
                return -1;
        }
@@ -440,7 +440,7 @@ int fr_inet_pton4(fr_ipaddr_t *out, char const *value, ssize_t inlen, bool resol
        }
 
        if (mask_bits && (mask < 32)) {
-               out->ipaddr.v4 = fr_inaddr_mask(&out->ipaddr.v4, mask);
+               out->addr.v4 = fr_inaddr_mask(&out->addr.v4, mask);
        }
 
        out->prefix = (uint8_t) mask;
@@ -491,9 +491,9 @@ int fr_inet_pton6(fr_ipaddr_t *out, char const *value, ssize_t inlen, bool resol
                 *      Allow '*' as the wildcard address
                 */
                if ((value[0] == '*') && (value[1] == '\0')) {
-                       memset(out->ipaddr.v6.s6_addr, 0, sizeof(out->ipaddr.v6.s6_addr));
+                       memset(out->addr.v6.s6_addr, 0, sizeof(out->addr.v6.s6_addr));
                } else if (!resolve) {
-                       if (inet_pton(AF_INET6, value, out->ipaddr.v6.s6_addr) <= 0) {
+                       if (inet_pton(AF_INET6, value, out->addr.v6.s6_addr) <= 0) {
                                fr_strerror_printf("Failed to parse IPv6 address string \"%s\"", value);
                                return -1;
                        }
@@ -514,7 +514,7 @@ int fr_inet_pton6(fr_ipaddr_t *out, char const *value, ssize_t inlen, bool resol
        buffer[p - value] = '\0';
 
        if (!resolve) {
-               if (inet_pton(AF_INET6, buffer, out->ipaddr.v6.s6_addr) <= 0) {
+               if (inet_pton(AF_INET6, buffer, out->addr.v6.s6_addr) <= 0) {
                        fr_strerror_printf("Failed to parse IPv6 address string \"%s\"", value);
                        return -1;
                }
@@ -534,8 +534,8 @@ int fr_inet_pton6(fr_ipaddr_t *out, char const *value, ssize_t inlen, bool resol
        if (mask && (prefix < 128)) {
                struct in6_addr addr;
 
-               addr = fr_in6addr_mask(&out->ipaddr.v6, prefix);
-               memcpy(out->ipaddr.v6.s6_addr, addr.s6_addr, sizeof(out->ipaddr.v6.s6_addr));
+               addr = fr_in6addr_mask(&out->addr.v6, prefix);
+               memcpy(out->addr.v6.s6_addr, addr.s6_addr, sizeof(out->addr.v6.s6_addr));
        }
 
        out->prefix = (uint8_t) prefix;
@@ -722,7 +722,7 @@ char *fr_inet_ntop(char out[FR_IPADDR_STRLEN], size_t outlen, fr_ipaddr_t const
        char    *p;
        size_t  len;
 
-       if (inet_ntop(addr->af, &addr->ipaddr, out, outlen) == NULL) return NULL;
+       if (inet_ntop(addr->af, &addr->addr, out, outlen) == NULL) return NULL;
 
        if ((addr->af == AF_INET) || (addr->zone_id == 0)) return out;
 
@@ -1041,18 +1041,18 @@ int fr_ipaddr_cmp(fr_ipaddr_t const *a, fr_ipaddr_t const *b)
 
        switch (a->af) {
        case AF_INET:
-               return memcmp(&a->ipaddr.v4,
-                             &b->ipaddr.v4,
-                             sizeof(a->ipaddr.v4));
+               return memcmp(&a->addr.v4,
+                             &b->addr.v4,
+                             sizeof(a->addr.v4));
 
 #ifdef HAVE_STRUCT_SOCKADDR_IN6
        case AF_INET6:
                if (a->zone_id < b->zone_id) return -1;
                if (a->zone_id > b->zone_id) return +1;
 
-               return memcmp(&a->ipaddr.v6,
-                             &b->ipaddr.v6,
-                             sizeof(a->ipaddr.v6));
+               return memcmp(&a->addr.v6,
+                             &b->addr.v6,
+                             sizeof(a->addr.v6));
 #endif
 
        default:
@@ -1074,7 +1074,7 @@ int fr_ipaddr_to_sockaddr(fr_ipaddr_t const *ipaddr, uint16_t port,
 
                memset(&s4, 0, sizeof(s4));
                s4.sin_family = AF_INET;
-               s4.sin_addr = ipaddr->ipaddr.v4;
+               s4.sin_addr = ipaddr->addr.v4;
                s4.sin_port = htons(port);
                memset(sa, 0, sizeof(*sa));
                memcpy(sa, &s4, sizeof(s4));
@@ -1087,7 +1087,7 @@ int fr_ipaddr_to_sockaddr(fr_ipaddr_t const *ipaddr, uint16_t port,
 
                memset(&s6, 0, sizeof(s6));
                s6.sin6_family = AF_INET6;
-               s6.sin6_addr = ipaddr->ipaddr.v6;
+               s6.sin6_addr = ipaddr->addr.v6;
                s6.sin6_port = htons(port);
                s6.sin6_scope_id = ipaddr->zone_id;
                memset(sa, 0, sizeof(*sa));
@@ -1116,7 +1116,7 @@ int fr_ipaddr_from_sockaddr(struct sockaddr_storage const *sa, socklen_t salen,
                memcpy(&s4, sa, sizeof(s4));
                ipaddr->af = AF_INET;
                ipaddr->prefix = 32;
-               ipaddr->ipaddr.v4 = s4.sin_addr;
+               ipaddr->addr.v4 = s4.sin_addr;
                if (port) *port = ntohs(s4.sin_port);
 
 #ifdef HAVE_STRUCT_SOCKADDR_IN6
@@ -1131,7 +1131,7 @@ int fr_ipaddr_from_sockaddr(struct sockaddr_storage const *sa, socklen_t salen,
                memcpy(&s6, sa, sizeof(s6));
                ipaddr->af = AF_INET6;
                ipaddr->prefix = 128;
-               ipaddr->ipaddr.v6 = s6.sin6_addr;
+               ipaddr->addr.v6 = s6.sin6_addr;
                if (port) *port = ntohs(s6.sin6_port);
                ipaddr->zone_id = s6.sin6_scope_id;
 #endif
index 146a6d430279660bb421488c60fb36a63f39314a..471edd98fc4199602d8cdfd426c9e5f04b34e1cb 100644 (file)
@@ -516,7 +516,7 @@ int fr_socket_server_base(int proto, fr_ipaddr_t *ipaddr, int *port, char const
         */
        if (ipaddr->af == AF_INET6) {
 #  ifdef IPV6_V6ONLY
-               if (IN6_IS_ADDR_UNSPECIFIED(&ipaddr->ipaddr.v6)) {
+               if (IN6_IS_ADDR_UNSPECIFIED(&ipaddr->addr.v6)) {
                        int on = 1;
 
                        if (setsockopt(sockfd, IPPROTO_IPV6, IPV6_V6ONLY,
@@ -744,7 +744,7 @@ int fr_socket(fr_ipaddr_t const *ipaddr, uint16_t port)
                 */
 #ifdef IPV6_V6ONLY
 
-               if (IN6_IS_ADDR_UNSPECIFIED(&ipaddr->ipaddr.v6)) {
+               if (IN6_IS_ADDR_UNSPECIFIED(&ipaddr->addr.v6)) {
                        int on = 1;
 
                        if (setsockopt(sockfd, IPPROTO_IPV6, IPV6_V6ONLY,
@@ -821,13 +821,13 @@ int fr_is_inaddr_any(fr_ipaddr_t *ipaddr)
 {
 
        if (ipaddr->af == AF_INET) {
-               if (ipaddr->ipaddr.v4.s_addr == INADDR_ANY) {
+               if (ipaddr->addr.v4.s_addr == INADDR_ANY) {
                        return 1;
                }
 
 #ifdef HAVE_STRUCT_SOCKADDR_IN6
        } else if (ipaddr->af == AF_INET6) {
-               if (IN6_IS_ADDR_UNSPECIFIED(&(ipaddr->ipaddr.v6))) {
+               if (IN6_IS_ADDR_UNSPECIFIED(&(ipaddr->addr.v6))) {
                        return 1;
                }
 #endif
index 6d1b36e3f4f6ba05043ed045d87a849b87e1c639..4d889c2368709dc587f2374d3b3dc7f1c111c759 100644 (file)
@@ -154,7 +154,7 @@ int fr_tcp_read_packet(RADIUS_PACKET *packet, bool require_ma)
 
                if (packet->src_ipaddr.af != AF_UNSPEC) {
                        inet_ntop(packet->src_ipaddr.af,
-                                 &packet->src_ipaddr.ipaddr,
+                                 &packet->src_ipaddr.addr,
                                  ip_buf, sizeof(ip_buf));
                        snprintf(buffer, sizeof(buffer), "host %s port %d",
                                 ip_buf, packet->src_port);
index 0a7af1d6b8dcde313c1bc760a2049809ba4fb37f..5e1e7f1c4fff083bedfed6d9ab651648dcd69384 100644 (file)
@@ -1951,7 +1951,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                        return -1;
                }
 
-               dst->datum.ipaddr.s_addr = addr.ipaddr.v4.s_addr;
+               dst->datum.ipaddr.s_addr = addr.addr.v4.s_addr;
        }
                goto finish;
 
@@ -1962,7 +1962,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                if (fr_inet_pton4(&addr, in, inlen, fr_hostname_lookups, false, true) < 0) return -1;
 
                dst->datum.ipv4prefix[1] = addr.prefix;
-               memcpy(&dst->datum.ipv4prefix[2], &addr.ipaddr.v4.s_addr, sizeof(dst->datum.ipv4prefix) - 2);
+               memcpy(&dst->datum.ipv4prefix[2], &addr.addr.v4.s_addr, sizeof(dst->datum.ipv4prefix) - 2);
        }
                goto finish;
 
@@ -1982,7 +1982,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                        return -1;
                }
 
-               memcpy(&dst->datum.ipv6addr, addr.ipaddr.v6.s6_addr, sizeof(dst->datum.ipv6addr));
+               memcpy(&dst->datum.ipv6addr, addr.addr.v6.s6_addr, sizeof(dst->datum.ipv6addr));
        }
                goto finish;
 
@@ -1993,7 +1993,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                if (fr_inet_pton6(&addr, in, inlen, fr_hostname_lookups, false, true) < 0) return -1;
 
                dst->datum.ipv6prefix[1] = addr.prefix;
-               memcpy(&dst->datum.ipv6prefix[2], addr.ipaddr.v6.s6_addr, sizeof(dst->datum.ipv6prefix) - 2);
+               memcpy(&dst->datum.ipv6prefix[2], addr.addr.v6.s6_addr, sizeof(dst->datum.ipv6prefix) - 2);
        }
                goto finish;
 
@@ -2283,7 +2283,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                        }
 
                        *dst_type = PW_TYPE_IPV4_ADDR;
-                       dst->datum.ipaddr.s_addr = ipaddr.ipaddr.v4.s_addr;
+                       dst->datum.ipaddr.s_addr = ipaddr.addr.v4.s_addr;
                        ret = dict_attr_sizes[PW_TYPE_COMBO_IP_ADDR][0]; /* size of IPv4 address */
                }
        }
index 4535cef6bf6b83d34b006a19223b7178d447ee3a..9540733841c0c8eeb69b7ee06e5bc3d085707cc7 100644 (file)
@@ -1272,14 +1272,14 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
                case PW_TYPE_IPV4_ADDR:
                        if (da->attr == PW_FREERADIUS_CLIENT_IP_ADDRESS) {
                                c->ipaddr.af = AF_INET;
-                               c->ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                               c->ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                                c->ipaddr.prefix = 32;
                                cp = cf_pair_alloc(c->cs, "ipv4addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
                        } else if (da->attr == PW_FREERADIUS_CLIENT_SRC_IP_ADDRESS) {
 #ifdef WITH_UDPFROMTO
                                RDEBUG2("src_ipaddr = %s", strvalue);
                                c->src_ipaddr.af = AF_INET;
-                               c->src_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                               c->src_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                                c->src_ipaddr.prefix = 32;
                                cp = cf_pair_alloc(c->cs, "src_ipaddr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
 #else
@@ -1292,13 +1292,13 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
                case PW_TYPE_IPV6_ADDR:
                        if (da->attr == PW_FREERADIUS_CLIENT_IPV6_ADDRESS) {
                                c->ipaddr.af = AF_INET6;
-                               c->ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+                               c->ipaddr.addr.v6 = vp->vp_ipv6addr;
                                c->ipaddr.prefix = 128;
                                cp = cf_pair_alloc(c->cs, "ipv6addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
                        } else if (da->attr == PW_FREERADIUS_CLIENT_SRC_IPV6_ADDRESS) {
 #ifdef WITH_UDPFROMTO
                                c->src_ipaddr.af = AF_INET6;
-                               c->src_ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+                               c->src_ipaddr.addr.v6 = vp->vp_ipv6addr;
                                c->src_ipaddr.prefix = 128;
                                cp = cf_pair_alloc(c->cs, "src_addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
 #else
@@ -1311,8 +1311,8 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
                case PW_TYPE_IPV4_PREFIX:
                        if (da->attr == PW_FREERADIUS_CLIENT_IP_PREFIX) {
                                c->ipaddr.af = AF_INET;
-                               memcpy(&c->ipaddr.ipaddr.v4, &vp->vp_ipv4prefix[2],
-                                      sizeof(c->ipaddr.ipaddr.v4.s_addr));
+                               memcpy(&c->ipaddr.addr.v4, &vp->vp_ipv4prefix[2],
+                                      sizeof(c->ipaddr.addr.v4.s_addr));
                                fr_ipaddr_mask(&c->ipaddr, (vp->vp_ipv4prefix[1] & 0x3f));
                                cp = cf_pair_alloc(c->cs, "ipv4addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
                        }
@@ -1322,8 +1322,8 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
                case PW_TYPE_IPV6_PREFIX:
                        if (da->attr == PW_FREERADIUS_CLIENT_IPV6_PREFIX) {
                                c->ipaddr.af = AF_INET6;
-                               memcpy(&c->ipaddr.ipaddr.v6, &vp->vp_ipv6prefix[2],
-                                      sizeof(c->ipaddr.ipaddr.v6));
+                               memcpy(&c->ipaddr.addr.v6, &vp->vp_ipv6prefix[2],
+                                      sizeof(c->ipaddr.addr.v6));
                                fr_ipaddr_mask(&c->ipaddr, vp->vp_ipv6prefix[1]);
                                cp = cf_pair_alloc(c->cs, "ipv6addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
                        }
index 8b207067be796907cf52e82f2c67783cc9bd9df7..47fd565590b866778e566ae3a571311fee57a2eb 100644 (file)
@@ -1992,7 +1992,7 @@ static int null_socket_send(UNUSED rad_listen_t *listener, REQUEST *request)
                if (rad_debug_lvl) {
                        RDEBUG("Injected %s packet to host %s port 0 code=%d, id=%d", what,
                               inet_ntop(request->reply->src_ipaddr.af,
-                                        &request->reply->src_ipaddr.ipaddr,
+                                        &request->reply->src_ipaddr.addr,
                                         buffer, sizeof(buffer)),
                                         request->reply->code, request->reply->id);
                }
@@ -2197,7 +2197,7 @@ static int command_inject_file(rad_listen_t *listener, int argc, char *argv[])
                DEBUG("Injecting %s packet from host %s port 0 code=%d, id=%d",
                      fr_packet_codes[packet->code],
                      inet_ntop(packet->src_ipaddr.af,
-                               &packet->src_ipaddr.ipaddr,
+                               &packet->src_ipaddr.addr,
                                buffer, sizeof(buffer)),
                      packet->code, packet->id);
 
index 8c14d6db115f834929b8ad227ecfd6b5eb3a54db..648dab7ac6c2b08347e455e5abf60c47e19964e3 100644 (file)
@@ -405,7 +405,7 @@ RADCLIENT *client_listener_find(rad_listen_t *listener,
 #ifdef WITH_TCP
                       " proto %s"
 #endif
-                      , name, inet_ntop(ipaddr->af, &ipaddr->ipaddr,
+                      , name, inet_ntop(ipaddr->af, &ipaddr->addr,
                                         buffer, sizeof(buffer)), src_port
 #ifdef WITH_TCP
                       , (sock->proto == IPPROTO_UDP) ? "udp" : "tcp"
@@ -1073,7 +1073,7 @@ int common_socket_print(rad_listen_t const *this, char *buffer, size_t bufsize)
                ADDSTRING(") -> (");
 
                if ((sock->my_ipaddr.af == AF_INET) &&
-                   (sock->my_ipaddr.ipaddr.v4.s_addr == htonl(INADDR_ANY))) {
+                   (sock->my_ipaddr.addr.v4.s_addr == htonl(INADDR_ANY))) {
                        strlcpy(buffer, "*", bufsize);
                } else {
                        fr_inet_ntoh(&sock->my_ipaddr, buffer, bufsize);
@@ -1110,7 +1110,7 @@ int common_socket_print(rad_listen_t const *this, char *buffer, size_t bufsize)
                ADDSTRING(") -> home_server (");
 
                if ((sock->other_ipaddr.af == AF_INET) &&
-                   (sock->other_ipaddr.ipaddr.v4.s_addr == htonl(INADDR_ANY))) {
+                   (sock->other_ipaddr.addr.v4.s_addr == htonl(INADDR_ANY))) {
                        strlcpy(buffer, "*", bufsize);
                } else {
                        fr_inet_ntoh(&sock->other_ipaddr, buffer, bufsize);
@@ -1131,7 +1131,7 @@ int common_socket_print(rad_listen_t const *this, char *buffer, size_t bufsize)
        ADDSTRING(" address ");
 
        if ((sock->my_ipaddr.af == AF_INET) &&
-           (sock->my_ipaddr.ipaddr.v4.s_addr == htonl(INADDR_ANY))) {
+           (sock->my_ipaddr.addr.v4.s_addr == htonl(INADDR_ANY))) {
                strlcpy(buffer, "*", bufsize);
        } else {
                fr_inet_ntoh(&sock->my_ipaddr, buffer, bufsize);
@@ -1296,7 +1296,7 @@ int common_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
         *      Try IPv4 first
         */
        memset(&ipaddr, 0, sizeof(ipaddr));
-       ipaddr.ipaddr.v4.s_addr = htonl(INADDR_NONE);
+       ipaddr.addr.v4.s_addr = htonl(INADDR_NONE);
 
        rcode = cf_pair_parse(NULL, cs, "ipaddr", FR_ITEM_POINTER(PW_TYPE_COMBO_IP_ADDR, &ipaddr), NULL, T_INVALID);
        if (rcode < 0) return -1;
@@ -1313,7 +1313,7 @@ int common_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
                memset(&ipaddr, 0, sizeof(ipaddr));
                ipaddr.af = AF_INET6;
                ipaddr.prefix = 128;
-               ipaddr.ipaddr.v6 = in6addr_any; /* in6addr_any binds to all addresses */
+               ipaddr.addr.v6 = in6addr_any;   /* in6addr_any binds to all addresses */
        }
 
        rcode = cf_pair_parse(NULL, cs, "port", FR_ITEM_POINTER(PW_TYPE_SHORT, &sock->my_port), "0", T_BARE_WORD);
index 12007504aaf8373a2cd8d9d0cebc37a70a321cad..c3b2a541a67d723f922352663499d2899c9071ea 100644 (file)
@@ -502,7 +502,7 @@ static void proxy_reply_too_late(REQUEST *request)
        RDEBUG2("Reply from home server %s port %d  - ID: %d arrived too late.  "
                "Try increasing 'retry_delay' or 'max_request_time'",
                inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                         &request->proxy->packet->dst_ipaddr.ipaddr,
+                         &request->proxy->packet->dst_ipaddr.addr,
                          buffer, sizeof(buffer)),
                request->proxy->packet->dst_port, request->proxy->packet->id);
 }
@@ -2250,7 +2250,7 @@ static int insert_into_proxy_hash(REQUEST *request)
        pthread_mutex_unlock(&proxy_mutex);
 
        RDEBUG3("proxy: allocating destination %s port %d - Id %d",
-              inet_ntop(request->proxy->packet->dst_ipaddr.af, &request->proxy->packet->dst_ipaddr.ipaddr, buffer, sizeof(buffer)),
+              inet_ntop(request->proxy->packet->dst_ipaddr.af, &request->proxy->packet->dst_ipaddr.addr, buffer, sizeof(buffer)),
               request->proxy->packet->dst_port,
               request->proxy->packet->id);
 
@@ -2361,7 +2361,7 @@ int request_proxy_reply(RADIUS_PACKET *reply)
                PROXY("No outstanding request was found for %s packet from host %s port %d - ID %u",
                       fr_packet_codes[reply->code],
                       inet_ntop(reply->src_ipaddr.af,
-                                &reply->src_ipaddr.ipaddr,
+                                &reply->src_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       reply->src_port, reply->id);
                return 0;
@@ -2395,7 +2395,7 @@ int request_proxy_reply(RADIUS_PACKET *reply)
         */
        if (!proxy->reply && (fr_radius_packet_verify(reply, proxy->packet, proxy->home_server->secret) != 0)) {
                RWDEBUG("Discarding invalid reply from host %s port %d - ID: %d: %s",
-                       inet_ntop(reply->src_ipaddr.af, &reply->src_ipaddr.ipaddr, buffer, sizeof(buffer)),
+                       inet_ntop(reply->src_ipaddr.af, &reply->src_ipaddr.addr, buffer, sizeof(buffer)),
                        reply->src_port, reply->id, fr_strerror());
                return 0;
        }
@@ -2407,7 +2407,7 @@ int request_proxy_reply(RADIUS_PACKET *reply)
         */
        if (proxy->reply && (memcmp(proxy->reply->vector, reply->vector, sizeof(proxy->reply->vector)) != 0)) {
                RWDEBUG("Discarding conflicting reply from host %s port %d - ID: %d",
-                       inet_ntop(reply->src_ipaddr.af, &reply->src_ipaddr.ipaddr, buffer, sizeof(buffer)),
+                       inet_ntop(reply->src_ipaddr.af, &reply->src_ipaddr.addr, buffer, sizeof(buffer)),
                        reply->src_port, reply->id);
                return 0;
        }
@@ -2420,7 +2420,7 @@ int request_proxy_reply(RADIUS_PACKET *reply)
                proxy->reply->count++;
 
                RWDEBUG("Discarding duplicate reply from host %s port %d - ID: %d",
-                       inet_ntop(reply->src_ipaddr.af, &reply->src_ipaddr.ipaddr, buffer, sizeof(buffer)),
+                       inet_ntop(reply->src_ipaddr.af, &reply->src_ipaddr.addr, buffer, sizeof(buffer)),
                        reply->src_port, reply->id);
                return 0;
        }
@@ -2989,11 +2989,11 @@ static int request_will_proxy(REQUEST *request)
 
                if (vp->da->attr == PW_PACKET_DST_IP_ADDRESS) {
                        dst_ipaddr.af = AF_INET;
-                       dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                       dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                        dst_ipaddr.prefix = 32;
                } else {
                        dst_ipaddr.af = AF_INET6;
-                       memcpy(&dst_ipaddr.ipaddr.v6, &vp->vp_ipv6addr, sizeof(vp->vp_ipv6addr));
+                       memcpy(&dst_ipaddr.addr.v6, &vp->vp_ipv6addr, sizeof(vp->vp_ipv6addr));
                        dst_ipaddr.prefix = 128;
                }
 
@@ -3028,7 +3028,7 @@ static int request_will_proxy(REQUEST *request)
                        char buffer[INET6_ADDRSTRLEN];
 
                        WARN("No such home server %s port %u",
-                            inet_ntop(dst_ipaddr.af, &dst_ipaddr.ipaddr, buffer, sizeof(buffer)),
+                            inet_ntop(dst_ipaddr.af, &dst_ipaddr.addr, buffer, sizeof(buffer)),
                             (unsigned int) dst_port);
                        return 0;
                }
@@ -3284,7 +3284,7 @@ static int request_proxy_send(REQUEST *request)
                if (request->proxy->home_server->tls) {
                        RDEBUG2("Proxying request to home server %s port %d (TLS) timeout %d.%06d",
                                inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                         &request->proxy->packet->dst_ipaddr.ipaddr,
+                                         &request->proxy->packet->dst_ipaddr.addr,
                                          buffer, sizeof(buffer)),
                                request->proxy->packet->dst_port,
                                (int) response_window->tv_sec, (int) response_window->tv_usec);
@@ -3292,7 +3292,7 @@ static int request_proxy_send(REQUEST *request)
 #endif
                        RDEBUG2("Proxying request to home server %s port %d timeout %d.%06d",
                                inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                         &request->proxy->packet->dst_ipaddr.ipaddr,
+                                         &request->proxy->packet->dst_ipaddr.addr,
                                          buffer, sizeof(buffer)),
                                request->proxy->packet->dst_port,
                                (int) response_window->tv_sec, (int) response_window->tv_usec);
@@ -3442,7 +3442,7 @@ static void request_ping(REQUEST *request, fr_state_action_t action)
                       request->number,
                       request->proxy->packet->id,
                       inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                &request->proxy->packet->dst_ipaddr.ipaddr,
+                                &request->proxy->packet->dst_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       request->proxy->packet->dst_port);
                remove_from_proxy_hash(request);
@@ -3715,13 +3715,13 @@ static void mark_home_server_alive(REQUEST *request, home_server_t *home)
        if (old_state == HOME_STATE_UNKNOWN) {
                RPROXY("Home server %s port %d went from idle -> alive",
                       inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                &request->proxy->packet->dst_ipaddr.ipaddr,
+                                &request->proxy->packet->dst_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       request->proxy->packet->dst_port);
        } else {
                RPROXY("Marking home server %s port %d alive",
                       inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                &request->proxy->packet->dst_ipaddr.ipaddr,
+                                &request->proxy->packet->dst_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       request->proxy->packet->dst_port);
        }
@@ -3770,7 +3770,7 @@ static void mark_home_server_zombie(home_server_t *home, struct timeval *now, st
        home->num_received_pings = 0;
 
        PROXY("Marking home server %s port %d as zombie (it has not responded in %d.%06d seconds).",
-             inet_ntop(home->ipaddr.af, &home->ipaddr.ipaddr,
+             inet_ntop(home->ipaddr.af, &home->ipaddr.addr,
                        buffer, sizeof(buffer)),
              home->port, (int) response_window->tv_sec, (int) response_window->tv_usec);
 
@@ -3784,7 +3784,7 @@ void mark_home_server_dead(home_server_t *home, struct timeval *when)
        char buffer[INET6_ADDRSTRLEN];
 
        PROXY("Marking home server %s port %d as dead",
-             inet_ntop(home->ipaddr.af, &home->ipaddr.ipaddr,
+             inet_ntop(home->ipaddr.af, &home->ipaddr.addr,
                        buffer, sizeof(buffer)),
              home->port);
 
@@ -3839,7 +3839,7 @@ void revive_home_server(UNUSED fr_event_list_t *eel, UNUSED struct timeval *now,
        fr_event_timer_delete(el, &home->ev);
 
        PROXY("Marking home server %s port %d alive again... we have no idea if it really is alive or not.",
-             inet_ntop(home->ipaddr.af, &home->ipaddr.ipaddr, buffer, sizeof(buffer)),
+             inet_ntop(home->ipaddr.af, &home->ipaddr.addr, buffer, sizeof(buffer)),
              home->port);
 }
 
@@ -3949,13 +3949,13 @@ static bool proxy_keep_waiting(REQUEST *request, struct timeval *now)
                       "server %s port %d",
                       request->username->vp_strvalue,
                       inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                &request->proxy->packet->dst_ipaddr.ipaddr,
+                                &request->proxy->packet->dst_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       request->proxy->packet->dst_port);
        } else {
                RERROR("Failing proxied request, due to lack of any response from home server %s port %d",
                       inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                &request->proxy->packet->dst_ipaddr.ipaddr,
+                                &request->proxy->packet->dst_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       request->proxy->packet->dst_port);
        }
@@ -3994,7 +3994,7 @@ static void proxy_retransmit(REQUEST *request, struct timeval *now)
        if (fr_timeval_cmp(now, &when) < 0) {
                DEBUG2("Suppressing duplicate proxied request (too fast) to home server %s port %d proto TCP - ID: %d",
                       inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                &request->proxy->packet->dst_ipaddr.ipaddr,
+                                &request->proxy->packet->dst_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       request->proxy->packet->dst_port,
                       request->proxy->packet->id);
@@ -4015,7 +4015,7 @@ static void proxy_retransmit(REQUEST *request, struct timeval *now)
 
        RDEBUG2("Sending duplicate proxied request to home server %s port %d - ID: %d",
                inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                         &request->proxy->packet->dst_ipaddr.ipaddr,
+                         &request->proxy->packet->dst_ipaddr.addr,
                          buffer, sizeof(buffer)),
                request->proxy->packet->dst_port,
                request->proxy->packet->id);
@@ -4085,7 +4085,7 @@ static void proxy_wait_for_reply(REQUEST *request, fr_state_action_t action)
                if (home->proto == IPPROTO_TCP) {
                        DEBUG2("Suppressing duplicate proxied request (tcp) to home server %s port %d proto TCP - ID: %d",
                               inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                        &request->proxy->packet->dst_ipaddr.ipaddr,
+                                        &request->proxy->packet->dst_ipaddr.addr,
                                         buffer, sizeof(buffer)),
                               request->proxy->packet->dst_port,
                               request->proxy->packet->id);
@@ -4170,11 +4170,11 @@ static void request_coa_originate(REQUEST *request)
        vp = fr_pair_find_by_num(coa->proxy->packet->vps, 0, PW_PACKET_DST_IP_ADDRESS, TAG_ANY);
        if (vp) {
                ipaddr.af = AF_INET;
-               ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                ipaddr.prefix = 32;
        } else if ((vp = fr_pair_find_by_num(coa->proxy->packet->vps, 0, PW_PACKET_DST_IPV6_ADDRESS, TAG_ANY)) != NULL) {
                ipaddr.af = AF_INET6;
-               ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+               ipaddr.addr.v6 = vp->vp_ipv6addr;
                ipaddr.prefix = 128;
        } else if ((vp = fr_pair_find_by_num(coa->proxy->packet->vps, 0, PW_HOME_SERVER_POOL, TAG_ANY)) != NULL) {
                coa->home_pool = home_pool_byname(vp->vp_strvalue,
@@ -4223,7 +4223,7 @@ static void request_coa_originate(REQUEST *request)
                coa->home_server = home_server_find(&ipaddr, port, IPPROTO_UDP);
                if (!coa->home_server) {
                        RWDEBUG2("Unknown destination %s:%d for CoA request",
-                                inet_ntop(ipaddr.af, &ipaddr.ipaddr,
+                                inet_ntop(ipaddr.af, &ipaddr.addr,
                                           buffer, sizeof(buffer)), port);
                        goto fail;
                }
@@ -4430,7 +4430,7 @@ static bool coa_keep_waiting(REQUEST *request)
                RERROR("Failing request - originate-coa ID %u, due to lack of any response from coa server %s port %d",
                       request->proxy->packet->id,
                       inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                                &request->proxy->packet->dst_ipaddr.ipaddr,
+                                &request->proxy->packet->dst_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       request->proxy->packet->dst_port);
                return false;
@@ -4489,7 +4489,7 @@ static bool coa_keep_waiting(REQUEST *request)
 
        RDEBUG2("Sending duplicate CoA request to home server %s port %d - ID: %d",
                inet_ntop(request->proxy->packet->dst_ipaddr.af,
-                         &request->proxy->packet->dst_ipaddr.ipaddr,
+                         &request->proxy->packet->dst_ipaddr.addr,
                          buffer, sizeof(buffer)),
                request->proxy->packet->dst_port,
                request->proxy->packet->id);
@@ -4621,7 +4621,7 @@ static void coa_no_reply(REQUEST *request, fr_state_action_t action)
        case FR_ACTION_PROXY_REPLY: /* too late! */
                RDEBUG2("Reply from CoA server %s port %d  - ID: %d arrived too late.",
                        inet_ntop(request->proxy->packet->src_ipaddr.af,
-                                 &request->proxy->packet->src_ipaddr.ipaddr,
+                                 &request->proxy->packet->src_ipaddr.addr,
                                  buffer, sizeof(buffer)),
                        request->proxy->packet->dst_port, request->proxy->packet->id);
                break;
index 9d4d8feb35a2c0240bff62932fa7ce74f30fffd2..ac2931f75653d0d779ef2f756af767f8126dd0f7 100644 (file)
@@ -459,13 +459,13 @@ static int radclient_init(TALLOC_CTX *ctx, rc_file_pair_t *files)
 
                        case PW_PACKET_DST_IP_ADDRESS:
                                request->packet->dst_ipaddr.af = AF_INET;
-                               request->packet->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                               request->packet->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                                request->packet->dst_ipaddr.prefix = 32;
                                break;
 
                        case PW_PACKET_DST_IPV6_ADDRESS:
                                request->packet->dst_ipaddr.af = AF_INET6;
-                               request->packet->dst_ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+                               request->packet->dst_ipaddr.addr.v6 = vp->vp_ipv6addr;
                                request->packet->dst_ipaddr.prefix = 128;
                                break;
 
@@ -480,13 +480,13 @@ static int radclient_init(TALLOC_CTX *ctx, rc_file_pair_t *files)
 
                        case PW_PACKET_SRC_IP_ADDRESS:
                                request->packet->src_ipaddr.af = AF_INET;
-                               request->packet->src_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                               request->packet->src_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                                request->packet->src_ipaddr.prefix = 32;
                                break;
 
                        case PW_PACKET_SRC_IPV6_ADDRESS:
                                request->packet->src_ipaddr.af = AF_INET6;
-                               request->packet->src_ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+                               request->packet->src_ipaddr.addr.v6 = vp->vp_ipv6addr;
                                request->packet->src_ipaddr.prefix = 128;
                                break;
 
index 144f421f382636e8d0abc443b64f9a2f7abb195c..be6c5fd90df12bec2e7b6e0affe4382af7d8216c 100644 (file)
@@ -296,8 +296,8 @@ static void rs_packet_print_csv(uint64_t count, rs_status_t status, fr_pcap_t *h
 
        ssize_t len, s = sizeof(buffer);
 
-       inet_ntop(packet->src_ipaddr.af, &packet->src_ipaddr.ipaddr, src, sizeof(src));
-       inet_ntop(packet->dst_ipaddr.af, &packet->dst_ipaddr.ipaddr, dst, sizeof(dst));
+       inet_ntop(packet->src_ipaddr.af, &packet->src_ipaddr.addr, src, sizeof(src));
+       inet_ntop(packet->dst_ipaddr.af, &packet->dst_ipaddr.addr, dst, sizeof(dst));
 
        status_str = fr_int2str(rs_events, status, NULL);
        RS_ASSERT(status_str);
@@ -389,8 +389,8 @@ static void rs_packet_print_fancy(uint64_t count, rs_status_t status, fr_pcap_t
 
        ssize_t len, s = sizeof(buffer);
 
-       inet_ntop(packet->src_ipaddr.af, &packet->src_ipaddr.ipaddr, src, sizeof(src));
-       inet_ntop(packet->dst_ipaddr.af, &packet->dst_ipaddr.ipaddr, dst, sizeof(dst));
+       inet_ntop(packet->src_ipaddr.af, &packet->src_ipaddr.addr, src, sizeof(src));
+       inet_ntop(packet->dst_ipaddr.af, &packet->dst_ipaddr.addr, dst, sizeof(dst));
 
        /* Only print out status str if something's not right */
        if (status != RS_NORMAL) {
@@ -1313,18 +1313,18 @@ static void rs_packet_process(uint64_t count, rs_event_t *event, struct pcap_pkt
         */
        if (ip) {
                current->src_ipaddr.af = AF_INET;
-               current->src_ipaddr.ipaddr.v4.s_addr = ip->ip_src.s_addr;
+               current->src_ipaddr.addr.v4.s_addr = ip->ip_src.s_addr;
 
                current->dst_ipaddr.af = AF_INET;
-               current->dst_ipaddr.ipaddr.v4.s_addr = ip->ip_dst.s_addr;
+               current->dst_ipaddr.addr.v4.s_addr = ip->ip_dst.s_addr;
        } else {
                current->src_ipaddr.af = AF_INET6;
-               memcpy(current->src_ipaddr.ipaddr.v6.s6_addr, ip6->ip_src.s6_addr,
-                      sizeof(current->src_ipaddr.ipaddr.v6.s6_addr));
+               memcpy(current->src_ipaddr.addr.v6.s6_addr, ip6->ip_src.s6_addr,
+                      sizeof(current->src_ipaddr.addr.v6.s6_addr));
 
                current->dst_ipaddr.af = AF_INET6;
-               memcpy(current->dst_ipaddr.ipaddr.v6.s6_addr, ip6->ip_dst.s6_addr,
-                      sizeof(current->dst_ipaddr.ipaddr.v6.s6_addr));
+               memcpy(current->dst_ipaddr.addr.v6.s6_addr, ip6->ip_dst.s6_addr,
+                      sizeof(current->dst_ipaddr.addr.v6.s6_addr));
        }
 
        current->src_port = ntohs(udp->src);
index 44590c2d917201d82e529d131f2bca59ac235be4..64075a8c393244304b0c6f84aecb7bb7d6a4ced4 100644 (file)
@@ -538,7 +538,7 @@ bool realm_home_server_add(home_server_t *home)
        if (!home->server && (rbtree_finddata(home_servers_byaddr, home) != NULL)) {
                char buffer[INET6_ADDRSTRLEN];
 
-               inet_ntop(home->ipaddr.af, &home->ipaddr.ipaddr, buffer, sizeof(buffer));
+               inet_ntop(home->ipaddr.af, &home->ipaddr.addr, buffer, sizeof(buffer));
 
                cf_log_err_cs(home->cs, "Duplicate home server address%s%s%s: %s:%s%s/%i",
                              home->name ? " (already in use by " : "",
@@ -2445,13 +2445,13 @@ home_server_t *home_server_ldb(char const *realmname,
        case HOME_POOL_CLIENT_BALANCE:
                switch (request->packet->src_ipaddr.af) {
                case AF_INET:
-                       hash = fr_hash(&request->packet->src_ipaddr.ipaddr.v4,
-                                        sizeof(request->packet->src_ipaddr.ipaddr.v4));
+                       hash = fr_hash(&request->packet->src_ipaddr.addr.v4,
+                                        sizeof(request->packet->src_ipaddr.addr.v4));
                        break;
 
                case AF_INET6:
-                       hash = fr_hash(&request->packet->src_ipaddr.ipaddr.v6,
-                                        sizeof(request->packet->src_ipaddr.ipaddr.v6));
+                       hash = fr_hash(&request->packet->src_ipaddr.addr.v6,
+                                        sizeof(request->packet->src_ipaddr.addr.v6));
                        break;
 
                default:
@@ -2464,13 +2464,13 @@ home_server_t *home_server_ldb(char const *realmname,
        case HOME_POOL_CLIENT_PORT_BALANCE:
                switch (request->packet->src_ipaddr.af) {
                case AF_INET:
-                       hash = fr_hash(&request->packet->src_ipaddr.ipaddr.v4,
-                                        sizeof(request->packet->src_ipaddr.ipaddr.v4));
+                       hash = fr_hash(&request->packet->src_ipaddr.addr.v4,
+                                        sizeof(request->packet->src_ipaddr.addr.v4));
                        break;
 
                case AF_INET6:
-                       hash = fr_hash(&request->packet->src_ipaddr.ipaddr.v6,
-                                        sizeof(request->packet->src_ipaddr.ipaddr.v6));
+                       hash = fr_hash(&request->packet->src_ipaddr.addr.v6,
+                                        sizeof(request->packet->src_ipaddr.addr.v6));
                        break;
 
                default:
index 81ece38e2ee8032caaefbca722f0087369a420df..f6a6b0d2217d1d05294039a01dc469896035cea1 100644 (file)
@@ -138,7 +138,7 @@ int rad_check_ts(uint32_t nasaddr, uint32_t nas_port, char const *user,
        fr_ipaddr_t ipaddr;
 
        ipaddr.af = AF_INET;
-       ipaddr.ipaddr.v4.s_addr = nasaddr;
+       ipaddr.addr.v4.s_addr = nasaddr;
 
        /*
         *      Find NAS type.
@@ -149,7 +149,7 @@ int rad_check_ts(uint32_t nasaddr, uint32_t nas_port, char const *user,
                 *  Unknown NAS, so trusting radutmp.
                 */
                DEBUG2("checkrad: Unknown NAS %s, not checking",
-                      inet_ntop(ipaddr.af, &ipaddr.ipaddr, buffer, sizeof(buffer)));
+                      inet_ntop(ipaddr.af, &ipaddr.addr, buffer, sizeof(buffer)));
 
                return 1;
        }
@@ -202,7 +202,7 @@ int rad_check_ts(uint32_t nasaddr, uint32_t nas_port, char const *user,
         */
        closefrom(3);
 
-       inet_ntop(ipaddr.af, &ipaddr.ipaddr, buffer, sizeof(buffer));
+       inet_ntop(ipaddr.af, &ipaddr.addr, buffer, sizeof(buffer));
        snprintf(port, 11, "%u", nas_port);
 
 #ifdef __EMX__
index d7e772eaf1dd43c8c7e341ca7d05faea757d48fa..2955ddb1f0af5bef07e435c9e3255a0f084cacc9 100644 (file)
@@ -209,7 +209,7 @@ static int snmp_client_ipv4addr_get(UNUSED TALLOC_CTX *ctx, value_box_t *out,
         */
        if (client->ipaddr.af != AF_INET) return 0;
 
-       out->datum.ipaddr = client->ipaddr.ipaddr.v4;
+       out->datum.ipaddr = client->ipaddr.addr.v4;
        out->length = dict_attr_sizes[PW_TYPE_IPV4_ADDR][0];
 
        return 0;
index 9050ade225fe9d9caeaf3705fd89353e271529a1..05aeb048b120f22e5db620bab92c7c59ee32868f 100644 (file)
@@ -513,7 +513,7 @@ void request_stats_reply(REQUEST *request)
 
                        if (server_port) {
                                ipaddr.af = AF_INET;
-                               ipaddr.ipaddr.v4.s_addr = server_ip->vp_ipv4addr;
+                               ipaddr.addr.v4.s_addr = server_ip->vp_ipv4addr;
                                cl = listener_find_client_list(&ipaddr, server_port->vp_integer, IPPROTO_UDP);
 
                                /*
@@ -529,7 +529,7 @@ void request_stats_reply(REQUEST *request)
                if (vp) {
                        memset(&ipaddr, 0, sizeof(ipaddr));
                        ipaddr.af = AF_INET;
-                       ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                       ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                        client = client_find(cl, &ipaddr, IPPROTO_UDP);
 #ifdef WITH_TCP
                        if (!client) {
@@ -562,7 +562,7 @@ void request_stats_reply(REQUEST *request)
                                                       &request->reply->vps,
                                                       PW_FREERADIUS_STATS_CLIENT_IP_ADDRESS, VENDORPEC_FREERADIUS);
                                if (vp) {
-                                       vp->vp_ipv4addr = client->ipaddr.ipaddr.v4.s_addr;
+                                       vp->vp_ipv4addr = client->ipaddr.addr.v4.s_addr;
                                }
 
                                if (client->ipaddr.prefix != 32) {
@@ -619,7 +619,7 @@ void request_stats_reply(REQUEST *request)
                if (!server_port) return;
 
                ipaddr.af = AF_INET;
-               ipaddr.ipaddr.v4.s_addr = server_ip->vp_ipv4addr;
+               ipaddr.addr.v4.s_addr = server_ip->vp_ipv4addr;
                this = listener_find_byipaddr(&ipaddr,
                                              server_port->vp_integer,
                                              IPPROTO_UDP);
@@ -675,7 +675,7 @@ void request_stats_reply(REQUEST *request)
                memset(&ipaddr, 0, sizeof(ipaddr));
 #endif
                ipaddr.af = AF_INET;
-               ipaddr.ipaddr.v4.s_addr = server_ip->vp_ipv4addr;
+               ipaddr.addr.v4.s_addr = server_ip->vp_ipv4addr;
                home = home_server_find(&ipaddr, server_port->vp_integer,
                                        IPPROTO_UDP);
 
index 408d322fa8b683e63cba07eeb3d2bb865577e932..677ce6d650c87ed058516b37b391ece5c123f1f8 100644 (file)
@@ -270,14 +270,14 @@ static int tls_socket_recv(rad_listen_t *listener)
                        RDEBUG("tls_recv: %s packet from host %s port %d, id=%d, length=%d",
                               fr_packet_codes[packet->code],
                               inet_ntop(packet->src_ipaddr.af,
-                                        &packet->src_ipaddr.ipaddr,
+                                        &packet->src_ipaddr.addr,
                                         host_ipaddr, sizeof(host_ipaddr)),
                               packet->src_port,
                               packet->id, (int) packet->data_len);
                } else {
                        RDEBUG("tls_recv: Packet from host %s port %d code=%d, id=%d, length=%d",
                               inet_ntop(packet->src_ipaddr.af,
-                                        &packet->src_ipaddr.ipaddr,
+                                        &packet->src_ipaddr.addr,
                                         host_ipaddr, sizeof(host_ipaddr)),
                               packet->src_port,
                               packet->code,
index ea1c153a1bf7c7aea0fbbfbc253bd670791bb353..0ac57621d548155f8a878249dc1e74cac93f7cb8 100644 (file)
@@ -188,11 +188,11 @@ static REQUEST *request_from_file(FILE *fp, RADCLIENT *client)
        request->packet->code = PW_CODE_ACCESS_REQUEST;
 
        request->packet->src_ipaddr.af = AF_INET;
-       request->packet->src_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_LOOPBACK);
+       request->packet->src_ipaddr.addr.v4.s_addr = htonl(INADDR_LOOPBACK);
        request->packet->src_port = 18120;
 
        request->packet->dst_ipaddr.af = AF_INET;
-       request->packet->dst_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_LOOPBACK);
+       request->packet->dst_ipaddr.addr.v4.s_addr = htonl(INADDR_LOOPBACK);
        request->packet->dst_port = 1812;
 
        /*
@@ -233,13 +233,13 @@ static REQUEST *request_from_file(FILE *fp, RADCLIENT *client)
 
                case PW_PACKET_DST_IP_ADDRESS:
                        request->packet->dst_ipaddr.af = AF_INET;
-                       request->packet->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                       request->packet->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                        request->packet->dst_ipaddr.prefix = 32;
                        break;
 
                case PW_PACKET_DST_IPV6_ADDRESS:
                        request->packet->dst_ipaddr.af = AF_INET6;
-                       request->packet->dst_ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+                       request->packet->dst_ipaddr.addr.v6 = vp->vp_ipv6addr;
                        request->packet->dst_ipaddr.prefix = 128;
                        break;
 
@@ -249,13 +249,13 @@ static REQUEST *request_from_file(FILE *fp, RADCLIENT *client)
 
                case PW_PACKET_SRC_IP_ADDRESS:
                        request->packet->src_ipaddr.af = AF_INET;
-                       request->packet->src_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                       request->packet->src_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                        request->packet->src_ipaddr.prefix = 32;
                        break;
 
                case PW_PACKET_SRC_IPV6_ADDRESS:
                        request->packet->src_ipaddr.af = AF_INET6;
-                       request->packet->src_ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+                       request->packet->src_ipaddr.addr.v6 = vp->vp_ipv6addr;
                        request->packet->src_ipaddr.prefix = 128;
                        break;
 
@@ -374,11 +374,11 @@ static REQUEST *request_from_file(FILE *fp, RADCLIENT *client)
        request->packet->code = PW_CODE_ACCESS_REQUEST;
 
        request->packet->src_ipaddr.af = AF_INET;
-       request->packet->src_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_LOOPBACK);
+       request->packet->src_ipaddr.addr.v4.s_addr = htonl(INADDR_LOOPBACK);
        request->packet->src_port = 18120;
 
        request->packet->dst_ipaddr.af = AF_INET;
-       request->packet->dst_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_LOOPBACK);
+       request->packet->dst_ipaddr.addr.v4.s_addr = htonl(INADDR_LOOPBACK);
        request->packet->dst_port = 1812;
 
        /*
index 1d237bec42dba2933a2852063d8551ad4d7b52a2..f1a8565f2f097e58994e92b177924c146bfcd8d8 100644 (file)
@@ -180,7 +180,7 @@ static char *xlat_getvp(TALLOC_CTX *ctx, REQUEST *request, vp_tmpl_t const *vpt,
        case PW_PACKET_SRC_IP_ADDRESS:
                if (packet->src_ipaddr.af == AF_INET) {
                        virtual = fr_pair_afrom_da(ctx, vpt->tmpl_da);
-                       virtual->vp_ipv4addr = packet->src_ipaddr.ipaddr.v4.s_addr;
+                       virtual->vp_ipv4addr = packet->src_ipaddr.addr.v4.s_addr;
                        vp = virtual;
                }
                break;
@@ -188,7 +188,7 @@ static char *xlat_getvp(TALLOC_CTX *ctx, REQUEST *request, vp_tmpl_t const *vpt,
        case PW_PACKET_DST_IP_ADDRESS:
                if (packet->dst_ipaddr.af == AF_INET) {
                        virtual = fr_pair_afrom_da(ctx, vpt->tmpl_da);
-                       virtual->vp_ipv4addr = packet->dst_ipaddr.ipaddr.v4.s_addr;
+                       virtual->vp_ipv4addr = packet->dst_ipaddr.addr.v4.s_addr;
                        vp = virtual;
                }
                break;
@@ -197,8 +197,8 @@ static char *xlat_getvp(TALLOC_CTX *ctx, REQUEST *request, vp_tmpl_t const *vpt,
                if (packet->src_ipaddr.af == AF_INET6) {
                        virtual = fr_pair_afrom_da(ctx, vpt->tmpl_da);
                        memcpy(&virtual->vp_ipv6addr,
-                              &packet->src_ipaddr.ipaddr.v6,
-                              sizeof(packet->src_ipaddr.ipaddr.v6));
+                              &packet->src_ipaddr.addr.v6,
+                              sizeof(packet->src_ipaddr.addr.v6));
                        vp = virtual;
                }
                break;
@@ -207,8 +207,8 @@ static char *xlat_getvp(TALLOC_CTX *ctx, REQUEST *request, vp_tmpl_t const *vpt,
                if (packet->dst_ipaddr.af == AF_INET6) {
                        virtual = fr_pair_afrom_da(ctx, vpt->tmpl_da);
                        memcpy(&virtual->vp_ipv6addr,
-                              &packet->dst_ipaddr.ipaddr.v6,
-                              sizeof(packet->dst_ipaddr.ipaddr.v6));
+                              &packet->dst_ipaddr.addr.v6,
+                              sizeof(packet->dst_ipaddr.addr.v6));
                        vp = virtual;
                }
                break;
index f6e42f8ce27298205d2daea2260318fe6170eab0..eb6dbdb90e7bd9a6df4cae785e71760d42abb593 100644 (file)
@@ -252,7 +252,7 @@ static int arp_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
        client = &sock->client;
        memset(client, 0, sizeof(*client));
        client->ipaddr.af = AF_INET;
-       client->ipaddr.ipaddr.v4.s_addr = INADDR_NONE;
+       client->ipaddr.addr.v4.s_addr = INADDR_NONE;
        client->ipaddr.prefix = 0;
        client->longname = client->shortname = sock->lsock.interface;
        client->secret = client->shortname;
index c67e0fa59af7b0ba36cc6e76ac31896e17110400..0e297fcaf92e0e50933b87b4862985230323d95f 100644 (file)
@@ -1543,7 +1543,7 @@ static int bfd_parse_ip_port(CONF_SECTION *cs, fr_ipaddr_t *ipaddr, uint16_t *po
         *      Try IPv4 first
         */
        memset(ipaddr, 0, sizeof(*ipaddr));
-       ipaddr->ipaddr.v4.s_addr = htonl(INADDR_NONE);
+       ipaddr->addr.v4.s_addr = htonl(INADDR_NONE);
        rcode = cf_pair_parse(NULL, cs, "ipaddr", FR_ITEM_POINTER(PW_TYPE_IPV4_ADDR, ipaddr), NULL, T_INVALID);
        if (rcode < 0) return -1;
 
@@ -1784,7 +1784,7 @@ static int bfd_socket_print(const rad_listen_t *this, char *buffer, size_t bufsi
        FORWARD;
 
        if ((sock->my_ipaddr.af == AF_INET) &&
-           (sock->my_ipaddr.ipaddr.v4.s_addr == htonl(INADDR_ANY))) {
+           (sock->my_ipaddr.addr.v4.s_addr == htonl(INADDR_ANY))) {
                strlcpy(buffer, "*", bufsize);
        } else {
                fr_inet_ntoh(&sock->my_ipaddr, buffer, bufsize);
index 22b4704dcb4c93b0a1d810a580976d292ec40f6a..b31f5f44415359c8b06fb282e979f208e1cda607 100644 (file)
@@ -743,7 +743,7 @@ open_file:
        memset(packet, 0, sizeof(*packet));
        packet->sockfd = -1;
        packet->src_ipaddr.af = AF_INET;
-       packet->src_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_NONE);
+       packet->src_ipaddr.addr.v4.s_addr = htonl(INADDR_NONE);
 
        /*
         *      If everything's OK, this is a waste of memory.
@@ -769,13 +769,13 @@ open_file:
        vp = fr_pair_find_by_num(packet->vps, 0, PW_PACKET_SRC_IP_ADDRESS, TAG_ANY);
        if (vp) {
                packet->src_ipaddr.af = AF_INET;
-               packet->src_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               packet->src_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                packet->src_ipaddr.prefix = 32;
        } else {
                vp = fr_pair_find_by_num(packet->vps, 0, PW_PACKET_SRC_IPV6_ADDRESS, TAG_ANY);
                if (vp) {
                        packet->src_ipaddr.af = AF_INET6;
-                       memcpy(&packet->src_ipaddr.ipaddr.v6,
+                       memcpy(&packet->src_ipaddr.addr.v6,
                               &vp->vp_ipv6addr, sizeof(vp->vp_ipv6addr));
                        packet->src_ipaddr.prefix = 128;
                }
@@ -784,13 +784,13 @@ open_file:
        vp = fr_pair_find_by_num(packet->vps, 0, PW_PACKET_DST_IP_ADDRESS, TAG_ANY);
        if (vp) {
                packet->dst_ipaddr.af = AF_INET;
-               packet->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               packet->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                packet->dst_ipaddr.prefix = 32;
        } else {
                vp = fr_pair_find_by_num(packet->vps, 0, PW_PACKET_DST_IPV6_ADDRESS, TAG_ANY);
                if (vp) {
                        packet->dst_ipaddr.af = AF_INET6;
-                       memcpy(&packet->dst_ipaddr.ipaddr.v6,
+                       memcpy(&packet->dst_ipaddr.addr.v6,
                               &vp->vp_ipv6addr, sizeof(vp->vp_ipv6addr));
                        packet->dst_ipaddr.prefix = 128;
                }
@@ -804,7 +804,7 @@ open_file:
        packet->dst_port = 1024 + ((data->counter >> 16) & 0xff);
 
        packet->dst_ipaddr.af = AF_INET;
-       packet->dst_ipaddr.ipaddr.v4.s_addr = htonl((INADDR_LOOPBACK & ~0xffffff) | ((data->counter >> 24) & 0xff));
+       packet->dst_ipaddr.addr.v4.s_addr = htonl((INADDR_LOOPBACK & ~0xffffff) | ((data->counter >> 24) & 0xff));
 
        /*
         *      Create / update accounting attributes.
@@ -1122,7 +1122,7 @@ static int detail_parse(CONF_SECTION *cs, rad_listen_t *this)
        client = &data->detail_client;
        memset(client, 0, sizeof(*client));
        client->ipaddr.af = AF_INET;
-       client->ipaddr.ipaddr.v4.s_addr = INADDR_NONE;
+       client->ipaddr.addr.v4.s_addr = INADDR_NONE;
        client->ipaddr.prefix = 0;
        client->longname = client->shortname = data->filename;
        client->secret = client->shortname;
index 69d1ff6870cdbf2d1ccd9b76316facbe4abc1dac..3c0548bc0a138f37af4dce3a2f6138ef17ed7180 100644 (file)
@@ -535,11 +535,11 @@ RADIUS_PACKET *fr_dhcp_recv_pcap(fr_pcap_t *pcap)
        src_port = ntohs(udp->src);
 
        src_ipaddr.af             = AF_INET;
-       src_ipaddr.ipaddr.v4 = ip->ip_src;
+       src_ipaddr.addr.v4 = ip->ip_src;
        src_ipaddr.prefix         = 32;
        src_ipaddr.zone_id        = 0;
        dst_ipaddr.af             = AF_INET;
-       dst_ipaddr.ipaddr.v4 = ip->ip_dst;
+       dst_ipaddr.addr.v4 = ip->ip_dst;
        dst_ipaddr.prefix         = 32;
        dst_ipaddr.zone_id        = 0;
 
@@ -637,8 +637,8 @@ int fr_dhcp_send_pcap(fr_pcap_t *pcap, uint8_t *dst_ether_addr, RADIUS_PACKET *p
        ip_hdr->ip_p = 17;
        ip_hdr->ip_sum = 0; /* Filled later */
 
-       ip_hdr->ip_src.s_addr = packet->src_ipaddr.ipaddr.v4.s_addr;
-       ip_hdr->ip_dst.s_addr = packet->dst_ipaddr.ipaddr.v4.s_addr;
+       ip_hdr->ip_src.s_addr = packet->src_ipaddr.addr.v4.s_addr;
+       ip_hdr->ip_dst.s_addr = packet->dst_ipaddr.addr.v4.s_addr;
 
        /* IP header checksum */
        ip_hdr->ip_sum = fr_ip_header_checksum((uint8_t const *)ip_hdr, 5);
@@ -661,8 +661,8 @@ int fr_dhcp_send_pcap(fr_pcap_t *pcap, uint8_t *dst_ether_addr, RADIUS_PACKET *p
 
        /* UDP checksum is done here */
        udp_hdr->checksum = fr_udp_checksum((uint8_t const *)udp_hdr, ntohs(udp_hdr->len), udp_hdr->checksum,
-                                           packet->src_ipaddr.ipaddr.v4,
-                                           packet->dst_ipaddr.ipaddr.v4);
+                                           packet->src_ipaddr.addr.v4,
+                                           packet->dst_ipaddr.addr.v4);
 
        ret = pcap_inject(pcap->handle, dhcp_packet, (end - dhcp_packet + packet->data_len));
        if (ret < 0) {
index 553050977c4ac5ba4e3de48c19c0dde71e6d4baf..c84bdb67f5031d00f3423e0d1cc00850a018620d 100644 (file)
@@ -175,13 +175,13 @@ static RADIUS_PACKET *request_init(char const *filename)
 
                case PW_PACKET_DST_IP_ADDRESS:
                        request->dst_ipaddr.af = AF_INET;
-                       request->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                       request->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                        request->dst_ipaddr.prefix = 32;
                        break;
 
                case PW_PACKET_DST_IPV6_ADDRESS:
                        request->dst_ipaddr.af = AF_INET6;
-                       request->dst_ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+                       request->dst_ipaddr.addr.v6 = vp->vp_ipv6addr;
                        request->dst_ipaddr.prefix = 128;
                        break;
 
@@ -191,13 +191,13 @@ static RADIUS_PACKET *request_init(char const *filename)
 
                case PW_PACKET_SRC_IP_ADDRESS:
                        request->src_ipaddr.af = AF_INET;
-                       request->src_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                       request->src_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                        request->src_ipaddr.prefix = 32;
                        break;
 
                case PW_PACKET_SRC_IPV6_ADDRESS:
                        request->src_ipaddr.af = AF_INET6;
-                       request->src_ipaddr.ipaddr.v6 = vp->vp_ipv6addr;
+                       request->src_ipaddr.addr.v6 = vp->vp_ipv6addr;
                        request->src_ipaddr.prefix = 128;
                        break;
 
@@ -543,13 +543,13 @@ static void dhcp_packet_debug(RADIUS_PACKET *packet, bool received)
               packet->id,
               packet->src_ipaddr.af == AF_INET6 ? "[" : "",
               inet_ntop(packet->src_ipaddr.af,
-                        &packet->src_ipaddr.ipaddr,
+                        &packet->src_ipaddr.addr,
                         src_ipaddr, sizeof(src_ipaddr)),
               packet->src_ipaddr.af == AF_INET6 ? "]" : "",
               packet->src_port,
               packet->dst_ipaddr.af == AF_INET6 ? "[" : "",
               inet_ntop(packet->dst_ipaddr.af,
-                        &packet->dst_ipaddr.ipaddr,
+                        &packet->dst_ipaddr.addr,
                         dst_ipaddr, sizeof(dst_ipaddr)),
               packet->dst_ipaddr.af == AF_INET6 ? "]" : "",
               packet->dst_port,
@@ -709,7 +709,7 @@ int main(int argc, char **argv)
                        exit(1);
                }
 
-               if (server_ipaddr.ipaddr.v4.s_addr == 0xFFFFFFFF) {
+               if (server_ipaddr.addr.v4.s_addr == 0xFFFFFFFF) {
                        ERROR("Using interface: %s (index: %d) in raw packet mode", iface, iface_ind);
                        raw_mode = true;
                }
index 3d87d12d6c034d7b8920a2a31cf0e207d030fa97..c49ae008301b0d1b11c63c7e3c682086d76e1734 100644 (file)
@@ -123,7 +123,7 @@ static int dhcprelay_process_client_request(REQUEST *request)
         */
        /* set SRC ipaddr/port to the listener ipaddr/port */
        request->packet->src_ipaddr.af = AF_INET;
-       request->packet->src_ipaddr.ipaddr.v4.s_addr = sock->lsock.my_ipaddr.ipaddr.v4.s_addr;
+       request->packet->src_ipaddr.addr.v4.s_addr = sock->lsock.my_ipaddr.addr.v4.s_addr;
        request->packet->src_port = sock->lsock.my_port;
 
        vp = fr_pair_find_by_num(request->control, DHCP_MAGIC_VENDOR, 270, TAG_ANY); /* DHCP-Relay-To-IP-Address */
@@ -131,7 +131,7 @@ static int dhcprelay_process_client_request(REQUEST *request)
 
        /* set DEST ipaddr/port to the next server ipaddr/port */
        request->packet->dst_ipaddr.af = AF_INET;
-       request->packet->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+       request->packet->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
        request->packet->dst_port = sock->lsock.my_port;
 
        /*
@@ -173,9 +173,9 @@ static int dhcprelay_process_server_reply(REQUEST *request)
        giaddr = fr_pair_find_by_num(request->packet->vps, DHCP_MAGIC_VENDOR, 266, TAG_ANY); /* DHCP-Gateway-IP-Address */
 
        /* --with-udpfromto is needed just for the following test */
-       if (!giaddr || giaddr->vp_ipv4addr != request->packet->dst_ipaddr.ipaddr.v4.s_addr) {
+       if (!giaddr || giaddr->vp_ipv4addr != request->packet->dst_ipaddr.addr.v4.s_addr) {
                RDEBUG2("Packet received from server was not for us (was for 0x%x). Discarding packet",
-                       ntohl(request->packet->dst_ipaddr.ipaddr.v4.s_addr));
+                       ntohl(request->packet->dst_ipaddr.addr.v4.s_addr));
                return 1;
        }
 
@@ -189,7 +189,7 @@ static int dhcprelay_process_server_reply(REQUEST *request)
        /*
         *      We're a relay, and send the reply to giaddr.
         */
-       request->reply->dst_ipaddr.ipaddr.v4.s_addr = giaddr->vp_ipv4addr;
+       request->reply->dst_ipaddr.addr.v4.s_addr = giaddr->vp_ipv4addr;
        request->reply->dst_port = request->packet->dst_port;           /* server port */
 
        if ((request->packet->code == PW_DHCP_NAK) ||
@@ -207,7 +207,7 @@ static int dhcprelay_process_server_reply(REQUEST *request)
                 * - Broadcast flag is set up and ciaddr == NULL
                 */
                RDEBUG2("Response will be broadcast");
-               request->packet->dst_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_BROADCAST);
+               request->packet->dst_ipaddr.addr.v4.s_addr = htonl(INADDR_BROADCAST);
        } else {
                /*
                 * RFC 2131, page 23
@@ -218,7 +218,7 @@ static int dhcprelay_process_server_reply(REQUEST *request)
                 */
                if ((vp = fr_pair_find_by_num(request->packet->vps, DHCP_MAGIC_VENDOR, 263, TAG_ANY)) /* DHCP-Client-IP-Address */ &&
                    (vp->vp_ipv4addr != htonl(INADDR_ANY))) {
-                       request->packet->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                       request->packet->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                } else {
                        vp = fr_pair_find_by_num(request->packet->vps, DHCP_MAGIC_VENDOR, 264, TAG_ANY); /* DHCP-Your-IP-Address */
                        if (!vp) {
@@ -227,7 +227,7 @@ static int dhcprelay_process_server_reply(REQUEST *request)
                        }
 
                        RDEBUG2("Response will be unicast to &DHCP-Your-IP-Address");
-                       request->packet->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+                       request->packet->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
 
                        /*
                         * When sending a DHCP_OFFER, make sure our ARP table
@@ -482,21 +482,21 @@ static rlm_rcode_t dhcp_process(REQUEST *request)
        vp = fr_pair_find_by_num(request->reply->vps, 0, PW_PACKET_SRC_IP_ADDRESS, TAG_ANY);
        if (vp) {
                request->reply->if_index = 0;   /* Must be 0, we don't know the outbound if_index */
-               request->reply->src_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               request->reply->src_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
        /*
         *      The request was unicast (via a relay)
         */
-       } else if (request->packet->dst_ipaddr.ipaddr.v4.s_addr != htonl(INADDR_BROADCAST) &&
-                  request->packet->dst_ipaddr.ipaddr.v4.s_addr != htonl(INADDR_ANY)) {
-               request->reply->src_ipaddr.ipaddr.v4.s_addr = request->packet->dst_ipaddr.ipaddr.v4.s_addr;
+       } else if (request->packet->dst_ipaddr.addr.v4.s_addr != htonl(INADDR_BROADCAST) &&
+                  request->packet->dst_ipaddr.addr.v4.s_addr != htonl(INADDR_ANY)) {
+               request->reply->src_ipaddr.addr.v4.s_addr = request->packet->dst_ipaddr.addr.v4.s_addr;
                request->reply->if_index = request->packet->if_index;
        /*
         *      The listener was bound to an IP address, or we determined
         *      the address automatically, as it was the only address bound
         *      to the interface, and we bound to the interface.
         */
-       } else if (sock->src_ipaddr.ipaddr.v4.s_addr != htonl(INADDR_ANY)) {
-               request->reply->src_ipaddr.ipaddr.v4.s_addr = sock->src_ipaddr.ipaddr.v4.s_addr;
+       } else if (sock->src_ipaddr.addr.v4.s_addr != htonl(INADDR_ANY)) {
+               request->reply->src_ipaddr.addr.v4.s_addr = sock->src_ipaddr.addr.v4.s_addr;
 #ifdef WITH_IFINDEX_IPADDR_RESOLUTION
        /*
         *      We built with udpfromto and have the if_index of the receiving
@@ -516,7 +516,7 @@ static rlm_rcode_t dhcp_process(REQUEST *request)
         *      There's a Server-Identification attribute
         */
        } else if ((vp = fr_pair_find_by_num(request->reply->vps, DHCP_MAGIC_VENDOR, 54, TAG_ANY))) {
-               request->reply->src_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               request->reply->src_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
        } else {
                REDEBUG("Unable to determine correct src_ipaddr for response");
                return RLM_MODULE_FAIL;
@@ -534,7 +534,7 @@ static rlm_rcode_t dhcp_process(REQUEST *request)
        vp = fr_pair_find_by_num(request->reply->vps, DHCP_MAGIC_VENDOR, 272, TAG_ANY); /* DHCP-Relay-IP-Address */
        if (vp && (vp->vp_ipv4addr != ntohl(INADDR_ANY))) {
                RDEBUG2("Reply will be unicast to giaddr from original packet");
-               request->reply->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               request->reply->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                request->reply->dst_port = request->packet->dst_port;
 
                vp = fr_pair_find_by_num(request->reply->vps, 0, PW_PACKET_DST_PORT, TAG_ANY);
@@ -555,7 +555,7 @@ static rlm_rcode_t dhcp_process(REQUEST *request)
        vp = fr_pair_find_by_num(request->reply->vps, DHCP_MAGIC_VENDOR, 266, TAG_ANY); /* DHCP-Gateway-IP-Address */
        if (vp && (vp->vp_ipv4addr != htonl(INADDR_ANY))) {
                RDEBUG2("Reply will be unicast to giaddr");
-               request->reply->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               request->reply->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                request->reply->dst_port = request->packet->dst_port;
                return RLM_MODULE_OK;
        }
@@ -578,7 +578,7 @@ static rlm_rcode_t dhcp_process(REQUEST *request)
                 * - Broadcast flag is set up and ciaddr == NULL
                 */
                RDEBUG2("Reply will be broadcast");
-               request->reply->dst_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_BROADCAST);
+               request->reply->dst_ipaddr.addr.v4.s_addr = htonl(INADDR_BROADCAST);
                return RLM_MODULE_OK;
        }
 
@@ -590,7 +590,7 @@ static rlm_rcode_t dhcp_process(REQUEST *request)
        if ((vp = fr_pair_find_by_num(request->reply->vps, DHCP_MAGIC_VENDOR, 263, TAG_ANY)) && /* DHCP-Client-IP-Address */
            (vp->vp_ipv4addr != htonl(INADDR_ANY))) {
                RDEBUG2("Reply will be sent unicast to &DHCP-Client-IP-Address");
-               request->reply->dst_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               request->reply->dst_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
                return RLM_MODULE_OK;
        }
 
@@ -646,12 +646,12 @@ static rlm_rcode_t dhcp_process(REQUEST *request)
                }
        }
 #else
-       if (request->packet->src_ipaddr.ipaddr.v4.s_addr != ntohl(INADDR_NONE)) {
+       if (request->packet->src_ipaddr.addr.v4.s_addr != ntohl(INADDR_NONE)) {
                RDEBUG2("Reply will be unicast to the unicast source IP address");
-               request->reply->dst_ipaddr.ipaddr.v4.s_addr = request->packet->src_ipaddr.ipaddr.v4.s_addr;
+               request->reply->dst_ipaddr.addr.v4.s_addr = request->packet->src_ipaddr.addr.v4.s_addr;
        } else {
                RDEBUG2("Reply will be broadcast as this system does not support ARP updates");
-               request->reply->dst_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_BROADCAST);
+               request->reply->dst_ipaddr.addr.v4.s_addr = htonl(INADDR_BROADCAST);
        }
 #endif
 
@@ -759,7 +759,7 @@ static int dhcp_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
        cp = cf_pair_find(cs, "src_ipaddr");
        if (cp) {
                memset(&sock->src_ipaddr, 0, sizeof(sock->src_ipaddr));
-               sock->src_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_NONE);
+               sock->src_ipaddr.addr.v4.s_addr = htonl(INADDR_NONE);
                rcode = cf_pair_parse(sock, cs, "src_ipaddr",
                                      FR_ITEM_POINTER(PW_TYPE_IPV4_ADDR, &sock->src_ipaddr), NULL, T_INVALID);
                if (rcode < 0) return -1;
@@ -779,7 +779,7 @@ static int dhcp_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
                                WARN("Will continue, but source address must be set within the DHCP virtual server");
                                goto src_addr_is_bound_addr;
                        }
-                       inet_ntop(sock->src_ipaddr.af, &sock->src_ipaddr.ipaddr.v4.s_addr, buffer, sizeof(buffer));
+                       inet_ntop(sock->src_ipaddr.af, &sock->src_ipaddr.addr.v4.s_addr, buffer, sizeof(buffer));
                        rad_assert(sock->src_ipaddr.af == AF_INET);
                } else {
                src_addr_is_bound_addr:
@@ -796,7 +796,7 @@ static int dhcp_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
                         *      This lets %{config:} work as expected, if we want to set
                         *      DHCP-DHCP-Server-Identifier.
                         */
-                       inet_ntop(sock->src_ipaddr.af, &sock->src_ipaddr.ipaddr.v4.s_addr, buffer, sizeof(buffer));
+                       inet_ntop(sock->src_ipaddr.af, &sock->src_ipaddr.addr.v4.s_addr, buffer, sizeof(buffer));
                        DEBUG2("\tsrc_ipaddr = \"%s\"", buffer);
                        cp = cf_pair_alloc(cs, "src_ipaddr", buffer, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
                        if (!cp) return -1;
@@ -810,7 +810,7 @@ static int dhcp_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
        client = &sock->dhcp_client;
        memset(client, 0, sizeof(*client));
        client->ipaddr.af = AF_INET;
-       client->ipaddr.ipaddr.v4.s_addr = ntohl(INADDR_NONE);
+       client->ipaddr.addr.v4.s_addr = ntohl(INADDR_NONE);
        client->ipaddr.prefix = 0;
        client->longname = client->shortname = "dhcp";
        client->secret = client->shortname;
@@ -938,13 +938,13 @@ static void dhcp_packet_debug(REQUEST *request, RADIUS_PACKET *packet, bool rece
                               packet->id,
                               packet->src_ipaddr.af == AF_INET6 ? "[" : "",
                               inet_ntop(packet->src_ipaddr.af,
-                                        &packet->src_ipaddr.ipaddr,
+                                        &packet->src_ipaddr.addr,
                                         src_ipaddr, sizeof(src_ipaddr)),
                               packet->src_ipaddr.af == AF_INET6 ? "]" : "",
                               packet->src_port,
                               packet->dst_ipaddr.af == AF_INET6 ? "[" : "",
                               inet_ntop(packet->dst_ipaddr.af,
-                                        &packet->dst_ipaddr.ipaddr,
+                                        &packet->dst_ipaddr.addr,
                                         dst_ipaddr, sizeof(dst_ipaddr)),
                               packet->dst_ipaddr.af == AF_INET6 ? "]" : "",
                               packet->dst_port,
@@ -965,13 +965,13 @@ static void dhcp_packet_debug(REQUEST *request, RADIUS_PACKET *packet, bool rece
                               packet->id,
                               packet->src_ipaddr.af == AF_INET6 ? "[" : "",
                               inet_ntop(packet->src_ipaddr.af,
-                                        &packet->src_ipaddr.ipaddr,
+                                        &packet->src_ipaddr.addr,
                                         src_ipaddr, sizeof(src_ipaddr)),
                               packet->src_ipaddr.af == AF_INET6 ? "]" : "",
                               packet->src_port,
                               packet->dst_ipaddr.af == AF_INET6 ? "[" : "",
                               inet_ntop(packet->dst_ipaddr.af,
-                                        &packet->dst_ipaddr.ipaddr,
+                                        &packet->dst_ipaddr.addr,
                                         dst_ipaddr, sizeof(dst_ipaddr)),
                               packet->dst_ipaddr.af == AF_INET6 ? "]" : "",
                               packet->dst_port,
index a1655df2260170b29ae12a8a5afb4cde4b0cb146..11016d5dee1a45250a0b697dbea10e1543e518d6 100644 (file)
@@ -775,7 +775,7 @@ int tacacs_read_packet(RADIUS_PACKET * const packet, char const * const secret)
 
                if (packet->src_ipaddr.af != AF_UNSPEC) {
                        inet_ntop(packet->src_ipaddr.af,
-                                 &packet->src_ipaddr.ipaddr,
+                                 &packet->src_ipaddr.addr,
                                  ip_buf, sizeof(ip_buf));
                        snprintf(buffer, sizeof(buffer), "host %s port %d",
                                 ip_buf, packet->src_port);
index e4954311a2e1963c3929e29afad6484fd4a400c9..2d732b5faed8d549433334c278159a6276b4bcbd 100644 (file)
@@ -265,19 +265,19 @@ static int detail_write(FILE *out, rlm_detail_t const *inst, REQUEST *request, R
                switch (packet->src_ipaddr.af) {
                case AF_INET:
                        src_vp.da = fr_dict_attr_by_num(NULL, 0, PW_PACKET_SRC_IP_ADDRESS);
-                       src_vp.vp_ipv4addr = packet->src_ipaddr.ipaddr.v4.s_addr;
+                       src_vp.vp_ipv4addr = packet->src_ipaddr.addr.v4.s_addr;
 
                        dst_vp.da = fr_dict_attr_by_num(NULL, 0, PW_PACKET_DST_IP_ADDRESS);
-                       dst_vp.vp_ipv4addr = packet->dst_ipaddr.ipaddr.v4.s_addr;
+                       dst_vp.vp_ipv4addr = packet->dst_ipaddr.addr.v4.s_addr;
                        break;
 
                case AF_INET6:
                        src_vp.da = fr_dict_attr_by_num(NULL, 0, PW_PACKET_SRC_IPV6_ADDRESS);
-                       memcpy(&src_vp.vp_ipv6addr, &packet->src_ipaddr.ipaddr.v6,
-                              sizeof(packet->src_ipaddr.ipaddr.v6));
+                       memcpy(&src_vp.vp_ipv6addr, &packet->src_ipaddr.addr.v6,
+                              sizeof(packet->src_ipaddr.addr.v6));
                        dst_vp.da = fr_dict_attr_by_num(NULL, 0, PW_PACKET_DST_IPV6_ADDRESS);
-                       memcpy(&dst_vp.vp_ipv6addr, &packet->dst_ipaddr.ipaddr.v6,
-                              sizeof(packet->dst_ipaddr.ipaddr.v6));
+                       memcpy(&dst_vp.vp_ipv6addr, &packet->dst_ipaddr.addr.v6,
+                              sizeof(packet->dst_ipaddr.addr.v6));
                        break;
 
                default:
@@ -329,7 +329,7 @@ static int detail_write(FILE *out, rlm_detail_t const *inst, REQUEST *request, R
                if (request->proxy) {
                        char proxy_buffer[INET6_ADDRSTRLEN];
 
-                       inet_ntop(request->proxy->packet->dst_ipaddr.af, &request->proxy->packet->dst_ipaddr.ipaddr,
+                       inet_ntop(request->proxy->packet->dst_ipaddr.af, &request->proxy->packet->dst_ipaddr.addr,
                                  proxy_buffer, sizeof(proxy_buffer));
                        WRITE("\tFreeradius-Proxied-To = %s\n", proxy_buffer);
                }
index 6c6bfe0a94f9b17f1444f3478b0a6ecb4223fbc2..4b28fda1aae8f04296ccedc036faf432c05e7da9 100644 (file)
@@ -465,7 +465,7 @@ static int add_nas_attr(REQUEST *request)
                nas = fr_pair_find_by_num(request->packet->vps, 0, PW_NAS_IP_ADDRESS, TAG_ANY);
                if (!nas) {
                        nas = radius_pair_create(request->packet, &request->packet->vps, PW_NAS_IP_ADDRESS, 0);
-                       nas->vp_ipv4addr = request->packet->src_ipaddr.ipaddr.v4.s_addr;
+                       nas->vp_ipv4addr = request->packet->src_ipaddr.addr.v4.s_addr;
                }
                break;
 
@@ -473,8 +473,8 @@ static int add_nas_attr(REQUEST *request)
                nas = fr_pair_find_by_num(request->packet->vps, 0, PW_NAS_IPV6_ADDRESS, TAG_ANY);
                if (!nas) {
                        nas = radius_pair_create(request->packet, &request->packet->vps, PW_NAS_IPV6_ADDRESS, 0);
-                       memcpy(&nas->vp_ipv6addr, &request->packet->src_ipaddr.ipaddr,
-                              sizeof(request->packet->src_ipaddr.ipaddr));
+                       memcpy(&nas->vp_ipv6addr, &request->packet->src_ipaddr.addr,
+                              sizeof(request->packet->src_ipaddr.addr));
                }
                break;
 
index 54939e4299d6710c2cd838c822de426ec4b8f12c..21b8c2843c76192e6cd114072302673804a1fdfb 100644 (file)
@@ -94,7 +94,7 @@ static void mod_cleanup(REQUEST *request, rlm_radius_client_request_t *ccr)
                vp = pair_make_request("Failed-Home-Server-IP", NULL, T_OP_ADD);
                if (vp) {
                        fr_pair_value_snprintf(vp, "%s", inet_ntop(ccr->packet->dst_ipaddr.af,
-                                                                  &ccr->packet->dst_ipaddr.ipaddr,
+                                                                  &ccr->packet->dst_ipaddr.addr,
                                                                   buffer, sizeof(buffer)));
                }
        }
@@ -127,7 +127,7 @@ static void mod_event_fd(UNUSED fr_event_list_t *el, int fd, void *ctx)
                DEBUG("Received unknown reply %s packet from home server %s port %d - ID %u - ignoring",
                       fr_packet_codes[reply->code],
                       inet_ntop(reply->src_ipaddr.af,
-                                &reply->src_ipaddr.ipaddr,
+                                &reply->src_ipaddr.addr,
                                 buffer, sizeof(buffer)),
                       reply->src_port, reply->id);
                fr_radius_free(&reply);
@@ -143,7 +143,7 @@ static void mod_event_fd(UNUSED fr_event_list_t *el, int fd, void *ctx)
        RDEBUG("Received reply %s packet from home server %s port %d - ID %u",
               fr_packet_codes[reply->code],
               inet_ntop(reply->src_ipaddr.af,
-                        &reply->src_ipaddr.ipaddr,
+                        &reply->src_ipaddr.addr,
                         buffer, sizeof(buffer)),
               reply->src_port, reply->id);
 
@@ -276,7 +276,7 @@ static void mod_action_dup(REQUEST *request, void *instance, UNUSED void *thread
               fr_packet_codes[packet->code],
               ccr->inst->home_server->name,
               inet_ntop(packet->dst_ipaddr.af,
-                        &packet->dst_ipaddr.ipaddr,
+                        &packet->dst_ipaddr.addr,
                         buffer, sizeof(buffer)),
               packet->dst_port, packet->id);
 
@@ -413,7 +413,7 @@ static rlm_rcode_t mod_wait_for_reply(REQUEST *request, rlm_radius_client_instan
               fr_packet_codes[packet->code],
               ccr->inst->home_server->name,
               inet_ntop(packet->dst_ipaddr.af,
-                        &packet->dst_ipaddr.ipaddr,
+                        &packet->dst_ipaddr.addr,
                         buffer, sizeof(buffer)),
               packet->dst_port, packet->id);
 
index 6488a4a72b23bddc08dd6ae68d0957d40925254a..c3e60dc342d7b65ca7a13487642aad7faa4c8c58 100644 (file)
@@ -279,10 +279,10 @@ static rlm_rcode_t CC_HINT(nonnull) mod_accounting(void *instance, UNUSED void *
         *      originator's IP address.
         */
        if (ut.nas_address == htonl(INADDR_NONE)) {
-               ut.nas_address = request->packet->src_ipaddr.ipaddr.v4.s_addr;
+               ut.nas_address = request->packet->src_ipaddr.addr.v4.s_addr;
                nas = request->client->shortname;
 
-       } else if (request->packet->src_ipaddr.ipaddr.v4.s_addr == ut.nas_address) {            /* might be a client, might not be. */
+       } else if (request->packet->src_ipaddr.addr.v4.s_addr == ut.nas_address) {              /* might be a client, might not be. */
                nas = request->client->shortname;
 
        /*
index 854b821f05c4c9c6f248eb30088dd6e59cc8f3bb..ce63bfe6e3060175177e020ff71aa447ed72e210 100644 (file)
@@ -298,7 +298,7 @@ static int check_for_realm(void const *instance, REQUEST *request, REALM **retur
 
                my_ipaddr.af = AF_INET;
                my_ipaddr.prefix = 32;
-               my_ipaddr.ipaddr.v4.s_addr = vp->vp_ipv4addr;
+               my_ipaddr.addr.v4.s_addr = vp->vp_ipv4addr;
 
                /*
                 *      Loop over the home accounting servers for this
index 3697f924d27eac7c1a8f14ac0394bb7685fe473f..aedc53c0adbb5b1daa590649070b23065670791e 100644 (file)
@@ -366,7 +366,7 @@ static cluster_rcode_t cluster_node_connect(fr_redis_cluster_t *cluster, cluster
        /*
         *      Write out the IP address and Port in string form
         */
-       p = inet_ntop(node->pending_addr.ipaddr.af, &node->pending_addr.ipaddr.ipaddr,
+       p = inet_ntop(node->pending_addr.ipaddr.af, &node->pending_addr.ipaddr.addr,
                      node->name, sizeof(node->name));
        if (!rad_cond_assert(p)) return CLUSTER_OP_FAILED;
 
@@ -1974,7 +1974,7 @@ int fr_redis_cluster_pool_by_node_addr(fr_connection_pool_t **pool, fr_redis_clu
                if (!create) {
                        pthread_mutex_unlock(&cluster->mutex);
 
-                       hostname = inet_ntop(node_addr->ipaddr.af, &node_addr->ipaddr.ipaddr, buffer, sizeof(buffer));
+                       hostname = inet_ntop(node_addr->ipaddr.af, &node_addr->ipaddr.addr, buffer, sizeof(buffer));
                        rad_assert(hostname);   /* addr.ipaddr is probably corrupt */;
                        fr_strerror_printf("No existing node found with address %s, port %i",
                                           hostname, node_addr->port);
index d03fcba8b0ec02bb38d599014c4344a30291c648..205db8df6269f27e471ade8fbda638f6742b8200 100644 (file)
@@ -117,7 +117,7 @@ do { \
 #define IPPOOL_SPRINT_IP(_buff, _ip, _prefix) \
 do { \
        if (_prefix == IPADDR_LEN((_ip)->af)) { \
-               inet_ntop((_ip)->af, &((_ip)->ipaddr), _buff, sizeof(_buff)); \
+               inet_ntop((_ip)->af, &((_ip)->addr), _buff, sizeof(_buff)); \
        } else { \
                uint8_t _net = (_ip)->prefix; \
                (_ip)->prefix = _prefix; \
index 21e06bcface1afe0aa6384c058840ece4303d8f4..25c903785d6b4a49157a9330b52b4677798f10c6 100644 (file)
@@ -794,7 +794,7 @@ static ippool_rcode_t redis_ippool_update(rlm_redis_ippool_t const *inst, REQUES
                                       lua_update_digest,
                                       key_prefix, key_prefix_len,
                                       (unsigned int)now.tv_sec, expires,
-                                      htonl(ip->ipaddr.v4.s_addr),
+                                      htonl(ip->addr.v4.s_addr),
                                       device_id, device_id_len,
                                       gateway_id, gateway_id_len);
        } else {
@@ -933,7 +933,7 @@ static ippool_rcode_t redis_ippool_release(rlm_redis_ippool_t const *inst, REQUE
                                       lua_release_digest,
                                       key_prefix, key_prefix_len,
                                       (unsigned int)now.tv_sec,
-                                      htonl(ip->ipaddr.v4.s_addr),
+                                      htonl(ip->addr.v4.s_addr),
                                       device_id, device_id_len);
        } else {
                char ip_buff[FR_IPADDR_PREFIX_STRLEN];
index 0cbeca2d0611e7484f05a376505e4859dc46d7d4..4e094d7cdc60defe78d09ca149dab9a18c028ba5 100644 (file)
@@ -404,8 +404,8 @@ static bool ipaddr_next(fr_ipaddr_t *ipaddr, fr_ipaddr_t const *end, uint8_t pre
                rad_assert((prefix > 0) && (prefix <= 128));
 
                /* Don't be tempted to cast */
-               memcpy(&ip_curr, ipaddr->ipaddr.v6.s6_addr, sizeof(ip_curr));
-               memcpy(&ip_end, end->ipaddr.v6.s6_addr, sizeof(ip_curr));
+               memcpy(&ip_curr, ipaddr->addr.v6.s6_addr, sizeof(ip_curr));
+               memcpy(&ip_end, end->addr.v6.s6_addr, sizeof(ip_curr));
 
                ip_curr = ntohlll(ip_curr);
                ip_end = ntohlll(ip_end);
@@ -416,7 +416,7 @@ static bool ipaddr_next(fr_ipaddr_t *ipaddr, fr_ipaddr_t const *end, uint8_t pre
                /* Increment the prefix */
                ip_curr = uint128_add(ip_curr, uint128_lshift(uint128_new(0, 1), (128 - prefix)));
                ip_curr = htonlll(ip_curr);
-               memcpy(&ipaddr->ipaddr.v6.s6_addr, &ip_curr, sizeof(ipaddr->ipaddr.v6.s6_addr));
+               memcpy(&ipaddr->addr.v6.s6_addr, &ip_curr, sizeof(ipaddr->addr.v6.s6_addr));
                return true;
        }
 
@@ -426,15 +426,15 @@ static bool ipaddr_next(fr_ipaddr_t *ipaddr, fr_ipaddr_t const *end, uint8_t pre
 
                rad_assert((prefix > 0) && (prefix <= 32));
 
-               ip_curr = ntohl(ipaddr->ipaddr.v4.s_addr);
-               ip_end = ntohl(end->ipaddr.v4.s_addr);
+               ip_curr = ntohl(ipaddr->addr.v4.s_addr);
+               ip_end = ntohl(end->addr.v4.s_addr);
 
                /* We're done */
                if (ip_curr == ip_end) return false;
 
                /* Increment the prefix */
                ip_curr += 1 << (32 - prefix);
-               ipaddr->ipaddr.v4.s_addr = htonl(ip_curr);
+               ipaddr->addr.v4.s_addr = htonl(ip_curr);
                return true;
        }
        }
@@ -1230,8 +1230,8 @@ static int parse_ip_range(fr_ipaddr_t *start_out, fr_ipaddr_t *end_out, char con
                if (start.af == AF_INET6) {
                        uint128_t start_int, end_int;
 
-                       memcpy(&start_int, start.ipaddr.v6.s6_addr, sizeof(start_int));
-                       memcpy(&end_int, end.ipaddr.v6.s6_addr, sizeof(end_int));
+                       memcpy(&start_int, start.addr.v6.s6_addr, sizeof(start_int));
+                       memcpy(&end_int, end.addr.v6.s6_addr, sizeof(end_int));
                        if (uint128_gt(ntohlll(start_int), ntohlll(end_int))) {
                                ERROR("End address must be greater than or equal to start address");
                                return -1;
@@ -1240,8 +1240,8 @@ static int parse_ip_range(fr_ipaddr_t *start_out, fr_ipaddr_t *end_out, char con
                 *      IPv4 addresses
                 */
                } else {
-                       if (ntohl((uint32_t)(start.ipaddr.v4.s_addr)) >
-                           ntohl((uint32_t)(end.ipaddr.v4.s_addr))) {
+                       if (ntohl((uint32_t)(start.addr.v4.s_addr)) >
+                           ntohl((uint32_t)(end.addr.v4.s_addr))) {
                                ERROR("End address must be greater than or equal to start address");
                                return -1;
                        }
@@ -1309,7 +1309,7 @@ static int parse_ip_range(fr_ipaddr_t *start_out, fr_ipaddr_t *end_out, char con
                if (!rad_cond_assert((prefix > 0) && (prefix <= 128))) return -1;
 
                /* Don't be tempted to cast */
-               memcpy(&ip, start.ipaddr.v6.s6_addr, sizeof(ip));
+               memcpy(&ip, start.addr.v6.s6_addr, sizeof(ip));
                ip = ntohlll(ip);
 
                /* Generate a mask that covers the prefix bits, and sets them high */
@@ -1318,21 +1318,21 @@ static int parse_ip_range(fr_ipaddr_t *start_out, fr_ipaddr_t *end_out, char con
 
                /* Decrement by one */
                if (ex_broadcast) ip = uint128_sub(ip, uint128_new(0, 1));
-               memcpy(&end.ipaddr.v6.s6_addr, &ip, sizeof(end.ipaddr.v6.s6_addr));
+               memcpy(&end.addr.v6.s6_addr, &ip, sizeof(end.addr.v6.s6_addr));
        } else {
                uint32_t ip;
 
                /* cond assert to satisfy clang scan */
                if (!rad_cond_assert((prefix > 0) && (prefix <= 32))) return -1;
 
-               ip = ntohl(start.ipaddr.v4.s_addr);
+               ip = ntohl(start.addr.v4.s_addr);
 
                /* Generate a mask that covers the prefix bits and sets them high */
                ip |= uint32_gen_mask(prefix - start.prefix) << (32 - prefix);
 
                /* Decrement by one */
                if (ex_broadcast) ip--;
-               end.ipaddr.v4.s_addr = htonl(ip);
+               end.addr.v4.s_addr = htonl(ip);
        }
 
        *start_out = start;
index 0041957665219bd9012d5f08d4721697856f53ea..928cb286b8d75624ec7fdb52a31be24961c9d7d5 100644 (file)
@@ -467,7 +467,7 @@ static rlm_rcode_t CC_HINT(nonnull) mod_accounting(void *instance, UNUSED void *
         *      originator's IP address.
         */
        if (nas_address == 0) {
-               nas_address = request->packet->src_ipaddr.ipaddr.v4.s_addr;
+               nas_address = request->packet->src_ipaddr.addr.v4.s_addr;
        }
        s = request->client->shortname;
        if (!s || s[0] == 0) s = uue(&(nas_address));
index de551fe9ad451bd11c510257f47f18021f482a7b..7b74cb3c6223f0bc11698018eb2a3528b7c9b6b2 100644 (file)
@@ -174,7 +174,7 @@ ssize_t fr_radius_recv_header(int sockfd, fr_ipaddr_t *src_ipaddr, uint16_t *src
                FR_DEBUG_STRERROR_PRINTF("Expected at least 4 bytes of header data, got %zu bytes", data_len);
 invalid:
                FR_DEBUG_STRERROR_PRINTF("Invalid data from %s: %s",
-                                        inet_ntop(src_ipaddr->af, &src_ipaddr->ipaddr, buffer, sizeof(buffer)),
+                                        inet_ntop(src_ipaddr->af, &src_ipaddr->addr, buffer, sizeof(buffer)),
                                         fr_strerror());
                (void) udp_recv_discard(sockfd);
 
index 3a94c76a3f7785011c040c894afbad35f429803b..cd14eec225f56f63c588916e9461c0c9325ddfa9 100644 (file)
@@ -586,8 +586,8 @@ bool fr_packet_list_id_alloc(fr_packet_list_t *pl, int proto,
                 *      destination is not link local.  Ignore it.
                 */
                if (src_any && (ps->src_ipaddr.af == AF_INET) &&
-                   (((ps->src_ipaddr.ipaddr.v4.s_addr >> 24) & 0xff) == 127) &&
-                   (((request->dst_ipaddr.ipaddr.v4.s_addr >> 24) & 0xff) != 127)) continue;
+                   (((ps->src_ipaddr.addr.v4.s_addr >> 24) & 0xff) == 127) &&
+                   (((request->dst_ipaddr.addr.v4.s_addr >> 24) & 0xff) != 127)) continue;
 
                /*
                 *      We're sourcing from *, and they asked for a
index 4b328ecf948faf7f9fd8c90ede405667c9e2f01a..1b058667a51dbaa703f62cd01a5477ecf5944a2f 100644 (file)
@@ -428,7 +428,7 @@ int fr_radius_packet_decode(RADIUS_PACKET *packet, RADIUS_PACKET *original, char
                        fr_strerror_printf("Possible DoS attack from host %s: Too many attributes in request "
                                           "(received %d, max %d are allowed)",
                                           inet_ntop(packet->src_ipaddr.af,
-                                                    &packet->src_ipaddr.ipaddr,
+                                                    &packet->src_ipaddr.addr,
                                                     host_ipaddr, sizeof(host_ipaddr)),
                                           num_attributes, fr_max_attributes);
                        return -1;
@@ -471,7 +471,7 @@ bool fr_radius_packet_ok(RADIUS_PACKET *packet, bool require_ma, decode_fail_t *
        if (!fr_radius_ok(packet->data, &packet->data_len, require_ma, reason)) {
                FR_DEBUG_STRERROR_PRINTF("Bad packet received from host %s - %s",
                                         inet_ntop(packet->src_ipaddr.af,
-                                                  &packet->src_ipaddr.ipaddr,
+                                                  &packet->src_ipaddr.addr,
                                                   host_ipaddr, sizeof(host_ipaddr)),
                                         fr_strerror());
                return false;
@@ -506,7 +506,7 @@ int fr_radius_packet_verify(RADIUS_PACKET *packet, RADIUS_PACKET *original, char
        if (fr_radius_verify(packet->data, original_data,
                             (uint8_t const *) secret, talloc_array_length(secret) - 1) < 0) {
                fr_strerror_printf("Received packet from %s with %s",
-                                  inet_ntop(packet->src_ipaddr.af, &packet->src_ipaddr.ipaddr,
+                                  inet_ntop(packet->src_ipaddr.af, &packet->src_ipaddr.addr,
                                             buffer, sizeof(buffer)),
                                   fr_strerror());
                return -1;
@@ -771,13 +771,13 @@ void fr_radius_print_hex(RADIUS_PACKET const *packet)
 
                fprintf(fr_log_fp, "  Src IP:\t%s\n",
                        inet_ntop(packet->src_ipaddr.af,
-                                 &packet->src_ipaddr.ipaddr,
+                                 &packet->src_ipaddr.addr,
                                  buffer, sizeof(buffer)));
                fprintf(fr_log_fp, "    port:\t%u\n", packet->src_port);
 
                fprintf(fr_log_fp, "  Dst IP:\t%s\n",
                        inet_ntop(packet->dst_ipaddr.af,
-                                 &packet->dst_ipaddr.ipaddr,
+                                 &packet->dst_ipaddr.addr,
                                  buffer, sizeof(buffer)));
                fprintf(fr_log_fp, "    port:\t%u\n", packet->dst_port);
        }
index 6c655530bca2c1fc7d8a1d32137037235204c882..020636f64471e6d45746aeeb224290df870298c5 100644 (file)
@@ -531,7 +531,7 @@ int main(int argc, char *argv[])
 
        memset(&my_ipaddr, 0, sizeof(my_ipaddr));
        my_ipaddr.af = AF_INET;
-       my_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_LOOPBACK);
+       my_ipaddr.addr.v4.s_addr = htonl(INADDR_LOOPBACK);
        my_port = 1812;
 
        while ((c = getopt(argc, argv, "c:hi:qs:w:x")) != EOF) switch (c) {
index a279bced8fce9d99ea36503062627d26a64da211..1d279e8496bc36b7463bd8ee02a107b7a9c4b071 100644 (file)
@@ -193,7 +193,7 @@ int main(int argc, char *argv[])
 
        memset(&my_ipaddr, 0, sizeof(my_ipaddr));
        my_ipaddr.af = AF_INET;
-       my_ipaddr.ipaddr.v4.s_addr = htonl(INADDR_LOOPBACK);
+       my_ipaddr.addr.v4.s_addr = htonl(INADDR_LOOPBACK);
        my_port = 1812;
 
        while ((c = getopt(argc, argv, "i:n:s:w:x")) != EOF) switch (c) {