glibc/libio
Aaron Merey 35dc62de3d Add another test for fclose on an unopened file
Add new file libio/tst-fclose-unopened2.c that tests whether fclose on an
unopened file returns EOF.

This test differs from tst-fclose-unopened.c by ensuring the file's buffer
is allocated prior to double-fclose.  A comment in tst-fclose-unopened.c
now clarifies that it is testing a file with an unallocated buffer.

Calling fclose on unopened files normally causes a use-after-free bug,
however the standard streams are an exception since they are not
deallocated by fclose.

Tested for x86_64.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
2024-09-20 10:32:35 -04:00
..
bits Fix name space violation in fortify wrappers (bug 32052) 2024-08-05 16:49:58 +02:00
__fbufsize.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
__flbf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
__fpending.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
__fpurge.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
__freadable.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
__freading.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
__fsetlocking.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
__fwritable.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
__fwriting.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
bug-fopena+.c
bug-fseek.c tests: replace fread by xfread 2023-06-13 19:59:08 -04:00
bug-ftell.c
bug-memstream1.c
bug-mmap-fflush.c tests: replace system by xsystem 2023-06-19 09:15:05 -04:00
bug-rewind2.c
bug-rewind.c
bug-ungetc2.c
bug-ungetc3.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
bug-ungetc4.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
bug-ungetc.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
bug-ungetwc1.c
bug-ungetwc2.c
bug-wfflush.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
bug-wmemstream1.c
bug-wsetpos.c libio/bug-wsetpos: Make the error message match the causing function 2024-05-13 12:50:48 +01:00
clearerr_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
clearerr.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
Depend
fcloseall.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
feof_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
feof.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ferror_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ferror.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
filedoalloc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fileno.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fileops.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fmemopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fputc_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fputc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fputwc_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fputwc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
freopen64.c Fix freopen handling of ,ccs= (bug 23675) 2024-09-05 20:08:10 +00:00
freopen.c Fix freopen handling of ,ccs= (bug 23675) 2024-09-05 20:08:10 +00:00
fseek.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fseeko64.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fseeko.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ftello64.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ftello.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fwide.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fwprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fwscanf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
genops.c libio: Attempt wide backup free only for non-legacy code 2024-09-04 09:29:35 -04:00
getc_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
getc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
getchar_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
getchar.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
getwc_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
getwc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
getwchar_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
getwchar.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofclose.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofdopen.c Remove memory leak in fdopen (bug 31840) 2024-06-04 14:42:06 +02:00
iofflush_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofflush.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofgetpos64.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofgetpos.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofgets_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofgets.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofgetws_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofgetws.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofopen64.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofopncook.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofputs_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofputs.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofputws_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofputws.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofread_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofread.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofsetpos64.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofsetpos.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ioftell.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofwide.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofwrite_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iofwrite.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iogetdelim.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iogetline.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iogets.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iogetwline.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -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 2024-01-01 10:53:40 -08:00
iopopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ioputs.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ioseekoff.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ioseekpos.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iosetbuffer.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iosetvbuf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ioungetc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ioungetwc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iovdprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iovsprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iovsscanf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iovswscanf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
iowpadn.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
libc_fatal.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
libio-macros.sym libio: Remove the usage of __libc_IO_vtables 2023-03-27 13:57:55 -03:00
libio.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
libioP.h ungetc: Fix backup buffer leak on program exit [BZ #27821] 2024-08-15 13:56:13 -04:00
Makefile Add another test for fclose on an unopened file 2024-09-20 10:32:35 -04:00
memstream.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
obprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldfileops.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldfmemopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldiofclose.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldiofdopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldiofgetpos64.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldiofgetpos.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldiofopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldiofsetpos64.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldiofsetpos.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldiopopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldpclose.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
oldstdfiles.c Change _IO_stderr_/_IO_stdin_/_IO_stdout to compat symbols [BZ #31766] 2024-05-21 10:12:25 -07:00
oldtmpfile.c posix: Sync tempname with gnulib 2024-04-10 14:53:39 -03:00
pclose.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
peekc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
putc_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
putc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
putchar_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
putchar.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
putwc_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
putwc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
putwchar_u.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
putwchar.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rewind.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
setbuf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
setlinebuf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
stdfiles.c Use a doubly-linked list for _IO_list_all (bug 27777) 2024-05-17 14:13:25 -07:00
stdio.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
stdio.h <stdio.h>: Acknowledge that getdelim/getline are in POSIX 2024-06-11 22:17:12 +01:00
strfile.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strops.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
swprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
swscanf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
test-fmemopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
test-freopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
test-freopen.sh Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst_getwc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst_getwc.input
tst_putwc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst_swprintf.c libio: Convert __vswprintf_internal to buffers (bug 27857) 2022-12-19 18:56:55 +01:00
tst_swscanf.c Use '%z' instead of '%Z' on printf functions 2022-09-22 08:48:04 -03:00
tst_wprintf2.c Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
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 2024-01-01 10:53:40 -08:00
tst-bz24051.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-bz24153.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-bz24228.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -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-bz28828.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-bz28828.input libio: Ensure output buffer for wchars (bug #28828) 2022-03-08 14:25:32 -03: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 Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08: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-closeall.c libio: handle opening a file when all files are closed (bug 31963) 2024-07-09 10:12:36 +02:00
tst-eof.c
tst-ext2.c
tst-ext.c Use '%z' instead of '%Z' on printf functions 2022-09-22 08:48:04 -03:00
tst-fclose-unopened2.c Add another test for fclose on an unopened file 2024-09-20 10:32:35 -04:00
tst-fclose-unopened2.input Add another test for fclose on an unopened file 2024-09-20 10:32:35 -04:00
tst-fclose-unopened.c Add another test for fclose on an unopened file 2024-09-20 10:32:35 -04:00
tst-fdopen-seek-failure.c libio: Test for fdopen memory leak without SEEK_END support (bug 31840) 2024-06-04 16:09:33 +02:00
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 2024-01-01 10:53:40 -08:00
tst-fputws.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-freopen.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-fseek.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-ftell-active-handler.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-ftell-append.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-ftell-partial-wide.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-fwrite-error.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-getdelim.c libio/tst-getdelim: Add new test covering NUL as a delimiter 2024-08-14 11:48:34 +02:00
tst-memstream1.c
tst-memstream2.c
tst-memstream3.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-memstream4.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-memstream.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -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 2024-01-01 10:53:40 -08:00
tst-popen1.c Enable support for GCC 11 -Wmismatched-dealloc. 2021-05-16 15:21:18 -06:00
tst-setvbuf1.c Fix all the remaining misspellings -- BZ 25337 2023-06-02 01:39:48 +00:00
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 2024-01-01 10:53:40 -08:00
tst-sscanf.c
tst-stderr-compat.c Add crt1-2.0.o for glibc 2.0 compatibility tests 2024-05-06 07:49:40 -07:00
tst-swscanf.c
tst-ungetwc1.c
tst-ungetwc2.c
tst-vtables-common.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-vtables-interposed.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-vtables.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-wfile-sync.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-widetext.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -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 2024-01-01 10:53:40 -08:00
tst-wmemstream4.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-wmemstream5.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
vasprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -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 2024-01-01 10:53:40 -08:00
vsnprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
vswprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
vtables.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
vwprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
vwscanf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wfiledoalloc.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wfileops.c libio: Check remaining buffer size in _IO_wdo_write (bug 31183) 2024-01-02 14:36:17 +01:00
wgenops.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wmemstream.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wprintf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wscanf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wstrops.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00