aboutsummaryrefslogtreecommitdiffstats
path: root/include/signal.h
diff options
context:
space:
mode:
authorDavid Schultz <das@FreeBSD.org>2009-03-14 20:10:14 +0000
committerDavid Schultz <das@FreeBSD.org>2009-03-14 20:10:14 +0000
commit48a3f7d9ae7a3d30f69dbef204f6e09b90dd6ce7 (patch)
treed51c3f8bea660e6f11b1b17bde360879037f75a6 /include/signal.h
parentea3186bda450da17f955174be09e5537f07a5e05 (diff)
downloadsrc-48a3f7d9ae7a3d30f69dbef204f6e09b90dd6ce7.tar.gz
src-48a3f7d9ae7a3d30f69dbef204f6e09b90dd6ce7.zip
Fix the visibility of several prototypes. Also move pthread_kill() and
pthread_sigmask() to signal.h. In principle, this shouldn't break anything, since they're already in signal.h on other systems, and the FreeBSD manpage says that both pthread.h and signal.h need to be included to get these functions. Add a hack to declare pthread_t in the P1003.1-2008 namespace in signal.h.
Notes
Notes: svn path=/head/; revision=189828
Diffstat (limited to 'include/signal.h')
-rw-r--r--include/signal.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/include/signal.h b/include/signal.h
index 8d7c2813d633..fdb4b3ed6d09 100644
--- a/include/signal.h
+++ b/include/signal.h
@@ -58,11 +58,22 @@ typedef __pid_t pid_t;
#endif
#endif
+#if __POSIX_VISIBLE || __XSI_VISIBLE
+struct pthread; /* XXX */
+typedef struct pthread *__pthread_t;
+#if !defined(_PTHREAD_T_DECLARED) && __POSIX_VISIBLE >= 200809
+typedef __pthread_t pthread_t;
+#define _PTHREAD_T_DECLARED
+#endif
+#endif /* __POSIX_VISIBLE || __XSI_VISIBLE */
+
__BEGIN_DECLS
int raise(int);
#if __POSIX_VISIBLE || __XSI_VISIBLE
int kill(__pid_t, int);
+int pthread_kill(__pthread_t, int);
+int pthread_sigmask(int, const __sigset_t *, __sigset_t *);
int sigaction(int, const struct sigaction * __restrict,
struct sigaction * __restrict);
int sigaddset(sigset_t *, int);
@@ -91,7 +102,7 @@ int sigaltstack(const stack_t * __restrict, stack_t * __restrict);
int sigpause(int);
#endif
-#if __POSIX_VISIBLE >= 200112
+#if __XSI_VISIBLE >= 600
int siginterrupt(int, int);
#endif