42 #ifndef _DWMDNSRRDATADHCID_HH_ 43 #define _DWMDNSRRDATADHCID_HH_ 63 static const uint16_t k_rrtype = 49;
65 static const uint16_t k_idDHCPv4HtypeHlen = 0;
66 static const uint16_t k_idDHCPv4ClientId = 1;
67 static const uint16_t k_idDUID = 2;
69 static const uint8_t k_digestTypeReserved = 0;
70 static const uint8_t k_digestTypeSHA256 = 1;
81 const std::string & digest);
96 uint16_t
Id(uint16_t
id);
111 const std::string &
Digest()
const;
116 const std::string &
Digest(
const std::string & digest);
125 uint8_t *
Encode(uint8_t *pkt, uint8_t *ptr, uint16_t pktlen,
135 const uint8_t *
Decode(
const uint8_t *pkt,
const uint8_t *ptr,
136 uint16_t pktlen, uint16_t rdlen);
142 friend std::ostream &
operator << (std::ostream & os,
155 #endif // _DWMDNSRRDATADHCID_HH_ uint8_t DigestType() const
Returns the digest type in the DHCID resource record data.
friend std::ostream & operator<<(std::ostream &os, const RRDataDHCID &dhcid)
Print the DHCID resource record data to an ostream in human readable form.
uint8_t * Encode(uint8_t *pkt, uint8_t *ptr, uint16_t pktlen, LabelPositions &lps) const
Encodes the DHCID resource record data into buffer @ pkt of length pktlen, starting at ptr...
Definition: DwmDnsEtcHosts.hh:60
const uint8_t * Decode(const uint8_t *pkt, const uint8_t *ptr, uint16_t pktlen, uint16_t rdlen)
Decodes the DHCID resource record data from buffer pkt of length pktlen, starting at ptr...
Dwm::Dns::RRData class definition.
uint16_t Id() const
Returns the ID in the DHCID resource record data.
A helper class used when performing label sequence compression.
Definition: DwmDnsLabelPositions.hh:57
Encapsulates DHCID resource record data.
Definition: DwmDnsRRDataDHCID.hh:59
const std::string & Digest() const
Returns the digest in the DHCID resource record data.
RRDataDHCID()
Default constructor.
bool operator==(const RRDataDHCID &dhcid) const
Equal-to operator, mostly for unit testing.
Abstract (pure virtual) base for resource record data classes.
Definition: DwmDnsRRData.hh:71