]> rtime.felk.cvut.cz Git - lisovros/linux_canprio.git/blobdiff - fs/ecryptfs/inode.c
eCryptfs: Clear LOOKUP_OPEN flag when creating lower file
[lisovros/linux_canprio.git] / fs / ecryptfs / inode.c
index 3fbc94203380acf8e6095627ee610ff058df5f38..b7784e7d0cc2ed161ce6aa5fa7cd5b9d6d6ca088 100644 (file)
@@ -70,15 +70,19 @@ ecryptfs_create_underlying_file(struct inode *lower_dir_inode,
        struct vfsmount *lower_mnt = ecryptfs_dentry_to_lower_mnt(dentry);
        struct dentry *dentry_save;
        struct vfsmount *vfsmount_save;
+       unsigned int flags_save;
        int rc;
 
        dentry_save = nd->path.dentry;
        vfsmount_save = nd->path.mnt;
+       flags_save = nd->flags;
        nd->path.dentry = lower_dentry;
        nd->path.mnt = lower_mnt;
+       nd->flags &= ~LOOKUP_OPEN;
        rc = vfs_create(lower_dir_inode, lower_dentry, mode, nd);
        nd->path.dentry = dentry_save;
        nd->path.mnt = vfsmount_save;
+       nd->flags = flags_save;
        return rc;
 }