From: mmj Date: Mon, 2 May 2005 19:29:55 +0000 (+1000) Subject: Use sigaction() instead of signal() X-Git-Tag: RELEASE_1_2_12_RC1~88 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7e6fbdd4cfa6fa534c90f44c8b438a2a4d587d03;p=thirdparty%2Fmlmmj.git Use sigaction() instead of signal() --- diff --git a/src/mlmmj-send.c b/src/mlmmj-send.c index d5d9401a..fc800822 100644 --- a/src/mlmmj-send.c +++ b/src/mlmmj-send.c @@ -644,6 +644,7 @@ int main(int argc, char **argv) uid_t uid; struct strlist stl; unsigned short smtpport = 25; + struct sigaction sigact; CHECKFULLPATH(argv[0]); @@ -654,7 +655,10 @@ int main(int argc, char **argv) myfree(bindir); /* install signal handler for SIGTERM */ - if(signal(SIGTERM, catch_sig_term) == SIG_ERR) + sigact.sa_handler = catch_sig_term; + sigact.sa_flags = 0; + sigemptyset(&sigact.sa_mask); + if(sigaction(SIGTERM, &sigact, NULL) < 0) log_error(LOG_ARGS, "Could not install SIGTERM handler!"); while ((opt = getopt(argc, argv, "aVDhm:l:L:R:F:T:r:s:")) != -1){