Print this page
first round of POSIX 2008 stuff
*** 29,40 ****
*/
#ifndef _SIGNAL_H
#define _SIGNAL_H
- #pragma ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.5.3.4 */
-
#include <sys/feature_tests.h>
#if defined(__EXTENSIONS__) || !defined(_STRICT_STDC) || \
defined(__XOPEN_OR_POSIX)
#include <sys/types.h> /* need pid_t/uid_t/size_t/clock_t/caddr_t/pthread_t */
--- 29,38 ----
*** 56,67 ****
#ifdef __cplusplus
extern "C" {
#endif
- #if defined(__STDC__)
-
extern const char **_sys_siglistp; /* signal descriptions */
extern const int _sys_siglistn; /* # of signal descriptions */
#if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX)
#define _sys_siglist _sys_siglistp
--- 54,63 ----
*** 96,122 ****
extern int sig2str(int, char *);
extern int str2sig(const char *, int *);
#define SIG2STR_MAX 32
#endif /* defined(__EXTENSIONS__) || (!defined(_STRICT_STDC)... */
! #if defined(__EXTENSIONS__) || (!defined(_STRICT_STDC) && \
! !defined(__XOPEN_OR_POSIX)) || defined(_XPG4_2)
extern void (*bsd_signal(int, void (*)(int)))(int);
extern int killpg(pid_t, int);
extern int siginterrupt(int, int);
extern int sigaltstack(const stack_t *_RESTRICT_KYWD, stack_t *_RESTRICT_KYWD);
extern int sighold(int);
extern int sigignore(int);
extern int sigpause(int);
extern int sigrelse(int);
extern void (*sigset(int, void (*)(int)))(int);
! #endif /* defined(__EXTENSIONS__) || (!defined(_STRICT_STDC) && ... */
! /* Marked as LEGACY in SUSv2 and removed in SUSv3 */
! #if defined(__EXTENSIONS__) || \
! (!defined(_STRICT_STDC) && !defined(__XOPEN_OR_POSIX)) || \
! (defined(_XPG4_2) && !defined(_XPG6))
extern int sigstack(struct sigstack *, struct sigstack *);
#endif
#if defined(__EXTENSIONS__) || (!defined(_STRICT_STDC) && \
!defined(__XOPEN_OR_POSIX)) || (_POSIX_C_SOURCE > 2)
--- 92,121 ----
extern int sig2str(int, char *);
extern int str2sig(const char *, int *);
#define SIG2STR_MAX 32
#endif /* defined(__EXTENSIONS__) || (!defined(_STRICT_STDC)... */
! /* Added in Issue 4 version 2, obsoleted in Issue 6 and removed in Issue 7 */
! #if (!defined(_STRICT_SYMBOLS)) || (defined(_XPG4_2) && !defined(_XPG7))
! /* bsd_signal removed from Issue 7 */
extern void (*bsd_signal(int, void (*)(int)))(int);
+ #endif
+
+ /* Added in Issue 4 version 2 */
+ #if (!defined(_STRICT_SYMBOLS)) || defined(_XPG4_2)
extern int killpg(pid_t, int);
extern int siginterrupt(int, int);
extern int sigaltstack(const stack_t *_RESTRICT_KYWD, stack_t *_RESTRICT_KYWD);
extern int sighold(int);
extern int sigignore(int);
extern int sigpause(int);
extern int sigrelse(int);
extern void (*sigset(int, void (*)(int)))(int);
! #endif
! /* Added in Issue 4 version 2, obsoleted in SUSv2 and removed in SUSv3 */
! #if (!defined(_STRICT_SYMBOLS)) || (defined(_XPG4_2) && !defined(_XPG6))
extern int sigstack(struct sigstack *, struct sigstack *);
#endif
#if defined(__EXTENSIONS__) || (!defined(_STRICT_STDC) && \
!defined(__XOPEN_OR_POSIX)) || (_POSIX_C_SOURCE > 2)
*** 130,219 ****
extern int sigtimedwait(const sigset_t *_RESTRICT_KYWD,
siginfo_t *_RESTRICT_KYWD, const struct timespec *_RESTRICT_KYWD);
extern int sigqueue(pid_t, int, const union sigval);
#endif /* defined(__EXTENSIONS__) || (!defined(_STRICT_STDC) && */
- #else /* __STDC__ */
-
- extern char **_sys_siglistp; /* signal descriptions */
- extern int _sys_siglistn; /* # of signal descriptions */
-
- #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX)
- #define _sys_siglist _sys_siglistp
- #define _sys_nsig _sys_siglistn
- #endif
-
- #if defined(__EXTENSIONS__) || defined(__XOPEN_OR_POSIX)
- extern int kill();
- extern int sigaction();
- #ifndef _KERNEL
- extern int sigaddset();
- extern int sigdelset();
- extern int sigemptyset();
- extern int sigfillset();
- extern int sigismember();
- #endif
- extern int sigpending();
- extern int sigprocmask();
- extern int sigsuspend();
- #endif /* defined(__EXTENSIONS__)... */
-
- #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) || \
- defined(_XPG4_2)
- extern void (*bsd_signal())();
- extern int killpg();
- extern int siginterrupt();
- #endif /* defined(__EXTENSIONS__) ... */
-
- #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) || \
- (defined(_XPG4_2) && !defined(_XPG6))
- extern int sigstack();
- #endif
-
- #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX)
- extern int gsignal();
- extern int (*ssignal)();
- extern int sigsend();
- extern int sigsendset();
- extern int sig2str();
- extern int str2sig();
- #define SIG2STR_MAX 32
- #endif
-
- #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) || \
- defined(_XPG4_2)
- extern int sigaltstack();
- extern int sighold();
- extern int sigignore();
- extern int sigpause();
- extern int sigrelse();
- extern void (*sigset())();
- #endif
-
- #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) || \
- (_POSIX_C_SOURCE > 2)
- #include <sys/siginfo.h>
- #include <sys/time.h>
- extern int pthread_kill();
- extern int pthread_sigmask();
- extern int sigwaitinfo();
- extern int sigtimedwait();
- extern int sigqueue();
- #endif
-
- #endif /* __STDC__ */
-
/*
* sigwait() prototype is defined here.
*/
#if defined(__EXTENSIONS__) || (!defined(_STRICT_STDC) && \
!defined(__XOPEN_OR_POSIX)) || (_POSIX_C_SOURCE - 0 >= 199506L) || \
defined(_POSIX_PTHREAD_SEMANTICS)
- #if defined(__STDC__)
-
#if (_POSIX_C_SOURCE - 0 >= 199506L) || defined(_POSIX_PTHREAD_SEMANTICS)
#ifdef __PRAGMA_REDEFINE_EXTNAME
#pragma redefine_extname sigwait __posix_sigwait
extern int sigwait(const sigset_t *_RESTRICT_KYWD, int *_RESTRICT_KYWD);
--- 129,146 ----
*** 239,284 ****
extern int sigwait(sigset_t *);
#endif /* (_POSIX_C_SOURCE - 0 >= 199506L) || ... */
-
- #else /* __STDC__ */
-
-
- #if (_POSIX_C_SOURCE - 0 >= 199506L) || defined(_POSIX_PTHREAD_SEMANTICS)
-
- #ifdef __PRAGMA_REDEFINE_EXTNAME
- #pragma redefine_extname sigwait __posix_sigwait
- extern int sigwait();
- #else /* __PRAGMA_REDEFINE_EXTNAME */
-
- extern int __posix_sigwait();
-
- #ifdef __lint
- #define sigwait __posix_sigwait
- #else /* !__lint */
-
- static int
- sigwait(__setp, __signo)
- sigset_t *__setp;
- int *__signo;
- {
- return (__posix_sigwait(__setp, __signo));
- }
-
- #endif /* !__lint */
- #endif /* __PRAGMA_REDEFINE_EXTNAME */
-
- #else /* (_POSIX_C_SOURCE - 0 >= 199506L) || ... */
-
- extern int sigwait();
-
- #endif /* (_POSIX_C_SOURCE - 0 >= 199506L) || ... */
-
- #endif /* __STDC__ */
-
#endif /* defined(__EXTENSIONS__) || (!defined(_STRICT_STDC) ... */
#ifdef __cplusplus
}
#endif
--- 166,175 ----