![]() |
Kea 2.2.0
|
This class represents SLP Service Scope option (79) from RFC2610. More...
#include <option6_status_code.h>
Inheritance diagram for isc::dhcp::Option4SlpServiceScope:Public Member Functions | |
| Option4SlpServiceScope (const bool mandatory_flag, const std::string &scope_list) | |
| Constructor, used for options constructed (during transmission). More... | |
| Option4SlpServiceScope (OptionBufferConstIter begin, OptionBufferConstIter end) | |
| Constructor, used for received options. More... | |
| virtual OptionPtr | clone () const |
| Copies this option and returns a pointer to the copy. More... | |
| std::string | dataToText () const |
| Returns textual representation of the option data. More... | |
| bool | getMandatoryFlag () const |
| Returns mandatory flag. More... | |
| const std::string & | getScopeList () const |
| Returns scope list. More... | |
| virtual uint16_t | len () const |
| Returns total length of the option. More... | |
| virtual void | pack (isc::util::OutputBuffer &buf, bool check=true) const |
| Writes option in wire-format. More... | |
| void | setMandatoryFlag (const bool mandatory_flag) |
| Sets new mandatory flag. More... | |
| void | setScopeList (std::string &scope_list) |
| Sets new scope list. More... | |
| virtual std::string | toText (int indent=0) const |
| Returns textual representation of the option. More... | |
| virtual void | unpack (OptionBufferConstIter begin, OptionBufferConstIter end) |
| Parses received buffer. More... | |
Public Member Functions inherited from isc::dhcp::Option | |
| Option (const Option &source) | |
| Copy constructor. More... | |
| Option (Universe u, uint16_t type) | |
| ctor, used for options constructed, usually during transmission More... | |
| Option (Universe u, uint16_t type, const OptionBuffer &data) | |
| Constructor, used for received options. More... | |
| Option (Universe u, uint16_t type, OptionBufferConstIter first, OptionBufferConstIter last) | |
| Constructor, used for received options. More... | |
| virtual | ~Option () |
| just to force that every option has virtual dtor More... | |
| void | addOption (OptionPtr opt) |
| Adds a sub-option. More... | |
| virtual OptionPtr | clone () const |
| Copies this option and returns a pointer to the copy. More... | |
| bool | delOption (uint16_t type) |
| Attempts to delete first suboption of requested type. More... | |
| virtual bool | equals (const Option &other) const |
| Checks if two options are equal. More... | |
| bool | equals (const OptionPtr &other) const |
| Checks if options are equal. More... | |
| virtual const OptionBuffer & | getData () const |
| Returns pointer to actual data. More... | |
| std::string | getEncapsulatedSpace () const |
| Returns the name of the option space encapsulated by this option. More... | |
| virtual uint16_t | getHeaderLen () const |
| Returns length of header (2 for v4, 4 for v6) More... | |
| OptionCollection & | getMutableOptions () |
| Returns all encapsulated options. More... | |
| OptionPtr | getOption (uint16_t type) const |
| Returns shared_ptr to suboption of specific type. More... | |
| const OptionCollection & | getOptions () const |
| Returns all encapsulated options. More... | |
| void | getOptionsCopy (OptionCollection &options_copy) const |
| Performs deep copy of suboptions. More... | |
| uint16_t | getType () const |
| Returns option type (0-255 for DHCPv4, 0-65535 for DHCPv6) More... | |
| uint16_t | getUint16 () const |
| Returns content of first word. More... | |
| uint32_t | getUint32 () const |
| Returns content of first double word. More... | |
| uint8_t | getUint8 () const |
| Returns content of first byte. More... | |
| Universe | getUniverse () const |
| returns option universe (V4 or V6) More... | |
| virtual uint16_t | len () const |
| Returns length of the complete option (data length + DHCPv4/DHCPv6 option header) More... | |
| Option & | operator= (const Option &rhs) |
| Assignment operator. More... | |
| virtual void | pack (isc::util::OutputBuffer &buf, bool check=true) const |
| Writes option in wire-format to a buffer. More... | |
| template<typename InputIterator > | |
| void | setData (InputIterator first, InputIterator last) |
| Sets content of this option from buffer. More... | |
| void | setEncapsulatedSpace (const std::string &encapsulated_space) |
| Sets the name of the option space encapsulated by this option. More... | |
| void | setUint16 (uint16_t value) |
| Sets content of this option to a single uint16 value. More... | |
| void | setUint32 (uint32_t value) |
| Sets content of this option to a single uint32 value. More... | |
| void | setUint8 (uint8_t value) |
| Sets content of this option to a single uint8 value. More... | |
| virtual std::vector< uint8_t > | toBinary (const bool include_header=false) const |
| Returns binary representation of the option. More... | |
| virtual std::string | toHexString (const bool include_header=false) const |
| Returns string containing hexadecimal representation of option. More... | |
| virtual std::string | toString () const |
| Returns string representation of the value. More... | |
| virtual std::string | toText (int indent=0) const |
| Returns string representation of the option. More... | |
| virtual void | unpack (OptionBufferConstIter begin, OptionBufferConstIter end) |
| Parses received buffer. More... | |
| virtual bool | valid () const |
| returns if option is valid (e.g. More... | |
Additional Inherited Members | |
Public Types inherited from isc::dhcp::Option | |
| typedef OptionPtr | Factory(Option::Universe u, uint16_t type, const OptionBuffer &buf) |
| a factory function prototype More... | |
| enum | Universe { V4 , V6 } |
| defines option universe DHCPv4 or DHCPv6 More... | |
Static Public Member Functions inherited from isc::dhcp::Option | |
| static OptionPtr | create (Universe u, uint16_t type) |
Factory function creating an instance of the Option. More... | |
| static OptionPtr | create (Universe u, uint16_t type, const OptionBuffer &data) |
Factory function creating an instance of the Option. More... | |
| static OptionPtr | factory (Option::Universe u, uint16_t type) |
| Factory function to create instance of option. More... | |
| static OptionPtr | factory (Option::Universe u, uint16_t type, const OptionBuffer &buf) |
| Factory function to create instance of option. More... | |
Static Public Attributes inherited from isc::dhcp::Option | |
| static bool | lenient_parsing_ |
| Governs whether options should be parsed less strictly. More... | |
| static const size_t | OPTION4_HDR_LEN = 2 |
| length of the usual DHCPv4 option header (there are exceptions) More... | |
| static const size_t | OPTION6_HDR_LEN = 4 |
| length of any DHCPv6 option header More... | |
Protected Member Functions inherited from isc::dhcp::Option | |
| void | check () const |
| A protected method used for option correctness. More... | |
| template<typename OptionType > | |
| OptionPtr | cloneInternal () const |
| Copies this option and returns a pointer to the copy. More... | |
| std::string | headerToText (const int indent=0, const std::string &type_name="") const |
| Returns option header in the textual format. More... | |
| void | packHeader (isc::util::OutputBuffer &buf, bool check=true) const |
| Store option's header in a buffer. More... | |
| void | packOptions (isc::util::OutputBuffer &buf, bool check=true) const |
| Store sub options in a buffer. More... | |
| std::string | suboptionsToText (const int indent=0) const |
| Returns collection of suboptions in the textual format. More... | |
| void | unpackOptions (const OptionBuffer &buf) |
| Builds a collection of sub options from the buffer. More... | |
Protected Attributes inherited from isc::dhcp::Option | |
| OptionBuffer | data_ |
| contains content of this data More... | |
| std::string | encapsulated_space_ |
| Name of the option space being encapsulated by this option. More... | |
| OptionCollection | options_ |
| collection for storing suboptions More... | |
| uint16_t | type_ |
| option type (0-255 for DHCPv4, 0-65535 for DHCPv6) More... | |
| Universe | universe_ |
| option universe (V4 or V6) More... | |
This class represents SLP Service Scope option (79) from RFC2610.
Definition at line 119 of file option6_status_code.h.
| isc::dhcp::Option4SlpServiceScope::Option4SlpServiceScope | ( | const bool | mandatory_flag, |
| const std::string & | scope_list | ||
| ) |
Constructor, used for options constructed (during transmission).
| mandatory_flag | Mandatory flag. |
| scope_list | Textual scope list, may be empty |
Definition at line 141 of file option6_status_code.cc.
| isc::dhcp::Option4SlpServiceScope::Option4SlpServiceScope | ( | OptionBufferConstIter | begin, |
| OptionBufferConstIter | end | ||
| ) |
Constructor, used for received options.
| OutOfRange | if specified option is truncated |
| begin | Iterator to first byte of option data |
| end | Iterator to end of option data (first byte after option end). |
Definition at line 147 of file option6_status_code.cc.
References unpack().
Here is the call graph for this function:
|
virtual |
Copies this option and returns a pointer to the copy.
Reimplemented from isc::dhcp::Option.
Definition at line 157 of file option6_status_code.cc.
| std::string isc::dhcp::Option4SlpServiceScope::dataToText | ( | ) | const |
Returns textual representation of the option data.
This method returns only the status code and the status message. It excludes the option header.
Definition at line 210 of file option6_status_code.cc.
References getMandatoryFlag().
Referenced by toText().
Here is the call graph for this function:
|
inline |
Returns mandatory flag.
Definition at line 173 of file option6_status_code.h.
Referenced by dataToText(), and pack().
|
inline |
Returns scope list.
Definition at line 185 of file option6_status_code.h.
|
virtual |
Returns total length of the option.
The returned length is a sum of the option header and data fields.
Reimplemented from isc::dhcp::Option.
Definition at line 197 of file option6_status_code.cc.
References isc::dhcp::Option::getHeaderLen().
Here is the call graph for this function:
|
virtual |
Writes option in wire-format.
Writes option in wire-format to buf, returns pointer to first unused byte after stored option.
| [out] | buf | Pointer to the output buffer. |
| check | if set to false, allows options larger than 255 for v4 |
Reimplemented from isc::dhcp::Option.
Definition at line 162 of file option6_status_code.cc.
References isc::dhcp::Option::check(), getMandatoryFlag(), isc::dhcp::Option::packHeader(), isc::util::OutputBuffer::writeData(), and isc::util::OutputBuffer::writeUint8().
Here is the call graph for this function:
|
inline |
Sets new mandatory flag.
| mandatory_flag | New numeric status code. |
Definition at line 180 of file option6_status_code.h.
|
inline |
Sets new scope list.
| scope_list | New scope list (empty string is allowed). |
Definition at line 192 of file option6_status_code.h.
|
virtual |
Returns textual representation of the option.
| indent | Number of spaces before printing text. |
Reimplemented from isc::dhcp::Option.
Definition at line 202 of file option6_status_code.cc.
References dataToText(), and isc::dhcp::Option::headerToText().
Here is the call graph for this function:
|
virtual |
Parses received buffer.
| OutOfRange | if specified option is truncated |
| BadDataTypeCast | if first byte is not 0 or 1 |
| begin | Iterator to first byte of option data |
| end | Iterator to end of option data (first byte after option end) |
Reimplemented from isc::dhcp::Option.
Definition at line 176 of file option6_status_code.cc.
References isc::dhcp::DHO_SERVICE_SCOPE, and isc_throw.
Referenced by Option4SlpServiceScope().