KEYCTL_CAPABILITIES(3) | Linux Key Management Calls | KEYCTL_CAPABILITIES(3) |
keyctl_capabilities - Query subsystem capabilities
#include <keyutils.h> long keyctl_capabilities(unsigned char *buffer, size_t buflen);
keyctl_capabilities() queries the keyrings subsystem in the kernel to ask about its capabilities and fills in the array in the buffer with bits that indicate the presence or absence of specific features in the keyrings subsystem.
The function returns the amount of data the kernel has available, irrespective of the amount of buffer space available. If the buffer is shorter than the data, a short copy will be made; if the buffer is larger than the data, the excess space will be cleared.
If this operation is not available in the kernel, the keyutils library will be emulate it as best it can and the capability bit that indicates if the kernel operation is available will be cleared.
In buffer[0], the following capabilities exist:
On success keyctl_capabilities() returns the size of the data it has available, irrespective of the size of the buffer. On error, the value -1 will be returned and errno will have been set to an appropriate error.
This is a library function that can be found in libkeyutils. When linking, -lkeyutils should be specified to the linker.
keyctl(1), add_key(2), keyctl(2), request_key(2), keyctl(3), keyrings(7), keyutils(7)
30 May 2019 | Linux |