diff options
author | Eric Biggers <ebiggers@google.com> | 2020-11-18 08:56:08 +0100 |
---|---|---|
committer | Eric Biggers <ebiggers@google.com> | 2020-11-25 00:10:27 +0100 |
commit | 76786a0f083473de31678bdb259a3d4167cf756d (patch) | |
tree | 145142f1becfd8ab01443e49d4aac6bec1f5f9c9 /fs/ubifs/tnc_commit.c | |
parent | f2fs: prevent creating duplicate encrypted filenames (diff) | |
download | linux-76786a0f083473de31678bdb259a3d4167cf756d.tar.xz linux-76786a0f083473de31678bdb259a3d4167cf756d.zip |
ubifs: prevent creating duplicate encrypted filenames
As described in "fscrypt: add fscrypt_is_nokey_name()", it's possible to
create a duplicate filename in an encrypted directory by creating a file
concurrently with adding the directory's encryption key.
Fix this bug on ubifs by rejecting no-key dentries in ubifs_create(),
ubifs_mkdir(), ubifs_mknod(), and ubifs_symlink().
Note that ubifs doesn't actually report the duplicate filenames from
readdir, but rather it seems to replace the original dentry with a new
one (which is still wrong, just a different effect from ext4).
On ubifs, this fixes xfstest generic/595 as well as the new xfstest I
wrote specifically for this bug.
Fixes: f4f61d2cc6d8 ("ubifs: Implement encrypted filenames")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20201118075609.120337-5-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Diffstat (limited to 'fs/ubifs/tnc_commit.c')
0 files changed, 0 insertions, 0 deletions