View | Details | Raw Unified | Return to bug 9202
Collapse All | Expand All

(-)shadow-4.0.4.1/libmisc/chkname.c.croc (-2 / +3 lines)
Lines 18-30 RCSID ("$Id: chkname.c,v 1.8 2003/05/12 Link Here
18
static int good_name (const char *name)
18
static int good_name (const char *name)
19
{
19
{
20
	/*
20
	/*
21
	 * User/group names must match [a-z_][a-z0-9_-]*
21
	 * User/group names must match [A-Za-z_][A-Za-z0-9_-]*
22
	 */
22
	 */
23
	if (!*name || !((*name >= 'a' && *name <= 'z') || *name == '_'))
23
	if (!*name || !((*name >= 'a' && *name <= 'z') || (*name >= 'A' && *name <= 'Z') || *name == '_'))
24
		return 0;
24
		return 0;
25
25
26
	while (*++name) {
26
	while (*++name) {
27
		if (!((*name >= 'a' && *name <= 'z') ||
27
		if (!((*name >= 'a' && *name <= 'z') ||
28
		      (*name >= 'A' && *name <= 'Z') ||
28
		      (*name >= '0' && *name <= '9') ||
29
		      (*name >= '0' && *name <= '9') ||
29
		      *name == '_' || *name == '-' ||
30
		      *name == '_' || *name == '-' ||
30
		      (*name == '$' && *(name + 1) == '\0')))
31
		      (*name == '$' && *(name + 1) == '\0')))

Return to bug 9202