diff options
Diffstat (limited to 'middleware/rewrite/class.go')
-rw-r--r-- | middleware/rewrite/class.go | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/middleware/rewrite/class.go b/middleware/rewrite/class.go deleted file mode 100644 index 8cc7d26b7..000000000 --- a/middleware/rewrite/class.go +++ /dev/null @@ -1,35 +0,0 @@ -package rewrite - -import ( - "fmt" - "strings" - - "github.com/miekg/dns" -) - -type classRule struct { - fromClass, toClass uint16 -} - -func newClassRule(fromS, toS string) (Rule, error) { - var from, to uint16 - var ok bool - if from, ok = dns.StringToClass[strings.ToUpper(fromS)]; !ok { - return nil, fmt.Errorf("invalid class %q", strings.ToUpper(fromS)) - } - if to, ok = dns.StringToClass[strings.ToUpper(toS)]; !ok { - return nil, fmt.Errorf("invalid class %q", strings.ToUpper(toS)) - } - return &classRule{fromClass: from, toClass: to}, nil -} - -// Rewrite rewrites the the current request. -func (rule *classRule) Rewrite(w dns.ResponseWriter, r *dns.Msg) Result { - if rule.fromClass > 0 && rule.toClass > 0 { - if r.Question[0].Qclass == rule.fromClass { - r.Question[0].Qclass = rule.toClass - return RewriteDone - } - } - return RewriteIgnored -} |