aboutsummaryrefslogtreecommitdiff
path: root/signal
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-02-23 06:02:09 +0000
committerUlrich Drepper <drepper@redhat.com>2000-02-23 06:02:09 +0000
commit8ce9ea0ca67b8eff5f1a708d951d969ac9c0ab2a (patch)
tree4a04cd7c0e3a05987fcf74caa28a0f5d93020b5b /signal
parent93a19c64c994e85e1c3e87cefa1d68c15e7acb0d (diff)
downloadglibc-8ce9ea0ca67b8eff5f1a708d951d969ac9c0ab2a.zip
glibc-8ce9ea0ca67b8eff5f1a708d951d969ac9c0ab2a.tar.gz
glibc-8ce9ea0ca67b8eff5f1a708d951d969ac9c0ab2a.tar.bz2
Update.
* dlfcn/dlfcn.h (RTLD_DEFAULT): Don't use NULL. * iconv/iconv.h (iconv): Fix prototype. * misc/libgen.h: When using gcc using renaming feature to get XPG definition of basename. * misc/search.h (struct entry): Fix type of element data. * posix/unistd.h (getpagesize): Declare as const function. * sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Define SA_NOCLDWAIT. * sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise. * signal/signal.h [__USE_XOPEN]: Define uid_t. (sigstack): Correct type of first parameter. * sysdeps/generic/sigstack.c (sigstack): Likewise. * sysdeps/unix/sysv/linux/sigstack.c (sigstack): Likewise. * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: New file. Copy of old sysdeps/unix/sysv/linux/bits/siginfo.h. * sysdeps/unix/sysv/linux/sparc/sparc64/bits/siginfo.h: Likewise. * sysdeps/unix/sysv/linux/bits/siginfo.h [struct siginfo] (si_band): Change type to `long int'. * signal/signal.h [__USE_XOPEN]: Declare sigpause to redirect to __xpg_sigpause. * sysdeps/generic/sigpause.c: Define __xpg_sigpause. * sysdeps/posix/sigpause.c: Likewise. * conform/conformtest.pl: Correct bugs. Add more functionality. * conform/data/dlfcn.h-data: Correct typos. * conform/data/ftw.h-data: Likewise. * conform/data/iconv.h-data: Likewise. * conform/data/nl_types.h-data: Likewise. * conform/data/search.h-data: Likewise. * conform/data/semaphore.h-data: New file. * conform/data/setjmp.h-data: New file. * conform/data/signal.h-data: New file. * conform/data/stdarg.h-data: New file. * conform/data/stddef.h-data: New file. * conform/data/stdio.h-data: New file.
Diffstat (limited to 'signal')
-rw-r--r--signal/Versions4
-rw-r--r--signal/signal.h21
2 files changed, 20 insertions, 5 deletions
diff --git a/signal/Versions b/signal/Versions
index 21fc5a5..0217a40 100644
--- a/signal/Versions
+++ b/signal/Versions
@@ -45,4 +45,8 @@ libc {
# LinuxThreads needs this entry point.
__sigsuspend;
}
+ GLIBC_2.2 {
+ # Needed to provide a pointer to the XPG sigpause function.
+ __xpg_sigpause;
+ }
}
diff --git a/signal/signal.h b/signal/signal.h
index 12019f0..2ae76a1 100644
--- a/signal/signal.h
+++ b/signal/signal.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,92,93,94,95,96,97,98,99 Free Software Foundation, Inc.
+/* Copyright (C) 1991-1999, 2000 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
@@ -55,9 +55,15 @@ typedef __sigset_t sigset_t;
#include <bits/types.h>
#include <bits/signum.h>
-#if defined __USE_XOPEN && !defined __pid_t_defined
+#ifdef __USE_XOPEN
+# ifndef __pid_t_defined
typedef __pid_t pid_t;
-# define __pid_t_defined
+# define __pid_t_defined
+# endif
+# ifndef __uid_t_defined
+typedef __uid_t uid_t;
+# define __uid_t_defined
+# endif
#endif /* Unix98 */
@@ -140,6 +146,9 @@ extern int sigpause (int __mask) __THROW;
# define sigpause(mask) __sigpause ((mask), 0)
#else
# ifdef __USE_XOPEN
+# ifdef __GNUC__
+extern int sigpause (int __sig) __asm__ ("__xpg_sigpause") __THROW;
+# endif
/* Remove a signal from the signal mask and suspend the process. */
# define sigpause(sig) __sigpause ((sig), 1)
# endif
@@ -309,12 +318,14 @@ extern int sigreturn (struct sigcontext *__scp) __THROW;
extern int siginterrupt (int __sig, int __interrupt) __THROW;
# include <bits/sigstack.h>
+# ifdef __USE_XOPEN
+# include <ucontext.h>
+# endif
/* Run signals handlers on the stack specified by SS (if not NULL).
If OSS is not NULL, it is filled in with the old signal stack status.
This interface is obsolete and on many platform not implemented. */
-extern int sigstack (__const struct sigstack *__ss,
- struct sigstack *__oss) __THROW;
+extern int sigstack (struct sigstack *__ss, struct sigstack *__oss) __THROW;
/* Alternate signal handler stack interface.
This interface should always be preferred over `sigstack'. */