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

View File

@@ -6,6 +6,7 @@
package safesocket
import (
"context"
"errors"
"fmt"
"log"
@@ -16,11 +17,12 @@ import (
"runtime"
)
func connect(path string) (net.Conn, error) {
func connect(ctx context.Context, path string) (net.Conn, error) {
if runtime.GOOS == "js" {
return nil, errors.New("safesocket.Connect not yet implemented on js/wasm")
}
return net.Dial("unix", path)
var std net.Dialer
return std.DialContext(ctx, "unix", path)
}
func listen(path string) (net.Listener, error) {