diff options
author | Rich Felker <dalias@aerifal.cx> | 2011-02-18 19:52:42 -0500 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2011-02-18 19:52:42 -0500 |
commit | e9417fffb39c299e556c5ad0c1545f0c02618e3c (patch) | |
tree | 90c04bef0567ff4df7c7b57986a756b8b11b506c /src/internal | |
parent | 446b4207cc7a30d8a4d5b2445a5a1b27d440f55d (diff) | |
download | musl-e9417fffb39c299e556c5ad0c1545f0c02618e3c.zip musl-e9417fffb39c299e556c5ad0c1545f0c02618e3c.tar.gz musl-e9417fffb39c299e556c5ad0c1545f0c02618e3c.tar.bz2 |
add pthread_atfork interface
note that this presently does not handle consistency of the libc's own
global state during forking. as per POSIX 2008, if the parent process
was threaded, the child process may only call async-signal-safe
functions until one of the exec-family functions is called, so the
current behavior is believed to be conformant even if non-ideal. it
may be improved at some later time.
Diffstat (limited to 'src/internal')
-rw-r--r-- | src/internal/libc.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/internal/libc.h b/src/internal/libc.h index e353f36..ea221b6 100644 --- a/src/internal/libc.h +++ b/src/internal/libc.h @@ -15,6 +15,7 @@ extern struct libc { volatile int threads_minus_1; int (*rsyscall)(int, long, long, long, long, long, long); void (**tsd_keys)(void *); + void (*fork_handler)(int); } libc; |