From 7047ab5809ca258ec8135f93d46ce8924358b3da Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Sun, 26 Feb 2012 09:54:50 +0100 Subject: [PATCH] Some tweaks for reflect --- ex/reflect/reflect.go | 41 +++++++++++++++-------------------------- 1 file changed, 15 insertions(+), 26 deletions(-) diff --git a/ex/reflect/reflect.go b/ex/reflect/reflect.go index ebd1d1c1..7bd9cf2f 100644 --- a/ex/reflect/reflect.go +++ b/ex/reflect/reflect.go @@ -30,6 +30,7 @@ import ( ) var printf *bool + const dom = "whoami.miek.nl." func handleReflect(w dns.ResponseWriter, r *dns.Msg) { @@ -66,41 +67,29 @@ func handleReflect(w dns.ResponseWriter, r *dns.Msg) { t.Hdr = dns.RR_Header{Name: dom, Rrtype: dns.TypeTXT, Class: dns.ClassINET, Ttl: 0} t.Txt = []string{str} - switch r.Question[0].Qtype { - case dns.TypeTXT: + switch r.Question[0].Qtype { + case dns.TypeTXT: m.Answer = append(m.Answer, t) m.Extra = append(m.Extra, rr) - default: fallthrough - case dns.TypeAAAA, dns.TypeA: + default: + fallthrough + case dns.TypeAAAA, dns.TypeA: m.Answer = append(m.Answer, rr) m.Extra = append(m.Extra, t) - - } - /* - nsec3 := new(dns.RR_NSEC3) - nsec3.Hdr = dns.RR_Header{Name: dom, Rrtype: dns.TypeNSEC3, Class: dns.ClassINET, Ttl: 0} - nsec3.Hash = dns.SHA1 - nsec3.Flags = 0 - nsec3.Iterations = 1 - nsec3.Salt = "AABB" - nsec3.SaltLength = uint8(len(nsec3.Salt)/2) - nsec3.NextDomain = "miek.nl." - nsec3.TypeBitMap = []uint16{dns.TypeA, dns.TypeNS, dns.TypeSOA, dns.TypeTXT, dns.TypeRRSIG, 4000, 4001, 5949} - nsec3.HashNames("miek.nl.") - m.Extra = append(m.Extra, nsec3) - */ + } b, ok := m.Pack() - if *printf { - fmt.Printf("%v\n", m.String()) - } + if *printf { + fmt.Printf("%v\n", m.String()) + } if !ok { log.Print("Packing failed") - m.SetRcode(r, dns.RcodeServerFailure) - m.Extra = nil - m.Answer = nil - b, _ = m.Pack() + m.SetRcode(r, dns.RcodeServerFailure) + m.Extra = nil + m.Answer = nil + b, _ = m.Pack() } + // The reply is smaller then 512 bytes, so it will always "fit" w.Write(b) }