cosmopolitan/libc/stdio
Justine Tunney b76b2be2d0
Improve zip read-only filesystem
readdir() will now always yield an inode that's consistent with stat()
on ZipOS and Windows in general. More APIs have been updated to return
the appropriate error code when inappropriately trying to do ops, like
sockets, with a zip file descriptor. The path normalization algorithms
are now fully fleshed out. Some socket APIs have been fixed so they'll
raise EBADF vs. ENOTSOCK appropriately. Lastly seekdir() will now work
properly on NetBSD and FreeBSD (not sure why anyone would even use it)
2023-08-16 17:52:12 -07:00
..
__fpurge.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
__fseterr.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
alloc.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
alphasort.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
append.h Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
appendd.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
appendf.c Pay off more technical debt 2022-09-12 23:36:56 -07:00
appendr.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
appends.c Pay off more technical debt 2022-09-12 23:36:56 -07:00
appendstrlist.c Pay off more technical debt 2022-09-12 23:36:56 -07:00
appendw.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
appendz.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
asprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
atof.c Perform inconsequential code cleanup 2023-08-07 20:24:50 -07:00
big5.inc Add more missing libc functionality 2022-08-06 10:50:51 -07:00
clearerr.c Fix bugs and make code tinier 2022-10-09 23:21:34 -07:00
clearerr_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
codepages.inc Add more missing libc functionality 2022-08-06 10:50:51 -07:00
ctermid.c Add ctermid and L_ctermid 2022-07-22 04:39:04 -07:00
demangle.c Move demangling utility to stdio 2023-07-07 10:47:50 -07:00
dirstream.c Improve zip read-only filesystem 2023-08-16 17:52:12 -07:00
dprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
dprintf.h Remove printf() linking hack 2023-06-17 10:13:50 -07:00
dumphexc.c Pay off more technical debt 2022-09-12 23:36:56 -07:00
ecvt.c Don't relocate file descriptor memory 2022-09-09 16:54:28 -07:00
fbufsize.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fclose.c Perform inconsequential code cleanup 2023-08-07 20:24:50 -07:00
fdopen.c Rearrange code and make a faster sha256sum program 2022-11-02 23:19:16 -07:00
feof.c Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
feof_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
ferror.c Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
ferror_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fflush.c Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
fflush.internal.h Remove _Hide keyword 2023-07-24 08:34:58 -07:00
fflush_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fflushimpl.c Rewrite Cosmopolitan Ar 2023-07-02 10:19:16 -07:00
fgetc.c Create ELF aliases for identical symbols 2023-06-06 03:33:49 -07:00
fgetc_unlocked.c Improve zip read-only filesystem 2023-08-16 17:52:12 -07:00
fgetln.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fgetpos.c Change license 2020-12-27 17:18:44 -08:00
fgets.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fgets_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fgetwc.c Create ELF aliases for identical symbols 2023-06-06 03:33:49 -07:00
fgetwc_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fgetws.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fgetws_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fileno.c Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
fileno_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
flbf.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
flockfile.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
flushlbf.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fmemopen.c Rearrange code and make a faster sha256sum program 2022-11-02 23:19:16 -07:00
fmt.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fopen.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fopenflags.c Fix issues with stdio needed for Lua 2021-03-06 19:04:26 -08:00
fpending.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
fprintf_unlocked.c Clean up more code 2023-06-18 01:00:05 -07:00
fpurge.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fputc.c Create ELF aliases for identical symbols 2023-06-06 03:33:49 -07:00
fputc_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fputs.c Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
fputs_unlocked.c Apply even more fixups 2022-06-12 11:57:00 -07:00
fputwc.c Create ELF aliases for identical symbols 2023-06-06 03:33:49 -07:00
fputwc_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fputws.c Improve system call wrappers 2022-09-19 15:06:25 -07:00
fputws_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fread.c Further optimize the math library 2023-04-28 01:20:47 -07:00
fread_unlocked.c Remove _Hide keyword 2023-07-24 08:34:58 -07:00
freadable.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
freading.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
freestrlist.c Pay off more technical debt 2022-09-12 23:36:56 -07:00
freopen.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fscanf.c Clean up more code 2023-06-18 01:00:05 -07:00
fseeko.c Create ELF aliases for identical symbols 2023-06-06 03:33:49 -07:00
fseeko_unlocked.c Fix bugs and make code tinier 2022-10-09 23:21:34 -07:00
fsetlocking.c Add raw memory visualization tool to redbean 2022-05-14 04:33:58 -07:00
fsetpos.c Run clang-format on most sources 2023-04-27 05:44:32 -07:00
ftello.c Create ELF aliases for identical symbols 2023-06-06 03:33:49 -07:00
ftrylockfile.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
ftw.c Make fixes and improvements 2023-07-09 05:21:11 -07:00
ftw.h Make fixes and improvements 2023-07-09 05:21:11 -07:00
funlockfile.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fwritable.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fwrite.c Fix bugs and make code tinier 2022-10-09 23:21:34 -07:00
fwrite_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
fwriting.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
g_rando.c Get LIBC_MEM and LIBC_STDIO building with aarch64 2023-05-10 04:20:47 -07:00
gb18030.inc Add more missing libc functionality 2022-08-06 10:50:51 -07:00
gcvt.c Add pthread attributes and other libc functions 2022-09-07 05:28:32 -07:00
getchar.c Apply even more fixups 2022-06-12 11:57:00 -07:00
getchar_unlocked.c Apply even more fixups 2022-06-12 11:57:00 -07:00
getdelim.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
getdelim_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
getentropy.c Improve cancellations, randomness, and time 2022-11-05 23:45:32 -07:00
getline.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
getrandom.c Make forking off threads reliable on Windows 2023-07-30 09:32:41 -07:00
gets.c Make important improvements 2022-09-14 22:39:08 -07:00
getwchar.c Apply even more fixups 2022-06-12 11:57:00 -07:00
getwchar_unlocked.c Apply even more fixups 2022-06-12 11:57:00 -07:00
hex.internal.h Add function for creating hex string literals 2021-08-07 07:05:19 -07:00
hkscs.inc Add more missing libc functionality 2022-08-06 10:50:51 -07:00
iconv.c Run clang-format on most sources 2023-04-27 05:44:32 -07:00
iconv.h Add more missing libc functionality 2022-08-06 10:50:51 -07:00
internal.h Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
jis0208.inc Add more missing libc functionality 2022-08-06 10:50:51 -07:00
joinstrlist.c Pay off more technical debt 2022-09-12 23:36:56 -07:00
kappendf.c Pay off more technical debt 2022-09-12 23:36:56 -07:00
ksc.inc Add more missing libc functionality 2022-08-06 10:50:51 -07:00
kvappendf.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
lcg.internal.h Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
legacychars.inc Add more missing libc functionality 2022-08-06 10:50:51 -07:00
lemur64.c Rename rand64() to _rand64() 2022-10-10 04:12:06 -07:00
lock.internal.h Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
mkdtemp.c Rename rand64() to _rand64() 2022-10-10 04:12:06 -07:00
mkostemp.c Change license 2020-12-27 17:18:44 -08:00
mkostemps.c Import C++ Standard Template Library 2022-03-22 06:41:54 -07:00
mkostempsm.c Fix bug with temporary files on Windows 2023-08-13 07:10:33 -07:00
mkstemps.c Change license 2020-12-27 17:18:44 -08:00
mt19937.c Fold LIBC_RAND into LIBC_STDIO/TINYMATH/INTRIN 2022-08-11 12:32:00 -07:00
nftw.c Improve zip read-only filesystem 2023-08-16 17:52:12 -07:00
paginate.c Further improve fatcosmocc 2023-08-13 01:51:39 -07:00
pclose.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
popen.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
posix_spawn.c Make more fixes and improvements 2023-07-29 18:44:15 -07:00
posix_spawn.h Further improve usability of cosmocc 2023-07-10 05:55:00 -07:00
posix_spawn.internal.h Make improvements 2023-07-10 04:35:14 -07:00
posix_spawn_file_actions.c Make improvements 2023-07-10 04:35:14 -07:00
posix_spawnattr.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
posix_spawnp.c Revamp posix_spawn() implementation 2022-10-12 05:26:58 -07:00
printf.c Clean up more code 2023-06-18 01:00:05 -07:00
putchar.c Apply even more fixups 2022-06-12 11:57:00 -07:00
putchar_unlocked.c Apply even more fixups 2022-06-12 11:57:00 -07:00
puts.c Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
putwc_unlocked.c Introduce new fatcosmocc command 2023-08-11 22:52:11 -07:00
putwchar.c Apply even more fixups 2022-06-12 11:57:00 -07:00
putwchar_unlocked.c Apply even more fixups 2022-06-12 11:57:00 -07:00
rand.c Run clang-format on most sources 2023-04-27 05:44:32 -07:00
rand.h Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
random.c Fold LIBC_RAND into LIBC_STDIO/TINYMATH/INTRIN 2022-08-11 12:32:00 -07:00
rdrand.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
rdrand_init.c Fold LIBC_RAND into LIBC_STDIO/TINYMATH/INTRIN 2022-08-11 12:32:00 -07:00
rdseed.c Rename rand64() to _rand64() 2022-10-10 04:12:06 -07:00
real1.c Fold LIBC_RAND into LIBC_STDIO/TINYMATH/INTRIN 2022-08-11 12:32:00 -07:00
real2.c Fold LIBC_RAND into LIBC_STDIO/TINYMATH/INTRIN 2022-08-11 12:32:00 -07:00
real3.c Fold LIBC_RAND into LIBC_STDIO/TINYMATH/INTRIN 2022-08-11 12:32:00 -07:00
revjis.inc Add more missing libc functionality 2022-08-06 10:50:51 -07:00
rewind.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
rngset.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
scandir.c Improve cosmo's conformance to libc-test 2022-10-10 17:52:41 -07:00
scanf.c Clean up more code 2023-06-18 01:00:05 -07:00
setbuf.c Make major improvements to stdio 2021-03-26 22:31:41 -07:00
setbuffer.c Make major improvements to stdio 2021-03-26 22:31:41 -07:00
setlinebuf.c Make major improvements to stdio 2021-03-26 22:31:41 -07:00
setvbuf.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
snprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
sortstrlist.c Simplify redbean serialization code 2022-09-06 20:07:29 -07:00
sprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
srand.c Improve cosmo's conformance to libc-test 2022-10-10 17:52:41 -07:00
sscanf.c Clean up more code 2023-06-18 01:00:05 -07:00
stdbuf.c Remove _Hide keyword 2023-07-24 08:34:58 -07:00
stderr.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
stdin.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
stdio.h Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
stdio.mk Remove old stack code and improve dirstream 2023-08-16 07:54:40 -07:00
stdio_ext.h Make some foss compatibility improvements 2022-10-14 13:59:34 -07:00
stdout.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
strfry.c Fold LIBC_ALG into LIBC_MEM 2022-08-13 08:32:34 -07:00
strlist.internal.h Remove _Hide keyword 2023-07-24 08:34:58 -07:00
strtold.c Perform inconsequential code cleanup 2023-08-07 20:24:50 -07:00
swprintf.c Remove printf() linking hack 2023-06-17 10:13:50 -07:00
syscall.c Fix syscall(2) returning -errno instead of using POSIX errno scheme (#830) 2023-06-11 10:33:28 -07:00
syscall.h Create a fake syscall() function due to Python 2023-06-09 05:18:38 -07:00
system.c Invent systemvpe() function 2023-08-09 00:27:55 -07:00
systemvpe.c Invent systemvpe() function 2023-08-09 00:27:55 -07:00
temp.h Remove _Hide keyword 2023-07-24 08:34:58 -07:00
tmpfile.c Improve cancellations, randomness, and time 2022-11-05 23:45:32 -07:00
ungetc.c Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
ungetc_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
ungetwc.c Remove stdio lock macros from amalgamation 2022-09-10 12:03:36 -07:00
ungetwc_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
vappendf.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
vasprintf.c Mint APE Loader v1.5 2023-07-26 13:54:49 -07:00
vcscanf.c Clean up more code 2023-06-18 01:00:05 -07:00
vdprintf.c Remove _Hide keyword 2023-07-24 08:34:58 -07:00
versionsort.c Improve cosmo's conformance to libc-test 2022-10-10 17:52:41 -07:00
vfprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
vfprintf_unlocked.c Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
vfscanf.c Clean up more code 2023-06-18 01:00:05 -07:00
vigna.c Rename rand64() to _rand64() 2022-10-10 04:12:06 -07:00
vprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
vscanf.c Clean up more code 2023-06-18 01:00:05 -07:00
vsnprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
vsprintf.c Clean up more code 2023-06-18 01:00:05 -07:00
vsscanf.c Clean up more code 2023-06-18 01:00:05 -07:00
wcstod.c Perform inconsequential code cleanup 2023-08-07 20:24:50 -07:00
wcstof.c Perform inconsequential code cleanup 2023-08-07 20:24:50 -07:00
wcstold.c Perform inconsequential code cleanup 2023-08-07 20:24:50 -07:00
xorshift.h Replace COSMO define with _COSMO_SOURCE 2023-08-13 20:55:04 -07:00
xorshift32.c Fold LIBC_RAND into LIBC_STDIO/TINYMATH/INTRIN 2022-08-11 12:32:00 -07:00
xorshift64.c Fold LIBC_RAND into LIBC_STDIO/TINYMATH/INTRIN 2022-08-11 12:32:00 -07:00