Unverified Commit 4e62d55d authored by Aleksa Sarai's avatar Aleksa Sarai Committed by Christian Brauner
Browse files

selftests: openat2: add RESOLVE_ conflict test



Now that we reject conflicting RESOLVE_ flags, add a selftest to avoid
regressions.

Signed-off-by: default avatarAleksa Sarai <cyphar@cyphar.com>
Link: https://lore.kernel.org/r/20201027235044.5240-3-cyphar@cyphar.com


Signed-off-by: default avatarChristian Brauner <christian.brauner@ubuntu.com>
parent 398840f8
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -155,7 +155,7 @@ struct flag_test {
	int err;
};

#define NUM_OPENAT2_FLAG_TESTS 23
#define NUM_OPENAT2_FLAG_TESTS 24

void test_openat2_flags(void)
{
@@ -210,6 +210,12 @@ void test_openat2_flags(void)
		  .how.flags = O_TMPFILE | O_RDWR,
		  .how.mode = 0x0000A00000000000ULL, .err = -EINVAL },

		/* ->resolve flags must not conflict. */
		{ .name = "incompatible resolve flags (BENEATH | IN_ROOT)",
		  .how.flags = O_RDONLY,
		  .how.resolve = RESOLVE_BENEATH | RESOLVE_IN_ROOT,
		  .err = -EINVAL },

		/* ->resolve must only contain RESOLVE_* flags. */
		{ .name = "invalid how.resolve and O_RDONLY",
		  .how.flags = O_RDONLY,