]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
re-add byte, ipv4prefix, ipv6prefix
authorAlan T. DeKok <aland@freeradius.org>
Tue, 6 Feb 2018 19:36:00 +0000 (14:36 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Tue, 6 Feb 2018 19:36:00 +0000 (14:36 -0500)
src/lib/value.c

index 07322f6e81163ce16fa30016a5dd05b520cc55da..9fce37efcf5cde8798b6d3391e18400cef54dad9 100644 (file)
@@ -1001,6 +1001,13 @@ static int value_data_hton(value_data_t *dst, PW_TYPE dst_type, void const *src,
                dst->ushort = htons(*(uint16_t const *)src);
                break;
 
+       /* 1 byte integer */
+       case PW_TYPE_BYTE:
+               if (src_len < sizeof(dst->byte)) return -1;
+
+               dst->byte = *(uint8_t const *)src;
+               break;
+
        case PW_TYPE_IPV4_ADDR:
                dst_len = 4;
                dst_ptr = (uint8_t *) &dst->ipaddr.s_addr;
@@ -1035,6 +1042,16 @@ static int value_data_hton(value_data_t *dst, PW_TYPE dst_type, void const *src,
                dst_ptr = (uint8_t *) dst->ipv6addr.s6_addr;
                goto copy;
 
+       case PW_TYPE_IPV4_PREFIX:
+               dst_len = sizeof(dst->ipv4prefix);
+               dst_ptr = (uint8_t *) dst->ipv4prefix;
+               goto copy;
+
+       case PW_TYPE_IPV6_PREFIX:
+               dst_len = sizeof(dst->ipv6prefix);
+               dst_ptr = (uint8_t *) dst->ipv6prefix;
+               goto copy;
+
        case PW_TYPE_ETHERNET:
                dst_len = sizeof(dst->ether);
                dst_ptr = (uint8_t *) dst->ether;