aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/fscrypt.txt
diff options
context:
space:
mode:
authorEric Biggers <ebiggers@google.com>2020-06-09 15:42:39 -0700
committerEric Biggers <ebiggers3@gmail.com>2020-06-10 10:13:43 -0700
commit80e99b01d739cb73dfb817708671b8cf40d4f2b4 (patch)
tree541283755db109141d7df01d1aefc8bbb6baafc3 /sys/linux/fscrypt.txt
parenta6f7998d6bf3db6e1c60612c4711ab0791d86404 (diff)
sys/linux: update fscrypt descriptions
- Add fscrypt_add_key_arg::key_id and "fscrypt-provisioning" key type (Linux 5.6, https://git.kernel.org/linus/93edd392cad7) - Add FS_IOC_GET_ENCRYPTION_NONCE (Linux 5.7, https://git.kernel.org/linus/e98ad464750c) - Add FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32 (Linux 5.8, https://git.kernel.org/linus/e3b1078bedd3)
Diffstat (limited to 'sys/linux/fscrypt.txt')
-rw-r--r--sys/linux/fscrypt.txt12
1 files changed, 10 insertions, 2 deletions
diff --git a/sys/linux/fscrypt.txt b/sys/linux/fscrypt.txt
index 78eef2c8e..4e48fc2ff 100644
--- a/sys/linux/fscrypt.txt
+++ b/sys/linux/fscrypt.txt
@@ -14,6 +14,7 @@ ioctl$FS_IOC_ADD_ENCRYPTION_KEY(fd fd, cmd const[FS_IOC_ADD_ENCRYPTION_KEY], arg
ioctl$FS_IOC_REMOVE_ENCRYPTION_KEY(fd fd, cmd const[FS_IOC_REMOVE_ENCRYPTION_KEY], arg ptr[inout, fscrypt_remove_key_arg])
ioctl$FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS(fd fd, cmd const[FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS], arg ptr[inout, fscrypt_remove_key_arg])
ioctl$FS_IOC_GET_ENCRYPTION_KEY_STATUS(fd fd, cmd const[FS_IOC_GET_ENCRYPTION_KEY_STATUS], arg ptr[inout, fscrypt_get_key_status_arg])
+ioctl$FS_IOC_GET_ENCRYPTION_NONCE(fd fd, cmd const[FS_IOC_GET_ENCRYPTION_NONCE], arg ptr[out, array[int8, 16]])
type fscrypt_key_descriptor array[int8, FSCRYPT_KEY_DESCRIPTOR_SIZE]
type fscrypt_key_identifier array[int8, FSCRYPT_KEY_IDENTIFIER_SIZE]
@@ -49,7 +50,7 @@ type fscrypt_policy_mode_t[CONTENTS, FILENAMES] {
filenames_encryption_mode const[FILENAMES, int8]
}
-fscrypt_policy_flags = FSCRYPT_POLICY_FLAGS_PAD_4, FSCRYPT_POLICY_FLAGS_PAD_8, FSCRYPT_POLICY_FLAGS_PAD_16, FSCRYPT_POLICY_FLAGS_PAD_32, FSCRYPT_POLICY_FLAG_DIRECT_KEY, FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64
+fscrypt_policy_flags = FSCRYPT_POLICY_FLAGS_PAD_4, FSCRYPT_POLICY_FLAGS_PAD_8, FSCRYPT_POLICY_FLAGS_PAD_16, FSCRYPT_POLICY_FLAGS_PAD_32, FSCRYPT_POLICY_FLAG_DIRECT_KEY, FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64, FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32
fscrypt_get_policy_ex_arg {
policy_size len[policy, int64]
@@ -71,10 +72,17 @@ fscrypt_key_specifier_payload [
identifier fscrypt_key_identifier
]
+fscrypt_provisioning_key_payload {
+ type flags[fscrypt_key_specifier_type, int32]
+ reserved const[0, int32]
+ raw array[int8]
+}
+
fscrypt_add_key_arg {
key_spec fscrypt_key_specifier
raw_size len[raw, int32]
- reserved array[const[0, int32], 9]
+ key_id fscrypt_provisioning_key[opt]
+ reserved array[const[0, int32], 8]
raw array[int8]
}