コード例 #1
0
ファイル: zone.go プロジェクト: wallrat/dns
// NewZone creates an initialized zone with Origin set to origin.
func NewZone(origin string) *Zone {
	if origin == "" {
		origin = "."
	}
	if _, _, ok := IsDomainName(origin); !ok {
		return nil
	}
	z := new(Zone)
	z.Origin = Fqdn(origin)
	z.Radix = radix.New()
	return z
}
コード例 #2
0
ファイル: zone.go プロジェクト: bortzmeyer/dns
// NewZone creates an initialized zone with Origin set to origin.
func NewZone(origin string) *Zone {
	if origin == "" {
		origin = "."
	}
	if _, _, ok := IsDomainName(origin); !ok {
		return nil
	}
	z := new(Zone)
	z.Origin = Fqdn(strings.ToLower(origin))
	z.olabels = SplitLabels(z.Origin)
	z.Radix = radix.New()
	z.RWMutex = new(sync.RWMutex)
	return z
}
コード例 #3
0
ファイル: server.go プロジェクト: vofam/dns
// NewServeMux allocates and returns a new ServeMux.
func NewServeMux() *ServeMux { return &ServeMux{r: radix.New(), m: new(sync.RWMutex)} }
コード例 #4
0
ファイル: server.go プロジェクト: wallrat/dns
// NewServeMux allocates and returns a new ServeMux.
func NewServeMux() *ServeMux { return &ServeMux{m: radix.New()} }
コード例 #5
0
ファイル: cache.go プロジェクト: valm0unt/fks
func NewCache() *Cache {
	return &Cache{Radix: radix.New()}
}