12#include <boost/shared_ptr.hpp>
40 Option6Auth(
const uint8_t proto,
const uint8_t algo,
const uint8_t method,
41 const uint64_t rdm,
const std::vector<uint8_t>&
info);
75 virtual std::string
toText(
int indent = 0)
const;
This class represents Authentication (11) DHCPv6 option.
uint8_t getHashAlgo() const
Returns hash algorithm type.
void setHashAlgo(uint8_t algo)
Set hash algorithm type.
static const uint8_t OPTION6_HASH_MSG_LEN
std::vector< uint8_t > getAuthInfo() const
Return authentication information.
void setAuthInfo(const std::vector< uint8_t > &auth_info)
Set authentication information.
uint8_t protocol_
keeps protocol type
static const uint8_t OPTION6_AUTH_MIN_LEN
static const uint8_t OPTION6_HDR
uint8_t getReplyDetectionMethod() const
Returns replay detection method type.
uint64_t rdm_value_
keeps replay detection method value
uint8_t rdm_method_
keeps replay detection method type
virtual std::string toText(int indent=0) const
Provides human readable text representation.
void setReplyDetectionValue(uint64_t value)
Set replay detection method value.
uint8_t algorithm_
keeps hash algorithm value
void setReplyDetectionMethod(uint8_t method)
Set replay detection method type.
virtual OptionPtr clone() const
Copies this option and returns a pointer to the copy.
std::vector< uint8_t > auth_info_
keeps authentication information
void packHashInput(isc::util::OutputBuffer &buf) const
Writes option in wire-format to buf, for computing hash auth info filled with 0 for a length of 128 b...
uint64_t getReplyDetectionValue() const
Return replay detection mechanism.
void pack(isc::util::OutputBuffer &buf, bool check=true) const
Writes option in wire-format to buf, returns pointer to first unused byte after stored option.
void setProtocol(uint8_t proto)
Set protocol type.
uint8_t getProtocol() const
Returns protocol type.
Option6Auth(const uint8_t proto, const uint8_t algo, const uint8_t method, const uint64_t rdm, const std::vector< uint8_t > &info)
Constructor, used for auth options while transmitting.
virtual void unpack(OptionBufferConstIter begin, OptionBufferConstIter end)
Parses received buffer.
void check() const
A protected method used for option correctness.
The OutputBuffer class is a buffer abstraction for manipulating mutable data.
OptionBuffer::const_iterator OptionBufferConstIter
const_iterator for walking over OptionBuffer
boost::shared_ptr< Option6Auth > Option6AuthPtr
A pointer to the isc::dhcp::Option6Auth object.
boost::shared_ptr< Option > OptionPtr
Defines the logger used by the top-level component of kea-lfc.