From: Alan T. DeKok Date: Tue, 8 Mar 2022 21:44:42 +0000 (-0500) Subject: ensure that string/octet arrays are marked as "length=uint16" X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=64ea2f5d49fcf76bcd023427d9c9333342ded286;p=thirdparty%2Ffreeradius-server.git ensure that string/octet arrays are marked as "length=uint16" --- diff --git a/src/protocols/dhcpv6/base.c b/src/protocols/dhcpv6/base.c index 744c8678ed3..600d103f680 100644 --- a/src/protocols/dhcpv6/base.c +++ b/src/protocols/dhcpv6/base.c @@ -1028,6 +1028,11 @@ static bool attr_valid(UNUSED fr_dict_t *dict, UNUSED fr_dict_attr_t const *pare */ if (flags->array && ((type == FR_TYPE_STRING) || (type == FR_TYPE_OCTETS))) { flags->is_known_width = true; + + if (flags->extra && (flags->subtype != FLAG_LENGTH_UINT16)) { + fr_strerror_const("string/octets arrays require the 'length=uint16' flag"); + return false; + } } /*