Hi,

I noticed that I can't create login name containing a '.' (dot)
character (e.g. firstname.lastname). I stumbled upon this problem when I
needed to upgrade an older PLD Samba server where accounts where all
created as firstname.lastname. So, I ended up patching the shadow
package to allow dot in logins and use it instead of the PLD/ac default
shadow pkg.

What about allowing the dot character by default in the shadow package ?

Here is the good_name() function used by Fedora :

static int good_name (const char *name)
{
        /*
         * User/group names must match gnu e-regex:
         *    [a-zA-Z0-9_.][a-zA-Z0-9_.-]{0,30}[a-zA-Z0-9_.$-]?
         *
         * as a non-POSIX, extension, allow "$" as the last char for
         * sake of Samba 3.x "add machine script"
         */
        if (!*name || !((*name >= 'a' && *name <= 'z')
             || (*name >= 'A' && *name <= 'Z')
             || (*name >= '0' && *name <= '9')
             || *name == '_' || *name == '.'))
                return 0;

        while (*++name) {
                if (!(  (*name >= 'a' && *name <= 'z')
                     || (*name >= 'A' && *name <= 'Z')
                     || (*name >= '0' && *name <= '9')
                     || *name == '_' || *name == '.' || *name == '-'
                     || (*name == '$' && *(name + 1) == '\0')))
                        return 0;
        }

        return 1;
}

Regards,
Jérôme
_______________________________________________
pld-devel-en mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-devel-en

Reply via email to