linux/fs/ntfs
Kees Cook ab62ef82ea ntfs: mft: remove VLA usage
In the quest to remove all stack VLA usage from the kernel[1], this
allocates the maximum size stack buffer.  Existing checks already
require that blocksize >= NTFS_BLOCK_SIZE and mft_record_size <=
PAGE_SIZE, so max_bhs can be at most PAGE_SIZE / NTFS_BLOCK_SIZE.
Sanity checks are added for robustness.

[1] https://lkml.kernel.org/r/CA+55aFzCG-zNmZwX4A2FQpadafLfEzK6CC=qPXydAacU1RqZWA@mail.gmail.com

Link: http://lkml.kernel.org/r/20180626172909.41453-4-keescook@chromium.org
Signed-off-by: Kees Cook <keescook@chromium.org>
Cc: Anton Altaparmakov <anton@tuxera.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2018-08-17 16:20:27 -07:00
..
aops.c ntfs: aops: remove VLA usage 2018-08-17 16:20:27 -07:00
aops.h mm, fs: remove remaining PAGE_CACHE_* and page_cache_{get,release} usage 2016-04-04 10:41:08 -07:00
attrib.c
attrib.h
bitmap.c
bitmap.h
collate.c
collate.h
compress.c ntfs: decompress: remove VLA usage 2018-08-17 16:20:27 -07:00
debug.c
debug.h
dir.c fs: convert a pile of fsync routines to errseq_t based reporting 2017-08-01 08:39:29 -04:00
dir.h
endian.h
file.c fs: convert a pile of fsync routines to errseq_t based reporting 2017-08-01 08:39:29 -04:00
index.c mm, fs: remove remaining PAGE_CACHE_* and page_cache_{get,release} usage 2016-04-04 10:41:08 -07:00
index.h
inode.c fs/ntfs: use timespec64 directly for timestamp conversion 2018-08-17 16:20:27 -07:00
inode.h
Kconfig
layout.h
lcnalloc.c
lcnalloc.h
logfile.c block,fs: untangle fs.h and blk_types.h 2016-11-01 09:43:26 -06:00
logfile.h
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
malloc.h
mft.c ntfs: mft: remove VLA usage 2018-08-17 16:20:27 -07:00
mft.h
mst.c
namei.c ntfs: Use ERR_CAST() to avoid cross-structure cast 2017-05-28 10:11:48 -07:00
ntfs.h
quota.c
quota.h
runlist.c
runlist.h
super.c Rename superblock flags (MS_xyz -> SB_xyz) 2017-11-27 13:05:09 -08:00
sysctl.c
sysctl.h
time.h fs/ntfs: use timespec64 directly for timestamp conversion 2018-08-17 16:20:27 -07:00
types.h
unistr.c
upcase.c
usnjrnl.c
usnjrnl.h
volume.h