--- shadow-4.0.4.1/libmisc/chkname.c.croc 2008-04-23 04:00:05.000000000 +0400 +++ shadow-4.0.4.1/libmisc/chkname.c 2010-04-19 18:52:20.000000000 +0400 @@ -18,13 +18,14 @@ RCSID ("$Id: chkname.c,v 1.8 2003/05/12 static int good_name (const char *name) { /* - * User/group names must match [a-z_][a-z0-9_-]* + * User/group names must match [A-Za-z_][A-Za-z0-9_-]* */ - if (!*name || !((*name >= 'a' && *name <= 'z') || *name == '_')) + if (!*name || !((*name >= 'a' && *name <= 'z') || (*name >= 'A' && *name <= 'Z') || *name == '_')) return 0; while (*++name) { if (!((*name >= 'a' && *name <= 'z') || + (*name >= 'A' && *name <= 'Z') || (*name >= '0' && *name <= '9') || *name == '_' || *name == '-' || (*name == '$' && *(name + 1) == '\0')))