Update.
authorUlrich Drepper <drepper@redhat.com>
Tue, 3 Nov 1998 17:21:07 +0000 (17:21 +0000)
committerUlrich Drepper <drepper@redhat.com>
Tue, 3 Nov 1998 17:21:07 +0000 (17:21 +0000)
1998-11-02 16:12 -0500  Zack Weinberg  <zack@rabi.phys.columbia.edu>

* sysdeps/generic/bits/signum.h: Define signals with their
historical numbers when those are in the 1-15 range and
consistent across platforms.
Define compatibility aliases (SIGIOT, SIGCLD) if __USE_MISC.
Define SIG_DFL, SIG_IGN, SIG_ERR as numeric constants cast
appropriately instead of with fake function declarations
(would cause link errors).
If __USE_UNIX98, define SIG_HOLD.

1998-10-29  H.J. Lu  <hjl@gnu.org>

* sysdeps/unix/sysv/linux/bits/sigaction.h (sigaction): Use
union only if __USE_POSIX199309 is defined.

* misc/sys/select.h (pselect): Declared only if __USE_GNU is
defined.

* sysdeps/unix/sysv/linux/netatalk/at.h: Include <linux/atalk.h>
before <sys/socket.h> to make sockaddr_at available to
<sys/socket.h>.

ChangeLog
bits/signum.h
misc/sys/select.h
sysdeps/generic/bits/signum.h
sysdeps/unix/sysv/linux/bits/sigaction.h

index 47b39e3..4df5c2f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,22 @@
+1998-11-02 16:12 -0500  Zack Weinberg  <zack@rabi.phys.columbia.edu>
+
+       * sysdeps/generic/bits/signum.h: Define signals with their
+       historical numbers when those are in the 1-15 range and
+       consistent across platforms.
+       Define compatibility aliases (SIGIOT, SIGCLD) if __USE_MISC.
+       Define SIG_DFL, SIG_IGN, SIG_ERR as numeric constants cast
+       appropriately instead of with fake function declarations
+       (would cause link errors).
+       If __USE_UNIX98, define SIG_HOLD.
+
+1998-10-29  H.J. Lu  <hjl@gnu.org>
+
+       * sysdeps/unix/sysv/linux/bits/sigaction.h (sigaction): Use
+       union only if __USE_POSIX199309 is defined.
+
+       * misc/sys/select.h (pselect): Declared only if __USE_GNU is
+       defined.
+
 1998-11-03  Ulrich Drepper  <drepper@cygnus.com>
 
        * time/mktime.c (__mktime_internal): Handle broken down times
@@ -37,9 +56,9 @@
 
 1998-11-02  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
 
-        * sysdeps/unix/sysv/linux/netatalk/at.h: Include <linux/atalk.h>
-        before <sys/socket.h> to make sockaddr_at available to
-        <sys/socket.h>.
+       * sysdeps/unix/sysv/linux/netatalk/at.h: Include <linux/atalk.h>
+       before <sys/socket.h> to make sockaddr_at available to
+       <sys/socket.h>.
 
        * posix/glob.h: Remove __P from parameter lists of declarations.
 
index 6b4693f..e750125 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1993, 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1993, 1996, 1998 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
 #ifdef _SIGNAL_H
 
 /* Fake signal functions.  */
-extern void _sig_ign __P ((int sig));
-extern void _sig_dfl __P ((int sig));
 
-#define        SIG_ERR ((__sighandler_t) 0) /* Error return.  */
-#define        SIG_DFL _sig_dfl        /* Default action.  */
-#define        SIG_IGN _sig_ign        /* Ignore signal.  */
+#define        SIG_ERR  ((__sighandler_t) -1)  /* Error return.  */
+#define        SIG_DFL  ((__sighandler_t)  0)  /* Default action.  */
+#define        SIG_IGN  ((__sighandler_t)  1)  /* Ignore signal.  */
 
+#ifdef __USE_UNIX98
+# define SIG_HOLD ((__sighandler_t)  2)        /* Add signal to hold mask.  */
+#endif
+
+/* Signals in the 1-15 range are defined with their historical numbers.
+   Signals in the 20-25 range are relatively new and have no ingrained
+   numbers. */
 
 /* ANSI signals.  */
-#define        SIGABRT 1       /* Abnormal termination.  */
-#define        SIGFPE  2       /* Erroneous arithmetic operation.  */
-#define        SIGILL  3       /* Illegal instruction.  */
-#define        SIGINT  3       /* Interactive attention signal.  */
-#define        SIGSEGV 4       /* Invalid access to storage.  */
-#define        SIGTERM 5       /* Termination request.  */
-
-/* POSIX signals.  */
-#define        SIGHUP  6       /* Hangup.  */
-#define        SIGQUIT 7       /* Quit.  */
-#define        SIGPIPE 8       /* Broken pipe.  */
+#define        SIGINT  2       /* Interactive attention signal.  */
+#define        SIGILL  4       /* Illegal instruction.  */
+#define        SIGABRT 6       /* Abnormal termination.  */
+#define        SIGFPE  8       /* Erroneous arithmetic operation.  */
+#define        SIGSEGV 11      /* Invalid access to storage.  */
+#define        SIGTERM 15      /* Termination request.  */
+
+/* Historical signals specified by POSIX. */
+#define        SIGHUP  1       /* Hangup.  */
+#define        SIGQUIT 3       /* Quit.  */
 #define        SIGKILL 9       /* Kill (cannot be blocked, caught, or ignored).  */
-#define        SIGALRM 10      /* Alarm clock.  */
-#define        SIGSTOP 11      /* Stop (cannot be blocked, caught, or ignored).  */
-#define        SIGTSTP 12      /* Keyboard stop.  */
-#define        SIGCONT 13      /* Continue.  */
-#define        SIGCHLD 14      /* Child terminated or stopped.  */
-#define        SIGTTIN 15      /* Background read from control terminal.  */
-#define        SIGTTOU 16      /* Background write to control terminal.  */
+#define        SIGPIPE 13      /* Broken pipe.  */
+#define        SIGALRM 14      /* Alarm clock.  */
 
-#endif /* <signal.h> included.  */
+/* New(er) POSIX signals. */
+#define        SIGSTOP 20      /* Stop (cannot be blocked, caught, or ignored).  */
+#define        SIGCONT 21      /* Continue.  */
+#define        SIGTSTP 22      /* Keyboard stop.  */
+#define        SIGTTIN 23      /* Background read from control terminal.  */
+#define        SIGTTOU 24      /* Background write to control terminal.  */
+#define        SIGCHLD 25      /* Child terminated or stopped.  */
 
-#define        _NSIG   17
+#define        _NSIG   26
+
+/* Archaic names for compatibility. */
+#define        SIGIOT  SIGABRT /* IOT instruction, abort() on a PDP11 */
+#define        SIGCLD  SIGCHLD /* Old System V name */
+
+#endif /* <signal.h> included.  */
index d65e4b0..179e1ec 100644 (file)
@@ -75,7 +75,9 @@ extern int select __P ((int __nfds, __fd_set *__readfds,
                        __fd_set *__writefds, __fd_set *__exceptfds,
                        struct timeval *__timeout));
 
-#ifdef __USE_POSIX
+#ifdef __USE_GNU
+/* XXX Once/if POSIX.1g gets official this prototype will be available
+   when defining __USE_POSIX.  */
 /* Same as above only that the TIMEOUT value is given with higher
    resolution.  This version should be used.  */
 extern int pselect __P ((int __nfds, __fd_set *__readfds,
index 6b4693f..e750125 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1993, 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1993, 1996, 1998 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
 #ifdef _SIGNAL_H
 
 /* Fake signal functions.  */
-extern void _sig_ign __P ((int sig));
-extern void _sig_dfl __P ((int sig));
 
-#define        SIG_ERR ((__sighandler_t) 0) /* Error return.  */
-#define        SIG_DFL _sig_dfl        /* Default action.  */
-#define        SIG_IGN _sig_ign        /* Ignore signal.  */
+#define        SIG_ERR  ((__sighandler_t) -1)  /* Error return.  */
+#define        SIG_DFL  ((__sighandler_t)  0)  /* Default action.  */
+#define        SIG_IGN  ((__sighandler_t)  1)  /* Ignore signal.  */
 
+#ifdef __USE_UNIX98
+# define SIG_HOLD ((__sighandler_t)  2)        /* Add signal to hold mask.  */
+#endif
+
+/* Signals in the 1-15 range are defined with their historical numbers.
+   Signals in the 20-25 range are relatively new and have no ingrained
+   numbers. */
 
 /* ANSI signals.  */
-#define        SIGABRT 1       /* Abnormal termination.  */
-#define        SIGFPE  2       /* Erroneous arithmetic operation.  */
-#define        SIGILL  3       /* Illegal instruction.  */
-#define        SIGINT  3       /* Interactive attention signal.  */
-#define        SIGSEGV 4       /* Invalid access to storage.  */
-#define        SIGTERM 5       /* Termination request.  */
-
-/* POSIX signals.  */
-#define        SIGHUP  6       /* Hangup.  */
-#define        SIGQUIT 7       /* Quit.  */
-#define        SIGPIPE 8       /* Broken pipe.  */
+#define        SIGINT  2       /* Interactive attention signal.  */
+#define        SIGILL  4       /* Illegal instruction.  */
+#define        SIGABRT 6       /* Abnormal termination.  */
+#define        SIGFPE  8       /* Erroneous arithmetic operation.  */
+#define        SIGSEGV 11      /* Invalid access to storage.  */
+#define        SIGTERM 15      /* Termination request.  */
+
+/* Historical signals specified by POSIX. */
+#define        SIGHUP  1       /* Hangup.  */
+#define        SIGQUIT 3       /* Quit.  */
 #define        SIGKILL 9       /* Kill (cannot be blocked, caught, or ignored).  */
-#define        SIGALRM 10      /* Alarm clock.  */
-#define        SIGSTOP 11      /* Stop (cannot be blocked, caught, or ignored).  */
-#define        SIGTSTP 12      /* Keyboard stop.  */
-#define        SIGCONT 13      /* Continue.  */
-#define        SIGCHLD 14      /* Child terminated or stopped.  */
-#define        SIGTTIN 15      /* Background read from control terminal.  */
-#define        SIGTTOU 16      /* Background write to control terminal.  */
+#define        SIGPIPE 13      /* Broken pipe.  */
+#define        SIGALRM 14      /* Alarm clock.  */
 
-#endif /* <signal.h> included.  */
+/* New(er) POSIX signals. */
+#define        SIGSTOP 20      /* Stop (cannot be blocked, caught, or ignored).  */
+#define        SIGCONT 21      /* Continue.  */
+#define        SIGTSTP 22      /* Keyboard stop.  */
+#define        SIGTTIN 23      /* Background read from control terminal.  */
+#define        SIGTTOU 24      /* Background write to control terminal.  */
+#define        SIGCHLD 25      /* Child terminated or stopped.  */
 
-#define        _NSIG   17
+#define        _NSIG   26
+
+/* Archaic names for compatibility. */
+#define        SIGIOT  SIGABRT /* IOT instruction, abort() on a PDP11 */
+#define        SIGCLD  SIGCHLD /* Old System V name */
+
+#endif /* <signal.h> included.  */
index 523084b..b357c45 100644 (file)
@@ -25,6 +25,7 @@
 struct sigaction
   {
     /* Signal handler.  */
+#ifdef __USE_POSIX199309
     union
       {
        /* Used if SA_SIGINFO is not set.  */
@@ -33,8 +34,11 @@ struct sigaction
        void (*sa_sigaction) __PMT ((int, siginfo_t *, void *));
       }
     __sigaction_handler;
-#define sa_handler     __sigaction_handler.sa_handler
-#define sa_sigaction   __sigaction_handler.sa_sigaction
+# define sa_handler    __sigaction_handler.sa_handler
+# define sa_sigaction  __sigaction_handler.sa_sigaction
+#else
+    __sighandler_t sa_handler;
+#endif
 
     /* Additional set of signals to be blocked.  */
     __sigset_t sa_mask;