aboutsummaryrefslogtreecommitdiff
path: root/plugin/errors/setup.go
diff options
context:
space:
mode:
authorGravatar Miek Gieben <miek@miek.nl> 2018-02-28 18:16:05 -0800
committerGravatar GitHub <noreply@github.com> 2018-02-28 18:16:05 -0800
commitf697b33283afe695554888eb0cf9f5451c481470 (patch)
tree1b46a531ec1e0b623a32a183b56dfdf3ebc8ae1f /plugin/errors/setup.go
parent5faa9e7bc178775e023f5bff1394e61bddf94eeb (diff)
downloadcoredns-f697b33283afe695554888eb0cf9f5451c481470.tar.gz
coredns-f697b33283afe695554888eb0cf9f5451c481470.tar.zst
coredns-f697b33283afe695554888eb0cf9f5451c481470.zip
return an error for multiple use of some plugins (#1559)
* plugins: Return error for multiple use of some Return plugin.ErrOnce when a plugin that doesn't support it, is called mutliple times. This now adds it for: cache, dnssec, errors, forward, hosts, nsid. And changes it slightly in kubernetes, pprof, reload, root. * more tests
Diffstat (limited to 'plugin/errors/setup.go')
-rw-r--r--plugin/errors/setup.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/plugin/errors/setup.go b/plugin/errors/setup.go
index 19bdcdb80..082f222b0 100644
--- a/plugin/errors/setup.go
+++ b/plugin/errors/setup.go
@@ -37,7 +37,13 @@ func setup(c *caddy.Controller) error {
func errorsParse(c *caddy.Controller) (errorHandler, error) {
handler := errorHandler{}
+ i := 0
for c.Next() {
+ if i > 0 {
+ return handler, plugin.ErrOnce
+ }
+ i++
+
args := c.RemainingArgs()
switch len(args) {
case 0: