diff options
author | 2017-02-07 16:53:16 -0500 | |
---|---|---|
committer | 2017-02-07 21:53:16 +0000 | |
commit | fa1c90a479cce4666c32c4aae8728fc12f09980b (patch) | |
tree | 3a7514b48da436767d914dfad24656b8876d0412 /middleware/rewrite/setup.go | |
parent | b8e75509cc7d3f73a8526ad515e85f76b9ccf59d (diff) | |
download | coredns-fa1c90a479cce4666c32c4aae8728fc12f09980b.tar.gz coredns-fa1c90a479cce4666c32c4aae8728fc12f09980b.tar.zst coredns-fa1c90a479cce4666c32c4aae8728fc12f09980b.zip |
Add field keywords to rewrite middleware (#497)
* Require Field for rewrite rules
* review feedback changes
* fix ut
* fix typo, add warning message
Diffstat (limited to 'middleware/rewrite/setup.go')
-rw-r--r-- | middleware/rewrite/setup.go | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/middleware/rewrite/setup.go b/middleware/rewrite/setup.go index 9405fcd6a..81fbacfb9 100644 --- a/middleware/rewrite/setup.go +++ b/middleware/rewrite/setup.go @@ -1,7 +1,7 @@ package rewrite import ( - "strings" + "log" "github.com/miekg/coredns/core/dnsserver" "github.com/miekg/coredns/middleware" @@ -108,8 +108,12 @@ func rewriteParse(c *caddy.Controller) ([]Rule, error) { // the only unhandled case is 2 and above default: - rule = NewSimpleRule(args[0], strings.Join(args[1:], " ")) - simpleRules = append(simpleRules, rule) + if _, ok := Fields[args[0]]; ok { + rule = Fields[args[0]].New(args[1:]...) + simpleRules = append(simpleRules, rule) + } else { + log.Printf("[WARN] %s is not a valid field, ignore %s", args[0], args) + } } } |