On Jul 10, 2020, at 7:36 AM, <robert.stannard@bt.com> <robert.stannard@bt.com> wrote:
could you please confirm my understanding from below,
241.2 { 1 23 45 } -> f1 07 02 01 04 23 45
?
would the dictionary entry for this example be,
241.2 some-dictionary-entry tlv
241.2.1 some-sub-entry integer (for example representing data 23 and 45)
Well, a 16-bit value, likely octets. RFC 6929 forbids 16-bit integers in RADIUS.
this is an example of a tlv-data type encapsulated within an Extended-Type (241)
241.2 has data type "tlv". 241.2.1 has data type "octets" The "tlv-data" is not a data type. It's just a way to refer *generically* to the contents of a TLV. Which could be in reality almost any data type. We use "tlv-data" as a place-holder name. Previous RFCs referred to it as "Data" or "Value". But "Data" and "Value" were used many times in many different contexts, to mean different things. So in order to distinguish between them, we switched to using qualified names. e.g. "TLV-Data" is data which is inside of a TLV. That's pretty unambiguous.
but you could also define a tlv-type as in dictionary rfc6930 - which uses a type from the standard attributes list
173 IPv6-6rd-Configuration tlv 173.1 IPv6-6rd-IPv4MaskLen integer 173.2 IPv6-6rd-Prefix ipv6prefix 173.3 IPv6-6rd-BR-IPv4-Address ipaddr
The dictionaries use the data types defined in RFC 8044 (mostly). *No* dictionary will ever use "TLV-Type" to define an attribute. Alan DeKok.