mirror of
https://github.com/miekg/dns.git
synced 2025-10-17 21:01:00 +02:00
Fix reflect
This commit is contained in:
parent
a7a8b616f0
commit
a15c82cf28
@ -33,31 +33,27 @@ func reply(c *dns.Conn, in *dns.Msg) []byte {
|
|||||||
m.Answer = make([]dns.RR, 1)
|
m.Answer = make([]dns.RR, 1)
|
||||||
m.Extra = make([]dns.RR, 1)
|
m.Extra = make([]dns.RR, 1)
|
||||||
|
|
||||||
|
// Copy the question.
|
||||||
m.Question[0] = in.Question[0]
|
m.Question[0] = in.Question[0]
|
||||||
|
|
||||||
|
// Some foo to check if we are called trough ip6 or ip4.
|
||||||
|
// We add the correct reply RR.
|
||||||
var ad net.IP
|
var ad net.IP
|
||||||
if c.UDP != nil {
|
if c.UDP != nil {
|
||||||
ad = c.Addr.(*net.UDPAddr).IP
|
ad = c.Addr.(*net.UDPAddr).IP
|
||||||
} else {
|
} else {
|
||||||
ad = c.Addr.(*net.TCPAddr).IP
|
ad = c.Addr.(*net.TCPAddr).IP
|
||||||
}
|
}
|
||||||
|
|
||||||
if ad.To4() != nil {
|
if ad.To4() != nil {
|
||||||
r := new(dns.RR_A)
|
r := new(dns.RR_A)
|
||||||
r.Hdr = dns.RR_Header{Name: "whoami.miek.nl.", Rrtype: dns.TypeA, Class: dns.ClassINET, Ttl: 0}
|
r.Hdr = dns.RR_Header{Name: "whoami.miek.nl.", Rrtype: dns.TypeA, Class: dns.ClassINET, Ttl: 0}
|
||||||
if c.UDP != nil {
|
r.A = ad
|
||||||
r.A = c.Addr.(*net.UDPAddr).IP
|
|
||||||
} else {
|
|
||||||
r.A = c.Addr.(*net.TCPAddr).IP
|
|
||||||
}
|
|
||||||
m.Answer[0] = r
|
m.Answer[0] = r
|
||||||
} else {
|
} else {
|
||||||
r := new(dns.RR_AAAA)
|
r := new(dns.RR_AAAA)
|
||||||
r.Hdr = dns.RR_Header{Name: "whoami.miek.nl.", Rrtype: dns.TypeA, Class: dns.ClassINET, Ttl: 0}
|
r.Hdr = dns.RR_Header{Name: "whoami.miek.nl.", Rrtype: dns.TypeAAAA, Class: dns.ClassINET, Ttl: 0}
|
||||||
if c.UDP != nil {
|
r.AAAA = ad
|
||||||
r.AAAA = c.Addr.(*net.UDPAddr).IP
|
|
||||||
} else {
|
|
||||||
r.AAAA = c.Addr.(*net.TCPAddr).IP
|
|
||||||
}
|
|
||||||
m.Answer[0] = r
|
m.Answer[0] = r
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user