[LTP] [PATCH v5 4/8] syscalls/mknod04: Convert to new API
Petr Vorel
pvorel@suse.cz
Fri Jun 6 15:59:19 CEST 2025
Hi Ricardo,
> > +++ testcases/kernel/syscalls/mknod/mknod04.c
> > @@ -17,6 +17,7 @@
> > #include "tst_test.h"
> > #define MODE_RWX 0777
> > +#define MODE_FIFO (S_IFIFO | 0777)
> > #define MODE_SGID (S_ISGID | 0777)
> > #define TEMP_DIR "testdir"
> > @@ -29,7 +30,7 @@ static void run(void)
> > {
> > struct stat buf;
> > - SAFE_MKNOD(TEMP_NODE, MODE_RWX, 0);
> > + SAFE_MKNOD(TEMP_NODE, MODE_FIFO, 0);
> > SAFE_STAT(TEMP_NODE, &buf);
> > TST_EXP_EQ_LI(buf.st_mode & S_ISGID, 0);
> Can you please also apply this one:
> diff --git a/testcases/kernel/syscalls/mknod/mknod05.c b/testcases/kernel/syscalls/mknod/mknod05.c
> index 4b7e9577266e..34611b57ee92 100644
> --- a/testcases/kernel/syscalls/mknod/mknod05.c
> +++ b/testcases/kernel/syscalls/mknod/mknod05.c
> @@ -18,6 +18,7 @@
> #define MODE_RWX 0777
> #define MODE_SGID (S_ISGID | 0777)
> +#define MODE_FIFO_SGID (S_IFIFO | S_ISGID | 0777)
> #define TEMP_DIR "testdir"
> #define TEMP_NODE TEMP_DIR "/testnode"
> @@ -29,7 +30,7 @@ static void run(void)
> {
> struct stat buf;
> - SAFE_MKNOD(TEMP_NODE, MODE_SGID, 0);
> + SAFE_MKNOD(TEMP_NODE, MODE_FIFO_SGID, 0);
> SAFE_STAT(TEMP_NODE, &buf);
> TST_EXP_EQ_LI(buf.st_mode & S_ISGID, S_ISGID);
> Thanks a lot,
Sure. Yeah, both mknod[45].c should use also S_IFIFO for both mknod() and
chmod(). Changed both.
Merged the rest of the patchset, thank you for the rewrite!
As there were quite a lot of changes, here is the following diff for mknod[3-8].c.
Kind regards,
Petr
> RBM
diff --git testcases/kernel/syscalls/mknod/mknod03.c testcases/kernel/syscalls/mknod/mknod03.c
index 00a6133f7a..8cb9be9287 100644
--- testcases/kernel/syscalls/mknod/mknod03.c
+++ testcases/kernel/syscalls/mknod/mknod03.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: GPL-2.0-only
+// SPDX-License-Identifier: GPL-2.0-or-later
/*
* Copyright (c) International Business Machines Corp., 2001
* 07/2001 Ported by Wayne Boyer
diff --git testcases/kernel/syscalls/mknod/mknod04.c testcases/kernel/syscalls/mknod/mknod04.c
index ceb9565b4d..441894b3b9 100644
--- testcases/kernel/syscalls/mknod/mknod04.c
+++ testcases/kernel/syscalls/mknod/mknod04.c
@@ -17,7 +17,8 @@
#include "tst_test.h"
#define MODE_RWX 0777
-#define MODE_SGID (S_ISGID | 0777)
+#define MODE_FIFO (S_IFIFO | 0777)
+#define MODE_FIFO_SGID (S_IFIFO | S_ISGID | 0777)
#define TEMP_DIR "testdir"
#define TEMP_NODE TEMP_DIR "/testnode"
@@ -29,7 +30,7 @@ static void run(void)
{
struct stat buf;
- SAFE_MKNOD(TEMP_NODE, MODE_RWX, 0);
+ SAFE_MKNOD(TEMP_NODE, MODE_FIFO, 0);
SAFE_STAT(TEMP_NODE, &buf);
TST_EXP_EQ_LI(buf.st_mode & S_ISGID, 0);
@@ -48,7 +49,7 @@ static void setup(void)
SAFE_MKDIR(TEMP_DIR, MODE_RWX);
SAFE_CHOWN(TEMP_DIR, nobody_uid, free_gid);
- SAFE_CHMOD(TEMP_DIR, MODE_SGID);
+ SAFE_CHMOD(TEMP_DIR, MODE_FIFO_SGID);
SAFE_SETGID(nobody_gid);
SAFE_SETREUID(-1, nobody_uid);
diff --git testcases/kernel/syscalls/mknod/mknod05.c testcases/kernel/syscalls/mknod/mknod05.c
index 4b7e957726..bfac9227b9 100644
--- testcases/kernel/syscalls/mknod/mknod05.c
+++ testcases/kernel/syscalls/mknod/mknod05.c
@@ -7,8 +7,8 @@
/*\
* Verify that mknod(2) succeeds when used to create a filesystem node with
- * set group-ID bit set on a directory with set group-ID bit set. The node
- * created should have set group-ID bit set and its gid should be equal to
+ * set-group-ID bit set on a directory with set-group-ID bit set. The node
+ * created should have set-group-ID bit set and its gid should be equal to
* that of its parent directory.
*/
@@ -17,7 +17,7 @@
#include "tst_test.h"
#define MODE_RWX 0777
-#define MODE_SGID (S_ISGID | 0777)
+#define MODE_FIFO_SGID (S_IFIFO | S_ISGID | 0777)
#define TEMP_DIR "testdir"
#define TEMP_NODE TEMP_DIR "/testnode"
@@ -29,7 +29,7 @@ static void run(void)
{
struct stat buf;
- SAFE_MKNOD(TEMP_NODE, MODE_SGID, 0);
+ SAFE_MKNOD(TEMP_NODE, MODE_FIFO_SGID, 0);
SAFE_STAT(TEMP_NODE, &buf);
TST_EXP_EQ_LI(buf.st_mode & S_ISGID, S_ISGID);
@@ -48,7 +48,7 @@ static void setup(void)
SAFE_MKDIR(TEMP_DIR, MODE_RWX);
SAFE_CHOWN(TEMP_DIR, nobody_uid, free_gid);
- SAFE_CHMOD(TEMP_DIR, MODE_SGID);
+ SAFE_CHMOD(TEMP_DIR, MODE_FIFO_SGID);
}
static struct tst_test test = {
More information about the ltp
mailing list