]> git.lizzy.rs Git - plan9front.git/blob - sys/src/cmd/auth/readnvram.c
show line numbers in dtracy type errors
[plan9front.git] / sys / src / cmd / auth / readnvram.c
1 /* readnvram */
2 #include <u.h>
3 #include <libc.h>
4 #include <auth.h>
5 #include <authsrv.h>
6
7 void
8 main(int, char **)
9 {
10         static uchar zeros[16];
11         static Nvrsafe safe;
12         int printed = 0;
13
14         quotefmtinstall();
15
16         /*
17          * readnvram can return -1 meaning nvram wasn't written,
18          * but safe still holds good data.
19          */
20         if(readnvram(&safe, 0) < 0 && safe.authid[0] == '\0') 
21                 sysfatal("readnvram: %r");
22
23         fmtinstall('H', encodefmt);
24
25         if(memcmp(safe.machkey, zeros, DESKEYLEN) != 0){
26                 print("key proto=p9sk1 user=%q dom=%q !hex=%.*H !password=______\n", 
27                         safe.authid, safe.authdom, DESKEYLEN, safe.machkey);
28                 printed++;
29         }
30         if(memcmp(safe.aesmachkey, zeros, AESKEYLEN) != 0){
31                 print("key proto=dp9ik user=%q dom=%q !hex=%.*H !password=______\n", 
32                         safe.authid, safe.authdom, AESKEYLEN, safe.aesmachkey);
33                 printed++;
34         }
35         if(!printed)
36                 sysfatal("no keys");
37
38         exits(0);
39 }