diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2019-01-12 11:51:58 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2019-01-12 11:51:58 +0100 |
commit | b67d900395a847e29f2afa81198f783004c80fc5 (patch) | |
tree | 49dbcb6ad199eaa5f61816fd11fca59627581acf | |
parent | 3109d1f9659ffad76f3cf2c547cc425ed34ae96c (diff) | |
download | busybox-b67d900395a847e29f2afa81198f783004c80fc5.tar.gz |
adduser: fix a bug of getpwnam() overwriting shell name, closes 8586
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | loginutils/adduser.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/loginutils/adduser.c b/loginutils/adduser.c index b2b5be5b3..850c810c4 100644 --- a/loginutils/adduser.c +++ b/loginutils/adduser.c @@ -198,7 +198,7 @@ int adduser_main(int argc UNUSED_PARAM, char **argv) pw.pw_gecos = (char *)"Linux User,,,"; /* We assume that newly created users "inherit" root's shell setting */ - pw.pw_shell = (char *)get_shell_name(); + pw.pw_shell = xstrdup(get_shell_name()); /* might come from getpwnam(), need to make a copy */ pw.pw_dir = NULL; opts = getopt32long(argv, "^" |