diff -up shadow-4.1.4.2/man/useradd.8.redhat shadow-4.1.4.2/man/useradd.8 --- shadow-4.1.4.2/man/useradd.8.redhat 2009-07-24 03:16:44.000000000 +0200 +++ shadow-4.1.4.2/man/useradd.8 2011-02-09 11:04:24.851151246 +0100 @@ -211,7 +211,7 @@ Create the user\'s home directory if it \fB\-k\fR option) will be copied to the home directory\&. .sp -By default, no home directories are created\&. +The home directories are created by default on RHEL/Fedora systems because of /etc/login.defs (\fBCREATE_HOME\fR) setting\&. .RE .PP \fB\-M\fR diff -up shadow-4.1.4.2/src/useradd.c.redhat shadow-4.1.4.2/src/useradd.c --- shadow-4.1.4.2/src/useradd.c.redhat 2009-06-06 00:16:58.000000000 +0200 +++ shadow-4.1.4.2/src/useradd.c 2011-02-09 11:04:06.031036886 +0100 @@ -90,7 +90,7 @@ char *Prog; static gid_t def_group = 100; static const char *def_gname = "other"; static const char *def_home = "/home"; -static const char *def_shell = ""; +static const char *def_shell = "/sbin/nologin"; static const char *def_template = SKEL_DIR; static const char *def_create_mail_spool = "no"; @@ -102,7 +102,7 @@ static char def_file[] = USER_DEFAULTS_F #define VALID(s) (strcspn (s, ":\n") == strlen (s)) static const char *user_name = ""; -static const char *user_pass = "!"; +static const char *user_pass = "!!"; static uid_t user_id; static gid_t user_gid; static const char *user_comment = ""; @@ -989,9 +989,9 @@ static void process_flags (int argc, cha }; while ((c = getopt_long (argc, argv, #ifdef WITH_SELINUX - "b:c:d:De:f:g:G:k:K:lmMNop:rs:u:UZ:", + "b:c:d:De:f:g:G:k:K:lmMnNop:rs:u:UZ:", #else - "b:c:d:De:f:g:G:k:K:lmMNop:rs:u:U", + "b:c:d:De:f:g:G:k:K:lmMnNop:rs:u:U", #endif long_options, NULL)) != -1) { switch (c) { @@ -1141,6 +1141,7 @@ static void process_flags (int argc, cha case 'M': Mflg = true; break; + case 'n': case 'N': Nflg = true; break;