about summary refs log tree commit diff
path: root/sysdeps/generic
diff options
context:
space:
mode:
authorPaul Pluzhnikov <ppluzhnikov@google.com>2013-12-18 15:07:11 -0800
committerPaul Pluzhnikov <ppluzhnikov@google.com>2013-12-18 15:07:11 -0800
commit69a17d9d245dc3551792e95e1823cc2d877592f3 (patch)
tree719f3789f573b05c6c168f3720048acd42420ea4 /sysdeps/generic
parenta588438951a271ca10623fb8c7e25693c7ebea67 (diff)
downloadglibc-69a17d9d245dc3551792e95e1823cc2d877592f3.tar.gz
glibc-69a17d9d245dc3551792e95e1823cc2d877592f3.tar.xz
glibc-69a17d9d245dc3551792e95e1823cc2d877592f3.zip
Patch [1/4] async-signal safe TLS.
2013-12-18  Andrew Hunter  <ahh@google.com>

	* sysdeps/generic/ldsodefs.h (_dl_mask_all_signals): New prototype.
	(_dl_unmask_signals): Likewise.
	* sysdeps/mach/hurd/dl-sysdep.h (_dl_mask_all_signals): New stub.
	(_dl_unmask_all_signals): Likewise.
	* sysdeps/unix/sysv/linux/dl-sysdep.h (_dl_mask_all_signals): New prototype.
	(_dl_unmask_all_signals): Likewise.
	* sysdeps/unix/sysv/linux/dl-sysdep.c (_dl_mask_all_signals): New function.
	(_dl_unmask_signals): Likewise.
Diffstat (limited to 'sysdeps/generic')
-rw-r--r--sysdeps/generic/ldsodefs.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index 146aca4dfb..e919e4136c 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -234,6 +234,11 @@ extern int _dl_name_match_p (const char *__name, const struct link_map *__map)
 extern unsigned long int _dl_higher_prime_number (unsigned long int n)
      internal_function;
 
+/* Mask every signal, returning the previous sigmask in OLD.  */
+extern void _dl_mask_all_signals (sigset_t *old) internal_function;
+/* Undo _dl_mask_all_signals.  */
+extern void _dl_unmask_signals (sigset_t *old) internal_function;
+
 /* Function used as argument for `_dl_receive_error' function.  The
    arguments are the error code, error string, and the objname the
    error occurred in.  */