android_kernel_xiaomi_sm8450/fs/exfat
Namjae Jeon 381f7df0f3 exfat: check if filename entries exceeds max filename length
[ Upstream commit d42334578eba1390859012ebb91e1e556d51db49 ]

exfat_extract_uni_name copies characters from a given file name entry into
the 'uniname' variable. This variable is actually defined on the stack of
the exfat_readdir() function. According to the definition of
the 'exfat_uni_name' type, the file name should be limited 255 characters
(+ null teminator space), but the exfat_get_uniname_from_ext_entry()
function can write more characters because there is no check if filename
entries exceeds max filename length. This patch add the check not to copy
filename characters when exceeding max filename length.

Cc: stable@vger.kernel.org
Cc: Yuezhang Mo <Yuezhang.Mo@sony.com>
Reported-by: Maxim Suhanov <dfirblog@gmail.com>
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-11 11:57:55 +02:00
..
balloc.c exfat: use kvmalloc_array/kvfree instead of kmalloc_array/kfree 2023-08-11 11:57:52 +02:00
cache.c exfat: fix use of uninitialized spinlock on error path 2020-10-07 14:27:13 +09:00
dir.c exfat: check if filename entries exceeds max filename length 2023-08-11 11:57:55 +02:00
exfat_fs.h exfat: support dynamic allocate bh for exfat_entry_set_cache 2023-08-11 11:57:55 +02:00
exfat_raw.h exfat: fix shift-out-of-bounds in exfat_fill_super() 2021-03-04 11:38:41 +01:00
fatent.c exfat: check if cluster num is valid 2022-06-06 08:42:42 +02:00
file.c exfat: fix inode->i_blocks for non-512 byte sector size device 2023-03-11 16:39:56 +01:00
inode.c exfat: fix inode->i_blocks for non-512 byte sector size device 2023-03-11 16:39:56 +01:00
Kconfig exfat: Improve wording of EXFAT_DEFAULT_IOCHARSET config option 2020-06-09 16:48:39 +09:00
Makefile exfat: add Kconfig and Makefile 2020-03-05 21:00:40 -05:00
misc.c exfat: write multiple sectors at once 2020-08-12 08:31:11 +09:00
namei.c exfat: speed up iterate/lookup by fixing start point of traversing cluster chain 2023-08-11 11:57:55 +02:00
nls.c exfat: Avoid allocating upcase table using kcalloc() 2020-12-26 16:02:38 +01:00
super.c exfat: fix inode->i_blocks for non-512 byte sector size device 2023-03-11 16:39:56 +01:00