From c417e9729dabe5a2017844587a4d1daa5d8828c7 Mon Sep 17 00:00:00 2001 From: Alex A Skinner Date: Wed, 22 Oct 2014 20:41:03 -0400 Subject: [PATCH] DNSSEC algorithm and digest types now uint8 --- dnssec.go | 49 ++++++++++++++++++++++++++----------------------- example_test.go | 2 +- 2 files changed, 27 insertions(+), 24 deletions(-) diff --git a/dnssec.go b/dnssec.go index db32fe55..632918f0 100644 --- a/dnssec.go +++ b/dnssec.go @@ -36,31 +36,34 @@ import ( // DNSSEC encryption algorithm codes. const ( - RSAMD5 = 1 - DH = 2 - DSA = 3 - ECC = 4 - RSASHA1 = 5 - DSANSEC3SHA1 = 6 - RSASHA1NSEC3SHA1 = 7 - RSASHA256 = 8 - RSASHA512 = 10 - ECCGOST = 12 - ECDSAP256SHA256 = 13 - ECDSAP384SHA384 = 14 - INDIRECT = 252 - PRIVATEDNS = 253 // Private (experimental keys) - PRIVATEOID = 254 + _ uint8 = iota + RSAMD5 + DH + DSA + ECC + RSASHA1 + DSANSEC3SHA1 + RSASHA1NSEC3SHA1 + RSASHA256 + _ // Skip 9 + RSASHA512 + _ // Skip 11 + ECCGOST + ECDSAP256SHA256 + ECDSAP384SHA384 + INDIRECT uint8 = 252 + PRIVATEDNS uint8 = 253 // Private (experimental keys) + PRIVATEOID uint8 = 254 ) // DNSSEC hashing algorithm codes. const ( - _ = iota - SHA1 // RFC 4034 - SHA256 // RFC 4509 - GOST94 // RFC 5933 - SHA384 // Experimental - SHA512 // Experimental + _ uint8 = iota + SHA1 // RFC 4034 + SHA256 // RFC 4509 + GOST94 // RFC 5933 + SHA384 // Experimental + SHA512 // Experimental ) // DNSKEY flag values. @@ -136,7 +139,7 @@ func (k *DNSKEY) KeyTag() uint16 { } // ToDS converts a DNSKEY record to a DS record. -func (k *DNSKEY) ToDS(h int) *DS { +func (k *DNSKEY) ToDS(h uint8) *DS { if k == nil { return nil } @@ -146,7 +149,7 @@ func (k *DNSKEY) ToDS(h int) *DS { ds.Hdr.Rrtype = TypeDS ds.Hdr.Ttl = k.Hdr.Ttl ds.Algorithm = k.Algorithm - ds.DigestType = uint8(h) + ds.DigestType = h ds.KeyTag = k.KeyTag() keywire := new(dnskeyWireFmt) diff --git a/example_test.go b/example_test.go index 216b8b39..1578a4d0 100644 --- a/example_test.go +++ b/example_test.go @@ -49,7 +49,7 @@ func ExampleDS(zone string) { } for _, k := range r.Answer { if key, ok := k.(*dns.DNSKEY); ok { - for _, alg := range []int{dns.SHA1, dns.SHA256, dns.SHA384} { + for _, alg := range []uint8{dns.SHA1, dns.SHA256, dns.SHA384} { fmt.Printf("%s; %d\n", key.ToDS(alg).String(), key.Flags) } }