Signed-off-by: John Howard <jhoward@microsoft.com>
@@ -577,6 +577,8 @@ func sockConn(timeout time.Duration) (net.Conn, error) {
var c net.Conn
switch daemonURL.Scheme {
+ case "npipe":
+ return npipeDial(daemonURL.Path, timeout)
case "unix":
return net.DialTimeout(daemonURL.Scheme, daemonURL.Path, timeout)
case "tcp":
@@ -0,0 +1,12 @@
+// +build !windows
+
+package main
+import (
+ "net"
+ "time"
+)
+func npipeDial(path string, timeout time.Duration) (net.Conn, error) {
+ panic("npipe protocol only supported on Windows")
+}
+ "github.com/Microsoft/go-winio"
+ return winio.DialPipe(path, &timeout)