blob: 0cc7f55799abc58966b8c7875942a57b83d126a1 [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _LINUX_KEYCTL_H
20#define _LINUX_KEYCTL_H
Christopher Ferris106b3a82016-08-24 12:15:38 -070021#include <linux/types.h>
Tao Baod7db5942015-01-28 10:07:51 -080022#define KEY_SPEC_THREAD_KEYRING - 1
Christopher Ferris106b3a82016-08-24 12:15:38 -070023#define KEY_SPEC_PROCESS_KEYRING - 2
Tao Baod7db5942015-01-28 10:07:51 -080024#define KEY_SPEC_SESSION_KEYRING - 3
25#define KEY_SPEC_USER_KEYRING - 4
26#define KEY_SPEC_USER_SESSION_KEYRING - 5
Christopher Ferris106b3a82016-08-24 12:15:38 -070027#define KEY_SPEC_GROUP_KEYRING - 6
Tao Baod7db5942015-01-28 10:07:51 -080028#define KEY_SPEC_REQKEY_AUTH_KEY - 7
29#define KEY_SPEC_REQUESTOR_KEYRING - 8
30#define KEY_REQKEY_DEFL_NO_CHANGE - 1
Christopher Ferris106b3a82016-08-24 12:15:38 -070031#define KEY_REQKEY_DEFL_DEFAULT 0
Ben Cheng655a7c02013-10-16 16:09:24 -070032#define KEY_REQKEY_DEFL_THREAD_KEYRING 1
33#define KEY_REQKEY_DEFL_PROCESS_KEYRING 2
34#define KEY_REQKEY_DEFL_SESSION_KEYRING 3
Christopher Ferris106b3a82016-08-24 12:15:38 -070035#define KEY_REQKEY_DEFL_USER_KEYRING 4
Ben Cheng655a7c02013-10-16 16:09:24 -070036#define KEY_REQKEY_DEFL_USER_SESSION_KEYRING 5
37#define KEY_REQKEY_DEFL_GROUP_KEYRING 6
38#define KEY_REQKEY_DEFL_REQUESTOR_KEYRING 7
Christopher Ferris106b3a82016-08-24 12:15:38 -070039#define KEYCTL_GET_KEYRING_ID 0
Ben Cheng655a7c02013-10-16 16:09:24 -070040#define KEYCTL_JOIN_SESSION_KEYRING 1
41#define KEYCTL_UPDATE 2
42#define KEYCTL_REVOKE 3
Christopher Ferris106b3a82016-08-24 12:15:38 -070043#define KEYCTL_CHOWN 4
Ben Cheng655a7c02013-10-16 16:09:24 -070044#define KEYCTL_SETPERM 5
45#define KEYCTL_DESCRIBE 6
46#define KEYCTL_CLEAR 7
Christopher Ferris106b3a82016-08-24 12:15:38 -070047#define KEYCTL_LINK 8
Ben Cheng655a7c02013-10-16 16:09:24 -070048#define KEYCTL_UNLINK 9
49#define KEYCTL_SEARCH 10
50#define KEYCTL_READ 11
Christopher Ferris106b3a82016-08-24 12:15:38 -070051#define KEYCTL_INSTANTIATE 12
Ben Cheng655a7c02013-10-16 16:09:24 -070052#define KEYCTL_NEGATE 13
53#define KEYCTL_SET_REQKEY_KEYRING 14
54#define KEYCTL_SET_TIMEOUT 15
Christopher Ferris106b3a82016-08-24 12:15:38 -070055#define KEYCTL_ASSUME_AUTHORITY 16
Ben Cheng655a7c02013-10-16 16:09:24 -070056#define KEYCTL_GET_SECURITY 17
57#define KEYCTL_SESSION_TO_PARENT 18
58#define KEYCTL_REJECT 19
Christopher Ferris106b3a82016-08-24 12:15:38 -070059#define KEYCTL_INSTANTIATE_IOV 20
Ben Cheng655a7c02013-10-16 16:09:24 -070060#define KEYCTL_INVALIDATE 21
Christopher Ferris38062f92014-07-09 15:33:25 -070061#define KEYCTL_GET_PERSISTENT 22
Christopher Ferris106b3a82016-08-24 12:15:38 -070062#define KEYCTL_DH_COMPUTE 23
Christopher Ferris525ce912017-07-26 13:12:53 -070063#define KEYCTL_RESTRICT_KEYRING 29
Christopher Ferris106b3a82016-08-24 12:15:38 -070064struct keyctl_dh_params {
65 __s32 __linux_private;
66 __s32 prime;
67 __s32 base;
Christopher Ferris106b3a82016-08-24 12:15:38 -070068};
Christopher Ferris525ce912017-07-26 13:12:53 -070069struct keyctl_kdf_params {
70 char __user * hashname;
71 char __user * otherinfo;
72 __u32 otherinfolen;
73 __u32 __spare[8];
74};
Ben Cheng655a7c02013-10-16 16:09:24 -070075#endif