summaryrefslogtreecommitdiff
path: root/cmd/resolver/resolver.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/resolver/resolver.go')
-rw-r--r--cmd/resolver/resolver.go28
1 files changed, 21 insertions, 7 deletions
diff --git a/cmd/resolver/resolver.go b/cmd/resolver/resolver.go
index 36175a1..deb787f 100644
--- a/cmd/resolver/resolver.go
+++ b/cmd/resolver/resolver.go
@@ -470,17 +470,31 @@ func (rsol *resolver) doCmdQuery(args []string) {
}
func (rsol *resolver) doCmdZoned(args []string) {
- if len(args) == 0 {
- log.Fatalf("resolver: %s: missing argument", rsol.cmd)
- }
-
var (
- subCmd = strings.ToLower(args[0])
- resc = rsol.newRescachedClient()
+ resc = rsol.newRescachedClient()
- err error
+ zone *dns.Zone
+ zones map[string]*dns.Zone
+ zoneName string
+ subCmd string
+ err error
)
+ if len(args) == 0 {
+ zones, err = resc.Zoned()
+ if err != nil {
+ log.Fatalf("resolver: %s: %s", rsol.cmd, err)
+ }
+
+ for zoneName, zone = range zones {
+ fmt.Println(zoneName)
+ fmt.Printf(" SOA: %+v\n", zone.SOA)
+ }
+ return
+ }
+
+ subCmd = strings.ToLower(args[0])
+
switch subCmd {
case subCmdCreate:
args = args[1:]