diff options
author | Chet Ramey <chet.ramey@case.edu> | 2014-02-26 09:36:43 -0500 |
---|---|---|
committer | Chet Ramey <chet.ramey@case.edu> | 2014-02-26 09:36:43 -0500 |
commit | ac50fbac377e32b98d2de396f016ea81e8ee9961 (patch) | |
tree | f71882366b98fedf1a88a063103219a4935de926 /sig.h | |
parent | 4539d736f1aff232857a854fd2a68df0c98d9f34 (diff) | |
download | android_external_bash-ac50fbac377e32b98d2de396f016ea81e8ee9961.tar.gz android_external_bash-ac50fbac377e32b98d2de396f016ea81e8ee9961.tar.bz2 android_external_bash-ac50fbac377e32b98d2de396f016ea81e8ee9961.zip |
Bash-4.3 distribution sources and documentation
Diffstat (limited to 'sig.h')
-rw-r--r-- | sig.h | 26 |
1 files changed, 14 insertions, 12 deletions
@@ -1,6 +1,6 @@ /* sig.h -- header file for signal handler definitions. */ -/* Copyright (C) 1994-2009 Free Software Foundation, Inc. +/* Copyright (C) 1994-2013 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -25,6 +25,10 @@ #include "stdc.h" +#if !defined (SIG_DFL) +# include <signal.h> /* for sig_atomic_t */ +#endif + #if !defined (SIGABRT) && defined (SIGIOT) # define SIGABRT SIGIOT #endif @@ -47,9 +51,6 @@ typedef RETSIGTYPE SigHandler __P((int)); extern SigHandler *set_signal_handler __P((int, SigHandler *)); /* in sig.c */ #endif /* _POSIX_VERSION */ -/* Definitions used by the job control code. */ -#if defined (JOB_CONTROL) - #if !defined (SIGCHLD) && defined (SIGCLD) # define SIGCHLD SIGCLD #endif @@ -96,22 +97,21 @@ do { \ sigprocmask (SIG_BLOCK, &nvar, &ovar); \ } while (0) +#define UNBLOCK_SIGNAL(ovar) sigprocmask (SIG_SETMASK, &ovar, (sigset_t *) NULL) + #if defined (HAVE_POSIX_SIGNALS) -# define BLOCK_CHILD(nvar, ovar) \ - BLOCK_SIGNAL (SIGCHLD, nvar, ovar) -# define UNBLOCK_CHILD(ovar) \ - sigprocmask (SIG_SETMASK, &ovar, (sigset_t *) NULL) +# define BLOCK_CHILD(nvar, ovar) BLOCK_SIGNAL (SIGCHLD, nvar, ovar) +# define UNBLOCK_CHILD(ovar) UNBLOCK_SIGNAL(ovar) #else /* !HAVE_POSIX_SIGNALS */ # define BLOCK_CHILD(nvar, ovar) ovar = sigblock (sigmask (SIGCHLD)) # define UNBLOCK_CHILD(ovar) sigsetmask (ovar) #endif /* !HAVE_POSIX_SIGNALS */ -#endif /* JOB_CONTROL */ - /* Extern variables */ -extern volatile int sigwinch_received; +extern volatile sig_atomic_t sigwinch_received; +extern volatile sig_atomic_t sigterm_received; -extern int interrupt_immediately; +extern int interrupt_immediately; /* no longer used */ extern int terminate_immediately; /* Functions from sig.c. */ @@ -129,6 +129,8 @@ extern sighandler sigwinch_sighandler __P((int)); extern void set_sigwinch_handler __P((void)); extern void unset_sigwinch_handler __P((void)); +extern sighandler sigterm_sighandler __P((int)); + /* Functions defined in trap.c. */ extern SigHandler *set_sigint_handler __P((void)); extern SigHandler *trap_to_sighandler __P((int)); |