aboutsummaryrefslogtreecommitdiff
path: root/lib/libc/include/libc_private.h
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2021-01-10 19:22:49 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2021-01-11 20:59:52 +0000
commit21f749da82e755aafab127618affeffb86cff9a5 (patch)
tree098b89a974c36f89652b952872c0977c31cbfd32 /lib/libc/include/libc_private.h
parent4174e45fb4320dc27969c3fcbdd7d06e3b1150b8 (diff)
downloadsrc-21f749da82e755aafab127618affeffb86cff9a5.tar.gz
src-21f749da82e755aafab127618affeffb86cff9a5.zip
libthr: wrap pdfork(2), same as fork(2).
Without wrapping, rtld services and malloc(3) are not guaranteed to operate correctly in the forked child. Reviewed by: markj MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D28088
Diffstat (limited to 'lib/libc/include/libc_private.h')
-rw-r--r--lib/libc/include/libc_private.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/libc/include/libc_private.h b/lib/libc/include/libc_private.h
index d26c78c21c07..363e1057986b 100644
--- a/lib/libc/include/libc_private.h
+++ b/lib/libc/include/libc_private.h
@@ -238,6 +238,7 @@ enum {
INTERPOS_fdatasync,
INTERPOS_clock_nanosleep,
INTERPOS_distribute_static_tls,
+ INTERPOS_pdfork,
INTERPOS_MAX
};
@@ -353,6 +354,7 @@ int __sys_msync(void *, __size_t, int);
int __sys_nanosleep(const struct timespec *, struct timespec *);
int __sys_open(const char *, int, ...);
int __sys_openat(int, const char *, int, ...);
+int __sys_pdfork(int *, int);
int __sys_pselect(int, struct fd_set *, struct fd_set *,
struct fd_set *, const struct timespec *,
const __sigset_t *);