diff options
author | 2018-02-28 18:16:05 -0800 | |
---|---|---|
committer | 2018-02-28 18:16:05 -0800 | |
commit | f697b33283afe695554888eb0cf9f5451c481470 (patch) | |
tree | 1b46a531ec1e0b623a32a183b56dfdf3ebc8ae1f /plugin/forward/setup.go | |
parent | 5faa9e7bc178775e023f5bff1394e61bddf94eeb (diff) | |
download | coredns-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/forward/setup.go')
-rw-r--r-- | plugin/forward/setup.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/plugin/forward/setup.go b/plugin/forward/setup.go index 779d085ae..8d80e779d 100644 --- a/plugin/forward/setup.go +++ b/plugin/forward/setup.go @@ -84,7 +84,13 @@ func parseForward(c *caddy.Controller) (*Forward, error) { protocols := map[int]int{} + i := 0 for c.Next() { + if i > 0 { + return nil, plugin.ErrOnce + } + i++ + if !c.Args(&f.from) { return f, c.ArgErr() } |