X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=src%2Fprocess2.c;h=87871e78675ecf56fa35ee9a4df9ab2712c667e7;hb=621bd5704dfeeccf51097ba255010bd37054972c;hp=2b9a6f31feaf9c50d4d0135d08e1e7427cdf0f7b;hpb=08dc9bf01302aa7d9a75efca24de1a9b19ec5c9e;p=wsti_so.git diff --git a/src/process2.c b/src/process2.c index 2b9a6f3..87871e7 100644 --- a/src/process2.c +++ b/src/process2.c @@ -28,25 +28,22 @@ int write_descriptor; */ void sig_handler(int signo) { + fprintf(stderr, "[%s] Received %s!\n", "process2", strsignal(signo)); if (signo == SIGUSR1) { - fprintf(stderr, "[%s] Received SIGUSR1!\n", "process2"); } - else if (signo == SIGQUIT) { - fprintf(stderr, "[%s] Received SIGQUIT!\n", "process2"); + else if (signo == SIGTERM) { fprintf(stderr, "[%s] > Releasing resources\n", "process2"); close(read_descriptor); close(write_descriptor); unlink(write_descriptor); exit(0); } - else if (signo == SIGINT) { - fprintf(stderr, "[%s] Received SIGINT!\n", "process2"); + else if (signo == SIGTSTP) { fprintf(stderr, "[%s] > Closing pipes\n", "process2"); close(read_descriptor); close(write_descriptor); } else if (signo == SIGCONT) { - fprintf(stderr, "[%s] Received SIGCONT!\n", "process2"); fprintf(stderr, "[%s] > Opening pipes\n", "process2"); read_descriptor = open(read_pipe, O_RDONLY); write_descriptor = open(write_pipe, O_WRONLY); @@ -82,11 +79,11 @@ int main(void) { if (signal(SIGUSR1, sig_handler) == SIG_ERR) { fprintf(stderr, "can't catch SIGUSR1\n"); } - if (signal(SIGQUIT, sig_handler) == SIG_ERR) { - fprintf(stderr, "can't catch SIGQUIT\n"); + if (signal(SIGTERM, sig_handler) == SIG_ERR) { + fprintf(stderr, "can't catch SIGTERM\n"); } - if (signal(SIGINT, sig_handler) == SIG_ERR) { - fprintf(stderr, "can't catch SIGINT\n"); + if (signal(SIGTSTP, sig_handler) == SIG_ERR) { + fprintf(stderr, "can't catch SIGTSTP\n"); } if (signal(SIGCONT, sig_handler) == SIG_ERR) { fprintf(stderr, "can't catch SIGCONT\n");