|
|
|
@ -131,6 +131,8 @@ pub const CDNSKEY : Type = Type(KnownType::CDNSKEY as u16);
|
|
|
|
|
pub const OPENPGPKEY : Type = Type(KnownType::OPENPGPKEY as u16);
|
|
|
|
|
/// Child-To-Parent Synchronization
|
|
|
|
|
pub const CSYNC : Type = Type(KnownType::CSYNC as u16);
|
|
|
|
|
/// message digest for DNS zone
|
|
|
|
|
pub const ZONEMD : Type = Type(KnownType::ZONEMD as u16);
|
|
|
|
|
/// SPF
|
|
|
|
|
pub const SPF : Type = Type(KnownType::SPF as u16);
|
|
|
|
|
/// UINFO
|
|
|
|
@ -175,6 +177,8 @@ pub const CAA : Type = Type(KnownType::CAA as u16);
|
|
|
|
|
pub const AVC : Type = Type(KnownType::AVC as u16);
|
|
|
|
|
/// Digital Object Architecture
|
|
|
|
|
pub const DOA : Type = Type(KnownType::DOA as u16);
|
|
|
|
|
/// Automatic Multicast Tunneling Relay
|
|
|
|
|
pub const AMTRELAY : Type = Type(KnownType::AMTRELAY as u16);
|
|
|
|
|
/// DNSSEC Trust Authorities
|
|
|
|
|
pub const TA : Type = Type(KnownType::TA as u16);
|
|
|
|
|
/// DNSSEC Lookaside Validation
|
|
|
|
@ -309,6 +313,11 @@ pub enum KnownType {
|
|
|
|
|
OPENPGPKEY = 0x003d, // RFC 7929
|
|
|
|
|
/// Child-To-Parent Synchronization
|
|
|
|
|
CSYNC = 0x003e, // RFC 7477
|
|
|
|
|
/// message digest for DNS zone
|
|
|
|
|
ZONEMD = 0x003f, // https://tools.ietf.org/html/draft-ietf-dnsop-dns-zone-digest-00
|
|
|
|
|
|
|
|
|
|
// Unassigned: 0x0040..0x0062
|
|
|
|
|
|
|
|
|
|
/// SPF
|
|
|
|
|
SPF = 0x0063, // RFC 7208
|
|
|
|
|
/// UINFO
|
|
|
|
@ -331,7 +340,11 @@ pub enum KnownType {
|
|
|
|
|
EUI48 = 0x006c, // RFC 7043
|
|
|
|
|
/// an EUI-64 address
|
|
|
|
|
EUI64 = 0x006d, // RFC 7043
|
|
|
|
|
|
|
|
|
|
// unassigned: 0x006e..0x007f
|
|
|
|
|
|
|
|
|
|
// 0x0080..0x00ff: meta and qtypes
|
|
|
|
|
|
|
|
|
|
/// URI
|
|
|
|
|
URI = 0x0100, // RFC 7553
|
|
|
|
|
/// Certification Authority Restriction
|
|
|
|
@ -340,12 +353,23 @@ pub enum KnownType {
|
|
|
|
|
AVC = 0x0102, // Wolfgang Riedel
|
|
|
|
|
/// Digital Object Architecture
|
|
|
|
|
DOA = 0x0103, // http://www.iana.org/go/draft-durand-doa-over-dns
|
|
|
|
|
/// Automatic Multicast Tunneling Relay
|
|
|
|
|
AMTRELAY = 0x0104, // http://www.iana.org/go/draft-ietf-mboned-driad-amt-discovery
|
|
|
|
|
|
|
|
|
|
// Unassigned: 0x0105..0x7fff
|
|
|
|
|
|
|
|
|
|
/// DNSSEC Trust Authorities
|
|
|
|
|
TA = 0x8000, //
|
|
|
|
|
/// DNSSEC Lookaside Validation
|
|
|
|
|
DLV = 0x8001, // RFC 4431
|
|
|
|
|
/// powerdns feature: authoritate should resolve to A and AAAA
|
|
|
|
|
|
|
|
|
|
// Unassigned: 0x8002..0xfeff
|
|
|
|
|
// Private use: 0xff00..0xfffe
|
|
|
|
|
|
|
|
|
|
/// powerdns feature: authoritative should resolve to A and AAAA
|
|
|
|
|
ALIAS = 0xff79, // powerdns
|
|
|
|
|
|
|
|
|
|
// Reserved: 0xffff
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// known QTYPEs
|
|
|
|
@ -353,6 +377,10 @@ pub enum KnownType {
|
|
|
|
|
#[repr(u16)]
|
|
|
|
|
#[allow(non_camel_case_types)]
|
|
|
|
|
pub enum KnownQType {
|
|
|
|
|
// Unassigned 0x0080..0x00f8
|
|
|
|
|
|
|
|
|
|
// 0x00f9..0x00fa: meta type
|
|
|
|
|
|
|
|
|
|
/// incremental transfer
|
|
|
|
|
IXFR = 0x00fb, // RFC 1995
|
|
|
|
|
/// transfer of an entire zone
|
|
|
|
@ -372,10 +400,15 @@ pub enum KnownQType {
|
|
|
|
|
pub enum KnownMetaType {
|
|
|
|
|
/// OPT
|
|
|
|
|
OPT = 0x0029, // RFC 6891
|
|
|
|
|
|
|
|
|
|
// Unassigned 0x0080..0x00f8
|
|
|
|
|
|
|
|
|
|
/// Transaction Key
|
|
|
|
|
TKEY = 0x00f9, // RFC 2930
|
|
|
|
|
/// Transaction Signature
|
|
|
|
|
TSIG = 0x00fa, // RFC 2845
|
|
|
|
|
|
|
|
|
|
// 0x00fb..0x00ff: qtype
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// DNS (RR)TYPE
|
|
|
|
@ -679,6 +712,8 @@ fn check_types() {
|
|
|
|
|
check_type!(CDNSKEY , 60);
|
|
|
|
|
check_type!(OPENPGPKEY, 61);
|
|
|
|
|
check_type!(CSYNC , 62);
|
|
|
|
|
check_type!(ZONEMD , 63);
|
|
|
|
|
// Unassigned: 64-98
|
|
|
|
|
check_type!(SPF , 99);
|
|
|
|
|
check_type!(UINFO , 100);
|
|
|
|
|
check_type!(UID , 101);
|
|
|
|
@ -690,6 +725,7 @@ fn check_types() {
|
|
|
|
|
check_type!(LP , 107);
|
|
|
|
|
check_type!(EUI48 , 108);
|
|
|
|
|
check_type!(EUI64 , 109);
|
|
|
|
|
// Unassigned: 110-248
|
|
|
|
|
check_type!(TKEY , 249);
|
|
|
|
|
check_type!(TSIG , 250);
|
|
|
|
|
check_type!(IXFR , 251);
|
|
|
|
@ -701,7 +737,12 @@ fn check_types() {
|
|
|
|
|
check_type!(CAA , 257);
|
|
|
|
|
check_type!(AVC , 258);
|
|
|
|
|
check_type!(DOA , 259);
|
|
|
|
|
check_type!(AMTRELAY , 260);
|
|
|
|
|
// Unassigned: 261-32767
|
|
|
|
|
check_type!(TA , 32768);
|
|
|
|
|
check_type!(DLV , 32769);
|
|
|
|
|
// Unassigned: 32770-65279
|
|
|
|
|
// Private use: 65280-65534
|
|
|
|
|
check_type!(ALIAS , 65401);
|
|
|
|
|
// Reserved: 65535
|
|
|
|
|
}
|
|
|
|
|