diff options
author | Wayne Davison <wayned@samba.org> | 2006-02-02 02:39:25 +0000 |
---|---|---|
committer | Wayne Davison <wayned@samba.org> | 2006-02-02 02:39:25 +0000 |
commit | 2b28968dfb36792ccdbe3b7b9be800b97d3f13f6 (patch) | |
tree | 8d5b215b0736ec18a4c9a7733683143333c4dc52 /cleanup.c | |
parent | 90b13cf60687c4d2e18964423cd44abab6500167 (diff) | |
download | rsync-2b28968dfb36792ccdbe3b7b9be800b97d3f13f6.tar.gz rsync-2b28968dfb36792ccdbe3b7b9be800b97d3f13f6.tar.bz2 rsync-2b28968dfb36792ccdbe3b7b9be800b97d3f13f6.zip |
Call SIGACTION() instead of signal().
Diffstat (limited to 'cleanup.c')
-rw-r--r-- | cleanup.c | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -26,6 +26,10 @@ extern int keep_partial; extern int log_got_error; extern char *partial_dir; +#if defined HAVE_SIGACTION && defined HAVE_SIGPROCMASK +static struct sigaction sigact; +#endif + /** * Close all open sockets and files, allowing a (somewhat) graceful * shutdown() of socket connections. This eliminates the abortive @@ -94,8 +98,8 @@ void _exit_cleanup(int code, const char *file, int line) } inside_cleanup++; - signal(SIGUSR1, SIG_IGN); - signal(SIGUSR2, SIG_IGN); + SIGACTION(SIGUSR1, SIG_IGN); + SIGACTION(SIGUSR2, SIG_IGN); if (verbose > 3) { rprintf(FINFO,"_exit_cleanup(code=%d, file=%s, line=%d): entered\n", |