From 3699c21a5340d493061c7c49d0f733f16a655bad Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Tue, 25 Jan 2011 14:07:01 +0100 Subject: [PATCH] added SPF --- msg.go | 1 + types.go | 18 +++++++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/msg.go b/msg.go index 05ba14da..e9f1148a 100644 --- a/msg.go +++ b/msg.go @@ -90,6 +90,7 @@ var Rr_str = map[uint16]string{ TypeDNSKEY: "DNSKEY", TypeNSEC3: "NSEC3", TypeNSEC3PARAM: "NSEC3PARAM", // DNSSEC's bitch + TypeSPF: "SPF", TypeTKEY: "TKEY", // Meta RR TypeTSIG: "TSIG", // Meta RR TypeAXFR: "AXFR", // Meta RR diff --git a/types.go b/types.go index dea8d15b..725b11c8 100644 --- a/types.go +++ b/types.go @@ -54,11 +54,13 @@ const ( TypeNXT = 30 TypeDS = 43 TypeSSHFP = 44 + TypeIPSECKEY = 45 // Not implemented TypeRRSIG = 46 TypeNSEC = 47 TypeDNSKEY = 48 TypeNSEC3 = 50 TypeNSEC3PARAM = 51 + TypeSPF = 99 TypeTKEY = 249 TypeTSIG = 250 @@ -511,7 +513,7 @@ type RR_DNSKEY struct { Flags uint16 Protocol uint8 Algorithm uint8 - PublicKey string "base64" + PublicKey string "base64" } func (rr *RR_DNSKEY) Header() *RR_Header { @@ -577,6 +579,20 @@ func (rr *RR_NSEC3PARAM) String() string { return s } +// RFC 4408 +type RR_SPF struct { + Hdr RR_Header + Txt string +} + +func (rr *RR_SPF) Header() *RR_Header { + return &rr.Hdr +} + +func (rr *RR_SPF) String() string { + return rr.Hdr.String() + "\"" + rr.Txt + "\"" +} + type RR_TKEY struct { Hdr RR_Header Algorithm string "domain-name"