You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/cmd
Aaron Klotz e016eaf410 cmd/tailscaled: conditionally flush Windows DNS cache on SessionChange
For the service, all we need to do is handle the `svc.SessionChange` command.
Upon receipt of a `windows.WTS_SESSION_UNLOCK` event, we fire off a goroutine to flush the DNS cache.
(Windows expects responses to service requests to be quick, so we don't want to do that synchronously.)

This is gated on an integral registry value named `FlushDNSOnSessionUnlock`,
whose value we obtain during service initialization.

(See [this link](https://docs.microsoft.com/en-us/windows/win32/api/winsvc/nc-winsvc-lphandler_function_ex) for information re: handling `SERVICE_CONTROL_SESSIONCHANGE`.)

Fixes #2956

Signed-off-by: Aaron Klotz <aaron@tailscale.com>
3 years ago
..
addlicense cmd/addlicense: add command to add licenseheaders to generated code 3 years ago
cloner util/codegen: reorder AssertStructUnchanged args 3 years ago
derper cmd/derper: refactor STUN path for testing, add serverSTUN benchmark 3 years ago
derpprobe cmd/derpprobe: add in a delay to wait for mesh info to sync 3 years ago
hello all: adapt to opaque netaddr types 3 years ago
mkpkg cmd/mkpkg: allow zero files in a package. 3 years ago
speedtest cmd: upgrade to ffcli v3 3 years ago
tailscale all: disable TCP keep-alives on iOS/Android 3 years ago
tailscaled cmd/tailscaled: conditionally flush Windows DNS cache on SessionChange 3 years ago
testcontrol cmd/testcontrol: add test control server 3 years ago
tsshd all: gofmt with Go 1.17 3 years ago