android_kernel_xiaomi_sm8350/lib
Jeremy Fitzhardinge f796937a06 [PATCH] Fix bounds check in vsnprintf, to allow for a 0 size and NULL buffer
This change allows callers to use a 0-byte buffer and a NULL buffer pointer
with vsnprintf, so it can be used to determine how large the resulting
formatted string will be.

Previously the code effectively treated a size of 0 as a size of 4G (on
32-bit systems), with other checks preventing it from actually trying to
emit the string - but the terminal \0 would still be written, which would
crash if the buffer is NULL.

This change changes the boundary check so that 'end' points to the putative
location of the terminal '\0', which is only written if size > 0.

vsnprintf still allows the buffer size to be set very large, to allow
unbounded buffer sizes (to implement sprintf, etc).

[akpm@osdl.org: fix long-vs-longlong confusion]
Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-06-25 10:01:23 -07:00
..
reed_solomon [PATCH] reed-solomon: fix kernel-doc comments 2006-06-25 10:01:23 -07:00
zlib_deflate [PATCH] zlib_inflate: Upgrade library code to a recent version 2006-06-22 15:05:58 -07:00
zlib_inflate [PATCH] zlib_inflate: Upgrade library code to a recent version 2006-06-22 15:05:58 -07:00
.gitignore
bitmap.c [PATCH] kernel-doc for lib/bitmap.c 2006-06-25 10:01:20 -07:00
bust_spinlocks.c
cmdline.c
cpumask.c [PATCH] cpumask: uninline any_online_cpu() 2006-03-25 08:23:00 -08:00
crc16.c [PATCH] kernel-doc for lib/crc*.c 2006-06-25 10:01:20 -07:00
crc32.c [PATCH] kernel-doc for lib/crc*.c 2006-06-25 10:01:20 -07:00
crc32defs.h
crc-ccitt.c [PATCH] kernel-doc for lib/crc*.c 2006-06-25 10:01:20 -07:00
ctype.c
dec_and_lock.c [PATCH] atomic: dec_and_lock use atomic primitives 2006-01-08 20:13:48 -08:00
div64.c
dump_stack.c
errno.c
extable.c [PATCH] powerpc: trivial: modify comments to refer to new location of files 2006-02-10 16:53:51 +11:00
find_next_bit.c [PATCH] bitops: generic ext2_{set,clear,test,find_first_zero,find_next_zero}_bit() 2006-03-26 08:57:11 -08:00
gen_crc32table.c
genalloc.c [PATCH] change gen_pool allocator to not touch managed memory 2006-06-23 07:42:49 -07:00
halfmd4.c
hweight.c [PATCH] bitops: hweight() speedup 2006-03-26 08:59:30 -08:00
idr.c [PATCH] Whitespace and CodingStyle cleanup for lib/idr.c 2005-10-30 17:37:19 -08:00
inflate.c
int_sqrt.c [PATCH] lib: Fix bug in int_sqrt() for 64 bit longs 2006-02-03 08:32:08 -08:00
iomap_copy.c [PATCH] add __iowrite64_copy 2006-06-20 20:24:58 -07:00
iomap.c
Kconfig
Kconfig.debug [SPARC]: Handle UNWIND_INFO properly. 2006-05-12 12:45:50 -07:00
kernel_lock.c
klist.c [PATCH] klist: Fix broken kref counting in find functions 2006-01-04 16:18:08 -08:00
kobject_uevent.c [PATCH] Kobject: fix build error 2006-04-27 13:08:56 -07:00
kobject.c [PATCH] kobject: make people pay attention to kobject_add errors 2006-06-21 12:40:47 -07:00
kref.c [PATCH] kref: avoid an atomic operation in kref_put() 2006-03-20 13:42:57 -08:00
libcrc32c.c [PATCH] constify libcrc32c table 2006-06-25 10:01:09 -07:00
Makefile [PATCH] percpu_counters: create lib/percpu_counter.c 2006-06-23 07:43:06 -07:00
parser.c
percpu_counter.c [PATCH] percpu counter data type changes to suppport more than 2**31 ext3 free blocks counter 2006-06-23 07:43:06 -07:00
prio_tree.c
radix-tree.c [PATCH] radixtree: normalize radix_tree_tag_get() return value 2006-06-25 10:01:13 -07:00
rbtree.c [RBTREE] Switch rb_colour() et al to en_US spelling of 'color' for consistency 2006-06-05 20:19:05 +01:00
rwsem-spinlock.c
rwsem.c
semaphore-sleepers.c
sha1.c
smp_processor_id.c [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
sort.c [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
spinlock_debug.c [PATCH] Fix spinlock debugging delays to not time out too early 2006-02-07 16:12:33 -08:00
string.c [PATCH] strstrip() API 2006-06-23 07:43:06 -07:00
swiotlb.c BUG_ON() Conversion in lib/swiotlb.c 2006-03-24 18:47:11 +01:00
textsearch.c [PATCH] gfp_t: lib/* 2005-10-28 08:16:47 -07:00
ts_bm.c [TEXTSEARCH]: Fix broken good shift array calculation in Boyer-Moore 2006-02-02 17:15:41 -08:00
ts_fsm.c
ts_kmp.c
vsprintf.c [PATCH] Fix bounds check in vsnprintf, to allow for a 0 size and NULL buffer 2006-06-25 10:01:23 -07:00