diff mbox series

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

Message ID 20221011124630.62647-1-zhaogongyi@huawei.com
State Accepted
Headers show
Series [v2] syscalls/add_key05: Add userdel and groupdel before useradd | expand

Commit Message

Zhao Gongyi Oct. 11, 2022, 12:46 p.m. UTC
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(+)

--
2.17.1

Comments

Yang Xu Oct. 12, 2022, 1:33 a.m. UTC | #1
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
>
diff mbox series

Patch

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);
+	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;