class MXRecordContent : public DNSRecordContent
{
public:
- MXRecordContent(uint16_t preference, const string& mxname);
+ MXRecordContent(uint16_t preference, const DNSName& mxname);
includeboilerplate(MX)
uint16_t d_preference;
- string d_mxname;
+ DNSName d_mxname;
};
class KXRecordContent : public DNSRecordContent
{
public:
- KXRecordContent(uint16_t preference, const string& exchanger);
+ KXRecordContent(uint16_t preference, const DNSName& exchanger);
includeboilerplate(KX)
private:
uint16_t d_preference;
- string d_exchanger;
+ DNSName d_exchanger;
};
class IPSECKEYRecordContent : public DNSRecordContent
{
public:
- IPSECKEYRecordContent(uint16_t preference, uint8_t gatewaytype, uint8_t algo, const std::string& gateway, const std::string &publickey);
+ IPSECKEYRecordContent(uint16_t preference, uint8_t gatewaytype, uint8_t algo, const DNSName& gateway, const DNSName& publickey);
includeboilerplate(IPSECKEY)
private:
uint8_t d_preference, d_gatewaytype, d_algorithm;
- string d_gateway, d_publickey;
+ DNSName d_gateway, d_publickey;
uint32_t d_ip4;
string d_ip6;
};
class SRVRecordContent : public DNSRecordContent
{
public:
- SRVRecordContent(uint16_t preference, uint16_t weight, uint16_t port, const string& target);
+ SRVRecordContent(uint16_t preference, uint16_t weight, uint16_t port, const DNSName& target);
includeboilerplate(SRV)
uint16_t d_preference, d_weight, d_port;
- string d_target;
+ DNSName d_target;
};
class TSIGRecordContent : public DNSRecordContent
includeboilerplate(TSIG)
TSIGRecordContent() : DNSRecordContent(QType::TSIG) {}
- string d_algoName;
+ DNSName d_algoName;
uint64_t d_time; // 48 bits
uint16_t d_fudge;
// uint16_t d_macSize;
includeboilerplate(NS)
private:
- string d_content;
+ DNSName d_content;
};
class PTRRecordContent : public DNSRecordContent
includeboilerplate(PTR)
private:
- string d_content;
+ DNSName d_content;
};
class CNAMERecordContent : public DNSRecordContent
includeboilerplate(CNAME)
private:
- string d_content;
+ DNSName d_content;
};
class ALIASRecordContent : public DNSRecordContent
includeboilerplate(ALIAS)
private:
- string d_content;
+ DNSName d_content;
};
includeboilerplate(DNAME)
private:
- string d_content;
+ DNSName d_content;
};
includeboilerplate(MR)
private:
- string d_alias;
+ DNSName d_alias;
};
class MINFORecordContent : public DNSRecordContent
includeboilerplate(MINFO)
private:
- string d_rmailbx;
- string d_emailbx;
+ DNSName d_rmailbx;
+ DNSName d_emailbx;
};
class OPTRecordContent : public DNSRecordContent
includeboilerplate(RP)
private:
- string d_mbox, d_info;
+ DNSName d_mbox, d_info;
};
private:
uint16_t d_subtype;
- string d_hostname;
+ DNSName d_hostname;
};
uint8_t d_algorithm, d_labels;
uint32_t d_originalttl, d_sigexpire, d_siginception;
uint16_t d_tag;
- string d_signer, d_signature;
+ DNSName d_signer;
+ string d_signature;
};
{
public:
includeboilerplate(SOA)
- SOARecordContent(const string& mname, const string& rname, const struct soatimes& st);
+ SOARecordContent(const DNSName& mname, const DNSName& rname, const struct soatimes& st);
- string d_mname;
- string d_rname;
+ DNSName d_mname;
+ DNSName d_rname;
struct soatimes d_st;
};
static void report(void);
NSECRecordContent() : DNSRecordContent(47)
{}
- NSECRecordContent(const string& content, const string& zone="");
+ NSECRecordContent(const string& content, const string& zone=""); //DNSNameFIXME: DNSName& zone?
static DNSRecordContent* make(const DNSRecord &dr, PacketReader& pr);
static DNSRecordContent* make(const string& content);
string getZoneRepresentation() const;
void toPacket(DNSPacketWriter& pw);
- string d_next;
+ DNSName d_next;
std::set<uint16_t> d_set;
private:
};
static void report(void);
NSEC3RecordContent() : DNSRecordContent(50)
{}
- NSEC3RecordContent(const string& content, const string& zone="");
+ NSEC3RecordContent(const string& content, const string& zone=""); //DNSNameFIXME: DNSName& zone?
static DNSRecordContent* make(const DNSRecord &dr, PacketReader& pr);
static DNSRecordContent* make(const string& content);
static void report(void);
NSEC3PARAMRecordContent() : DNSRecordContent(51)
{}
- NSEC3PARAMRecordContent(const string& content, const string& zone="");
+ NSEC3PARAMRecordContent(const string& content, const string& zone=""); // DNSNameFIXME: DNSName& zone?
static DNSRecordContent* make(const DNSRecord &dr, PacketReader& pr);
static DNSRecordContent* make(const string& content);
static void report(void);
WKSRecordContent() : DNSRecordContent(QType::WKS)
{}
- WKSRecordContent(const string& content, const string& zone="");
+ WKSRecordContent(const string& content, const string& zone=""); // FIXMEDNSName: DNSName& zone?
static DNSRecordContent* make(const DNSRecord &dr, PacketReader& pr);
static DNSRecordContent* make(const string& content);
EUI48RecordContent() : DNSRecordContent(QType::EUI48) {};
static void report(void);
static DNSRecordContent* make(const DNSRecord &dr, PacketReader& pr);
- static DNSRecordContent* make(const string& zone);
+ static DNSRecordContent* make(const string& zone); // FIXMEDNSName: DNSName& zone?
void toPacket(DNSPacketWriter& pw);
string getZoneRepresentation() const;
private:
EUI64RecordContent() : DNSRecordContent(QType::EUI64) {};
static void report(void);
static DNSRecordContent* make(const DNSRecord &dr, PacketReader& pr);
- static DNSRecordContent* make(const string& zone);
+ static DNSRecordContent* make(const string& zone); // FIXMEDNSName: DNSName& zone?
void toPacket(DNSPacketWriter& pw);
string getZoneRepresentation() const;
private:
includeboilerplate(TKEY)
// storage for the bytes
- string d_algo;
+ DNSName d_algo;
uint32_t d_inception;
uint32_t d_expiration;
uint16_t d_mode;