about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2007-07-22 06:52:07 +0000
committerRoland McGrath <roland@gnu.org>2007-07-22 06:52:07 +0000
commit610903b0cc2166874b60dbd15be9c7e03a1bdb90 (patch)
treeda9fddc68dd205075581180393dd839c0ab78b81
parent7b153ce13a6e91bc0ca787fc9d3345456ec09803 (diff)
downloadglibc-610903b0cc2166874b60dbd15be9c7e03a1bdb90.tar.gz
glibc-610903b0cc2166874b60dbd15be9c7e03a1bdb90.tar.xz
glibc-610903b0cc2166874b60dbd15be9c7e03a1bdb90.zip
* mach/lock-intern.h: Include <sys/cdefs.h>.
	* sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
	reading A.

        * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
        to __sigsuspend.

	* sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.

2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>

	* sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
	`__ASSEMBLER__'.
	* sysdeps/mach/hurd/i386/tls.h: Likewise.
-rw-r--r--ChangeLog18
-rw-r--r--mach/lock-intern.h1
-rw-r--r--sysdeps/mach/hurd/sigaction.c2
-rw-r--r--sysdeps/mach/hurd/sigsuspend.c1
-rw-r--r--sysdeps/mach/i386/sysdep.h4
5 files changed, 25 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 838ccf0b29..13f51bddc7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
+
+	* mach/lock-intern.h: Include <sys/cdefs.h>.
+
+	* sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
+	reading A.
+
+        * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
+        to __sigsuspend.
+
+	* sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
+
+2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>
+
+	* sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
+	`__ASSEMBLER__'.
+	* sysdeps/mach/hurd/i386/tls.h: Likewise.
+
 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
 
 	* nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
diff --git a/mach/lock-intern.h b/mach/lock-intern.h
index d42a378f4d..4aaaedc1c0 100644
--- a/mach/lock-intern.h
+++ b/mach/lock-intern.h
@@ -19,6 +19,7 @@
 #ifndef _LOCK_INTERN_H
 #define	_LOCK_INTERN_H
 
+#include <sys/cdefs.h>
 #include <machine-lock.h>
 
 #ifndef _EXTERN_INLINE
diff --git a/sysdeps/mach/hurd/sigaction.c b/sysdeps/mach/hurd/sigaction.c
index 3dc530955d..1ff94f61f4 100644
--- a/sysdeps/mach/hurd/sigaction.c
+++ b/sysdeps/mach/hurd/sigaction.c
@@ -68,7 +68,7 @@ __sigaction (sig, act, oact)
       __spin_lock (&ss->lock);
       pending = ss->pending & ~ss->blocked;
     }
-  else if (a.sa_handler == SIG_IGN || a.sa_handler == SIG_DFL)
+  else if (act != NULL && (a.sa_handler == SIG_IGN || a.sa_handler == SIG_DFL))
     /* We are changing to an action that might be to ignore SIG signals.
        If SIG is blocked and pending and the new action is to ignore it, we
        must remove it from the pending set now; if the action is changed
diff --git a/sysdeps/mach/hurd/sigsuspend.c b/sysdeps/mach/hurd/sigsuspend.c
index 96b3857c72..75390f7cfa 100644
--- a/sysdeps/mach/hurd/sigsuspend.c
+++ b/sysdeps/mach/hurd/sigsuspend.c
@@ -80,4 +80,5 @@ __sigsuspend (set)
   return -1;
 }
 libc_hidden_def (__sigsuspend)
+strong_alias (__sigsuspend, sigsuspend_not_cancel)
 weak_alias (__sigsuspend, sigsuspend)
diff --git a/sysdeps/mach/i386/sysdep.h b/sysdeps/mach/i386/sysdep.h
index 1f138f4759..9da46dbbdc 100644
--- a/sysdeps/mach/i386/sysdep.h
+++ b/sysdeps/mach/i386/sysdep.h
@@ -16,6 +16,10 @@
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
+/* Defines RTLD_PRIVATE_ERRNO and USE_DL_SYSINFO.  */
+#include <dl-sysdep.h>
+#include <tls.h>
+
 #define LOSE asm volatile ("hlt")
 
 #define SNARF_ARGS(entry_sp, argc, argv, envp)				      \