keyctl_chown()
changes the user and group ownership details of a key.
A setting of
-1
on either
uid
or
gid
will cause that setting to be ignored.
A process that does not have the
SysAdmin
capability may not change a key's UID or set the key's GID to a value that
does not match the process's GID or one of its group list.
The caller must have
setattr
permission on a key to be able change its ownership.
RETURN VALUE
On success
keyctl_chown()
returns
0 .
On error, the value
-1
will be returned and errno will have been set to an appropriate error.
ERRORS
ENOKEY
The specied key does not exist.
EKEYEXPIRED
The specified key has expired.
EKEYREVOKED
The specified key has been revoked.
EDQUOT
Changing the UID to the one specified would run that UID out of quota.
EACCES
The key exists, but does not grant
setattr
permission to the calling process.
LINKING
This is a library function that can be found in
libkeyutils.
When linking,
-lkeyutils
should be specified to the linker.