summaryrefslogtreecommitdiff
path: root/sys/src/cmd/aux/wpa.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2013-06-24 17:19:10 +0200
committercinap_lenrek <cinap_lenrek@gmx.de>2013-06-24 17:19:10 +0200
commit745be8ad8e53f3252146e29e88f9cbe9060572a1 (patch)
tree953fd10e8b8e91394e79821bfee3065b17f4ef80 /sys/src/cmd/aux/wpa.c
parenta3b35c224b41eecb40e0a22cf76c41ecfa679030 (diff)
wpa: fix error reporting for getptk(), use readn() to read ifstats file
Diffstat (limited to 'sys/src/cmd/aux/wpa.c')
-rw-r--r--sys/src/cmd/aux/wpa.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/src/cmd/aux/wpa.c b/sys/src/cmd/aux/wpa.c
index 1abca3a87..85cd9577c 100644
--- a/sys/src/cmd/aux/wpa.c
+++ b/sys/src/cmd/aux/wpa.c
@@ -130,7 +130,7 @@ getifstats(char *key, char *val, int nval)
snprint(buf, sizeof(buf), "%s/ifstats", devdir);
if((fd = open(buf, OREAD)) < 0)
return nil;
- n = read(fd, buf, sizeof(buf)-1);
+ n = readn(fd, buf, sizeof(buf)-1);
close(fd);
if(n <= 0)
return nil;
@@ -330,8 +330,10 @@ getptk( uchar smac[Eaddrlen], uchar amac[Eaddrlen],
goto out;
if((ret = auth_rpc(rpc, "read", nil, 0)) != ARok)
goto out;
- if(rpc->narg != PTKlen)
+ if(rpc->narg != PTKlen){
+ ret = -1;
goto out;
+ }
memmove(ptk, rpc->arg, PTKlen);
ret = 0;
out:
@@ -698,9 +700,9 @@ main(int argc, char *argv[])
memmove(anonce, kd->nonce, sizeof(anonce));
genrandom(snonce, sizeof(snonce));
- if(getptk(smac, amac, snonce, anonce, ptk) < 0){
+ if(getptk(smac, amac, snonce, anonce, ptk) != 0){
if(debug != 0)
- fprint(2, "getptk: %r");
+ fprint(2, "getptk: %r\n");
continue;
}