aboutsummaryrefslogtreecommitdiff
path: root/core/setup/file.go
diff options
context:
space:
mode:
authorGravatar Miek Gieben <miek@miek.nl> 2016-04-15 17:08:31 +0100
committerGravatar Miek Gieben <miek@miek.nl> 2016-04-15 17:08:31 +0100
commit9b82cca9e23f53ab5999c4e614170045bf31a969 (patch)
treec27552001926b70f482c5049f396a9ad10456c72 /core/setup/file.go
parentc9d8a57ed66f8debe72856ec9d12c25f97248f0e (diff)
downloadcoredns-9b82cca9e23f53ab5999c4e614170045bf31a969.tar.gz
coredns-9b82cca9e23f53ab5999c4e614170045bf31a969.tar.zst
coredns-9b82cca9e23f53ab5999c4e614170045bf31a969.zip
Fix parsing of transfer lines
Diffstat (limited to 'core/setup/file.go')
-rw-r--r--core/setup/file.go19
1 files changed, 8 insertions, 11 deletions
diff --git a/core/setup/file.go b/core/setup/file.go
index 1fe04c1ec..25ee5149d 100644
--- a/core/setup/file.go
+++ b/core/setup/file.go
@@ -99,27 +99,24 @@ func parseTransfer(c *Controller) (tos, froms []string, err error) {
value := c.Val()
switch what {
case "transfer":
- if !c.NextArg() {
- return nil, nil, c.ArgErr()
- }
if value == "to" {
- tos := c.RemainingArgs()
+ tos = c.RemainingArgs()
for i, _ := range tos {
- if x := net.ParseIP(tos[i]); x == nil {
- return nil, nil, fmt.Errorf("must specify an IP addres: `%s'", tos[i])
- }
if tos[i] != "*" {
+ if x := net.ParseIP(tos[i]); x == nil {
+ return nil, nil, fmt.Errorf("must specify an IP addres: `%s'", tos[i])
+ }
tos[i] = middleware.Addr(tos[i]).Normalize()
}
}
}
if value == "from" {
- froms := c.RemainingArgs()
+ froms = c.RemainingArgs()
for i, _ := range froms {
- if x := net.ParseIP(froms[i]); x == nil {
- return nil, nil, fmt.Errorf("must specify an IP addres: `%s'", froms[i])
- }
if froms[i] != "*" {
+ if x := net.ParseIP(froms[i]); x == nil {
+ return nil, nil, fmt.Errorf("must specify an IP addres: `%s'", froms[i])
+ }
froms[i] = middleware.Addr(froms[i]).Normalize()
} else {
return nil, nil, fmt.Errorf("can't use '*' in transfer from")