plugin/rewrite: tweak parse error messaging, add tests (#1737)

* tweak parse error messaging, add tests

* looser err msg checking
This commit is contained in:
Chris O'Haver
2018-04-25 15:48:32 -04:00
committed by Miek Gieben
parent 9e8893a0b5
commit 5e06687ee5
4 changed files with 63 additions and 3 deletions

View File

@@ -91,7 +91,7 @@ func newRule(args ...string) (Rule, error) {
mode := Stop
switch arg0 {
case Continue:
mode = arg0
mode = Continue
ruleType = strings.ToLower(args[1])
expectNumArgs = len(args) - 1
startArg = 2
@@ -106,9 +106,14 @@ func newRule(args ...string) (Rule, error) {
startArg = 1
}
if ruleType == "answer" {
return nil, fmt.Errorf("response rewrites must begin with a name rule")
}
if ruleType != "edns0" && ruleType != "name" && expectNumArgs != 3 {
return nil, fmt.Errorf("%s rules must have exactly two arguments", ruleType)
}
switch ruleType {
case "name":
return newNameRule(mode, args[startArg:]...)