KEYS: Allow special keyrings to be cleared
The kernel contains some special internal keyrings, for instance the DNS resolver keyring : 2a93faf1 I----- 1 perm 1f030000 0 0 keyring .dns_resolver: empty It would occasionally be useful to allow the contents of such keyrings to be flushed by root (cache invalidation). Allow a flag to be set on a keyring to mark that someone possessing the sysadmin capability can clear the keyring, even without normal write access to the keyring. Set this flag on the special keyrings created by the DNS resolver, the NFS identity mapper and the CIFS identity mapper. Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Jeff Layton <jlayton@redhat.com> Acked-by: Steve Dickson <steved@redhat.com> Signed-off-by: James Morris <jmorris@namei.org>
This commit is contained in:

committed by
James Morris

parent
53999bf34d
commit
700920eb5b
@@ -554,6 +554,10 @@ The keyctl syscall functions are:
|
||||
process must have write permission on the keyring, and it must be a
|
||||
keyring (or else error ENOTDIR will result).
|
||||
|
||||
This function can also be used to clear special kernel keyrings if they
|
||||
are appropriately marked if the user has CAP_SYS_ADMIN capability. The
|
||||
DNS resolver cache keyring is an example of this.
|
||||
|
||||
|
||||
(*) Link a key into a keyring:
|
||||
|
||||
|
Reference in New Issue
Block a user