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