Print this page
first round of POSIX 2008 stuff

@@ -29,12 +29,10 @@
  */
 
 #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 */

@@ -56,12 +54,10 @@
 #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

@@ -96,27 +92,30 @@
 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)
+/* 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 /* defined(__EXTENSIONS__) || (!defined(_STRICT_STDC) && ... */
+#endif
 
-/* Marked as LEGACY in SUSv2 and removed in SUSv3 */
-#if defined(__EXTENSIONS__) || \
-        (!defined(_STRICT_STDC) && !defined(__XOPEN_OR_POSIX)) || \
-        (defined(_XPG4_2) && !defined(_XPG6))
+/* 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,90 +129,18 @@
 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);

@@ -239,46 +166,10 @@
 
 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