diff options
author | joseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d> | 2014-02-07 21:04:10 +0000 |
---|---|---|
committer | joseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d> | 2014-02-07 21:04:10 +0000 |
commit | 85f4cc52a11508e42daa5625283410e0d6f3a993 (patch) | |
tree | deca25a1076f1a24479cbca3bd7d162123fae742 /libc/sysdeps/unix/sysv/linux/dl-sysdep.c | |
parent | a1055d384d75c28f09a47c2d8628bc330f892955 (diff) | |
download | eglibc2-master.tar.gz |
git-svn-id: svn://svn.eglibc.org/trunk@25237 7b3dc134-2b1b-0410-93df-9e9f96275f8d
Diffstat (limited to 'libc/sysdeps/unix/sysv/linux/dl-sysdep.c')
-rw-r--r-- | libc/sysdeps/unix/sysv/linux/dl-sysdep.c | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/libc/sysdeps/unix/sysv/linux/dl-sysdep.c b/libc/sysdeps/unix/sysv/linux/dl-sysdep.c index 676c9b246..28100742f 100644 --- a/libc/sysdeps/unix/sysv/linux/dl-sysdep.c +++ b/libc/sysdeps/unix/sysv/linux/dl-sysdep.c @@ -19,7 +19,6 @@ /* Linux needs some special initialization, but otherwise uses the generic dynamic linker system interface code. */ -#include <assert.h> #include <string.h> #include <fcntl.h> #include <unistd.h> @@ -131,48 +130,3 @@ _dl_discover_osversion (void) return version; } - -/* Mask every signal, returning the previous sigmask in OLD. */ -void -internal_function -_dl_mask_all_signals (sigset_t *old) -{ - int ret; - sigset_t new; - - sigfillset (&new); - - /* This function serves as a replacement to pthread_sigmask, which - isn't available from within the dynamic linker since it would require - linking with libpthread. We duplicate some of the functionality here - to avoid requiring libpthread. This isn't quite identical to - pthread_sigmask in that we do not mask internal signals used for - cancellation and setxid handling. This disables asynchronous - cancellation for the duration the signals are disabled, but it's a - small window, and prevents any problems with the use of TLS variables - in the signal handlers that would have executed. */ - - /* It's very important we don't touch errno here, as that's TLS; since this - gets called from get_tls_addr we might end up recursing. */ - - INTERNAL_SYSCALL_DECL (err); - - ret = INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, &new, old, - _NSIG / 8); - - assert (ret == 0); -} - -/* Return sigmask to what it was before a call to _dl_mask_all_signals. */ -void -internal_function -_dl_unmask_signals (sigset_t *old) -{ - int ret; - INTERNAL_SYSCALL_DECL (err); - - ret = INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, old, NULL, - _NSIG / 8); - - assert (ret == 0); -} |