summaryrefslogtreecommitdiffstats
path: root/lib/libc/hidden/unistd.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Unveiling unveil(2).beck2018-07-131-1/+2
| | | | | | | | | | | | | This brings unveil into the tree, disabled by default - Currently this will return EPERM on all attempts to use it until we are fully certain it is ready for people to start using, but this now allows for others to do more tweaking and experimentation. Still needs to send the unveil's across forks and execs before fully enabling. Many thanks to robert@ and deraadt@ for extensive testing. ok deraadt@
* Don't declare select() in <unistd.h>guenther2016-09-121-2/+1
| | | | ok deraadt@ millert@
* Remove iruserok(_sa)? and __ivaliduser(sa)?guenther2016-05-231-3/+1
| | | | ok millert@ deraadt@
* Use a Thread Information Block in both single and multi-threaded programs.guenther2016-05-071-12/+12
| | | | | | | | | | | | | | | | | This stores errno, the cancelation flags, and related bits for each thread and is allocated by ld.so or libc.a. This is an ABI break from 5.9-stable! Make libpthread dlopen'able by moving the cancelation wrappers into libc and doing locking and fork/errno handling via callbacks that libpthread registers when it first initializes. 'errno' *must* be declared via <errno.h> now! Clean up libpthread's symbol exports like libc. On powerpc, offset the TIB/TCB/TLS data from the register per the ELF spec. Testing by various, particularly sthen@ and patrick@ ok kettenis@
* Eliminate userspace caching by getlogin_r/setlogin; make the getloginguenther2016-03-301-3/+3
| | | | | | | | syscall behave exactly like userspace getlogin_r() and rename it to match. Eliminate the reduced-to-no-op wrappers of the syscalls. Eliminate the unnecessary per-thread static buffering by getlogin(). ok kettenis@ deraadt@
* Rearrange C runtime bits: now that ld.so exports environ and __progname,guenther2016-03-201-1/+6
| | | | | | | | | | | move their definitions and initialization in static links to libc.a Make crt0 always invoke a new func _csu_finish() in libc to process the auxv and to either register the ld.so cleanup function (in dynamic links) or initialize environ and __progname and do MC_DISABLE_KBIND (in static links). In libc, get pagesize from auxv; cache that between getpagesize() and sysconf(_SC_PAGESIZE) ok mpi@ "good time" deraadt@
* PROTO_NORMAL for pledge(); ok guentherderaadt2015-10-171-1/+2
|
* Wrap <stdlib.h> so that calls go direct and the symbols not in theguenther2015-09-131-2/+2
| | | | | | C standard are all weak. Apply __{BEGIN,END}_HIDDEN_DECLS to gdtoa{,imp}.h, hiding the arch-specific __strtorx, __ULtox_D2A, __strtorQ, __ULtoQ_D2A symbols.
* Wrap <unistd.h> so that internal calls go direct and they're all weak symbolsguenther2015-09-121-1/+75
| | | | Delete unused 'fd' argument from internal function oldttyname()
* Add PROTO_WRAP() for (almost) all the syscalls that libpthread doesn'tguenther2015-09-111-1/+65
| | | | | | override so that internal calls go direct ok deraadt@
* Use PROTO_NORMAL() on __syscall to go direct, adjusting the declarationguenther2015-09-111-0/+27
to eliminate some casts. Retire some uses of old-style STUB* macros where superseded by namespace.h bits tweaks and ok deraadt@