diff mbox series

syscalls/creat09: Add umask(0) to setup

Message ID 20220708005657.108858-1-zhaogongyi@huawei.com
State Rejected
Headers show
Series syscalls/creat09: Add umask(0) to setup | expand

Commit Message

Zhao Gongyi July 8, 2022, 12:56 a.m. UTC
The bit S_ISGID of st_mode is also affected by umask, if umask is 0077,
the test will fail.

Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
---
 testcases/kernel/syscalls/creat/creat09.c | 2 ++
 1 file changed, 2 insertions(+)

--
2.17.1

Comments

Yang Xu July 8, 2022, 1:19 a.m. UTC | #1
Hi Zhao

I don't this fix is meaningful because it only for "fix" this failure

so do you look into why umask(0077) lead this case fail?

I have rejected a similar patch[1] from petr yesterday because it has 
bug exists on kernel fs sgid strip logic.

[1]https://lists.linux.it/pipermail/ltp/2022-July/029495.html

Best Regards
Yang Xu
> The bit S_ISGID of st_mode is also affected by umask, if umask is 0077,
> the test will fail.
>
> Signed-off-by: Zhao Gongyi<zhaogongyi@huawei.com>
> ---
>   testcases/kernel/syscalls/creat/creat09.c | 2 ++
>   1 file changed, 2 insertions(+)
>
> diff --git a/testcases/kernel/syscalls/creat/creat09.c b/testcases/kernel/syscalls/creat/creat09.c
> index bed7bddb0..6edd5dbb9 100644
> --- a/testcases/kernel/syscalls/creat/creat09.c
> +++ b/testcases/kernel/syscalls/creat/creat09.c
> @@ -52,6 +52,8 @@ static void setup(void)
>   	struct stat buf;
>   	struct passwd *ltpuser = SAFE_GETPWNAM("nobody");
>
> +	umask(0);
> +
>   	tst_res(TINFO, "User nobody: uid = %d, gid = %d", (int)ltpuser->pw_uid,
>   		(int)ltpuser->pw_gid);
>   	free_gid = tst_get_free_gid(ltpuser->pw_gid);
> --
> 2.17.1
>
>
diff mbox series

Patch

diff --git a/testcases/kernel/syscalls/creat/creat09.c b/testcases/kernel/syscalls/creat/creat09.c
index bed7bddb0..6edd5dbb9 100644
--- a/testcases/kernel/syscalls/creat/creat09.c
+++ b/testcases/kernel/syscalls/creat/creat09.c
@@ -52,6 +52,8 @@  static void setup(void)
 	struct stat buf;
 	struct passwd *ltpuser = SAFE_GETPWNAM("nobody");

+	umask(0);
+
 	tst_res(TINFO, "User nobody: uid = %d, gid = %d", (int)ltpuser->pw_uid,
 		(int)ltpuser->pw_gid);
 	free_gid = tst_get_free_gid(ltpuser->pw_gid);