1 #include <u.h>
2 #include <libc.h>
3 #include <authsrv.h>
4 #include <bio.h>
5 #include "authcmdlib.h"
6
7 char *trivial[] = {
8 "login",
9 "guest",
10 "change me",
11 "passwd",
12 "no passwd",
13 "anonymous",
14 0
15 };
16
17 char*
okpasswd(char * p)18 okpasswd(char *p)
19 {
20 char passwd[ANAMELEN];
21 char back[ANAMELEN];
22 int i, n;
23
24 strncpy(passwd, p, sizeof passwd - 1);
25 passwd[sizeof passwd - 1] = '\0';
26 n = strlen(passwd);
27 while(passwd[n - 1] == ' ')
28 n--;
29 passwd[n] = '\0';
30 for(i = 0; i < n; i++)
31 back[i] = passwd[n - 1 - i];
32 back[n] = '\0';
33 if(n < 8)
34 return "password must be at least 8 chars";
35
36 for(i = 0; trivial[i]; i++)
37 if(strcmp(passwd, trivial[i]) == 0
38 || strcmp(back, trivial[i]) == 0)
39 return "trivial password";
40
41 return 0;
42 }
43