From 1765dde226337c38b429ec5b3cbd452142270c31 Mon Sep 17 00:00:00 2001 From: Assar Westerlund Date: Sun, 7 Sep 1997 23:35:11 +0000 Subject: [PATCH] (main): use sigaction without SA_RESTART to break out of select when a signal arrives git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@3422 ec53bebd-3082-4978-b11e-865c3cabbd6b --- kpasswd/kpasswdd.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/kpasswd/kpasswdd.c b/kpasswd/kpasswdd.c index 13d566d2b..6196074a3 100644 --- a/kpasswd/kpasswdd.c +++ b/kpasswd/kpasswdd.c @@ -562,7 +562,19 @@ main (int argc, char **argv) set_progname (argv[0]); krb5_openlog (context, "kpasswdd", &log_facility); - signal (SIGINT, sigterm); +#ifdef HAVE_SIGACTION + { + struct sigaction sa; + + sa.sa_flags = 0; + sa.sa_handler = sigterm; + sigemptyset(&sa.sa_mask); + + sigaction(SIGINT, &sa, NULL); + } +#else + signal(SIGINT, sigterm); +#endif return doit (krb5_getportbyname (context, "kpasswd", "udp", KPASSWD_PORT)); }