freebsd-skq/lib/libc/stdio
Konstantin Belousov bd6060a1c6 Switch libc from using _sig{procmask,action,suspend} symbols, which
are aliases for the syscall stubs and are plt-interposed, to the
libc-private aliases of internally interposed sigprocmask() etc.

Since e.g. _sigaction is not interposed by libthr, calling signal()
removes thr_sighandler() from the handler slot etc.  The result was
breaking signal semantic and rtld locking.

The added __libc_sigprocmask and other symbols are hidden, they are
not exported and cannot be called through PLT.  The setjmp/longjmp
functions for x86 were changed to use direct calls, and since
PIC_PROLOGUE only needed for functional PLT indirection on i386, it is
removed as well.

The PowerPC bug of calling the syscall directly in the setjmp/longjmp
implementation is kept as is.

Reported by:	Pete French <petefrench@ingresso.co.uk>
Tested by:	Michiel Boland <boland37@xs4all.nl>
Reviewed by:	jilles (previous version)
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2015-08-29 14:25:01 +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 Add fdclose(3) function. 2015-07-04 16:42:14 +00:00
fclose.c Add fdclose(3) function. 2015-07-04 16:42:14 +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
fgetws.3
fgetws.c
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 Support file verification in MAC. 2015-04-22 01:54:25 +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
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
fwrite.c Typo corrected. 2013-07-12 17:37:05 +00:00
fwscanf.c
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
getwchar.c
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 a couple of markup typos. 2015-08-02 02:00:20 +00:00
open_memstream.c Reassign copyright statements on several files from Advanced 2015-04-23 14:22:20 +00:00
open_wmemstream.c Reassign copyright statements on several files from Advanced 2015-04-23 14:22:20 +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
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
putwchar.c
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
swscanf.c
Symbol.map Add fdclose(3) function. 2015-07-04 16:42:14 +00:00
tempnam.c Convert libc/stdio from K&R to ANSI C 2013-04-23 14:36:44 +00:00
tmpfile.c Switch libc from using _sig{procmask,action,suspend} symbols, which 2015-08-29 14:25:01 +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
vasprintf.c
vdprintf.c
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
vwscanf.c
wbuf.c Adjust errno on failed prepwrite. 2014-07-20 21:24:29 +00:00
wprintf.3
wprintf.c
wscanf.3 Minor mdoc nits. 2012-05-12 20:27:13 +00:00
wscanf.c
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 libc: clean some set-but-not-used errors. 2015-02-18 03:33:17 +00:00
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