summaryrefslogtreecommitdiff
path: root/include/linux/keyctl.h
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2012-05-11 09:56:56 (GMT)
committerDavid Howells <dhowells@redhat.com>2012-05-11 09:56:56 (GMT)
commitfd75815f727f157a05f4c96b5294a4617c0557da (patch)
treeb2e76abf176d37b5d810b0c813b8c0219754b88c /include/linux/keyctl.h
parent31d5a79d7f3d436da176a78ebc12d53c06da402e (diff)
downloadlinux-fsl-qoriq-fd75815f727f157a05f4c96b5294a4617c0557da.tar.xz
KEYS: Add invalidation support
Add support for invalidating a key - which renders it immediately invisible to further searches and causes the garbage collector to immediately wake up, remove it from keyrings and then destroy it when it's no longer referenced. It's better not to do this with keyctl_revoke() as that marks the key to start returning -EKEYREVOKED to searches when what is actually desired is to have the key refetched. To invalidate a key the caller must be granted SEARCH permission by the key. This may be too strict. It may be better to also permit invalidation if the caller has any of READ, WRITE or SETATTR permission. The primary use for this is to evict keys that are cached in special keyrings, such as the DNS resolver or an ID mapper. Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'include/linux/keyctl.h')
-rw-r--r--include/linux/keyctl.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/keyctl.h b/include/linux/keyctl.h
index 9b0b865..c9b7f4fa 100644
--- a/include/linux/keyctl.h
+++ b/include/linux/keyctl.h
@@ -55,5 +55,6 @@
#define KEYCTL_SESSION_TO_PARENT 18 /* apply session keyring to parent process */
#define KEYCTL_REJECT 19 /* reject a partially constructed key */
#define KEYCTL_INSTANTIATE_IOV 20 /* instantiate a partially constructed key */
+#define KEYCTL_INVALIDATE 21 /* invalidate a key */
#endif /* _LINUX_KEYCTL_H */