From: Alan T. DeKok Date: Mon, 21 Oct 2019 16:28:59 +0000 (-0400) Subject: add support for uncompressed DNS labels X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2ee8bb0cbef0ce32bacafee67ecd4d1f24550ef3;p=thirdparty%2Ffreeradius-server.git add support for uncompressed DNS labels --- diff --git a/share/dictionary/dhcpv6/dictionary.rfc4280 b/share/dictionary/dhcpv6/dictionary.rfc4280 index 45a7409885f..b9081941824 100644 --- a/share/dictionary/dhcpv6/dictionary.rfc4280 +++ b/share/dictionary/dhcpv6/dictionary.rfc4280 @@ -11,5 +11,5 @@ # ############################################################################## -ATTRIBUTE BCMCS-Server-Domain-Name-List 33 octets # Domain name list (DNS encoding) +ATTRIBUTE BCMCS-Server-Domain-Name-List 33 string encode=uncompressed_dns_label,array ATTRIBUTE BCMCS-Server-Address 34 ipv6addr array diff --git a/src/lib/util/dict.h b/src/lib/util/dict.h index 732d917a050..3f3b6430a6d 100644 --- a/src/lib/util/dict.h +++ b/src/lib/util/dict.h @@ -84,6 +84,7 @@ enum { enum { FLAG_ENCODE_NONE = 0, //!< no particular encoding for DHCPv6 strings FLAG_ENCODE_DNS_LABEL, //!< encode as DNS label + FLAG_ENCODE_UNCOMPRESSED_DNS_LABEL, //!< encode as uncompressed DNS label }; diff --git a/src/lib/util/dict_util.c b/src/lib/util/dict_util.c index 68ecf97b9f4..aba907602f1 100644 --- a/src/lib/util/dict_util.c +++ b/src/lib/util/dict_util.c @@ -78,6 +78,8 @@ static size_t radius_subtype_table_len = NUM_ELEMENTS(radius_subtype_table); static fr_table_num_ordered_t const dhcpv6_subtype_table[] = { { "dns_label", FLAG_ENCODE_DNS_LABEL }, { "encode=dns_label", FLAG_ENCODE_DNS_LABEL }, + { "encode=uncompressed_dns_label", FLAG_ENCODE_UNCOMPRESSED_DNS_LABEL }, + { "uncompressed_dns_label", FLAG_ENCODE_UNCOMPRESSED_DNS_LABEL }, }; static size_t dhcpv6_subtype_table_len = NUM_ELEMENTS(dhcpv6_subtype_table);