summaryrefslogtreecommitdiff
path: root/libgcompat
AgeCommit message (Collapse)AuthorFilesLines
2024-03-30fenv: Add GNU extensionsLassebq1-0/+12
2024-01-30fcntl: correct stylingA. Wilcox1-1/+2
2024-01-29add posix_fallocate64() wrapperPaper1-0/+10
Signed-off-by: Paper <paper@paper.us.eu.org>
2023-12-15Provide fcntl64 wrapperAlex Gaynor1-0/+13
Signed-off-by: Alex Gaynor <alex.gaynor@gmail.com>
2022-10-21pthread: add pthread_mutexattr_[get|set]kind_npAriadne Conill1-0/+19
Needed for Adaptec ARC configuration utility. Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
2022-10-17stdio: Hook fopen(3) to intercept /proc/self/exeA. Wilcox1-1/+32
Unfortunately, we do have a potential race if the binary is renamed between the call to readlink and the real fopen. Fixes: #349
2022-10-09fix path-searching for execvpbkurtz1-1/+12
2022-10-07sysctl: Add __getauxval aliasA. Wilcox1-1/+9
Used by GraalVM Java.
2022-10-06misc: add __libc_single_threadedrcombs1-0/+2
We'll just say we're always multi-threaded (same as glibc does in duplicate copies of itself loaded into the same process via dlmopen)
2022-10-06locale: also override __newlocale/__duplocalercombs1-6/+12
libstdc++ calls these directly
2022-10-06random_r: fix null dereference when passed uninitialized bufGeorge Matsumura1-37/+39
Previously, initstate_r would attempt to pack the n, i, and j values into the state array pointed to by the x member value of buf, which would cause access to an invalid region of memory when buf was uninitialized. However, packing the values into the state array was required when buf was initialized, as otherwise the values of n, i, and j would not be saved. Critically, initstate_r had no means by which to distinguish between an uninitialized and initialized buf struct. This change makes the random_r and srandom_r do the packing and unpacking of the n, i, and j values instead. This does lead to a somewhat more inefficient algorithm, but preserves compatibility in case setstate_r is passed a state array that was initialized with the normal initstate function. Signed-off-by: George Matsumura <gm960420@ohio.edu>
2022-06-26string: add __explicit_bzero_chkrcombs1-0/+8
2022-06-26error: fix newlineGaël PORTAY1-1/+1
2022-06-22pwd: Fix infinite loopGaël PORTAY1-1/+1
This fixes a typo in commit 810f46ab1cc801e54fc3836c22b5f1364cd632e6 that created an infinite recursive call.
2022-05-25stdio: Fix style for __dprintf_chkA. Wilcox1-6/+6
2022-05-24stdio: add __dprintf_chkptrcnull1-0/+13
2022-02-02unistd: add __closeptrcnull1-0/+5
2021-12-19random_r: set `x` before calling savestate_r A. Wilcox1-1/+1
Prevents segfault when calling initstate_r.
2021-09-22wchar: add __mbrlenptrcnull1-1/+6
2021-07-27Merge branch 'reentrant_random' into 'current'A. Wilcox1-0/+157
Add reentrant random functions from LSB See merge request adelie/gcompat!11
2021-06-29gnulib: Add __fdelt_warn aliasGeorge Matsumura1-0/+2
Add __fdelt_warn as a strong alias of __fdelt_chk, similar to how it is implemented in glibc. Signed-off-by: George Matsumura <gm960420@ohio.edu>
2021-06-25random_r: Add reentrant random functions from LSBGeorge Matsumura1-0/+157
This adds random_r() and associated functions, mostly adapted from musl's implementation of random(). Signed-off-by: George Matsumura <gm960420@ohio.edu>
2020-12-14string: Add wrong strerror_rA. Wilcox1-0/+18
2020-11-16locale: restructure how newlocale worksrcombs1-21/+15
Now newlocale calls __newlocale with the returned glibc_locale structure directly, making it work slightly better with non-"C" locales.
2020-11-16locale: Fix two correctness issuesA. Wilcox1-2/+3
* Count size of list correctly * Don't make __names const; it isn't.
2020-09-27pthread: Fix typoA. Wilcox1-1/+1
2020-09-27pthread: add __sched_{cpualloc,cpufree}.Érico Nogueira1-1/+17
Implemented using the CPU_{ALLOC,FREE} macros. These symbols are required by nvidia 450.57 binaries.
2020-08-22unistd: Update execve shim with loader changesA. Wilcox1-3/+4
Ensure aarch64 bug doesn't appear here either.
2020-08-22readlink: Update to correspond with loader changesA. Wilcox1-1/+1
2020-08-18pthread: Add pthread_yield()Hal G1-0/+9
Calls the more standard sched_yield().
2020-08-10socket: Fix inverted logic in __poll_chk (#341)A. Wilcox1-1/+1
2020-08-10Merge branch 'master' into 'master'A. Wilcox1-3/+3
Correct __*_finite math functions See merge request adelie/gcompat!8
2020-08-08Correct __*_finite math functionsGeorge Matsumura1-3/+3
This corrects a mistake in the finite math functions in which it was asserted that the return values had to be infinite, instead of the intended behavior of asserting that they were not infinite. Signed-off-by: George Matsumura <gmmatsumura01@bvsd.org>
2020-07-25wchar: implement wcstod_lMichal Kazior1-0/+10
This is similar to strtoll_l() in a way it ignores the locale_t argument and uses the global locale settings. Signed-off-by: Michal Kazior <kazikcz@gmail.com>
2020-07-25wchar: implement wcstol_lMichal Kazior1-0/+11
This is similar to strtoll_l() in a way it ignores the locale_t argument and uses the global locale settings. Signed-off-by: Michal Kazior <kazikcz@gmail.com>
2020-07-25wchar: implement wcstoul_lMichal Kazior1-0/+11
This is similar to strtoll_l() in a way it ignores the locale_t argument and uses the global locale settings. Signed-off-by: Michal Kazior <kazikcz@gmail.com>
2020-07-25wchar: implement __fwprintf_chkMichal Kazior1-0/+18
Signed-off-by: Michal Kazior <kazikcz@gmail.com>
2020-07-25wchar: implement __vfwprintf_chkMichal Kazior1-0/+13
Signed-off-by: Michal Kazior <kazikcz@gmail.com>
2020-07-06time: New module adding __strftime_lA. Wilcox1-0/+7
2020-07-06locale: New module for glibc locale_t ABI compatA. Wilcox1-0/+56
2020-07-06unistd: Interpose execv* functions for LOADERA. Wilcox1-0/+54
Newer releases of Chromium directly execv /proc/self/exe, missing our readlink(3) interposing. We go ahead and interpose all three execv* functions just to ensure wider compatibility.
2020-07-06cxx_thread: Fix negated assertionA. Wilcox1-1/+1
The assertion should be that the return value was 0. Additionally, show the result code if the return value is not 0.
2019-11-10internal: add a wrapper for __libc_start_main for PowerPC(64(le))q661-0/+41
This is necessary because the musl and glibc function signatures differ significantly.
2019-05-08string: check NULL before using variables everywhereA. Wilcox1-3/+6
2019-05-08string: check NULL before using src here, tooA. Wilcox2-2/+3
2019-05-08malloc: use posix_memalign instead of deprecated memalignA. Wilcox1-1/+4
2019-05-08Don't use variables until ensuring they're non-NULLA. Wilcox2-2/+4
2019-05-08string: reduce scope of variables in strfryA. Wilcox1-5/+4
2019-05-07wchar: Add __wcscpy_chkA. Wilcox1-0/+21
2019-05-02string: Add __strdupA. Wilcox1-0/+10