blob: 8e6e32bac3cd51ff4c2a1e6db2a0d8c921176b40 [file] [log] [blame]
Paul Lawrencebc2eb8c2015-04-28 22:13:04 +00001#include <sys/cdefs.h>
2#include <sys/types.h>
3
4__BEGIN_DECLS
5
6// ext4enc:TODO - get these keyring standard definitions from proper system file
7// keyring serial number type
8typedef int32_t key_serial_t;
9
10// special process keyring shortcut IDs
11#define KEY_SPEC_THREAD_KEYRING -1 // key ID for thread-specific keyring
12#define KEY_SPEC_PROCESS_KEYRING -2 // key ID for process-specific keyring
13#define KEY_SPEC_SESSION_KEYRING -3 // key ID for session-specific keyring
14#define KEY_SPEC_USER_KEYRING -4 // key ID for UID-specific keyring
15#define KEY_SPEC_USER_SESSION_KEYRING -5 // key ID for UID-session keyring
16#define KEY_SPEC_GROUP_KEYRING -6 // key ID for GID-specific keyring
17
18key_serial_t add_key(const char *type,
19 const char *description,
20 const void *payload,
21 size_t plen,
22 key_serial_t ringid);
23
24long keyctl_setperm(key_serial_t id, int permissions);
25
26long keyctl_search(key_serial_t ringid, const char *type,
27 const char *description, key_serial_t destringid);
28
29__END_DECLS