From 7d59ed711467b2b2c8ac25f86724225c8be7524c Mon Sep 17 00:00:00 2001 From: rsc Date: Fri, 11 Feb 2005 19:51:21 +0000 Subject: changes --- src/cmd/netkey.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/cmd/netkey.c (limited to 'src/cmd/netkey.c') diff --git a/src/cmd/netkey.c b/src/cmd/netkey.c new file mode 100644 index 00000000..7e988023 --- /dev/null +++ b/src/cmd/netkey.c @@ -0,0 +1,47 @@ +#include +#include +#include +#include + +void +usage(void) +{ + fprint(2, "usage: netkey\n"); + exits("usage"); +} + +void +main(int argc, char *argv[]) +{ + char *chal, *pass, buf[32], key[DESKEYLEN]; + char *s; + int n; + + ARGBEGIN{ + default: + usage(); + }ARGEND + if(argc) + usage(); + + s = getenv("service"); + if(s && strcmp(s, "cpu") == 0){ + fprint(2, "netkey must not be run on the cpu server\n"); + exits("boofhead"); + } + + pass = readcons("password", nil, 1); + if(pass == nil) + sysfatal("reading password: %r"); + passtokey(key, pass); + + for(;;){ + chal = readcons("challenge", nil, 0); + if(chal == nil || *chal == 0) + exits(nil); + n = strtol(chal, 0, 10); + sprint(buf, "%d", n); + netcrypt(key, buf); + print("response: %s\n", buf); + } +} -- cgit v1.2.3