keyutils_raw/
constants.rs1use crate::{KeyPermissions, KeyringSerial};
28
29pub const KEY_TYPE_KEYRING: &str = "keyring";
31pub const KEY_TYPE_USER: &str = "user";
32pub const KEY_TYPE_LOGON: &str = "logon";
33pub const KEY_TYPE_BIG_KEY: &str = "big_key";
34
35pub const KEY_SPEC_THREAD_KEYRING: KeyringSerial = unsafe { KeyringSerial::new_unchecked(-1) };
36pub const KEY_SPEC_PROCESS_KEYRING: KeyringSerial = unsafe { KeyringSerial::new_unchecked(-2) };
37pub const KEY_SPEC_SESSION_KEYRING: KeyringSerial = unsafe { KeyringSerial::new_unchecked(-3) };
38pub const KEY_SPEC_USER_KEYRING: KeyringSerial = unsafe { KeyringSerial::new_unchecked(-4) };
39pub const KEY_SPEC_USER_SESSION_KEYRING: KeyringSerial = unsafe { KeyringSerial::new_unchecked(-5) };
40pub const KEY_SPEC_GROUP_KEYRING: KeyringSerial = unsafe { KeyringSerial::new_unchecked(-6) };
41pub const KEY_SPEC_REQKEY_AUTH_KEY: KeyringSerial = unsafe { KeyringSerial::new_unchecked(-7) };
42
43pub const KEYCTL_SUPPORTS_ENCRYPT: u32 = 0x01;
44pub const KEYCTL_SUPPORTS_DECRYPT: u32 = 0x02;
45pub const KEYCTL_SUPPORTS_SIGN: u32 = 0x04;
46pub const KEYCTL_SUPPORTS_VERIFY: u32 = 0x08;
47
48pub const KEY_POS_VIEW: KeyPermissions = 0x0100_0000; pub const KEY_POS_READ: KeyPermissions = 0x0200_0000; pub const KEY_POS_WRITE: KeyPermissions = 0x0400_0000; pub const KEY_POS_SEARCH: KeyPermissions = 0x0800_0000; pub const KEY_POS_LINK: KeyPermissions = 0x1000_0000; pub const KEY_POS_SETATTR: KeyPermissions = 0x2000_0000; pub const KEY_POS_ALL: KeyPermissions = 0x3f00_0000;
55
56pub const KEY_USR_VIEW: KeyPermissions = 0x0001_0000; pub const KEY_USR_READ: KeyPermissions = 0x0002_0000;
58pub const KEY_USR_WRITE: KeyPermissions = 0x0004_0000;
59pub const KEY_USR_SEARCH: KeyPermissions = 0x0008_0000;
60pub const KEY_USR_LINK: KeyPermissions = 0x0010_0000;
61pub const KEY_USR_SETATTR: KeyPermissions = 0x0020_0000;
62pub const KEY_USR_ALL: KeyPermissions = 0x003f_0000;
63
64pub const KEY_GRP_VIEW: KeyPermissions = 0x0000_0100; pub const KEY_GRP_READ: KeyPermissions = 0x0000_0200;
66pub const KEY_GRP_WRITE: KeyPermissions = 0x0000_0400;
67pub const KEY_GRP_SEARCH: KeyPermissions = 0x0000_0800;
68pub const KEY_GRP_LINK: KeyPermissions = 0x0000_1000;
69pub const KEY_GRP_SETATTR: KeyPermissions = 0x0000_2000;
70pub const KEY_GRP_ALL: KeyPermissions = 0x0000_3f00;
71
72pub const KEY_OTH_VIEW: KeyPermissions = 0x0000_0001; pub const KEY_OTH_READ: KeyPermissions = 0x0000_0002;
74pub const KEY_OTH_WRITE: KeyPermissions = 0x0000_0004;
75pub const KEY_OTH_SEARCH: KeyPermissions = 0x0000_0008;
76pub const KEY_OTH_LINK: KeyPermissions = 0x0000_0010;
77pub const KEY_OTH_SETATTR: KeyPermissions = 0x0000_0020;
78pub const KEY_OTH_ALL: KeyPermissions = 0x0000_003f;