[LTP] [PATCH v2 28/33] keyctl34: Test KEYCTL_CAPABILITIES flag retrieval
Petr Vorel
pvorel@suse.cz
Mon Sep 14 11:15:08 CEST 2026
Hi Andrea,
> Test keyrings subsystem capabilities retrieval with KEYCTL_CAPABILITIES
> and verify standard capability bits (CAPABILITIES, INVALIDATE,
> RESTRICT_KEYRING, MOVE, NS_KEYRING_NAME, NS_KEY_TAG).
...
> +++ b/testcases/kernel/syscalls/keyctl/keyctl34.c
...
> +static void run(void)
> +{
> + memset(caps, 0, sizeof(caps));
> +
> + TEST(keyctl(KEYCTL_CAPABILITIES, (unsigned long)caps, sizeof(caps), 0, 0));
> + if (TST_RET < 0)
> + tst_brk(TBROK | TTERRNO, "KEYCTL_CAPABILITIES failed");
> +
> + if (TST_RET < 2) {
> + tst_res(TFAIL, "KEYCTL_CAPABILITIES returned %ld, expected at least 2",
> + TST_RET);
> + return;
> + }
> +
> + TST_EXP_EXPR(caps[0] & KEYCTL_CAPS0_CAPABILITIES,
> + "KEYCTL_CAPS0_CAPABILITIES is set");
> + TST_EXP_EXPR(caps[0] & KEYCTL_CAPS0_INVALIDATE,
> + "KEYCTL_CAPS0_INVALIDATE is set");
> + TST_EXP_EXPR(caps[0] & KEYCTL_CAPS0_RESTRICT_KEYRING,
> + "KEYCTL_CAPS0_RESTRICT_KEYRING is set");
> + TST_EXP_EXPR(caps[0] & KEYCTL_CAPS0_MOVE,
> + "KEYCTL_CAPS0_MOVE is set");
> +
> + TST_EXP_EXPR(caps[1] & KEYCTL_CAPS1_NS_KEYRING_NAME,
> + "KEYCTL_CAPS1_NS_KEYRING_NAME is set");
We also need KEYCTL_CAPS1_NS_KEYRING_NAME fallback added in v5.9-rc1
b206f281d0ee1 ("keys: Namespace keyring names")
(trivial fix)
Kind regards,
Petr
More information about the ltp
mailing list