aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/factotum
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2005-02-11 22:16:21 +0000
committerrsc <devnull@localhost>2005-02-11 22:16:21 +0000
commitf0fb9c573e5e8ef31b82ba7b5f48d9e54280882e (patch)
tree58d626a9aa49f9e1f9de72d0a708ffa752100e38 /src/cmd/factotum
parent68f2c92c6f2978fe2c9e2ea3c6c60e584d55a9a7 (diff)
downloadplan9port-f0fb9c573e5e8ef31b82ba7b5f48d9e54280882e.tar.gz
plan9port-f0fb9c573e5e8ef31b82ba7b5f48d9e54280882e.tar.bz2
plan9port-f0fb9c573e5e8ef31b82ba7b5f48d9e54280882e.zip
make key prompt work
Diffstat (limited to 'src/cmd/factotum')
-rw-r--r--src/cmd/factotum/main.c22
-rw-r--r--src/cmd/factotum/p9any.c2
-rw-r--r--src/cmd/factotum/secstore.c6
3 files changed, 14 insertions, 16 deletions
diff --git a/src/cmd/factotum/main.c b/src/cmd/factotum/main.c
index a258684d..dbcfa5fe 100644
--- a/src/cmd/factotum/main.c
+++ b/src/cmd/factotum/main.c
@@ -1,5 +1,6 @@
#include "std.h"
#include "dat.h"
+#include <9pclient.h>
int extrafactotumdir;
int debug;
@@ -132,15 +133,16 @@ promptforkey(int fd, char *params)
static int
sendkey(Attr *attr)
{
- int fd, rv;
+ int rv;
char buf[1024];
-
- fd = open("/mnt/factotum/ctl", ORDWR);
- if(fd < 0)
- sysfatal("opening /mnt/factotum/ctl: %r");
- rv = fprint(fd, "key %A\n", attr);
- read(fd, buf, sizeof buf);
- close(fd);
+ CFid *fid;
+
+ fid = nsopen("factotum", nil, "ctl", OWRITE);
+ if(fid == nil)
+ sysfatal("opening factotum/ctl: %r");
+ snprint(buf, sizeof buf, "key %A\n", attr);
+ rv = fswrite(fid, buf, strlen(buf));
+ fsclose(fid);
return rv;
}
@@ -163,8 +165,8 @@ gflag(char *s)
int nf;
int fd;
- if((fd = open("/dev/cons", ORDWR)) < 0)
- sysfatal("open /dev/cons: %r");
+ if((fd = open("/dev/tty", ORDWR)) < 0)
+ sysfatal("open /dev/tty: %r");
nf = getfields(s, f, nelem(f), 0, "\n");
if(nf == 1){ /* needkey or old badkey */
diff --git a/src/cmd/factotum/p9any.c b/src/cmd/factotum/p9any.c
index 59a660fe..0006cad1 100644
--- a/src/cmd/factotum/p9any.c
+++ b/src/cmd/factotum/p9any.c
@@ -189,7 +189,7 @@ p9anyclient(Conv *c)
if(dom && strcmp(q+1, dom) != 0)
continue;
*q++ = '\0';
- if(k = keyfetch(c, "%A proto=%q dom=%q", attr, f[i], q))
+ if(k = keylookup("%A proto=%q dom=%q", attr, f[i], q))
goto found;
*--q = '@';
}
diff --git a/src/cmd/factotum/secstore.c b/src/cmd/factotum/secstore.c
index 14c855b1..d82d7862 100644
--- a/src/cmd/factotum/secstore.c
+++ b/src/cmd/factotum/secstore.c
@@ -22,7 +22,6 @@ int
secdial(void)
{
char *p;
- int fd;
p = secstore;
if(p == nil) /* else use the authserver */
@@ -32,10 +31,7 @@ secdial(void)
if(p == nil)
p = "secstore";
- fd = dial(netmkaddr(p, "net", "secstore"), 0, 0, 0);
- if(fd < 0)
- fprint(2, "secdial: %r\n");
- return fd;
+ return dial(netmkaddr(p, "net", "secstore"), 0, 0, 0);
}