aboutsummaryrefslogtreecommitdiff
path: root/plugin
diff options
context:
space:
mode:
Diffstat (limited to 'plugin')
-rw-r--r--plugin/proxy/dns.go13
1 files changed, 5 insertions, 8 deletions
diff --git a/plugin/proxy/dns.go b/plugin/proxy/dns.go
index c1aa7f190..a96762c1d 100644
--- a/plugin/proxy/dns.go
+++ b/plugin/proxy/dns.go
@@ -89,15 +89,12 @@ func exchange(m *dns.Msg, co net.Conn) (*dns.Msg, error) {
writeDeadline := time.Now().Add(defaultTimeout)
dnsco.SetWriteDeadline(writeDeadline)
- dnsco.WriteMsg(m)
+ if err := dnsco.WriteMsg(m); err != nil {
+ log.Debugf("Failed to send message: %v", err)
+ return nil, err
+ }
readDeadline := time.Now().Add(defaultTimeout)
co.SetReadDeadline(readDeadline)
- r, err := dnsco.ReadMsg()
-
- dnsco.Close()
- if r == nil {
- return nil, err
- }
- return r, err
+ return dnsco.ReadMsg()
}