[LTP] [RFC PATCH 1/1] creat09: Fix on more restrictive umask
xuyang2018.jy@fujitsu.com
xuyang2018.jy@fujitsu.com
Wed Jul 6 11:37:56 CEST 2022
Hi Petr
Share some process with you...
I have rejected this patch and a kernel patchset[1] is plan to fix this
but doesn't merged to upstream kernel due to none continue to review
this(It is about one month since v9...)
TBH, this case only tests simple creat file with open but miss
open with O_TMPFILE[2]
mknodat[3]
setgid strip logic is not only affected by umask but also include acl
operations[4].
[1]https://patchwork.kernel.org/project/linux-fsdevel/list/?series=643645
[2]https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/commit/?id=87cf32ad3fa234e3d5ec501e0f86516bef91d805
[3]https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/commit/?id=5328ab947ff4d2d492a6ac90b22d31ab02637bd8
[4]https://patchwork.kernel.org/project/fstests/list/?series=643643&state=%2A&archive=both
Best Regards
Yang Xu
> XFS fails on umask 0077:
>
> tst_test.c:1528: TINFO: Testing on xfs
> tst_test.c:997: TINFO: Formatting /dev/loop0 with xfs opts='' extra opts=''
> tst_test.c:1458: TINFO: Timeout per run is 0h 05m 00s
> creat09.c:61: TINFO: User nobody: uid = 65534, gid = 65534
> creat09.c:62: TINFO: Found unused GID 3: SUCCESS (0)
> creat09.c:93: TPASS: mntpoint/testdir/creat.tmp: Owned by correct group
> creat09.c:97: TFAIL: mntpoint/testdir/creat.tmp: Setgid bit is set
> creat09.c:93: TPASS: mntpoint/testdir/open.tmp: Owned by correct group
> creat09.c:97: TFAIL: mntpoint/testdir/open.tmp: Setgid bit is set
>
> Thus clear the default umask.
>
> Signed-off-by: Petr Vorel<pvorel@suse.cz>
> ---
> 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 bed7bddb0e..70da7d2fc7 100644
> --- a/testcases/kernel/syscalls/creat/creat09.c
> +++ b/testcases/kernel/syscalls/creat/creat09.c
> @@ -56,6 +56,8 @@ static void setup(void)
> (int)ltpuser->pw_gid);
> free_gid = tst_get_free_gid(ltpuser->pw_gid);
>
> + umask(0);
> +
> /* Create directories and set permissions */
> SAFE_MKDIR(WORKDIR, MODE_RWX);
> SAFE_CHOWN(WORKDIR, ltpuser->pw_uid, free_gid);
More information about the ltp
mailing list