mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
keys: add keyctl function to get a security label
Add a keyctl() function to get the security label of a key.
The following is added to Documentation/keys.txt:
(*) Get the LSM security context attached to a key.
long keyctl(KEYCTL_GET_SECURITY, key_serial_t key, char *buffer,
size_t buflen)
This function returns a string that represents the LSM security context
attached to a key in the buffer provided.
Unless there's an error, it always returns the amount of data it could
produce, even if that's too big for the buffer, but it won't copy more
than requested to userspace. If the buffer pointer is NULL then no copy
will take place.
A NUL character is included at the end of the string if the buffer is
sufficiently big. This is included in the returned count. If no LSM is
in force then an empty string will be returned.
A process must have view permission on the key for this function to be
successful.
[[email protected]: declare keyctl_get_security()]
Signed-off-by: David Howells <[email protected]>
Acked-by: Stephen Smalley <[email protected]>
Cc: Paul Moore <[email protected]>
Cc: Chris Wright <[email protected]>
Cc: James Morris <[email protected]>
Cc: Kevin Coffman <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
4a38e122e2
commit
70a5bb72b5
9 changed files with 140 additions and 2 deletions
|
|
@ -711,6 +711,27 @@ The keyctl syscall functions are:
|
|||
The assumed authoritative key is inherited across fork and exec.
|
||||
|
||||
|
||||
(*) Get the LSM security context attached to a key.
|
||||
|
||||
long keyctl(KEYCTL_GET_SECURITY, key_serial_t key, char *buffer,
|
||||
size_t buflen)
|
||||
|
||||
This function returns a string that represents the LSM security context
|
||||
attached to a key in the buffer provided.
|
||||
|
||||
Unless there's an error, it always returns the amount of data it could
|
||||
produce, even if that's too big for the buffer, but it won't copy more
|
||||
than requested to userspace. If the buffer pointer is NULL then no copy
|
||||
will take place.
|
||||
|
||||
A NUL character is included at the end of the string if the buffer is
|
||||
sufficiently big. This is included in the returned count. If no LSM is
|
||||
in force then an empty string will be returned.
|
||||
|
||||
A process must have view permission on the key for this function to be
|
||||
successful.
|
||||
|
||||
|
||||
===============
|
||||
KERNEL SERVICES
|
||||
===============
|
||||
|
|
|
|||
Loading…
Reference in a new issue