summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2018-01-02 04:27:23 +0100
committercinap_lenrek <cinap_lenrek@felloff.net>2018-01-02 04:27:23 +0100
commit1d7bb80793f57de919873b5b80b0db9a79437083 (patch)
treee74a80057058fde0ee9dfcfc42820c7ba12d4535 /sys
parent4edc761024c6d9971e7fae28081e178b35288469 (diff)
factotum: remove legacy wep protocol
Diffstat (limited to 'sys')
-rw-r--r--sys/src/cmd/auth/factotum/dat.h2
-rw-r--r--sys/src/cmd/auth/factotum/fs.c4
-rw-r--r--sys/src/cmd/auth/factotum/mkfile1
-rw-r--r--sys/src/cmd/auth/factotum/wep.c128
4 files changed, 1 insertions, 134 deletions
diff --git a/sys/src/cmd/auth/factotum/dat.h b/sys/src/cmd/auth/factotum/dat.h
index a12bb8e1b..19893aa6e 100644
--- a/sys/src/cmd/auth/factotum/dat.h
+++ b/sys/src/cmd/auth/factotum/dat.h
@@ -225,8 +225,6 @@ extern Proto chap, mschap, mschapv2, mschap2; /* chap.c */
extern Proto p9cr, vnc; /* p9cr.c */
extern Proto pass; /* pass.c */
extern Proto rsa; /* rsa.c */
-extern Proto wep; /* wep.c */
-/* extern Proto srs; /* srs.c */
extern Proto httpdigest; /* httpdigest.c */
extern Proto ecdsa; /* ecdsa.c */
extern Proto wpapsk; /* wpapsk.c */
diff --git a/sys/src/cmd/auth/factotum/fs.c b/sys/src/cmd/auth/factotum/fs.c
index a3eff5b8d..13e04ce22 100644
--- a/sys/src/cmd/auth/factotum/fs.c
+++ b/sys/src/cmd/auth/factotum/fs.c
@@ -17,7 +17,7 @@ extern Srv fs;
static void notifyf(void*, char*);
static void private(void);
-char Easproto[] = "auth server protocol botch";
+char Easproto[] = "auth server protocol botch";
char Ebadarg[] = "invalid argument";
char Ebadkey[] = "bad key";
char Enegotiation[] = "negotiation failed, no common protocols or keys";
@@ -38,10 +38,8 @@ prototab[] =
&p9sk1,
&dp9ik,
&pass,
-/* &srs, */
&rsa,
&vnc,
- &wep,
&ecdsa,
&wpapsk,
nil,
diff --git a/sys/src/cmd/auth/factotum/mkfile b/sys/src/cmd/auth/factotum/mkfile
index 505216b06..5b6186e7a 100644
--- a/sys/src/cmd/auth/factotum/mkfile
+++ b/sys/src/cmd/auth/factotum/mkfile
@@ -12,7 +12,6 @@ PROTO=\
p9sk1.$O\
pass.$O\
rsa.$O\
- wep.$O\
ecdsa.$O\
wpapsk.$O\
diff --git a/sys/src/cmd/auth/factotum/wep.c b/sys/src/cmd/auth/factotum/wep.c
deleted file mode 100644
index 6efcf5daa..000000000
--- a/sys/src/cmd/auth/factotum/wep.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * The caller supplies the device, we do the flavoring. There
- * are no phases, everything happens in the init routine.
- */
-
-#include "dat.h"
-
-typedef struct State State;
-struct State
-{
- Key *key;
-};
-
-enum
-{
- HavePass,
-};
-
-static int
-wepinit(Proto*, Fsstate *fss)
-{
- int ret;
- Key *k;
- Keyinfo ki;
- State *s;
-
- /* find a key with at least one password */
- mkkeyinfo(&ki, fss, nil);
- ret = findkey(&k, &ki, "!key1?");
- if(ret != RpcOk)
- ret = findkey(&k, &ki, "!key2?");
- if(ret != RpcOk)
- ret = findkey(&k, &ki, "!key3?");
- if(ret != RpcOk)
- return ret;
-
- setattrs(fss->attr, k->attr);
- s = emalloc(sizeof(*s));
- s->key = k;
- fss->ps = s;
- fss->phase = HavePass;
-
- return RpcOk;
-}
-
-static void
-wepclose(Fsstate *fss)
-{
- State *s;
-
- s = fss->ps;
- if(s->key)
- closekey(s->key);
- free(s);
-}
-
-static int
-wepread(Fsstate *fss, void*, uint*)
-{
- return phaseerror(fss, "read");
-}
-
-static int
-wepwrite(Fsstate *fss, void *va, uint n)
-{
- char *data = va;
- State *s;
- char dev[64];
- int fd, cfd;
- int rv;
- char *p;
-
- /* get the device */
- if(n > sizeof(dev)-5){
- werrstr("device too long");
- return RpcErrstr;
- }
- memmove(dev, data, n);
- dev[n] = 0;
- s = fss->ps;
-
- /* legal? */
- if(dev[0] != '#' || dev[1] != 'l'){
- werrstr("%s not an ether device", dev);
- return RpcErrstr;
- }
- strcat(dev, "!0");
- fd = dial(dev, 0, 0, &cfd);
- if(fd < 0)
- return RpcErrstr;
-
- /* flavor it with passwords, essid, and turn on wep */
- rv = RpcErrstr;
- p = _strfindattr(s->key->privattr, "!key1");
- if(p != nil)
- if(fprint(cfd, "key1 %s", p) < 0)
- goto out;
- p = _strfindattr(s->key->privattr, "!key2");
- if(p != nil)
- if(fprint(cfd, "key2 %s", p) < 0)
- goto out;
- p = _strfindattr(s->key->privattr, "!key3");
- if(p != nil)
- if(fprint(cfd, "key3 %s", p) < 0)
- goto out;
- p = _strfindattr(fss->attr, "essid");
- if(p != nil)
- if(fprint(cfd, "essid %s", p) < 0)
- goto out;
- if(fprint(cfd, "crypt on") < 0)
- goto out;
- rv = RpcOk;
-out:
- close(fd);
- close(cfd);
- return rv;
-}
-
-Proto wep =
-{
-.name= "wep",
-.init= wepinit,
-.write= wepwrite,
-.read= wepread,
-.close= wepclose,
-.addkey= replacekey,
-.keyprompt= "!key1? !key2? !key3? essid?",
-};