summaryrefslogtreecommitdiff
path: root/appl/cmd/rcmd.b
diff options
context:
space:
mode:
authorCharles Forsyth <charles.forsyth@gmail.com>2015-04-29 17:44:33 +0100
committerCharles Forsyth <charles.forsyth@gmail.com>2015-04-29 17:44:33 +0100
commitfbc1184c08d18d5ac0f8763a058e015e95353341 (patch)
treef045cdfaaf13c35295d34cb0c2ffd7f4cf2ef30d /appl/cmd/rcmd.b
parent83eae27259078c96c074211a51bf38c774490544 (diff)
switch to Dial module
Diffstat (limited to 'appl/cmd/rcmd.b')
-rw-r--r--appl/cmd/rcmd.b26
1 files changed, 8 insertions, 18 deletions
diff --git a/appl/cmd/rcmd.b b/appl/cmd/rcmd.b
index 8815f9b7..5062c708 100644
--- a/appl/cmd/rcmd.b
+++ b/appl/cmd/rcmd.b
@@ -4,6 +4,7 @@ include "sys.m";
include "draw.m";
include "arg.m";
include "keyring.m";
+include "dial.m";
include "security.m";
Rcmd: module
@@ -14,10 +15,14 @@ Rcmd: module
DEFAULTALG := "none";
sys: Sys;
auth: Auth;
+dial: Dial;
init(nil: ref Draw->Context, argv: list of string)
{
sys = load Sys Sys->PATH;
+ dial = load Dial Dial->PATH;
+ if(dial == nil)
+ badmodule(Dial->PATH);
arg := load Arg Arg->PATH;
if(arg == nil)
badmodule(Arg->PATH);
@@ -78,9 +83,9 @@ init(nil: ref Draw->Context, argv: list of string)
keyfile = "/usr/" + user() + "/keyring/default";
}
- (ok, c) := sys->dial(netmkaddr(addr, "tcp", "rstyx"), nil);
- if(ok < 0)
- error(sys->sprint("dial server failed: %r"));
+ c := dial->dial(dial->netmkaddr(addr, "tcp", "rstyx"), nil);
+ if(c == nil)
+ error(sys->sprint("dial %s failed: %r", addr));
fd := c.dfd;
if (doauth) {
@@ -137,21 +142,6 @@ user(): string
return string buf[0:n];
}
-netmkaddr(addr, net, svc: string): string
-{
- if(net == nil)
- net = "net";
- (n, nil) := sys->tokenize(addr, "!");
- if(n <= 1){
- if(svc== nil)
- return sys->sprint("%s!%s", net, addr);
- return sys->sprint("%s!%s!%s", net, addr, svc);
- }
- if(svc == nil || n > 2)
- return addr;
- return sys->sprint("%s!%s", addr, svc);
-}
-
stderr(): ref Sys->FD
{
return sys->fildes(2);