DEVELOPMENT ENVIRONMENT

~liljamo/felu

e2224b6934fa3622d73f574806c647a5562fac87 — Jonni Liljamo 1 year, 1 month ago 3765836
feat: move handling A records to own func, also future todo
1 files changed, 14 insertions(+), 2 deletions(-)

M dns/query.go
M dns/query.go => dns/query.go +14 -2
@@ 16,8 16,20 @@ func parseQuery(m *dns.Msg, r *dns.Msg) {
	for _, q := range m.Question {
		switch q.Qtype {
		case dns.TypeA:
			log.Printf("[felu/dns] Query for '%s'", q.Name)
			m.SetRcode(r, dns.RcodeNameError)
			handleARecord(&q, m, r)
		}
	}
}

func handleARecord(q *dns.Question, m *dns.Msg, r *dns.Msg) {
	log.Printf("[felu/dns] Query for '%s'", q.Name)

	// fetch from db here
	// if found do this:
	//m.Answer = append(m.Answer, &dns,A{
  //	Hdr: dns.RR_Header{ Name: q.Name, Rrtype: dns.TypeA, Class: dns.ClassINET, Ttl: 60 },
	//	A: net.ParseIP(THEIPGOTTENFROMDBLOLOLOLO)
  //}
	// else, do this:
	m.SetRcode(r, dns.RcodeNameError)
}