aboutsummaryrefslogtreecommitdiff
path: root/middleware/errors/errors.go
diff options
context:
space:
mode:
authorGravatar Miek Gieben <miek@miek.nl> 2016-04-09 16:17:53 +0100
committerGravatar Miek Gieben <miek@miek.nl> 2016-04-09 16:17:53 +0100
commitad221f4b2afa0cf89810cd9c3b4e953913d602fc (patch)
tree23bf7561336d29096eb24d821265235f84ac4222 /middleware/errors/errors.go
parentdb3d689a8ac2bec199e5643394ffa779341acde0 (diff)
downloadcoredns-ad221f4b2afa0cf89810cd9c3b4e953913d602fc.tar.gz
coredns-ad221f4b2afa0cf89810cd9c3b4e953913d602fc.tar.zst
coredns-ad221f4b2afa0cf89810cd9c3b4e953913d602fc.zip
correct EDNS responses (#96)
Tests updated as well and all the middleware. And Prometheus renamed to metrics (directive is still prometheus).
Diffstat (limited to 'middleware/errors/errors.go')
-rw-r--r--middleware/errors/errors.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/middleware/errors/errors.go b/middleware/errors/errors.go
index dbef5770a..0639aadbf 100644
--- a/middleware/errors/errors.go
+++ b/middleware/errors/errors.go
@@ -37,6 +37,7 @@ func (h ErrorHandler) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns
answer := debugMsg(rcode, r)
txt, _ := dns.NewRR(". IN 0 TXT " + errMsg)
answer.Answer = append(answer.Answer, txt)
+ state.SizeAndDo(answer)
w.WriteMsg(answer)
return 0, err
}
@@ -52,6 +53,7 @@ func (h ErrorHandler) recovery(ctx context.Context, w dns.ResponseWriter, r *dns
return
}
+ state := middleware.State{W: w, Req: r}
// Obtain source of panic
// From: https://gist.github.com/swdunlop/9629168
var name, file string // function name, file name
@@ -86,6 +88,7 @@ func (h ErrorHandler) recovery(ctx context.Context, w dns.ResponseWriter, r *dns
// add stack buf in TXT, limited to 255 chars for now.
txt, _ := dns.NewRR(". IN 0 TXT " + string(stack[:255]))
answer.Answer = append(answer.Answer, txt)
+ state.SizeAndDo(answer)
w.WriteMsg(answer)
} else {
// Currently we don't use the function name, since file:line is more conventional