diff options
Diffstat (limited to 'middleware/rewrite/name.go')
-rw-r--r-- | middleware/rewrite/name.go | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/middleware/rewrite/name.go b/middleware/rewrite/name.go index 6b885c5c5..69c387f10 100644 --- a/middleware/rewrite/name.go +++ b/middleware/rewrite/name.go @@ -1,26 +1,21 @@ -// Package rewrite is middleware for rewriting requests internally to something different. package rewrite import ( - "strings" - "github.com/coredns/coredns/middleware" + "github.com/miekg/dns" ) -// NameRule is a name rewrite rule. -type NameRule struct { +type nameRule struct { From, To string } -// New initializes a new rule. -func (rule NameRule) New(args ...string) Rule { - from, to := args[0], strings.Join(args[1:], " ") - return &NameRule{middleware.Name(from).Normalize(), middleware.Name(to).Normalize()} +func newNameRule(from, to string) (Rule, error) { + return &nameRule{middleware.Name(from).Normalize(), middleware.Name(to).Normalize()}, nil } // Rewrite rewrites the the current request. -func (rule NameRule) Rewrite(r *dns.Msg) Result { +func (rule *nameRule) Rewrite(r *dns.Msg) Result { if rule.From == r.Question[0].Name { r.Question[0].Name = rule.To return RewriteDone |