tailscale/net/dns
Tom DNetto 5b85f848dd net/dns,net/dns/resolver: refactor channels/magicDNS out of Resolver
Moves magicDNS-specific handling out of Resolver & into dns.Manager. This
greatly simplifies the Resolver to solely issuing queries and returning
responses, without channels.

Enforcement of max number of in-flight magicDNS queries, assembly of
synthetic UDP datagrams, and integration with wgengine for
recieving/responding to magicDNS traffic is now entirely in Manager.
This path is being kept around, but ultimately aims to be deleted and
replaced with a netstack-based path.

This commit is part of a series to implement magicDNS using netstack.

Signed-off-by: Tom DNetto <tom@tailscale.com>
2022-04-30 10:18:59 -07:00
..
publicdns net/dns/publicdns: add missing call to sync.Once.Do (#4410) 2022-04-14 17:45:58 -04:00
resolvconffile all: use strings.Cut even more 2022-03-19 13:02:38 -07:00
resolver net/dns,net/dns/resolver: refactor channels/magicDNS out of Resolver 2022-04-30 10:18:59 -07:00
config.go net/dns: schedule DoH upgrade explicitly, fix Resolver.Addr confusion 2022-04-19 12:00:22 -07:00
debian_resolvconf.go all: gofmt with Go 1.17 2021-08-05 15:54:00 -07:00
direct.go net/dns: ignore permission errors on Synology DSM7 for now 2022-02-23 10:13:53 -08:00
direct_test.go net/dns: require space after nameserver/search parsing resolv.conf 2021-11-23 15:11:46 -08:00
flush_default.go wgengine: flush DNS cache after major link change. 2021-09-19 22:58:53 -07:00
flush_windows.go wgengine: flush DNS cache after major link change. 2021-09-19 22:58:53 -07:00
ini.go all: gofmt with Go 1.17 2021-08-05 15:54:00 -07:00
ini_test.go all: gofmt -w -s (simplify) tests 2021-12-15 08:43:41 -08:00
manager.go net/dns,net/dns/resolver: refactor channels/magicDNS out of Resolver 2022-04-30 10:18:59 -07:00
manager_darwin.go net/dns: add tailscaled-on-macOS DNS OSConfigurator 2022-04-23 20:43:41 -07:00
manager_default.go net/dns: add tailscaled-on-macOS DNS OSConfigurator 2022-04-23 20:43:41 -07:00
manager_freebsd.go net/dns: fall back to copy+delete/truncate if moving to/from /etc/resolv.conf fails. 2021-10-26 09:03:37 -07:00
manager_linux.go net/dns: add health check for particular broken-ish Linux DNS config 2022-02-16 10:40:04 -08:00
manager_linux_test.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
manager_openbsd.go net/dns: teach OpenBSD's manager to talk to resolvd(8). (#2789) 2022-01-11 08:45:50 -08:00
manager_test.go net/dns: schedule DoH upgrade explicitly, fix Resolver.Addr confusion 2022-04-19 12:00:22 -07:00
manager_windows.go envknob: add new package for all the strconv.ParseBool(os.Getenv(..)) 2022-01-24 11:51:23 -08:00
nm.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
noop.go net/dns: return error from NewOSManager, use it to initialize NM. 2021-04-12 15:51:37 -07:00
openresolv.go all: gofmt with Go 1.17 2021-08-05 15:54:00 -07:00
osconfig.go net/dns: make debian_resolvconf correctly clear DNS configs. 2021-04-20 15:51:14 -07:00
registry_windows.go wgengine/router/dns: move to net/dns. 2021-03-25 16:25:30 -07:00
resolvconf-workaround.sh net/dns: also include 'tail' and 'base' files when fixing up resolv.conf. 2021-04-10 23:01:11 -07:00
resolvconf.go net/dns: exhaustively test DNS selection paths for linux. 2021-09-04 23:40:48 -07:00
resolvd.go net/dns/resolvconffile: unify three /etc/resolv.conf parsers into new package 2022-02-14 20:55:57 -08:00
resolved.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
utf.go net/dns: detect and decode UTF-16 from wsl.exe earlier. 2021-11-30 13:10:18 -08:00
utf_test.go net/dns: detect and decode UTF-16 from wsl.exe earlier. 2021-11-30 13:10:18 -08:00
wsl_windows.go net/dns: fix checking for wrapped error when attempting to read wsl.conf for Windows WSL2 2021-11-30 15:36:39 -07:00