1 #include <u.h>
2 #include <libc.h>
3 #include <authsrv.h>
4 #include <bio.h>
5 #include "authcmdlib.h"
6
7 static void
record(char * db,char * user,char * msg)8 record(char *db, char *user, char *msg)
9 {
10 char buf[Maxpath];
11 int fd;
12
13 snprint(buf, sizeof buf, "%s/%s/log", db, user);
14 fd = open(buf, OWRITE);
15 if(fd < 0)
16 return;
17 write(fd, msg, strlen(msg));
18 close(fd);
19 return;
20 }
21
22 void
logfail(char * user)23 logfail(char *user)
24 {
25 if(!user)
26 return;
27 record(KEYDB, user, "bad");
28 record(NETKEYDB, user, "bad");
29 }
30
31 void
succeed(char * user)32 succeed(char *user)
33 {
34 if(!user)
35 return;
36 record(KEYDB, user, "good");
37 record(NETKEYDB, user, "good");
38 }
39
40 void
fail(char * user)41 fail(char *user)
42 {
43 logfail(user);
44 exits("failure");
45 }
46