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;
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;