aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--conform/data/signal.h-data9
-rw-r--r--signal/signal.h6
-rw-r--r--sysdeps/unix/sysv/linux/bits/sigaction.h4
-rw-r--r--sysdeps/unix/sysv/linux/ia64/bits/sigaction.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/sigaction.h4
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/sigaction.h4
7 files changed, 32 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 00c7710658..8dd1c05efe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2010-01-10 Ulrich Drepper <drepper@redhat.com>
+ * sysdeps/unix/sysv/linux/bits/sigaction.h: SA_RESTART, SA_NODEFER,
+ and SA_RESETHAND now available in Base.
+ * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/sigaction.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise.
+ * conform/data/signal.h-data: Update for XPG7.
+
* posix/sys/types.h: Define id_t, clock_t, blksize_t for XPG7.
* string/strings.h: Don't declare obsolete functions for XPG7.
@@ -15,6 +22,8 @@
* posix/sys/wait.h: Define idtype_t and declare waitid for XPG7.
+ * signal/signal.h: Define size_t, mcontext_t, and ucontext_t for XPG7.
+
2010-01-10 Ulrich Drepper <drepper@redhat.com>
* conform/conformtest.pl: For XPG7 testing the headers are supposed to
diff --git a/conform/data/signal.h-data b/conform/data/signal.h-data
index b48a1ff7da..6dbf1fb847 100644
--- a/conform/data/signal.h-data
+++ b/conform/data/signal.h-data
@@ -1,6 +1,8 @@
typed-constant SIG_DFL {void(*)(int)}
typed-constant SIG_ERR {void(*)(int)}
+#if !defined ISO && !defined POSIX && !defined POSIX2008
typed-constant SIG_HOLD {void(*)(int)}
+#endif
typed-constant SIG_IGN {void(*)(int)}
type sig_atomic_t
@@ -14,11 +16,14 @@ type uid_t
type mcontext_t
type ucontext_t
-
element ucontext_t {ucontext_t*} uc_link
element ucontext_t sigset_t uc_sigmask
element ucontext_t stack_t uc_stack
element ucontext_t mcontext_t uc_mcontext
+
+type {struct timespec}
+element {struct timespec} __time_t tv_sec
+element {struct timespec} long tv_nsec
#endif
element {union sigval} int sival_int
@@ -173,7 +178,9 @@ constant SI_TIMER
constant SI_ASYNCIO
constant SI_MESGQ
+#if !defined XOPEN2K8 && !defined POSIX && !defined POSIX2008
function void (*bsd_signal (int, void(*)(int)))(int)
+#endif
function int kill (pid_t, int)
#if !defined POSIX && !defined POSIX2008
function int killpg (pid_t, int)
diff --git a/signal/signal.h b/signal/signal.h
index 67f8cb4d3c..2bdf648dff 100644
--- a/signal/signal.h
+++ b/signal/signal.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2003, 2004, 2007, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2004, 2007, 2009, 2010 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -344,7 +344,7 @@ extern int sigreturn (struct sigcontext *__scp) __THROW;
#endif /* use BSD. */
-#if defined __USE_BSD || defined __USE_XOPEN_EXTENDED
+#if defined __USE_BSD || defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
# define __need_size_t
# include <stddef.h>
@@ -354,7 +354,7 @@ extern int sigreturn (struct sigcontext *__scp) __THROW;
extern int siginterrupt (int __sig, int __interrupt) __THROW;
# include <bits/sigstack.h>
-# ifdef __USE_XOPEN
+# if defined __USE_XOPEN || defined __USE_XOPEN2K8
/* This will define `ucontext_t' and `mcontext_t'. */
# include <sys/ucontext.h>
# endif
diff --git a/sysdeps/unix/sysv/linux/bits/sigaction.h b/sysdeps/unix/sysv/linux/bits/sigaction.h
index 48cc5312f4..62be069205 100644
--- a/sysdeps/unix/sysv/linux/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/bits/sigaction.h
@@ -1,5 +1,5 @@
/* The proper definitions for Linux's sigaction.
- Copyright (C) 1993-1999, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1993-1999, 2000, 2010 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -57,6 +57,8 @@ struct sigaction
three arguments instead of one. */
#if defined __USE_UNIX98 || defined __USE_MISC
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
+#endif
+#if defined __USE_UNIX98 || defined __USE_MISC || defined __USE_XOPEN2K8
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when
its handler is being executed. */
diff --git a/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h b/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h
index 11599d5208..b557eaa3e0 100644
--- a/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/ia64/bits/sigaction.h
@@ -1,5 +1,5 @@
/* Definitions for Linux/ia64 sigaction.
- Copyright (C) 1996, 1997, 2000, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997, 2000, 2003, 2010 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -53,6 +53,8 @@ struct sigaction
#define SA_SIGINFO 0x00000004
#if defined __USE_UNIX98 || defined __USE_MISC
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
+#endif
+#if defined __USE_UNIX98 || defined __USE_MISC || defined __USE_XOPEN2K8
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal
when its handler is being executed. */
diff --git a/sysdeps/unix/sysv/linux/s390/bits/sigaction.h b/sysdeps/unix/sysv/linux/s390/bits/sigaction.h
index 308cb5bd7a..8767d67851 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/sigaction.h
@@ -1,5 +1,5 @@
/* Definitions for 31 & 64 bit S/390 sigaction.
- Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2010 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -90,6 +90,8 @@ struct sigaction
three arguments instead of one. */
#if defined __USE_UNIX98 || defined __USE_MISC
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
+#endif
+#if defined __USE_UNIX98 || defined __USE_MISC || defined __USE_XOPEN2K8
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when
its handler is being executed. */
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/sigaction.h b/sysdeps/unix/sysv/linux/sparc/bits/sigaction.h
index ee4196764d..e474dbe26f 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/sigaction.h
@@ -1,5 +1,5 @@
/* The proper definitions for Linux/SPARC sigaction.
- Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1996-2000, 2010 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -58,6 +58,8 @@ struct sigaction
three arguments instead of one. */
#if defined __USE_UNIX98 || defined __USE_MISC
# define SA_ONSTACK 0x00000001 /* Use signal stack by using `sa_restorer'. */
+#endif
+#if defined __USE_UNIX98 || defined __USE_MISC || defined __USE_XOPEN2K8
# define SA_RESTART 0x00000002 /* Restart syscall on signal return. */
# define SA_INTERRUPT 0x00000010 /* Historical no-op. */
# define SA_NOMASK 0x00000020 /* Don't automatically block the signal when