Defines DNSLabel, DNSType, DNSClass and DNSNode, which together store DNS details.
More...
#include <strings.h>
#include <string>
#include <set>
#include <map>
#include <vector>
#include <deque>
#include <iostream>
#include <cstdint>
#include <functional>
#include <memory>
#include "nenum.hh"
#include "comboaddress.hh"
Go to the source code of this file.
|
enum | RCode {
RCode::Noerror = 0,
RCode::Formerr = 1,
RCode::Servfail = 2,
RCode::Nxdomain = 3,
RCode::Notimp = 4,
RCode::Refused = 5,
RCode::Notauth = 9,
RCode::Badvers =16
} |
|
enum | DNSType : uint16_t {
DNSType::A = 1,
DNSType::NS = 2,
DNSType::CNAME = 5,
DNSType::SOA =6,
DNSType::PTR =12,
DNSType::MX =15,
DNSType::TXT =16,
DNSType::AAAA = 28,
DNSType::SRV =33,
DNSType::NAPTR =35,
DNSType::DS =43,
DNSType::RRSIG =46,
DNSType::NSEC =47,
DNSType::DNSKEY =48,
DNSType::NSEC3 =50,
DNSType::OPT =41,
DNSType::IXFR = 251,
DNSType::AXFR = 252,
DNSType::ANY = 255,
DNSType::CAA = 257
} |
| Stores the type of a DNS query or resource record. More...
|
|
enum | DNSClass : uint16_t { DNSClass::IN =1,
DNSClass::CH =3
} |
| Stores the class of a DNS query or resource record. More...
|
|
Defines DNSLabel, DNSType, DNSClass and DNSNode, which together store DNS details.
Stores the class of a DNS query or resource record.
Stores the type of a DNS query or resource record.
Enumerator |
---|
A |
|
NS |
|
CNAME |
|
SOA |
|
PTR |
|
MX |
|
TXT |
|
AAAA |
|
SRV |
|
NAPTR |
|
DS |
|
RRSIG |
|
NSEC |
|
DNSKEY |
|
NSEC3 |
|
OPT |
|
IXFR |
|
AXFR |
|
ANY |
|
CAA |
|
Enumerator |
---|
Noerror |
|
Formerr |
|
Servfail |
|
Nxdomain |
|
Notimp |
|
Refused |
|
Notauth |
|
Badvers |
|
Called by main() to load zone information.
Called by main() to load zone information.
DNSName makeDNSName |
( |
const std::string & |
str | ) |
|
This function is plain wrong and does unescape its input XXX.
std::ostream& operator<< |
( |
std::ostream & |
os, |
|
|
const DNSLabel & |
d |
|
) |
| |
std::ostream& operator<< |
( |
std::ostream & |
os, |
|
|
const DNSName & |
d |
|
) |
| |
std::unique_ptr<DNSNode> retrieveZone |
( |
const ComboAddress & |
remote, |
|
|
const DNSName & |
zone |
|
) |
| |
connects to an authoritative server, retrieves a zone, returns it as a smart pointer