kernel-hacking-2024-linux-s.../fs/ubifs
Eric Biggers 064c734986 ubifs: report correct st_size for encrypted symlinks
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 ubifs_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: ca7f85be8d ("ubifs: Add support for encrypted symlinks")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20210702065350.209646-5-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
2021-07-25 20:01:07 -07:00
..
auth.c
budget.c
commit.c
compress.c
crypto.c
debug.c ubifs: fix snprintf() checking 2021-06-18 22:04:47 +02:00
debug.h
dir.c ubifs: Set/Clear I_LINKABLE under i_lock for whiteout inode 2021-06-22 09:21:39 +02:00
file.c ubifs: report correct st_size for encrypted symlinks 2021-07-25 20:01:07 -07:00
find.c
gc.c treewide: Change list_sort to use const pointers 2021-04-08 16:04:22 -07:00
io.c
ioctl.c ubifs: convert to fileattr 2021-04-12 15:04:30 +02:00
journal.c ubifs: Fix spelling mistakes 2021-06-22 09:21:39 +02:00
Kconfig
key.h
log.c
lprops.c
lpt.c
lpt_commit.c
Makefile
master.c ubifs: Fix spelling mistakes 2021-06-22 09:21:39 +02:00
misc.c
misc.h
orphan.c
recovery.c
replay.c ubifs: Fix spelling mistakes 2021-06-22 09:21:39 +02:00
sb.c ubifs: Default to zstd compression 2021-04-15 22:00:26 +02:00
scan.c
shrinker.c
super.c ubifs: Fix spelling mistakes 2021-06-22 09:21:39 +02:00
tnc.c
tnc_commit.c ubifs: Fix spelling mistakes 2021-06-22 09:21:39 +02:00
tnc_misc.c
ubifs-media.h
ubifs.h ubifs: Fix spelling mistakes 2021-06-22 09:21:39 +02:00
xattr.c ubifs: Remove ui_mutex in ubifs_xattr_get and change_xattr 2021-06-18 22:04:47 +02:00