|  | Kea 3.1.0
    | 
RADIUS attribute derived classes: do not use them directly outside unit tests, instead use Attribute class/static factory methods. More...
#include <client_attribute.h>
| Public Member Functions | |
| virtual size_t | getValueLen () const override | 
| Value length. | |
| virtual AttrValueType | getValueType () const override | 
| Get value type. | |
| virtual std::vector< uint8_t > | toBinary () const override | 
| To binary. | |
| virtual std::vector< uint8_t > | toBytes () const override | 
| To bytes. | |
| virtual data::ElementPtr | toElement () const override | 
| Unparse attribute. | |
| virtual std::string | toString () const override | 
| To string. | |
| virtual std::string | toText (size_t indent=0) const override | 
| Returns text representation of the attribute. | |
| Public Member Functions inherited from isc::radius::Attribute | |
| virtual | ~Attribute ()=default | 
| Virtual destructor. | |
| uint8_t | getType () const | 
| Get type. | |
| virtual uint32_t | toInt () const | 
| To integer. | |
| virtual asiolink::IOAddress | toIpAddr () const | 
| To IPv4 address. | |
| virtual asiolink::IOAddress | toIpv6Addr () const | 
| To IPv6 address. | |
| virtual asiolink::IOAddress | toIpv6Prefix () const | 
| To IPv6 prefix. | |
| virtual uint8_t | toIpv6PrefixLen () const | 
| To IPv6 prefix length. | |
| Public Member Functions inherited from isc::data::CfgToElement | |
| virtual | ~CfgToElement () | 
| Destructor. | |
| Protected Member Functions | |
| AttrString (const uint8_t type, const std::string &value) | |
| Constructor. | |
| AttrString (const uint8_t type, const std::vector< uint8_t > &value) | |
| Constructor. | |
| Protected Member Functions inherited from isc::radius::Attribute | |
| Attribute (const uint8_t type) | |
| Constructor. | |
| Static Protected Member Functions | |
| static AttributePtr | fromBytes (const uint8_t type, const std::vector< uint8_t > &bytes) | 
| From bytes. | |
| static AttributePtr | fromText (const uint8_t type, const std::string &repr) | 
| From text. | |
| Friends | |
| class | Attribute | 
| Make Attribute a friend class. | |
| Additional Inherited Members | |
| Static Public Member Functions inherited from isc::radius::Attribute | |
| static AttributePtr | fromBinary (const uint8_t type, const std::vector< uint8_t > &value) | 
| From binary with type. | |
| static AttributePtr | fromBytes (const AttrDefPtr &def, const std::vector< uint8_t > &value) | 
| From bytes with definition. | |
| static AttributePtr | fromBytes (const std::vector< uint8_t > &bytes) | 
| From bytes (wire format). | |
| static AttributePtr | fromInt (const uint8_t type, const uint32_t value) | 
| From integer with type. | |
| static AttributePtr | fromIpAddr (const uint8_t type, const asiolink::IOAddress &value) | 
| From IPv4 address with type. | |
| static AttributePtr | fromIpv6Addr (const uint8_t type, const asiolink::IOAddress &value) | 
| From IPv6 address with type. | |
| static AttributePtr | fromIpv6Prefix (const uint8_t type, const uint8_t len, const asiolink::IOAddress &value) | 
| From IPv6 prefix with type. | |
| static AttributePtr | fromString (const uint8_t type, const std::string &value) | 
| From type specific factories. | |
| static AttributePtr | fromText (const AttrDefPtr &def, const std::string &value) | 
| From definition generic factories. | |
| static AttributePtr | fromText (const std::string &repr) | 
| Generic factories. | |
| Public Attributes inherited from isc::radius::Attribute | |
| const uint8_t | type_ | 
| Type. | |
RADIUS attribute derived classes: do not use them directly outside unit tests, instead use Attribute class/static factory methods.
RADIUS attribute holding strings.
Definition at line 234 of file client_attribute.h.
| 
 | inlineprotected | 
Constructor.
| type | attribute type. | 
| value | string value. | 
Definition at line 240 of file client_attribute.h.
References Attribute, and if().
Referenced by fromBytes(), and fromText().
| 
 | protected | 
Constructor.
| type | attribute type. | 
| value | binary value. | 
Definition at line 220 of file client_attribute.cc.
References Attribute, and if().
| 
 | staticprotected | 
From bytes.
| type | attribute type. | 
| bytes | binary value. | 
Definition at line 246 of file client_attribute.cc.
References AttrString(), and isc_throw.
Referenced by isc::radius::Attribute::fromBytes().
| 
 | staticprotected | 
From text.
| type | attribute type. | 
| repr | value representation. | 
Definition at line 234 of file client_attribute.cc.
References AttrString(), and isc_throw.
Referenced by isc::radius::Attribute::fromText().
| 
 | inlineoverridevirtual | 
Value length.
Implements isc::radius::Attribute.
Definition at line 286 of file client_attribute.h.
Referenced by toBinary(), and toBytes().
| 
 | inlineoverridevirtual | 
Get value type.
Implements isc::radius::Attribute.
Definition at line 279 of file client_attribute.h.
References isc::radius::PW_TYPE_STRING.
| 
 | overridevirtual | 
To binary.
Reimplemented from isc::radius::Attribute.
Definition at line 278 of file client_attribute.cc.
References getValueLen().
| 
 | overridevirtual | 
To bytes.
Implements isc::radius::Attribute.
Definition at line 268 of file client_attribute.cc.
References isc::radius::Attribute::getType(), and getValueLen().
| 
 | overridevirtual | 
Unparse attribute.
Implements isc::data::CfgToElement.
Definition at line 288 of file client_attribute.cc.
References Element::create(), Element::createMap(), isc::util::encode::encodeHex(), isc::radius::AttrDefs::getByType(), isc::radius::Attribute::getType(), isc::radius::AttrDefs::instance(), and isc::util::str::isPrintable().
| 
 | inlineoverridevirtual | 
To string.
Reimplemented from isc::radius::Attribute.
Definition at line 304 of file client_attribute.h.
| 
 | overridevirtual | 
Returns text representation of the attribute.
| indent | number of spaces before printing text. | 
Implements isc::radius::Attribute.
Definition at line 258 of file client_attribute.cc.
References isc::radius::AttrDefs::getName(), isc::radius::Attribute::getType(), and isc::radius::AttrDefs::instance().
| 
 | friend | 
Make Attribute a friend class.
Definition at line 273 of file client_attribute.h.
References Attribute.
Referenced by AttrString(), AttrString(), and Attribute.