Question re. rfc6929 - examples section 9.1
Alan DeKok
aland at deployingradius.com
Fri Jul 10 13:49:27 CEST 2020
On Jul 10, 2020, at 7:36 AM, <robert.stannard at bt.com> <robert.stannard at 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.
More information about the Freeradius-Users
mailing list