safesocket: add ConnectContext

This adds a variant for Connect that takes in a context.Context
which allows passing through cancellation etc by the caller.

Updates tailscale/corp#18266

Signed-off-by: Maisem Ali <maisem@tailscale.com>
This commit is contained in:
Maisem Ali
2024-06-10 19:38:10 -07:00
committed by Maisem Ali
parent 3672f66c74
commit 4b6a0c42c8
9 changed files with 32 additions and 17 deletions
+2 -3
View File
@@ -16,9 +16,8 @@ import (
"golang.org/x/sys/windows"
)
func connect(path string) (net.Conn, error) {
dl := time.Now().Add(20 * time.Second)
ctx, cancel := context.WithDeadline(context.Background(), dl)
func connect(ctx context.Context, path string) (net.Conn, error) {
ctx, cancel := context.WithTimeout(ctx, 20*time.Second)
defer cancel()
// We use the identification impersonation level so that tailscaled may
// obtain information about our token for access control purposes.