From 1cf5e56d5a448d71c8585b04bba148fc6a93768a Mon Sep 17 00:00:00 2001 From: Mark Nevill Date: Wed, 23 Nov 2016 19:04:37 +0000 Subject: [PATCH] Propagate both message and error in proxy exchange. --- middleware/proxy/client.go | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/middleware/proxy/client.go b/middleware/proxy/client.go index 0a35c93e4..b02e8864b 100644 --- a/middleware/proxy/client.go +++ b/middleware/proxy/client.go @@ -65,13 +65,9 @@ func (c *client) Exchange(m *dns.Msg, co net.Conn) (*dns.Msg, time.Duration, err return ret, e }) - rtt := time.Since(start) - if err != nil { - return &dns.Msg{}, rtt, err - } - r1 := r.(dns.Msg) - return &r1, rtt, nil + rtt := time.Since(start) + return &r1, rtt, err } // exchange does *not* return a pointer to dns.Msg because that leads to buffer reuse when