| .. | .. |
|---|
| 20 | 20 | #define FSCRYPT_POLICY_FLAG_DIRECT_KEY 0x04 |
|---|
| 21 | 21 | #define FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64 0x08 |
|---|
| 22 | 22 | #define FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32 0x10 |
|---|
| 23 | | -#define FSCRYPT_POLICY_FLAGS_VALID 0x1F |
|---|
| 24 | 23 | |
|---|
| 25 | 24 | /* Encryption algorithms */ |
|---|
| 26 | 25 | #define FSCRYPT_MODE_AES_256_XTS 1 |
|---|
| .. | .. |
|---|
| 28 | 27 | #define FSCRYPT_MODE_AES_128_CBC 5 |
|---|
| 29 | 28 | #define FSCRYPT_MODE_AES_128_CTS 6 |
|---|
| 30 | 29 | #define FSCRYPT_MODE_ADIANTUM 9 |
|---|
| 31 | | -#define __FSCRYPT_MODE_MAX 9 |
|---|
| 30 | +/* If adding a mode number > 9, update FSCRYPT_MODE_MAX in fscrypt_private.h */ |
|---|
| 32 | 31 | |
|---|
| 33 | 32 | /* |
|---|
| 34 | 33 | * Legacy policy version; ad-hoc KDF and no key verification. |
|---|
| .. | .. |
|---|
| 45 | 44 | __u8 flags; |
|---|
| 46 | 45 | __u8 master_key_descriptor[FSCRYPT_KEY_DESCRIPTOR_SIZE]; |
|---|
| 47 | 46 | }; |
|---|
| 48 | | -#define fscrypt_policy fscrypt_policy_v1 |
|---|
| 49 | 47 | |
|---|
| 50 | 48 | /* |
|---|
| 51 | 49 | * Process-subscribed "logon" key description prefix and payload format. |
|---|
| .. | .. |
|---|
| 159 | 157 | __u32 __out_reserved[13]; |
|---|
| 160 | 158 | }; |
|---|
| 161 | 159 | |
|---|
| 162 | | -#define FS_IOC_SET_ENCRYPTION_POLICY _IOR('f', 19, struct fscrypt_policy) |
|---|
| 160 | +#define FS_IOC_SET_ENCRYPTION_POLICY _IOR('f', 19, struct fscrypt_policy_v1) |
|---|
| 163 | 161 | #define FS_IOC_GET_ENCRYPTION_PWSALT _IOW('f', 20, __u8[16]) |
|---|
| 164 | | -#define FS_IOC_GET_ENCRYPTION_POLICY _IOW('f', 21, struct fscrypt_policy) |
|---|
| 162 | +#define FS_IOC_GET_ENCRYPTION_POLICY _IOW('f', 21, struct fscrypt_policy_v1) |
|---|
| 165 | 163 | #define FS_IOC_GET_ENCRYPTION_POLICY_EX _IOWR('f', 22, __u8[9]) /* size + version */ |
|---|
| 166 | 164 | #define FS_IOC_ADD_ENCRYPTION_KEY _IOWR('f', 23, struct fscrypt_add_key_arg) |
|---|
| 167 | 165 | #define FS_IOC_REMOVE_ENCRYPTION_KEY _IOWR('f', 24, struct fscrypt_remove_key_arg) |
|---|
| .. | .. |
|---|
| 173 | 171 | |
|---|
| 174 | 172 | /* old names; don't add anything new here! */ |
|---|
| 175 | 173 | #ifndef __KERNEL__ |
|---|
| 174 | +#define fscrypt_policy fscrypt_policy_v1 |
|---|
| 176 | 175 | #define FS_KEY_DESCRIPTOR_SIZE FSCRYPT_KEY_DESCRIPTOR_SIZE |
|---|
| 177 | 176 | #define FS_POLICY_FLAGS_PAD_4 FSCRYPT_POLICY_FLAGS_PAD_4 |
|---|
| 178 | 177 | #define FS_POLICY_FLAGS_PAD_8 FSCRYPT_POLICY_FLAGS_PAD_8 |
|---|
| .. | .. |
|---|
| 180 | 179 | #define FS_POLICY_FLAGS_PAD_32 FSCRYPT_POLICY_FLAGS_PAD_32 |
|---|
| 181 | 180 | #define FS_POLICY_FLAGS_PAD_MASK FSCRYPT_POLICY_FLAGS_PAD_MASK |
|---|
| 182 | 181 | #define FS_POLICY_FLAG_DIRECT_KEY FSCRYPT_POLICY_FLAG_DIRECT_KEY |
|---|
| 183 | | -#define FS_POLICY_FLAGS_VALID FSCRYPT_POLICY_FLAGS_VALID |
|---|
| 182 | +#define FS_POLICY_FLAGS_VALID 0x07 /* contains old flags only */ |
|---|
| 184 | 183 | #define FS_ENCRYPTION_MODE_INVALID 0 /* never used */ |
|---|
| 185 | 184 | #define FS_ENCRYPTION_MODE_AES_256_XTS FSCRYPT_MODE_AES_256_XTS |
|---|
| 186 | 185 | #define FS_ENCRYPTION_MODE_AES_256_GCM 2 /* never used */ |
|---|