Copyright (C) 2006 Red Hat, Inc. All Rights Reserved. Written by David Howells (email@example.com) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
NAMEkeyctl_chown - Change the ownership of a key
#include <keyutils.h> long keyctl_chown(key_serial_t key, uid_t uid, gid_t gid);
DESCRIPTIONkeyctl_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 VALUEOn success keyctl_chown() returns 0 . On error, the value -1 will be returned and errno will have been set to an appropriate error.
- The specified key does not exist.
- The specified key has expired.
- The specified key has been revoked.
- Changing the UID to the one specified would run that UID out of quota.
- The key exists, but does not grant setattr permission to the calling process.
LINKINGThis is a library function that can be found in libkeyutils. When linking, -lkeyutils should be specified to the linker.