proper support for mocking spongebob dns encoding
This commit is contained in:
parent
0de7bd35f3
commit
ebc2393d96
@ -147,7 +147,7 @@ func (s *MeshnameServer) handleMeshnameRequest(w dns.ResponseWriter, r *dns.Msg)
|
|||||||
rm.Question = questions
|
rm.Question = questions
|
||||||
// always use lowercase internally among meshname instances
|
// always use lowercase internally among meshname instances
|
||||||
originalQuestionName := rm.Question[0].Name
|
originalQuestionName := rm.Question[0].Name
|
||||||
// mocking spongebob dns encoding
|
// mocking spongebob dns encoding support
|
||||||
rm.Question[0].Name = strings.ToLower(originalQuestionName)
|
rm.Question[0].Name = strings.ToLower(originalQuestionName)
|
||||||
// add alternative port number
|
// add alternative port number
|
||||||
portNumbers := []string{"53"}
|
portNumbers := []string{"53"}
|
||||||
@ -159,11 +159,12 @@ func (s *MeshnameServer) handleMeshnameRequest(w dns.ResponseWriter, r *dns.Msg)
|
|||||||
resp, _, err := s.dnsClient.Exchange(rm, "["+remoteServer+"]:"+port)
|
resp, _, err := s.dnsClient.Exchange(rm, "["+remoteServer+"]:"+port)
|
||||||
// if we had success we don't keep trying other ports
|
// if we had success we don't keep trying other ports
|
||||||
if err == nil {
|
if err == nil {
|
||||||
s.log.Debugln(resp.String())
|
|
||||||
if len(resp.Answer) > 0 {
|
if len(resp.Answer) > 0 {
|
||||||
// mocking spongebob dns encoding
|
// mocking spongebob dns encoding support
|
||||||
|
resp.Question[0].Name = originalQuestionName
|
||||||
resp.Answer[0].Header().Name = originalQuestionName
|
resp.Answer[0].Header().Name = originalQuestionName
|
||||||
}
|
}
|
||||||
|
s.log.Debugln(resp.String())
|
||||||
m.Answer = append(m.Answer, resp.Answer...)
|
m.Answer = append(m.Answer, resp.Answer...)
|
||||||
m.Ns = append(m.Ns, resp.Ns...)
|
m.Ns = append(m.Ns, resp.Ns...)
|
||||||
m.Extra = append(m.Extra, resp.Extra...)
|
m.Extra = append(m.Extra, resp.Extra...)
|
||||||
|
Loading…
Reference in New Issue
Block a user