]> Cypherpunks.ru repositories - nncp.git/blobdiff - src/call.go
Ability to dial through pipes
[nncp.git] / src / call.go
index 3f150652bd915f5d1a65d58cf85b8ed9821de549..fd57bd1f283eaca0985adfc0e1bb8c4b9ff4ef01 100644 (file)
@@ -48,7 +48,13 @@ func (ctx *Ctx) CallNode(
        for _, addr := range addrs {
                sds := SDS{"node": node.Id, "addr": addr}
                ctx.LogD("call", sds, "dialing")
-               conn, err := net.Dial("tcp", addr)
+               var conn ConnDeadlined
+               var err error
+               if addr[0] == '|' {
+                       conn, err = NewPipeConn(addr[1:])
+               } else {
+                       conn, err = net.Dial("tcp", addr)
+               }
                if err != nil {
                        ctx.LogD("call", SdsAdd(sds, SDS{"err": err}), "dialing")
                        continue