diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2016-10-09 13:24:07 +0200 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2016-10-09 13:24:07 +0200 |
commit | 8f3d3f814dd14961ff72bd056244a854ff9c2271 (patch) | |
tree | e4f93899ab12509e1b366667e6a287156af3ac79 /sysdeps | |
parent | fb9ace04f816406b1537d487d71d0b8e897aab4c (diff) |
Add unregistering atfork handlers on dlclose
* sysdeps/generic/fork.h: New file.
* forward.c: Include <fork.h>.
(__unregister_atfork): New function.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/generic/fork.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/sysdeps/generic/fork.h b/sysdeps/generic/fork.h new file mode 100644 index 0000000..c6ac15e --- /dev/null +++ b/sysdeps/generic/fork.h @@ -0,0 +1,29 @@ +/* Copyright (C) 2002-2015 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ + +/* Function to call to unregister fork handlers. */ +extern void __unregister_atfork (void *dso_handle) attribute_hidden; +#define UNREGISTER_ATFORK(dso_handle) __unregister_atfork (dso_handle) + + +/* C library side function to register new fork handlers. */ +extern int __register_atfork (void (*__prepare) (void), + void (*__parent) (void), + void (*__child) (void), + void *dso_handle); +libc_hidden_proto (__register_atfork) |