12 #include <boost/shared_ptr.hpp> 27 class AbstractMessageRenderer;
34 typedef boost::shared_ptr<EDNS>
EDNSPtr;
137 explicit EDNS(
const uint8_t
version = SUPPORTED_VERSION);
222 uint8_t getVersion()
const {
return (version_); }
246 void setUDPSize(
const uint16_t udp_size) { udp_size_ = udp_size; }
310 const uint8_t extended_rcode)
const;
319 const uint8_t extended_rcode)
const;
342 std::string toText()
const;
351 static const uint8_t SUPPORTED_VERSION = 0;
355 const uint8_t version_;
The Name class encapsulates DNS names.
boost::shared_ptr< const EDNS > ConstEDNSPtr
A pointer-like type pointing to an immutable EDNS object.
The Rdata class is an abstract base class that provides a set of common interfaces to manipulate conc...
std::ostream & operator<<(std::ostream &os, const CSVRow &row)
Overrides standard output stream operator for CSVRow object.
DNS Response Codes (RCODEs) class.
The RRClass class encapsulates DNS resource record classes.
boost::shared_ptr< EDNS > EDNSPtr
A pointer-like type pointing to an EDNS object.
The AbstractMessageRenderer class is an abstract base class that provides common interfaces for rende...
bool getDNSSECAwareness() const
Returns whether the message sender is DNSSEC aware.
The RRTTL class encapsulates TTLs used in DNS resource records.
The EDNS class represents the EDNS OPT RR defined in RFC2671.
int version()
returns Kea hooks version.
EDNS * createEDNSFromRR(const Name &name, const RRClass &rrclass, const RRType &rrtype, const RRTTL &ttl, const Rdata &rdata, uint8_t &extended_rcode)
Create a new EDNS object from a set of RR parameters, also providing the extended RCODE value...
void setUDPSize(const uint16_t udp_size)
Specify the maximum payload size of UDP messages that use this EDNS.
The OutputBuffer class is a buffer abstraction for manipulating mutable data.
Defines the logger used by the top-level component of kea-lfc.
The RRType class encapsulates DNS resource record types.
uint16_t getUDPSize() const
Returns the maximum payload size of UDP messages for the sender of the message containing this EDNS...
void setDNSSECAwareness(const bool is_aware)
Specifies whether the sender of the message containing this EDNS is DNSSEC aware. ...