src/: Recommend --badname only if it is useful
(Review with -w (--ignore-all-space).) Closes: <https://github.com/shadow-maint/shadow/issues/1067> Reported-by: Anselm Schüler <mail@anselmschueler.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
This commit is contained in:
committed by
Serge Hallyn
parent
0663c91f80
commit
1f11a5ce5a
@@ -386,10 +386,16 @@ static int add_user (const char *name, uid_t uid, gid_t gid)
|
||||
struct passwd pwent;
|
||||
|
||||
/* Check if this is a valid user name */
|
||||
if (!is_valid_user_name (name)) {
|
||||
fprintf (stderr,
|
||||
_("%s: invalid user name '%s': use --badname to ignore\n"),
|
||||
Prog, name);
|
||||
if (!is_valid_user_name(name)) {
|
||||
if (errno == EINVAL) {
|
||||
fprintf(stderr,
|
||||
_("%s: invalid user name '%s': use --badname to ignore\n"),
|
||||
Prog, name);
|
||||
} else {
|
||||
fprintf(stderr,
|
||||
_("%s: invalid user name '%s'\n"),
|
||||
Prog, name);
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
11
src/pwck.c
11
src/pwck.c
@@ -471,9 +471,14 @@ static void check_pw_file (int *errors, bool *changed)
|
||||
* Check for invalid usernames. --marekm
|
||||
*/
|
||||
|
||||
if (!is_valid_user_name (pwd->pw_name)) {
|
||||
printf (_("invalid user name '%s': use --badname to ignore\n"),
|
||||
pwd->pw_name);
|
||||
if (!is_valid_user_name(pwd->pw_name)) {
|
||||
if (errno == EINVAL) {
|
||||
printf(_("invalid user name '%s': use --badname to ignore\n"),
|
||||
pwd->pw_name);
|
||||
} else {
|
||||
printf(_("invalid user name '%s'\n"),
|
||||
pwd->pw_name);
|
||||
}
|
||||
*errors += 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -1523,10 +1523,16 @@ static void process_flags (int argc, char **argv)
|
||||
}
|
||||
|
||||
user_name = argv[optind];
|
||||
if (!is_valid_user_name (user_name)) {
|
||||
fprintf (stderr,
|
||||
_("%s: invalid user name '%s': use --badname to ignore\n"),
|
||||
Prog, user_name);
|
||||
if (!is_valid_user_name(user_name)) {
|
||||
if (errno == EINVAL) {
|
||||
fprintf(stderr,
|
||||
_("%s: invalid user name '%s': use --badname to ignore\n"),
|
||||
Prog, user_name);
|
||||
} else {
|
||||
fprintf(stderr,
|
||||
_("%s: invalid user name '%s'\n"),
|
||||
Prog, user_name);
|
||||
}
|
||||
#ifdef WITH_AUDIT
|
||||
audit_logger (AUDIT_ADD_USER, Prog,
|
||||
"adding user",
|
||||
|
||||
@@ -1116,10 +1116,16 @@ process_flags(int argc, char **argv)
|
||||
usage (E_SUCCESS);
|
||||
/*@notreached@*/break;
|
||||
case 'l':
|
||||
if (!is_valid_user_name (optarg)) {
|
||||
fprintf (stderr,
|
||||
_("%s: invalid user name '%s': use --badname to ignore\n"),
|
||||
Prog, optarg);
|
||||
if (!is_valid_user_name(optarg)) {
|
||||
if (errno == EINVAL) {
|
||||
fprintf(stderr,
|
||||
_("%s: invalid user name '%s': use --badname to ignore\n"),
|
||||
Prog, optarg);
|
||||
} else {
|
||||
fprintf(stderr,
|
||||
_("%s: invalid user name '%s'\n"),
|
||||
Prog, optarg);
|
||||
}
|
||||
exit (E_BAD_ARG);
|
||||
}
|
||||
lflg = true;
|
||||
|
||||
Reference in New Issue
Block a user