Darien Raymond преди 7 години
родител
ревизия
bc52a105ff
променени са 1 файла, в които са добавени 13 реда и са изтрити 11 реда
  1. 13 11
      app/dns/server.go

+ 13 - 11
app/dns/server.go

@@ -33,19 +33,19 @@ func (r *DomainRecord) Inactive() bool {
 	return r.Expire.Before(now) || r.LastAccess.Add(time.Minute*5).Before(now)
 }
 
-type CacheServer struct {
+type Server struct {
 	sync.Mutex
 	hosts   map[string]net.IP
 	records map[string]*DomainRecord
 	servers []NameServer
 }
 
-func NewCacheServer(ctx context.Context, config *Config) (*CacheServer, error) {
+func New(ctx context.Context, config *Config) (*Server, error) {
 	space := app.SpaceFromContext(ctx)
 	if space == nil {
 		return nil, newError("no space in context")
 	}
-	server := &CacheServer{
+	server := &Server{
 		records: make(map[string]*DomainRecord),
 		servers: make([]NameServer, len(config.NameServers)),
 		hosts:   config.GetInternalHosts(),
@@ -77,18 +77,20 @@ func NewCacheServer(ctx context.Context, config *Config) (*CacheServer, error) {
 	return server, nil
 }
 
-func (*CacheServer) Interface() interface{} {
-	return (*CacheServer)(nil)
+func (*Server) Interface() interface{} {
+	return (*Server)(nil)
 }
 
-func (s *CacheServer) Start() error {
+func (s *Server) Start() error {
 	net.RegisterIPResolver(s)
 	return nil
 }
 
-func (*CacheServer) Close() {}
+func (*Server) Close() {
+	net.RegisterIPResolver(net.SystemIPResolver())
+}
 
-func (s *CacheServer) GetCached(domain string) []net.IP {
+func (s *Server) GetCached(domain string) []net.IP {
 	s.Lock()
 	defer s.Unlock()
 
@@ -99,7 +101,7 @@ func (s *CacheServer) GetCached(domain string) []net.IP {
 	return nil
 }
 
-func (s *CacheServer) tryCleanup() {
+func (s *Server) tryCleanup() {
 	s.Lock()
 	defer s.Unlock()
 
@@ -116,7 +118,7 @@ func (s *CacheServer) tryCleanup() {
 	}
 }
 
-func (s *CacheServer) LookupIP(domain string) ([]net.IP, error) {
+func (s *Server) LookupIP(domain string) ([]net.IP, error) {
 	if ip, found := s.hosts[domain]; found {
 		return []net.IP{ip}, nil
 	}
@@ -154,6 +156,6 @@ func (s *CacheServer) LookupIP(domain string) ([]net.IP, error) {
 
 func init() {
 	common.Must(common.RegisterConfig((*Config)(nil), func(ctx context.Context, config interface{}) (interface{}, error) {
-		return NewCacheServer(ctx, config.(*Config))
+		return New(ctx, config.(*Config))
 	}))
 }