about summary refs log tree commit diff
path: root/src/legacy
Commit message (Collapse)AuthorAgeFilesLines
* fix issues from public functions defined without declaration visibleRich Felker2018-09-121-0/+1
| | | | | | | | | | | | | | | | | policy is that all public functions which have a public declaration should be defined in a context where that public declaration is visible, to avoid preventable type mismatches. an audit performed using GCC's -Wmissing-declarations turned up the violations corrected here. in some cases the public header had not been included; in others, a feature test macro needed to make the declaration visible had been omitted. in the case of gethostent and getnetent, the omission seems to have been intentional, as a hack to admit a single stub definition for both functions. this kind of hack is no longer acceptable; it's UB and would not fly with LTO or advanced toolchains. the hack is undone to make exposure of the declarations possible.
* fix one-byte overflow in legacy getpass functionRich Felker2017-03-141-1/+1
| | | | | if the length of the input was equal to the buffer size (128), a fixed value of zero was written one byte past the end of the static buffer.
* getdtablesize: fix returning hard instead of soft rlimitOlivier Brunel2016-08-301-1/+1
| | | | This makes the result consistent with sysconf(_SC_OPEN_MAX).
* add errno setting to stub utmpxname functionRich Felker2016-01-281-0/+2
|
* legacy/utmpx: Add utmp{,x}name stubsKylie McClain2016-01-281-0/+7
|
* fix futimes legacy function with null tv pointerRich Felker2015-05-061-0/+1
| | | | | a null pointer is valid here and indicates that the current time should be used. based on patch by Felix Janda, simplified.
* getloadavg: use sysinfo() instead of /proc/loadavgAlexander Monakov2015-02-251-11/+7
| | | | Based on a patch by Szabolcs Nagy.
* fix multiple issues in legacy function getpassRich Felker2014-07-061-5/+6
| | | | | | | | | | 1. failure to output a newline after the password is read 2. fd leaks via missing FD_CLOEXEC 3. fd leaks via failure-to-close when any of the standard streams are closed at the time of the call 4. wrongful fallback to use of stdin when opening /dev/tty fails 5. wrongful use of stderr rather than /dev/tty for prompt 6. failure to report error reading password
* include cleanups: remove unused headers and add feature test macrosSzabolcs Nagy2013-12-127-4/+8
|
* add legacy getloadavg apiSzabolcs Nagy2013-11-211-0/+18
|
* support configurable page size on mips, powerpc and microblazeSzabolcs Nagy2013-09-152-2/+2
| | | | | | | | | | | | | | | | PAGE_SIZE was hardcoded to 4096, which is historically what most systems use, but on several archs it is a kernel config parameter, user space can only know it at execution time from the aux vector. PAGE_SIZE and PAGESIZE are not defined on archs where page size is a runtime parameter, applications should use sysconf(_SC_PAGE_SIZE) to query it. Internally libc code defines PAGE_SIZE to libc.page_size, which is set to aux[AT_PAGESZ] in __init_libc and early in __dynlink as well. (Note that libc.page_size can be accessed without GOT, ie. before relocations are done) Some fpathconf settings are hardcoded to 4096, these should be actually queried from the filesystem using statfs.
* unbreak vwarn: print ": " before errno messageRich Felker2013-08-211-2/+5
| | | | | patch by Strake. this seems to be a regression caused by fixing the behavior of perror("") to match perror(0) at some point in the past.
* collapse euidaccess to a call to faccessatRich Felker2013-08-031-9/+1
| | | | | | it turns out Linux is buggy for faccessat, just like fchmodat: the kernel does not actually take a flags argument. so we're going to have to emulate it there.
* add legacy euidaccess function and eaccess alias for itRich Felker2013-08-031-0/+18
| | | | this is mainly for ABI compat purposes.
* add legacy function vallocRich Felker2013-08-021-0/+8
| | | | it was already declared in stdlib.h, but not defined anywhere.
* make err.h functions print __prognameRich Felker2013-05-181-0/+4
| | | | | | | patch by Strake. previously is was not feasible to duplicate this functionality of the functions these were modeled on, since argv[0] was not saved at program startup, but now that it's available it's easy to use.
* more close-on-exec fixes, mostly using new "e" flag to fopenRich Felker2012-09-291-1/+1
|
* cleanup src/linux and src/misc trees, etc.Rich Felker2012-09-0713-0/+302
previously, it was pretty much random which one of these trees a given function appeared in. they have now been organized into: src/linux: non-POSIX linux syscalls (possibly shard with other nixen) src/legacy: various obsolete/legacy functions, mostly wrappers src/misc: still mostly uncategorized; some misc POSIX, some nonstd src/crypt: crypt hash functions further cleanup will be done later.