Eric Biggers
52d8e5b0ab
ext4: report correct st_size for encrypted symlinks
...
commit 8c4bca10ceafc43b1ca0a9fab5fa27e13cbce99e upstream.
The stat() family of syscalls report the wrong size for encrypted
symlinks, which has caused breakage in several userspace programs.
Fix this by calling fscrypt_symlink_getattr() after ext4_getattr() for
encrypted symlinks. This function computes the correct size by reading
and decrypting the symlink target (if it's not already cached).
For more details, see the commit which added fscrypt_symlink_getattr().
Fixes: f348c25232 ("ext4 crypto: add symlink encryption")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20210702065350.209646-3-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-09-12 08:56:38 +02:00
..
acl.c
acl.h
balloc.c
ext4: shrink race window in ext4_should_retry_alloc()
2021-04-07 14:47:38 +02:00
bitmap.c
block_validity.c
ext4: correctly restore system zone info when remount fails
2020-09-03 11:26:57 +02:00
dir.c
ext4: avoid utf8_strncasecmp() with unstable name
2020-06-24 17:50:48 +02:00
ext4.h
ext4: fix EXT4_MAX_LOGICAL_BLOCK macro
2021-08-26 08:36:11 -04:00
ext4_extents.h
ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max
2020-06-22 09:31:15 +02:00
ext4_jbd2.c
ext4_jbd2.h
extents.c
ext4: fix kernel infoleak via ext4_extent_header
2021-07-14 16:53:03 +02:00
extents_status.c
ext4: remove check for zero nr_to_scan in ext4_es_scan()
2021-07-14 16:53:03 +02:00
extents_status.h
ext4: use percpu_counters for extent_status cache hits/misses
2019-08-28 11:19:23 -04:00
file.c
ext4: don't leak old mountpoint samples
2021-01-19 18:26:13 +01:00
fsmap.c
ext4: limit entries returned when counting fsmap records
2020-10-29 09:57:55 +01:00
fsmap.h
fsync.c
ext4: fix race between ext4_sync_parent() and rename()
2020-06-22 09:31:16 +02:00
hash.c
ext4: fix kernel oops caused by spurious casefold flag
2019-09-03 01:43:17 -04:00
ialloc.c
ext4: fix avefreec in find_group_orlov
2021-07-14 16:53:03 +02:00
indirect.c
inline.c
ext4: fix race writing to an inline_data file while its xattrs are changing
2021-09-12 08:56:38 +02:00
inode.c
ext4: fix bh ref count on error paths
2021-04-07 14:47:38 +02:00
ioctl.c
ext4: fix superblock checksum failure when setting password salt
2021-01-19 18:26:17 +01:00
Kconfig
Makefile
ext4: add basic fs-verity support
2019-08-12 19:33:50 -07:00
mballoc.c
ext4: use ext4_grp_locked_error in mb_find_extent
2021-07-14 16:53:03 +02:00
mballoc.h
migrate.c
ext4: fix race between writepages and enabling EXT4_EXTENTS_FL
2020-02-28 17:22:23 +01:00
mmp.c
ext4: don't assume that mmp_nodename/bdevname have NUL
2020-02-19 19:52:58 +01:00
move_extent.c
namei.c
ext4: fix potential htree corruption when growing large_dir directories
2021-08-12 13:21:02 +02:00
page-io.c
ext4: fix deadlock allocating crypto bounce page from mempool
2020-02-11 04:35:32 -08:00
readpage.c
ext4: fix deadlock allocating bio_post_read_ctx from mempool
2020-02-24 08:36:29 +01:00
resize.c
ext4: fix error handling code in add_new_gdb
2020-11-05 11:43:35 +01:00
super.c
ext4: return error code when ext4_fill_flex_info() fails
2021-07-14 16:53:03 +02:00
symlink.c
ext4: report correct st_size for encrypted symlinks
2021-09-12 08:56:38 +02:00
sysfs.c
ext4: shrink race window in ext4_should_retry_alloc()
2021-04-07 14:47:38 +02:00
truncate.h
verity.c
ext4: fix error handling in ext4_end_enable_verity()
2021-05-26 12:05:21 +02:00
xattr.c
ext4: add reclaim checks to xattr code
2021-03-30 14:35:29 +02:00
xattr.h
xattr_security.c
xattr_trusted.c
xattr_user.c