diff options
author | chatty | 2000-11-28 14:19:34 +0000 |
---|---|---|
committer | chatty | 2000-11-28 14:19:34 +0000 |
commit | 09f57c8dffd9a8ba0983cce13381aef716f43801 (patch) | |
tree | 49c5faa7cd1b76eea36169b5ecce09411b2802c2 /utils/testsignal.cc | |
parent | 2575756ec6f41bd05bf4505ccc0253fad0ed77c4 (diff) | |
download | ivy-league-09f57c8dffd9a8ba0983cce13381aef716f43801.zip ivy-league-09f57c8dffd9a8ba0983cce13381aef716f43801.tar.gz ivy-league-09f57c8dffd9a8ba0983cce13381aef716f43801.tar.bz2 ivy-league-09f57c8dffd9a8ba0983cce13381aef716f43801.tar.xz |
*** empty log message ***
Diffstat (limited to 'utils/testsignal.cc')
-rw-r--r-- | utils/testsignal.cc | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/utils/testsignal.cc b/utils/testsignal.cc new file mode 100644 index 0000000..4971b51 --- /dev/null +++ b/utils/testsignal.cc @@ -0,0 +1,74 @@ +#include <stdio.h> +#include <stdlib.h> +#include "Signal.h" + +extern "C" { + int write (int, const void*, unsigned int); + int strlen (const char*); +} + +const char* signal_strings [32] = { + "SIGHUP\n", + "SIGINT\n", + "SIGQUIT\n", + "SIGILL\n", + "SIGTRAP\n", + "SIGABRT\n", + "SIGEMT\n", + "SIGFPE\n", + "SIGKILL\n", + "SIGBUS\n", + "SIGSEGV\n", + "SIGSYS\n", + "SIGPIPE\n", + "SIGALRM\n", + "SIGTERM\n", + "SIGUSR1\n", + "SIGUSR2\n", + "SIGCHLD\n", + "SIGPWR\n", + "SIGVTALRM\n", + "SIGPROF\n", + "SIGIO\n", + "SIGWINDOW\n", + "SIGSTOP\n", + "SIGTSTP\n", + "SIGCONT\n", + "SIGTTIN\n", + "SIGTTOU\n", + "SIGURG\n", + "SIGLOST\n", + "SIGRESERVE\n", + "SIGDIL\n" +}; + +void +outputsig (int sig) +{ + write (1, signal_strings [sig-1], strlen (signal_strings [sig-1])); +} + +void +ignoresig (int) +{ +} + +main () +{ + { + printf ("block signal 2\n"); + CcuSignalBlocker b (2); + getchar (); + } + printf ("print signals 1 and 2\n"); + CcuSignalHandler s1 (1, outputsig); + CcuSignalHandler s3 (2, outputsig); + getchar (); + { + printf ("ignore signal 1\n"); + CcuSignalHandler s2 (1, ignoresig); + getchar (); + } + printf ("print again signal 1\n"); + while (1); +} |