diff options
Diffstat (limited to 'winsup/testsuite/winsup.api/signal-into-win32-api.c')
-rwxr-xr-x | winsup/testsuite/winsup.api/signal-into-win32-api.c | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/winsup/testsuite/winsup.api/signal-into-win32-api.c b/winsup/testsuite/winsup.api/signal-into-win32-api.c deleted file mode 100755 index 26d0cd8e0..000000000 --- a/winsup/testsuite/winsup.api/signal-into-win32-api.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Test if signal is delivered to the application which is - * currently inside of native syscall - */ - -#include <errno.h> -#include <signal.h> -#include <stdio.h> -#include <unistd.h> -#include <windows.h> - -int saw_sigchld = 0; -int sleep_stage = -1; - -void -handle_child (int signo) -{ - printf ( "saw SIGCHLD, %d", sleep_stage); - saw_sigchld = 1; -} - -int -main (int argc, char** argv) -{ - pid_t pid; - if (argc > 1) - { - Sleep (200); - return 0; - } - - signal (SIGCHLD, handle_child); - pid = fork (); - if (pid < 0) - { - perror ( "fork" ); - return 2; - } - else if (pid == 0) - execl ( argv[0], argv[0], "child", 0 ); - else - { - sleep_stage = 0; - Sleep (3000); - sleep_stage = 1; - sleep (10); - sleep_stage = 2; - if (!saw_sigchld) - { - printf ( "oops\n" ); - kill (pid, SIGTERM); - return 1; - } - else - return 0; - } - exit (0); -} |