]> git.ipfire.org Git - thirdparty/shadow.git/commitdiff
usermod: respect --prefix for --gid option
authorMike Gilbert <floppym@gentoo.org>
Sun, 26 Mar 2023 01:16:55 +0000 (21:16 -0400)
committerIker Pedrosa <ikerpedrosam@gmail.com>
Wed, 29 Mar 2023 07:05:23 +0000 (09:05 +0200)
The --gid option accepts a group name or id. When a name is provided, it
is resolved to an id by looking up the name in the group database
(/etc/group).

The --prefix option overides the location of the passwd and group
databases. I suspect the --gid option was overlooked when wiring up the
--prefix option.

useradd --gid already respects --prefix; this change makes usermod
behave the same way.

Fixes: b6b2c756c91806b1c3e150ea0ee4721c6cdaf9d0
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
src/usermod.c

index 17cfac91b6f72754c864da0c4dc653fa99ae98f1..05cc28fbadb8fc98eab470fff3f7b1975a4ad6a6 100644 (file)
@@ -1072,7 +1072,7 @@ static void process_flags (int argc, char **argv)
                                fflg = true;
                                break;
                        case 'g':
-                               grp = getgr_nam_gid (optarg);
+                               grp = prefix_getgr_nam_gid (optarg);
                                if (NULL == grp) {
                                        fprintf (stderr,
                                                 _("%s: group '%s' does not exist\n"),