[LTP] [PATCH v2] syscalls/add_key05: Add userdel and groupdel before useradd

xuyang2018.jy@fujitsu.com xuyang2018.jy@fujitsu.com
Wed Oct 12 03:33:29 CEST 2022


Hi Zhao


> If the test exit abnormal, some user/group will be left, and the
> next running of the test will fail and report:
> 
>    tst_buffers.c:55: TINFO: Test is using guarded buffers
>    tst_test.c:1526: TINFO: Timeout per run is 0h 00m 30s
>    useradd: group ltp_add_key05_0 exists - if you want to add this user to that group, use -g.
>    add_key05.c:41: TBROK: useradd failed (9)
>    userdel: user 'ltp_add_key05_0' does not exist
>    add_key05.c:56: TWARN: 'userdel -r ltp_add_key05_0' failed: ENOENT (2)
> 
> Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
> ---
>   testcases/kernel/syscalls/add_key/add_key05.c | 5 +++++
>   1 file changed, 5 insertions(+)
> 
> diff --git a/testcases/kernel/syscalls/add_key/add_key05.c b/testcases/kernel/syscalls/add_key/add_key05.c
> index 71a88d1a8..e8d249040 100644
> --- a/testcases/kernel/syscalls/add_key/add_key05.c
> +++ b/testcases/kernel/syscalls/add_key/add_key05.c
> @@ -34,10 +34,15 @@ static void add_user(char n)
>   {
>   	char username[] = "ltp_add_key05_n";
>   	const char *const cmd_useradd[] = {"useradd", username, NULL};
> +	const char *const cmd_userdel[] = {"userdel", "-r", username, NULL};
> +	const char *const cmd_groupdel[] = {"groupdel", username, NULL};
>   	struct passwd *pw;
> 
>   	username[sizeof(username) - 2] = '0' + n;
> 
> +	tst_cmd(cmd_userdel, NULL, "/dev/null", TST_CMD_PASS_RETVAL);

I do a test on my system
#useradd test
#userdel -r test
#groupdel test
groupdel: group 'test' does not exist

so I guess we can only using cmd_userdel is enough because it seems 
userdel will remove the corresponding group.


Best Regards
Yang Xu
> +	tst_cmd(cmd_groupdel, NULL, "/dev/null", TST_CMD_PASS_RETVAL);
> +
>   	SAFE_CMD(cmd_useradd, NULL, NULL);
>   	pw = SAFE_GETPWNAM(username);
>   	ltpuser[(unsigned int)n] = pw->pw_uid;
> --
> 2.17.1
> 


More information about the ltp mailing list