freebsd-dev/lib/libc/stdio
Xin LI 805288c2f0 In r268924 __fflush was modified so that when write(2) was not successful,
_p and _w are adjusted to account for the partial write (if any).

However, _p and _w should not be unconditionally adjusted and should only
be changed when we actually wrote some bytes, or the accumulated accounting
error will eventually result in a heap buffer overflow.

Reported by:	adrian and alfred (Norse Corporation)
Security:	FreeBSD-SA-14:27.stdio
Security:	CVE-2014-8611
2014-12-10 08:18:22 +00:00
..
_flock_stub.c
asprintf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
clrerr.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
dprintf.c
fclose.3
fclose.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
fcloseall.c
fdopen.c libc/stdio: Fail fdopen() on an execute-only fd. 2014-04-21 17:40:23 +00:00
feof.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
ferror.3
ferror.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
fflush.3
fflush.c In r268924 __fflush was modified so that when write(2) was not successful, 2014-12-10 08:18:22 +00:00
fgetc.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
fgetln.3
fgetln.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
fgetpos.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
fgets.3 Remove reference to non-existent FreeBSD Security Architecture 2012-05-09 17:27:49 +00:00
fgets.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
fgetwc.c Previously, vfscanf()'s wide character processing functions were 2012-04-29 16:28:39 +00:00
fgetwln.3
fgetwln.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
fgetws.3
fgetws.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
fileno.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
findfp.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
flags.c libc/stdio: Allow fopen/freopen modes in any order (except initial r/w/a). 2013-09-06 13:47:16 +00:00
floatio.h
flockfile.3
fmemopen.c - Return NULL and set errno to EINVAL if size is 0 (as required by POSIX). 2014-06-02 13:48:57 +00:00
fopen.3 - Return NULL and set errno to EINVAL if size is 0 (as required by POSIX). 2014-06-02 13:48:57 +00:00
fopen.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
fprintf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
fpurge.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
fputc.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
fputs.3
fputs.c Mostly cosmetic cleanups. 2014-07-22 16:39:11 +00:00
fputwc.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
fputws.3
fputws.c Avoid possible cast degradation. 2014-07-22 23:29:54 +00:00
fread.3
fread.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
freopen.c In the "Too many open files" edge cases don't try to preserve old 2014-07-26 08:41:03 +00:00
fscanf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
fseek.3
fseek.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
fsetpos.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
ftell.c For "a"-mode files and rewind/fseek + fwrite combination return meaningful 2014-07-22 22:49:37 +00:00
funopen.3
funopen.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
fvwrite.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
fvwrite.h
fwalk.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
fwide.3
fwide.c
fwprintf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
fwrite.c Typo corrected. 2013-07-12 17:37:05 +00:00
fwscanf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
getc.3
getc.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
getchar.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
getdelim.c
getline.3 Fix the example: free the memory that was allocated by getline(). 2014-07-31 08:28:42 +00:00
getline.c
gets.c Const-ify a character string. 2014-07-20 20:29:28 +00:00
getw.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
getwc.3
getwc.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
getwchar.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
glue.h
local.h Previously, vfscanf()'s wide character processing functions were 2012-04-29 16:28:39 +00:00
makebuf.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
Makefile.inc Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP} 2014-03-04 02:19:39 +00:00
mktemp.3 Add mkostemp() and mkostemps(). 2013-08-09 17:24:23 +00:00
mktemp.c Add mkostemp() and mkostemps(). 2013-08-09 17:24:23 +00:00
open_memstream.3 Fix prototypes. 2014-10-28 02:05:57 +00:00
open_memstream.c Add an implementation of open_memstream() and open_wmemstream(). These 2013-02-27 19:50:46 +00:00
open_wmemstream.c Add an implementation of open_memstream() and open_wmemstream(). These 2013-02-27 19:50:46 +00:00
perror.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
printf_l.3 Add missing include files for the printf_l and scanf_l man pages. 2013-11-17 02:03:45 +00:00
printf-pos.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
printf.3 use .Mt to mark up email addresses consistently (part4) 2014-06-23 08:25:03 +00:00
printf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
printfcommon.h Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
printflocal.h
putc.3
putc.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
putchar.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
puts.c Mostly cosmetic cleanups. 2014-07-22 16:39:11 +00:00
putw.c Avoid possible cast degradation. 2014-07-22 23:29:54 +00:00
putwc.3
putwc.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
putwchar.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
refill.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
remove.3
remove.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
rewind.c rewind: always clear error indicator. 2014-07-22 16:10:56 +00:00
rget.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
scanf_l.3 Add missing include files for the printf_l and scanf_l man pages. 2013-11-17 02:03:45 +00:00
scanf.3 Minor mdoc nits. 2012-05-12 20:27:13 +00:00
scanf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
setbuf.3 setbuf(3): Restore a BUGS section about setbuf(). 2013-02-18 22:47:59 +00:00
setbuf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
setbuffer.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
setvbuf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
snprintf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
sprintf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
sscanf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
stdio.3
stdio.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
swprintf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
swscanf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
Symbol.map Add mkostemp() and mkostemps(). 2013-08-09 17:24:23 +00:00
tempnam.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
tmpfile.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
tmpnam.3 libc man pages: Remove reference to non-existent FreeBSD Security 2014-03-07 15:35:54 +00:00
tmpnam.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
ungetc.3
ungetc.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
ungetwc.3
ungetwc.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
vasprintf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
vdprintf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
vfprintf.c Adjust errno on failed prepwrite. 2014-07-20 21:24:29 +00:00
vfscanf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
vfwprintf.c Adjust errno on failed prepwrite. 2014-07-20 21:24:29 +00:00
vfwscanf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
vprintf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
vscanf.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
vsnprintf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
vsprintf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
vsscanf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
vswprintf.c If the size passed to {,v}s{w,n}printf is larger than INT_MAX+1 2012-04-21 06:10:18 +00:00
vswscanf.c Renumber clauses to reduce diffs to other versions 2013-04-23 13:33:13 +00:00
vwprintf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
vwscanf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
wbuf.c Adjust errno on failed prepwrite. 2014-07-20 21:24:29 +00:00
wprintf.3
wprintf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
wscanf.3 Minor mdoc nits. 2012-05-12 20:27:13 +00:00
wscanf.c Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a 2011-11-20 14:45:42 +00:00
wsetup.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
xprintf_errno.c libc: Always use our own copy of sys_errlist and sys_nerr (.so only). 2013-08-31 22:32:42 +00:00
xprintf_float.c
xprintf_hexdump.c
xprintf_int.c
xprintf_quote.c
xprintf_str.c
xprintf_time.c
xprintf_vis.c
xprintf.c The register_printf_render_std() function expects regular string. 2012-07-04 17:35:07 +00:00