implement forkall
authorRich Felker <dalias@aerifal.cx>
Fri, 12 Aug 2011 14:37:12 +0000 (10:37 -0400)
committerRich Felker <dalias@aerifal.cx>
Fri, 12 Aug 2011 14:37:12 +0000 (10:37 -0400)
commit4054a135fc0e6c1b7c33f688dcddecee0b2b22d2
tree8bb7d6b44fd5b3d2cb41e00b1466a24d0ab42d8f
parent407d933052c310ebc5541dae2ecd8c4bd8f55fb9
implement forkall

this is a "nonstandard" function that was "rejected" by POSIX, but
nonetheless had its behavior documented in the POSIX rationale for
fork. it's present on solaris and possibly some other systems, and
duplicates the whole calling process, not just a single thread. glibc
does not have this function. it should not be used in programs
intending to be portable, but may be useful for testing,
checkpointing, etc. and it's an interesting (and quite small) example
of the usefulness of the __synccall framework originally written to
work around deficiencies in linux's setuid syscall.
include/unistd.h
src/thread/forkall.c [new file with mode: 0644]