From 8e37f0e0e27e0215ab540778de6c0fc1bf565860 Mon Sep 17 00:00:00 2001 From: George Date: Tue, 22 Sep 2020 08:33:48 -0400 Subject: [PATCH] Create constructor for MeshnameServer --- cmd/meshnamed/main.go | 5 ++--- pkg/meshname/server.go | 20 +++++++++++--------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/cmd/meshnamed/main.go b/cmd/meshnamed/main.go index 77b9b2b..d025028 100644 --- a/cmd/meshnamed/main.go +++ b/cmd/meshnamed/main.go @@ -72,9 +72,7 @@ func main() { return } - - s := new(meshname.MeshnameServer) - s.Init(logger, listenAddr) + s := meshname.New(logger, listenAddr) if networks, err := parseNetworks(networksconf); err == nil { s.SetNetworks(networks) @@ -89,6 +87,7 @@ func main() { } s.Start() + logger.Infoln("Listening on:", listenAddr) c := make(chan os.Signal, 1) r := make(chan os.Signal, 1) diff --git a/pkg/meshname/server.go b/pkg/meshname/server.go index 497bc76..d427a63 100644 --- a/pkg/meshname/server.go +++ b/pkg/meshname/server.go @@ -24,15 +24,17 @@ type MeshnameServer struct { started bool } -func (s *MeshnameServer) Init(log *log.Logger, listenAddr string) { - s.log = log - s.listenAddr = listenAddr - s.zoneConfig = make(map[string][]dns.RR) - s.networks = make(map[string]*net.IPNet) +// New is a constructor for MeshnameServer +func New(log *log.Logger, listenAddr string) *MeshnameServer { + dnsClient := new(dns.Client) + dnsClient.Timeout = 5000000000 // increased 5 seconds timeout - if s.dnsClient == nil { - s.dnsClient = new(dns.Client) - s.dnsClient.Timeout = 5000000000 // increased 5 seconds timeout + return &MeshnameServer{ + log: log, + listenAddr: listenAddr, + zoneConfig: make(map[string][]dns.RR), + networks: make(map[string]*net.IPNet), + dnsClient: dnsClient, } } @@ -60,7 +62,7 @@ func (s *MeshnameServer) Start() error { s.log.Debugln("Handling:", tld, subnet) } go s.dnsServer.ListenAndServe() - s.log.Infoln("Started meshnamed on:", s.listenAddr) + s.log.Debugln("MeshnameServer started") s.started = true return nil } else {