diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2021-11-05 13:28:23 +0100 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2021-11-05 13:28:23 +0100 |
commit | 8c787c3591c1c885b91a54128835b400858c5cca (patch) | |
tree | eca1b776912a305c4d45b3964038278a2fae1ead /debian/htdig/htdig-3.2.0b6/htdb/util_sig.cc | |
parent | fe188b907cdf30dfdfe0eba9412e7f8749fec158 (diff) | |
download | extra-dependencies-8c787c3591c1c885b91a54128835b400858c5cca.tar.gz extra-dependencies-8c787c3591c1c885b91a54128835b400858c5cca.zip |
DEB htdig: Added to repository.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'debian/htdig/htdig-3.2.0b6/htdb/util_sig.cc')
-rw-r--r-- | debian/htdig/htdig-3.2.0b6/htdb/util_sig.cc | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/debian/htdig/htdig-3.2.0b6/htdb/util_sig.cc b/debian/htdig/htdig-3.2.0b6/htdb/util_sig.cc new file mode 100644 index 00000000..7dc19eb2 --- /dev/null +++ b/debian/htdig/htdig-3.2.0b6/htdb/util_sig.cc @@ -0,0 +1,69 @@ +// Part of the ht://Dig package <http://www.htdig.org/> +// Copyright (c) 1999-2004 The ht://Dig Group +// For copyright details, see the file COPYING in your distribution +// or the GNU Library General Public License (LGPL) version 2 or later +// <http://www.gnu.org/copyleft/lgpl.html> +// +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 2000 + * Sleepycat Software. All rights reserved. + */ + +#ifdef HAVE_CONFIG_H +#include "htconfig.h" +#endif /* HAVE_CONFIG_H */ + +#include <sys/types.h> +#include <signal.h> + +extern "C" { +#include "db_int.h" +#include "common_ext.h" +} + +static int interrupt; +static void onint(int); + +/* + * onint -- + * Interrupt signal handler. + */ +static void onint(int signo) +{ + if ((interrupt = signo) == 0) + interrupt = SIGINT; +} + +void __db_util_siginit() +{ + /* + * Initialize the set of signals for which we want to clean up. + * Generally, we try not to leave the shared regions locked if + * we can. + */ +#ifdef SIGHUP + (void) signal(SIGHUP, onint); +#endif + (void) signal(SIGINT, onint); +#ifdef SIGPIPE + (void) signal(SIGPIPE, onint); +#endif + (void) signal(SIGTERM, onint); +} + +int __db_util_interrupted() +{ + return (interrupt != 0); +} + +void __db_util_sigresend() +{ + /* Resend any caught signal. */ + if (__db_util_interrupted != 0) { + (void) signal(interrupt, SIG_DFL); + (void) raise(interrupt); + /* NOTREACHED */ + } +} |