keyctl_set_timeout — set the expiration timer on a key
Synopsis
#include <keyutils.h> long keyctl_set_timeout(key_serial_t key, unsigned timeout);
Description
keyctl_set_timeout() sets the expiration timer on a key to timeout seconds into the future. Setting timeout to zero cancels the expiration, assuming the key hasn't already expired.
When the key expires, further attempts to access it will be met with error EKEYEXPIRED.
The caller must have setattr permission on a key to be able change its permissions mask.
Return Value
On success keyctl_set_timeout() returns 0 . On error, the value -1 will be returned and errno will have been set to an appropriate error.
Errors
- ENOKEY
The specified key does not exist.
- EKEYEXPIRED
The specified key has already expired.
- EKEYREVOKED
The specified key has been revoked.
- EACCES
The named 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.
See Also
keyctl(1), add_key(2), keyctl(2), request_key(2), keyctl(3), keyrings(7), keyutils(7)