Kernel Tree For Xiaomi 11 Lite NE 5G
Go to file
Namjae Jeon 0bf9ccffd2 exfat: check if filename entries exceeds max filename length
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>
2023-07-14 17:10:50 +09:00
.github/workflows exfat: github action: make space for running xfstests 2023-07-14 17:08:12 +09:00
balloc.c exfat: use kvmalloc_array/kvfree instead of kmalloc_array/kfree 2023-07-12 23:32:11 +09:00
cache.c exfat: fix use of uninitialized spinlock on error path 2020-10-12 22:56:52 +09:00
dir.c exfat: check if filename entries exceeds max filename length 2023-07-14 17:10:50 +09:00
exfat_fs.h exfat: fs: port ->getattr() to pass mnt_idmap 2023-07-11 22:20:50 +09:00
exfat_raw.h exfat: handle unreconized benign secondary entries 2023-01-13 22:53:51 +09:00
fatent.c exfat: fix the newly allocated clusters are not freed in error handling 2023-07-11 22:20:45 +09:00
file.c exfat: splice: Use filemap_splice_read() instead of generic_file_splice_read() 2023-07-11 22:35:55 +09:00
inode.c exfat: remove ->writepage 2023-07-11 22:20:39 +09:00
Kconfig exfat: fs: build the legacy direct I/O code conditionally 2023-07-11 22:35:47 +09:00
Makefile exfat: fix typo in Makefile 2021-10-14 22:24:23 -07:00
misc.c exfat: Expand exfat_err() and co directly to pr_*() macro 2022-07-29 17:26:04 +09:00
namei.c exfat: fs: port ->rename() to pass mnt_idmap 2023-07-11 22:34:25 +09:00
nls.c exfat: Drop superfluous new line for error messages 2022-07-29 17:26:12 +09:00
README.md exfat: fix typo 2020-02-10 21:35:58 +09:00
super.c exfat: fix inode->i_blocks for non-512 byte sector size device 2023-01-08 18:15:09 +09:00

exFAT filesystem

This is the exfat filesystem for support from the linux 4.1 kernel to the latest kernel.

Installing as a stand-alone module

Install prerequisite package for Fedora, RHEL:

	yum install kernel-devel-$(uname -r)

Build step:

	make
	sudo make install

To load the driver manually, run this as root:

	modprobe exfat

Installing as a part of the kernel

  1. Let's take [linux] as the path to your kernel source dir.
	cd [linux]
	cp -ar exfat [linux]/fs/
  1. edit [linux]/fs/Kconfig
	source "fs/fat/Kconfig"
	+source "fs/exfat/Kconfig"
	source "fs/ntfs/Kconfig"
  1. edit [linux]/fs/Makefile
	obj-$(CONFIG_FAT_FS)          += fat/
	+obj-$(CONFIG_EXFAT_FS)       += exfat/
	obj-$(CONFIG_BFS_FS)          += bfs/
  1. make menuconfig and set exfat
	File systems  --->
		DOS/FAT/NT Filesystems  --->
			<M> exFAT filesystem support
			(utf8) Default iocharset for exFAT

build your kernel