Skip to content
Horace Li edited this page Jul 3, 2020 · 1 revision
  • RadiusAttribute is used for octets attributes and attributes without a dictionary entry or specific subtype.
    • Attribute subtypes such as IntegerAttribute store the same data, but have convenience methods for maniupulation and stricter data validation.
  • AttributeTemplate contains the attribute type, name, data type, and enumeration of valid values if appropriate.
    • A create() method is used to create attributes directly for that type.
    • If only the attribute type ID is known, rather than the AttributeTemplate object, use dictionary.create() which will create a basic RadiusAttribute. This is safer as it will always successfully create an attribute even if there's no dictionary entry for the type ID.
  • VendorSpecificAttribute stores lists of vendor-specific attributes instead of attribute data itself, and serializes its data by concatenating byte array representations of sub-attributes with its type/vendorId/length header.
Clone this wiki locally