remote: use winio DialPipeContext for named pipes

Signed-off-by: Ian King'ori <kingorim.ian@gmail.com>
This commit is contained in:
Ian King'ori
2024-02-27 16:56:10 +03:00
parent 85abcc413e
commit d40c4bb046
4 changed files with 43 additions and 3 deletions

View File

@ -0,0 +1,23 @@
package remote
import (
"context"
"net"
"github.com/Microsoft/go-winio"
)
func DialContext(ctx context.Context, network string, addr string) (net.Conn, error) {
var conn net.Conn
var err error
// dial context doesn't support named pipes
if network == "npipe" {
conn, err = winio.DialPipeContext(ctx, addr)
} else {
dialer := &net.Dialer{}
conn, err = dialer.DialContext(ctx, network, addr)
}
return conn, err
}