glibc/libio
Siddhesh Poyarekar 2d2d9f2b48 Move malloc hooks into a compat DSO
Remove all malloc hook uses from core malloc functions and move it
into a new library libc_malloc_debug.so.  With this, the hooks now no
longer have any effect on the core library.

libc_malloc_debug.so is a malloc interposer that needs to be preloaded
to get hooks functionality back so that the debugging features that
depend on the hooks, i.e. malloc-check, mcheck and mtrace work again.
Without the preloaded DSO these debugging features will be nops.
These features will be ported away from hooks in subsequent patches.

Similarly, legacy applications that need hooks functionality need to
preload libc_malloc_debug.so.

The symbols exported by libc_malloc_debug.so are maintained at exactly
the same version as libc.so.

Finally, static binaries will no longer be able to use malloc
debugging features since they cannot preload the debugging DSO.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
2021-07-22 18:37:59 +05:30
..
bits Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fbufsize.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__flbf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fpending.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fpurge.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__freadable.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__freading.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fsetlocking.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fwritable.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fwriting.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
bug-fopena+.c
bug-fseek.c
bug-ftell.c
bug-memstream1.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
bug-mmap-fflush.c
bug-rewind2.c
bug-rewind.c
bug-ungetc2.c
bug-ungetc3.c
bug-ungetc4.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
bug-ungetc.c
bug-ungetwc1.c
bug-ungetwc2.c
bug-wfflush.c
bug-wmemstream1.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
bug-wsetpos.c
clearerr_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
clearerr.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
Depend
fcloseall.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
feof_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
feof.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ferror_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ferror.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
filedoalloc.c Use 64 bit time_t stat internally 2021-06-22 12:09:52 -03:00
fileno.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fileops.c Use 64 bit time_t stat internally 2021-06-22 12:09:52 -03:00
fmemopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fputc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fputc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fputwc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fputwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
freopen64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
freopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fseek.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fseeko64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fseeko.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ftello64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ftello.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fwide.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fwprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fwscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
genops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getchar_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getchar.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getwc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getwchar_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getwchar.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofclose.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofdopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofflush_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofflush.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgetpos64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgetpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgets_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgets.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgetws_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgetws.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofopen64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofopncook.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofputs_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofputs.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofputws_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofputws.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofread_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofread.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofsetpos64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofsetpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioftell.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofwide.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofwrite_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofwrite.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iogetdelim.c libio: Replace internal _IO_getdelim symbol with __getdelim 2021-07-07 18:33:52 +02:00
iogetline.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iogets.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iogetwline.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iolibio.h libio: Eliminate _IO_stdin, _IO_stdout, _IO_stderr 2019-02-18 16:37:00 +01:00
iopadn.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iopopen.c nptl: Move pthread_setcancelstate into libc 2021-04-21 19:49:50 +02:00
ioputs.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioseekoff.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioseekpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iosetbuffer.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iosetvbuf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioungetc.c libio: Add hidden prototype for ungetc 2021-07-07 18:33:52 +02:00
ioungetwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iovdprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iovsprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iovsscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iovswscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iowpadn.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
libc_fatal.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
libio.h libio: Assume _IO_lock_inexpensive 2021-06-04 09:54:52 -03:00
libioP.h libio: Replace internal _IO_getdelim symbol with __getdelim 2021-07-07 18:33:52 +02:00
Makefile Move malloc hooks into a compat DSO 2021-07-22 18:37:59 +05:30
memstream.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
obprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldfileops.c Use 64 bit time_t stat internally 2021-06-22 12:09:52 -03:00
oldfmemopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofclose.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofdopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofgetpos64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofgetpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofsetpos64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofsetpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiopopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldpclose.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldstdfiles.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldtmpfile.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
pclose.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
peekc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putchar_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putchar.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putwc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putwchar_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putwchar.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
rewind.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
setbuf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
setlinebuf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stdfiles.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stdio.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stdio.h Enable support for GCC 11 -Wmismatched-dealloc. 2021-05-16 15:21:18 -06:00
strfile.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
swprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
swscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
test-fmemopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
test-freopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
test-freopen.sh Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst_getwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst_getwc.input
tst_putwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst_swprintf.c
tst_swscanf.c
tst_wprintf2.c
tst_wprintf.c
tst_wscanf.c
tst_wscanf.input
tst-atime.c Don't reduce test timeout to less than default 2018-10-17 09:34:13 +02:00
tst-bz22415.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-bz24051.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-bz24153.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-bz24228.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-bz24228.map libio: do not attempt to free wide buffers of legacy streams [BZ #24228] 2019-06-20 17:32:07 +00:00
tst-cleanup-default-static.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-default.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-nostart-stop-gc-static.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-nostart-stop-gc.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-start-stop-gc-static.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-start-stop-gc.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup.exp Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-eof.c
tst-ext2.c
tst-ext.c
tst-fgetc-after-eof.c [BZ 1190] Make EOF sticky in stdio. 2018-03-13 08:31:56 -04:00
tst-fgetwc.c
tst-fgetwc.input
tst-fgetws.c
tst-fopenloc2.c
tst-fopenloc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-fputws.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-freopen.c Enable support for GCC 11 -Wmismatched-dealloc. 2021-05-16 15:21:18 -06:00
tst-fseek.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-ftell-active-handler.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-ftell-append.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-ftell-partial-wide.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-fwrite-error.c libio: Update license on test case 2021-03-30 19:23:09 +05:30
tst-memstream1.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-memstream2.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-memstream3.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-memstream4.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-memstream.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-mmap2-eofsync.c
tst-mmap-eofsync.c Remove miscellaneous debris from libio. 2018-02-21 14:39:54 -05:00
tst-mmap-fflushsync.c
tst-mmap-offend.c
tst-mmap-setvbuf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-popen1.c Enable support for GCC 11 -Wmismatched-dealloc. 2021-05-16 15:21:18 -06:00
tst-setvbuf1.c
tst-sprintf-chk-ub.c Set behavior of sprintf-like functions with overlapping source and destination 2019-01-02 13:53:52 -02:00
tst-sprintf-ub.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-sscanf.c
tst-swscanf.c
tst-ungetwc1.c
tst-ungetwc2.c
tst-vtables-common.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-vtables-interposed.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-vtables.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-wfile-sync.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-wfile-sync.input Fix crash in _IO_wfile_sync (bug 20568) 2019-05-15 16:47:09 +02:00
tst-widetext.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-widetext.input Finish change from “Bengali” to “Bangla” 2017-09-09 12:41:54 +02:00
tst-wmemstream1.c Enable support for GCC 11 -Wmismatched-dealloc. 2021-05-16 15:21:18 -06:00
tst-wmemstream2.c
tst-wmemstream3.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-wmemstream4.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-wmemstream5.c Enable support for GCC 11 -Wmismatched-dealloc. 2021-05-16 15:21:18 -06:00
vasprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
Versions Add missing symbols to Version files 2021-06-02 07:32:19 +02:00
vscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vsnprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vswprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vtables.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vwprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vwscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wfiledoalloc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wfileops.c Use 64 bit time_t stat internally 2021-06-22 12:09:52 -03:00
wgenops.c Correct buffer end pointer in IO_wdefault_doallocate (BZ #26874) 2021-03-01 19:34:49 +05:30
wmemstream.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wstrops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00