Commit Graph
11 Commits
Author SHA1 Message Date
Rich Felker ea496d6c63 fix multiple issues in legacy function getpass
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
2014-07-06 01:34:13 -04:00
Szabolcs Nagy 571744447c include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
Szabolcs Nagy a516077feb add legacy getloadavg api 2013-11-21 01:59:43 +00:00
Szabolcs Nagy b20760c023 support configurable page size on mips, powerpc and microblaze
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.
2013-09-15 02:00:32 +00:00
Rich Felker 580b8d8c52 unbreak vwarn: print ": " before errno message
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.
2013-08-21 00:49:46 -04:00
Rich Felker 89384f78ce collapse euidaccess to a call to faccessat
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.
2013-08-03 02:28:35 -04:00
Rich Felker a89aaee110 add legacy euidaccess function and eaccess alias for it
this is mainly for ABI compat purposes.
2013-08-03 02:15:45 -04:00
Rich Felker 2f820f3b1f add legacy function valloc
it was already declared in stdlib.h, but not defined anywhere.
2013-08-02 18:34:39 -04:00
Rich Felker 69ee9b2cb1 make err.h functions print __progname
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.
2013-05-18 10:20:42 -04:00
Rich Felker d712dd396d more close-on-exec fixes, mostly using new "e" flag to fopen 2012-09-29 18:14:46 -04:00
Rich Felker b9bb8f67bb cleanup src/linux and src/misc trees, etc.
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.
2012-09-07 00:48:25 -04:00