]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - fs/ext4/namei.c
fscrypt: use ENOKEY when file cannot be created w/o key
[karo-tx-linux.git] / fs / ext4 / namei.c
index eadba919f26b1484c10125739a0e684fe49b7273..80b8afa4a8f9917343b22844341a2d07d361361c 100644 (file)
@@ -1378,6 +1378,8 @@ static struct buffer_head * ext4_find_entry (struct inode *dir,
                return NULL;
 
        retval = ext4_fname_setup_filename(dir, d_name, 1, &fname);
+       if (retval == -ENOENT)
+               return NULL;
        if (retval)
                return ERR_PTR(retval);
 
@@ -3088,7 +3090,7 @@ static int ext4_symlink(struct inode *dir,
                if (err)
                        return err;
                if (!fscrypt_has_encryption_key(dir))
-                       return -EPERM;
+                       return -ENOKEY;
                disk_link.len = (fscrypt_fname_encrypted_size(dir, len) +
                                 sizeof(struct fscrypt_symlink_data));
                sd = kzalloc(disk_link.len, GFP_KERNEL);