summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorChao Yu <chao2.yu@samsung.com>2016-02-14 18:56:55 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-05-04 14:49:13 -0700
commit091391b800a32dccd9a9138827820a3f8c83f96a (patch)
tree1d602f1957d2e235536dcd019218207ccce5566f /fs
parent629a4956e0ea66c5ff4d1bc5bbb2d5deca4e3908 (diff)
downloadlinux-stable-091391b800a32dccd9a9138827820a3f8c83f96a.tar.gz
linux-stable-091391b800a32dccd9a9138827820a3f8c83f96a.tar.bz2
linux-stable-091391b800a32dccd9a9138827820a3f8c83f96a.zip
f2fs crypto: make sure the encryption info is initialized on opendir(2)
commit ed3360abbc0412f32c398e1c58887d74f3d04225 upstream. This patch syncs f2fs with commit 6bc445e0ff44 ("ext4 crypto: make sure the encryption info is initialized on opendir(2)") from ext4. Signed-off-by: Theodore Ts'o <tytso@mit.edu> Signed-off-by: Chao Yu <chao2.yu@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
-rw-r--r--fs/f2fs/dir.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/f2fs/dir.c b/fs/f2fs/dir.c
index faa7495e2d7e..30e6b6563494 100644
--- a/fs/f2fs/dir.c
+++ b/fs/f2fs/dir.c
@@ -892,11 +892,19 @@ out:
return err;
}
+static int f2fs_dir_open(struct inode *inode, struct file *filp)
+{
+ if (f2fs_encrypted_inode(inode))
+ return f2fs_get_encryption_info(inode) ? -EACCES : 0;
+ return 0;
+}
+
const struct file_operations f2fs_dir_operations = {
.llseek = generic_file_llseek,
.read = generic_read_dir,
.iterate = f2fs_readdir,
.fsync = f2fs_sync_file,
+ .open = f2fs_dir_open,
.unlocked_ioctl = f2fs_ioctl,
#ifdef CONFIG_COMPAT
.compat_ioctl = f2fs_compat_ioctl,