Create constructor for MeshnameServer
This commit is contained in:
parent
86e3eddddf
commit
8e37f0e0e2
@ -72,9 +72,7 @@ func main() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
s := meshname.New(logger, listenAddr)
|
||||||
s := new(meshname.MeshnameServer)
|
|
||||||
s.Init(logger, listenAddr)
|
|
||||||
|
|
||||||
if networks, err := parseNetworks(networksconf); err == nil {
|
if networks, err := parseNetworks(networksconf); err == nil {
|
||||||
s.SetNetworks(networks)
|
s.SetNetworks(networks)
|
||||||
@ -89,6 +87,7 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
s.Start()
|
s.Start()
|
||||||
|
logger.Infoln("Listening on:", listenAddr)
|
||||||
|
|
||||||
c := make(chan os.Signal, 1)
|
c := make(chan os.Signal, 1)
|
||||||
r := make(chan os.Signal, 1)
|
r := make(chan os.Signal, 1)
|
||||||
|
@ -24,15 +24,17 @@ type MeshnameServer struct {
|
|||||||
started bool
|
started bool
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *MeshnameServer) Init(log *log.Logger, listenAddr string) {
|
// New is a constructor for MeshnameServer
|
||||||
s.log = log
|
func New(log *log.Logger, listenAddr string) *MeshnameServer {
|
||||||
s.listenAddr = listenAddr
|
dnsClient := new(dns.Client)
|
||||||
s.zoneConfig = make(map[string][]dns.RR)
|
dnsClient.Timeout = 5000000000 // increased 5 seconds timeout
|
||||||
s.networks = make(map[string]*net.IPNet)
|
|
||||||
|
|
||||||
if s.dnsClient == nil {
|
return &MeshnameServer{
|
||||||
s.dnsClient = new(dns.Client)
|
log: log,
|
||||||
s.dnsClient.Timeout = 5000000000 // increased 5 seconds timeout
|
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)
|
s.log.Debugln("Handling:", tld, subnet)
|
||||||
}
|
}
|
||||||
go s.dnsServer.ListenAndServe()
|
go s.dnsServer.ListenAndServe()
|
||||||
s.log.Infoln("Started meshnamed on:", s.listenAddr)
|
s.log.Debugln("MeshnameServer started")
|
||||||
s.started = true
|
s.started = true
|
||||||
return nil
|
return nil
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user