DwmDns-0.1.0
Dwm::Dns::RRDataAAAA Class Reference

Encapsulates AAAA resource record data. More...

#include <DwmDnsRRDataAAAA.hh>

Inheritance diagram for Dwm::Dns::RRDataAAAA:
Collaboration diagram for Dwm::Dns::RRDataAAAA:

Public Member Functions

 RRDataAAAA ()
 Constructor.
 
 RRDataAAAA (const in6_addr &in6Addr)
 Construct AAAA resource record data for the given IPv6 address in6Addr. More...
 
bool operator== (const RRDataAAAA &aaaa) const
 Equal-to operator, mostly for unit testing.
 
const in6_addr & In6Addr () const
 Returns the IPv6 address in the AAAA resource record data.
 
const in6_addr & In6Addr (const in6_addr &in6Addr)
 Sets and returns the IPv6 address in the AAAA resource record data.
 
uint8_t * Encode (uint8_t *pkt, uint8_t *ptr, uint16_t pktlen, LabelPositions &lps) const
 Encodes the AAAA resource record data into buffer @ pkt of length pktlen, starting at ptr. More...
 
const uint8_t * Decode (const uint8_t *pkt, const uint8_t *ptr, uint16_t pktlen, uint16_t rdlen)
 Decodes the AAAA record data from buffer pkt of length pktlen, starting at ptr. More...
 

Static Public Attributes

static const uint16_t k_rrtype = 28
 

Friends

std::ostream & operator<< (std::ostream &os, const RRDataAAAA &aaaa)
 Prints the AAAA resource record data to an ostream in human readable form. More...
 

Detailed Description

Encapsulates AAAA resource record data.

See RFC3596 for details.

Constructor & Destructor Documentation

◆ RRDataAAAA()

Dwm::Dns::RRDataAAAA::RRDataAAAA ( const in6_addr &  in6Addr)

Construct AAAA resource record data for the given IPv6 address in6Addr.

Member Function Documentation

◆ Decode()

const uint8_t* Dwm::Dns::RRDataAAAA::Decode ( const uint8_t *  pkt,
const uint8_t *  ptr,
uint16_t  pktlen,
uint16_t  rdlen 
)
virtual

Decodes the AAAA record data from buffer pkt of length pktlen, starting at ptr.

Returns the address immediately following the encoded AAAA resource record data in pkt on success. Throws std::out_of_range if pkt was too short to contain the encoded AAAA resource record data.

Implements Dwm::Dns::RRData.

◆ Encode()

uint8_t* Dwm::Dns::RRDataAAAA::Encode ( uint8_t *  pkt,
uint8_t *  ptr,
uint16_t  pktlen,
LabelPositions lps 
) const
virtual

Encodes the AAAA resource record data into buffer @ pkt of length pktlen, starting at ptr.

Returns the address immediately following the encoded AAAA resource record data in pkt on success. Throws std::out_of_range if pkt is too short to contain the encoded AAAA record data.

Implements Dwm::Dns::RRData.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const RRDataAAAA aaaa 
)
friend

Prints the AAAA resource record data to an ostream in human readable form.


The documentation for this class was generated from the following file: