ssize_t slen;
fr_pair_t *vp = NULL;
uint8_t prefix_len;
+ fr_dhcpv6_decode_ctx_t *packet_ctx = decode_ctx;
FR_PROTO_HEX_DUMP(data, data_len, "decode_value");
break;
case FR_TYPE_STRUCT:
- slen = fr_struct_from_network(ctx, out, parent, data, data_len, false,
+ slen = fr_struct_from_network(ctx, out, parent, data, data_len, packet_ctx->struct_nested,
decode_ctx, decode_value_trampoline, decode_tlv_trampoline);
if (slen < 0) goto raw;
uint32_t transaction_id; //!< previous transaction ID
uint8_t *duid; //!< the expected DUID, in wire format
size_t duid_len; //!< length of the expected DUID
+ bool struct_nested; //!< decode structs as nested
} fr_dhcpv6_decode_ctx_t;
/*