net/dns: add GetBaseConfig to OSConfigurator interface.
Part of #953, required to make split DNS work on more basic platforms. Signed-off-by: David Anderson <danderson@tailscale.com>
This commit is contained in:

committed by
Dave Anderson

parent
fe9cd61d71
commit
68f76e9aa1
@ -300,6 +300,23 @@ func (m windowsManager) Close() error {
|
||||
return m.SetDNS(OSConfig{})
|
||||
}
|
||||
|
||||
func (m windowsManager) GetBaseConfig() (OSConfig, error) {
|
||||
if m.nrptWorks {
|
||||
return OSConfig{}, errors.New("GetBaseConfig not supported")
|
||||
}
|
||||
resolvers, err := m.getBasePrimaryResolver()
|
||||
if err != nil {
|
||||
return OSConfig{}, err
|
||||
}
|
||||
return OSConfig{
|
||||
Nameservers: resolvers,
|
||||
// Don't return any search domains here, because even Windows
|
||||
// 7 correctly handles blending search domains from multiple
|
||||
// sources, and any search domains we add here will get tacked
|
||||
// onto the Tailscale config unnecessarily.
|
||||
}, nil
|
||||
}
|
||||
|
||||
// getBasePrimaryResolver returns a guess of the non-Tailscale primary
|
||||
// resolver on the system.
|
||||
// It's used on Windows 7 to emulate split DNS by trying to figure out
|
||||
|
Reference in New Issue
Block a user