From 00bd9a5486d41d900cd2c01443e60cf05b7f40e2 Mon Sep 17 00:00:00 2001 From: George Date: Sat, 16 May 2020 10:44:39 -0400 Subject: [PATCH] refactor --- cmd/meshnamed/main.go | 13 +++---------- src/meshname/server.go | 12 ++++++++++-- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/cmd/meshnamed/main.go b/cmd/meshnamed/main.go index 78e147b..fd14671 100644 --- a/cmd/meshnamed/main.go +++ b/cmd/meshnamed/main.go @@ -3,7 +3,6 @@ package main import ( "flag" "fmt" - "net" "os" "strings" "os/signal" @@ -43,17 +42,11 @@ func main() { return } - networks := make(map[string]*net.IPNet) + networks := make(map[string]string) for _, item := range strings.Split(*networksconf, ",") { - tokens := strings.SplitN(item, "=", 2) - domain, subnet := tokens[0], tokens[1] - - _, validSubnet, err := net.ParseCIDR(subnet) - if err != nil { - logger.Errorln(err) - os.Exit(1) + if tokens := strings.SplitN(item, "=", 2); len(tokens) == 2 { + networks[tokens[0]] = tokens[1] } - networks[domain] = validSubnet } s := new(meshname.MeshnameServer) diff --git a/src/meshname/server.go b/src/meshname/server.go index 5366812..037ef48 100644 --- a/src/meshname/server.go +++ b/src/meshname/server.go @@ -57,10 +57,18 @@ type MeshnameServer struct { networks map[string]*net.IPNet } -func (s *MeshnameServer) Init(log *log.Logger, listenAddr string, zoneConfigPath string, networks map[string]*net.IPNet) { +func (s *MeshnameServer) Init(log *log.Logger, listenAddr string, zoneConfigPath string, networks map[string]string) { s.log = log s.listenAddr = listenAddr - s.networks = networks + s.networks = make(map[string]*net.IPNet) + for domain, subnet := range networks { + _, validSubnet, err := net.ParseCIDR(subnet) + if err != nil { + s.log.Errorln(err) + continue + } + s.networks[domain] = validSubnet + } s.zoneConfigPath = zoneConfigPath s.zoneConfig = make(map[string][]dns.RR) if s.dnsClient == nil {