diff --git a/sockets/sockets.go b/sockets/sockets.go index 2e9e9006..0133ee1a 100644 --- a/sockets/sockets.go +++ b/sockets/sockets.go @@ -3,9 +3,13 @@ package sockets import ( "errors" + "net" "net/http" + "time" ) +const defaultTimeout = 10 * time.Second + // ErrProtocolNotAvailable is returned when a given transport protocol is not provided by the operating system. var ErrProtocolNotAvailable = errors.New("protocol not available") @@ -21,6 +25,9 @@ func ConfigureTransport(tr *http.Transport, proto, addr string) error { return configureNpipeTransport(tr, proto, addr) default: tr.Proxy = http.ProxyFromEnvironment + tr.DialContext = (&net.Dialer{ + Timeout: defaultTimeout, + }).DialContext } return nil } diff --git a/sockets/sockets_unix.go b/sockets/sockets_unix.go index 10d76342..5b65c546 100644 --- a/sockets/sockets_unix.go +++ b/sockets/sockets_unix.go @@ -11,10 +11,7 @@ import ( "time" ) -const ( - defaultTimeout = 10 * time.Second - maxUnixSocketPathSize = len(syscall.RawSockaddrUnix{}.Path) -) +const maxUnixSocketPathSize = len(syscall.RawSockaddrUnix{}.Path) func configureUnixTransport(tr *http.Transport, proto, addr string) error { if len(addr) > maxUnixSocketPathSize {