[LTP] [PATCH] setfsuid02: Fix a fake failure for setfsuid02
Zhou, You
you.zhou@intel.com
Tue Nov 1 02:41:54 CET 2022
Hi, Petr,
I try the patch from Avinesh, the test result is normal, so the purpose of this test case is to try to set an invalid uid?
Best wishes
You Zhou
-----Original Message-----
From: Petr Vorel <pvorel@suse.cz>
Sent: Monday, October 31, 2022 6:59 PM
To: Zhou, You <you.zhou@intel.com>
Cc: ltp@lists.linux.it
Subject: Re: [LTP] [PATCH] setfsuid02: Fix a fake failure for setfsuid02
> When run setfsuid02 case on x86_64 platform, I got a failure even if
> the filesystem user ID is set successfully.
> "
> ./setfsuid02
> tst_test.c:1526: TINFO: Timeout per run is 0h 00m 30s
> setfsuid02.c:31: TFAIL: setfsuid(invalid_fsuid) test for expected
> failure: retval 11 != 0: SUCCESS (0)
> Summary:
> passed 0
> failed 1
> broken 0
> skipped 0
> warnings 0
> "
> On both success and failure, setfsuid syscall returns the previous
> filesystem user ID of the caller. In this case, if case sets
> filesystem user ID successfully for the first time, this syscall can
> return the ID previously set for the second time.
> Reported-by: Pengfei Xu <pengfei.xu@intel.com>
> Signed-off-by: You Zhou <you.zhou@intel.com>
> ---
> testcases/kernel/syscalls/setfsuid/setfsuid02.c | 5 +++++
> 1 file changed, 5 insertions(+)
> diff --git a/testcases/kernel/syscalls/setfsuid/setfsuid02.c
> b/testcases/kernel/syscalls/setfsuid/setfsuid02.c
> index 850f17834..441d1e27a 100644
> --- a/testcases/kernel/syscalls/setfsuid/setfsuid02.c
> +++ b/testcases/kernel/syscalls/setfsuid/setfsuid02.c
> @@ -28,8 +28,13 @@ static void run(void)
> UID16_CHECK(invalid_uid, setfsuid);
> TST_EXP_VAL_SILENT(SETFSUID(invalid_uid), current_uid);
> +#if __x86_64__
> + TST_EXP_VAL(SETFSUID(invalid_uid), invalid_uid,
> + "setfsuid(invalid_fsuid) test for expected failure:");
Hi You,
this is most certainly invalid way of fixing things.
Would you mind to test if the patch from Avinesh works for you?
https://lore.kernel.org/ltp/20221027140954.4094-1-akumar@suse.de/
Kind regards,
Petr
> +#else
> TST_EXP_VAL(SETFSUID(invalid_uid), current_uid,
> "setfsuid(invalid_fsuid) test for expected failure:");
> +#endif
> }
> static struct tst_test test = {
More information about the ltp
mailing list