cleanup: netx does not use netxlite legacy names (#801)
This diff refactors netx and netxlite to ensure we're not using netxlite legacy names inside of netx. To this end, we're cheating a bit. We're exposing a new factory to get an unwrapped stdlib resolver rather than defining a legacy name to export the private name of the same factory. This is actually a fine place to stop, for now, the next and netxlite refactoring at https://github.com/ooni/probe/issues/2121.
This commit is contained in:
parent
64bffbd941
commit
2502a237fb
19 changed files with 34 additions and 43 deletions
|
|
@ -23,12 +23,12 @@ import (
|
|||
// but you are using the "system" resolver instead.
|
||||
var ErrNoDNSTransport = errors.New("operation requires a DNS transport")
|
||||
|
||||
// NewResolverStdlib creates a new Resolver by combining WrapResolver
|
||||
// NewStdlibResolver creates a new Resolver by combining WrapResolver
|
||||
// with an internal "system" resolver type. The list of optional wrappers
|
||||
// allow to wrap the underlying getaddrinfo transport. Any nil wrapper
|
||||
// will be silently ignored by the code that performs the wrapping.
|
||||
func NewResolverStdlib(logger model.DebugLogger, wrappers ...model.DNSTransportWrapper) model.Resolver {
|
||||
return WrapResolver(logger, newResolverSystem(wrappers...))
|
||||
func NewStdlibResolver(logger model.DebugLogger, wrappers ...model.DNSTransportWrapper) model.Resolver {
|
||||
return WrapResolver(logger, NewUnwrappedStdlibResolver(wrappers...))
|
||||
}
|
||||
|
||||
// NewParallelDNSOverHTTPSResolver creates a new DNS over HTTPS resolver
|
||||
|
|
@ -40,7 +40,10 @@ func NewParallelDNSOverHTTPSResolver(logger model.DebugLogger, URL string) model
|
|||
return WrapResolver(logger, NewUnwrappedParallelResolver(txp))
|
||||
}
|
||||
|
||||
func newResolverSystem(wrappers ...model.DNSTransportWrapper) *resolverSystem {
|
||||
// NewUnwrappedStdlibResolver returns a new, unwrapped resolver using the standard
|
||||
// library (i.e., getaddrinfo if possible and &net.Resolver{} otherwise). As the name
|
||||
// implies, this function returns an unwrapped resolver.
|
||||
func NewUnwrappedStdlibResolver(wrappers ...model.DNSTransportWrapper) model.Resolver {
|
||||
return &resolverSystem{
|
||||
t: WrapDNSTransport(&dnsOverGetaddrinfoTransport{}, wrappers...),
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue