diff options
author | Theodore Ts'o | 2015-05-31 13:35:14 -0400 |
---|---|---|
committer | Theodore Ts'o | 2015-05-31 13:35:14 -0400 |
commit | d87f6d78e996bbba27b649c0e0eed7a37d6b73ba (patch) | |
tree | eaa222a7983424b95dc6d5b6ed268266e5aa1af9 /fs/ext4 | |
parent | c2faccaff6a16d331df832135ede6d4774c2d2a0 (diff) |
ext4 crypto: policies may only be set on directories
Thanks to Chao Yu <chao2.yu@samsung.com> for pointing out we were
missing this check.
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/ext4')
-rw-r--r-- | fs/ext4/crypto_policy.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ext4/crypto_policy.c b/fs/ext4/crypto_policy.c index 81980a158dc7..a1d434d0dea8 100644 --- a/fs/ext4/crypto_policy.c +++ b/fs/ext4/crypto_policy.c @@ -93,6 +93,8 @@ int ext4_process_policy(const struct ext4_encryption_policy *policy, return -EINVAL; if (!ext4_inode_has_encryption_context(inode)) { + if (!S_ISDIR(inode->i_mode)) + return -EINVAL; if (!ext4_empty_dir(inode)) return -ENOTEMPTY; return ext4_create_encryption_context_from_policy(inode, |