]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
ext4: switch to fscrypt_prepare_lookup()
authorEric Biggers <ebiggers@google.com>
Thu, 19 Oct 2017 00:21:58 +0000 (20:21 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Thu, 19 Oct 2017 00:21:58 +0000 (20:21 -0400)
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/namei.c

index b2fbc2b87bcfa1c81eb79b0d77f7f6a12f90ec3e..a6b6f09e0a88d7a7ab30207c9e7a5b426284a941 100644 (file)
@@ -1538,24 +1538,14 @@ static struct dentry *ext4_lookup(struct inode *dir, struct dentry *dentry, unsi
        struct inode *inode;
        struct ext4_dir_entry_2 *de;
        struct buffer_head *bh;
+       int err;
 
-       if (ext4_encrypted_inode(dir)) {
-               int res = fscrypt_get_encryption_info(dir);
-
-               /*
-                * DCACHE_ENCRYPTED_WITH_KEY is set if the dentry is
-                * created while the directory was encrypted and we
-                * have access to the key.
-                */
-               if (fscrypt_has_encryption_key(dir))
-                       fscrypt_set_encrypted_dentry(dentry);
-               fscrypt_set_d_op(dentry);
-               if (res && res != -ENOKEY)
-                       return ERR_PTR(res);
-       }
+       err = fscrypt_prepare_lookup(dir, dentry, flags);
+       if (err)
+               return ERR_PTR(err);
 
-       if (dentry->d_name.len > EXT4_NAME_LEN)
-              return ERR_PTR(-ENAMETOOLONG);
+       if (dentry->d_name.len > EXT4_NAME_LEN)
+               return ERR_PTR(-ENAMETOOLONG);
 
        bh = ext4_find_entry(dir, &dentry->d_name, &de, NULL);
        if (IS_ERR(bh))