From: Michael Halcrow Date: Tue, 29 Apr 2008 07:59:52 +0000 (-0700) Subject: eCryptfs: protect crypt_stat->flags in ecryptfs_open() X-Git-Tag: v2.6.26-rc1~596 X-Git-Url: http://ftp.safe.ca/?a=commitdiff_plain;ds=sidebyside;h=2f9b12a31fcb738ea8c9eb0d4ddf906c6f1d696c;p=safe%2Fjmp%2Flinux-2.6 eCryptfs: protect crypt_stat->flags in ecryptfs_open() Make sure crypt_stat->flags is protected with a lock in ecryptfs_open(). Signed-off-by: Michael Halcrow Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/fs/ecryptfs/file.c b/fs/ecryptfs/file.c index 2b8f5ed..2258b8f 100644 --- a/fs/ecryptfs/file.c +++ b/fs/ecryptfs/file.c @@ -195,7 +195,9 @@ static int ecryptfs_open(struct inode *inode, struct file *file) file, ecryptfs_inode_to_private(inode)->lower_file); if (S_ISDIR(ecryptfs_dentry->d_inode->i_mode)) { ecryptfs_printk(KERN_DEBUG, "This is a directory\n"); + mutex_lock(&crypt_stat->cs_mutex); crypt_stat->flags &= ~(ECRYPTFS_ENCRYPTED); + mutex_unlock(&crypt_stat->cs_mutex); rc = 0; goto out; }