mirror of
https://github.com/tailscale/tailscale.git
synced 2025-05-04 06:31:54 +00:00
net/dns/resolver: add a test helper to get at the resolver config.
Signed-off-by: David Anderson <danderson@tailscale.com>
This commit is contained in:
parent
da4cc8bbb4
commit
0ba6d03768
@ -72,9 +72,10 @@ type Config struct {
|
|||||||
// If it is asked to resolve a domain that is not of that form,
|
// If it is asked to resolve a domain that is not of that form,
|
||||||
// it delegates to upstream nameservers if any are set.
|
// it delegates to upstream nameservers if any are set.
|
||||||
type Resolver struct {
|
type Resolver struct {
|
||||||
logf logger.Logf
|
logf logger.Logf
|
||||||
linkMon *monitor.Mon // or nil
|
linkMon *monitor.Mon // or nil
|
||||||
unregLinkMon func() // or nil
|
unregLinkMon func() // or nil
|
||||||
|
saveConfigForTests func(cfg Config) // used in tests to capture resolver config
|
||||||
// forwarder forwards requests to upstream nameservers.
|
// forwarder forwards requests to upstream nameservers.
|
||||||
forwarder *forwarder
|
forwarder *forwarder
|
||||||
|
|
||||||
@ -124,7 +125,13 @@ func isFQDN(s string) bool {
|
|||||||
return strings.HasSuffix(s, ".")
|
return strings.HasSuffix(s, ".")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (r *Resolver) TestOnlySetHook(hook func(Config)) { r.saveConfigForTests = hook }
|
||||||
|
|
||||||
func (r *Resolver) SetConfig(cfg Config) error {
|
func (r *Resolver) SetConfig(cfg Config) error {
|
||||||
|
if r.saveConfigForTests != nil {
|
||||||
|
r.saveConfigForTests(cfg)
|
||||||
|
}
|
||||||
|
|
||||||
routes := make([]route, 0, len(cfg.Routes))
|
routes := make([]route, 0, len(cfg.Routes))
|
||||||
reverse := make(map[netaddr.IP]string, len(cfg.Hosts))
|
reverse := make(map[netaddr.IP]string, len(cfg.Hosts))
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user