From b2fadde636fe9e2bc191b45c625a2f93c960bbd5 Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Tue, 28 Aug 2012 19:46:29 +0200 Subject: [PATCH] Fix hijack --- server.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/server.go b/server.go index 0562960a..88f6a33f 100644 --- a/server.go +++ b/server.go @@ -337,6 +337,7 @@ func (c *conn) serve() { w.req = req c.handler.ServeDNS(w, w.req) // this does the writing back to the client if c.hijacked { + // client takes care of the connection, i.e. calls Close() return } break @@ -345,6 +346,10 @@ func (c *conn) serve() { c._TCP.Close() c._TCP = nil } + if c._UDP != nil { + c._UDP.Close() + c._UDP = nil + } } // Write implements the ResponseWriter.Write method.