diff options
author | Ed Maste <emaste@FreeBSD.org> | 2021-02-14 21:07:21 +0000 |
---|---|---|
committer | Ed Maste <emaste@FreeBSD.org> | 2021-02-14 21:07:21 +0000 |
commit | db903103f46785ea0bba0f228691e1f8fb3a643d (patch) | |
tree | 74026f96189cd1c487ea2c8e038b921e3861e1b1 /misc.c | |
parent | 82e5fdc50050d6dccf1f547818312aebd3b6626e (diff) | |
download | src-db903103f46785ea0bba0f228691e1f8fb3a643d.tar.gz src-db903103f46785ea0bba0f228691e1f8fb3a643d.zip |
Diffstat (limited to 'misc.c')
-rw-r--r-- | misc.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -1,4 +1,4 @@ -/* $OpenBSD: misc.c,v 1.146 2020/01/28 01:49:36 djm Exp $ */ +/* $OpenBSD: misc.c,v 1.147 2020/04/25 06:59:36 dtucker Exp $ */ /* * Copyright (c) 2000 Markus Friedl. All rights reserved. * Copyright (c) 2005,2006 Damien Miller. All rights reserved. @@ -2255,11 +2255,13 @@ ssh_signal(int signum, sshsig_t handler) struct sigaction sa, osa; /* mask all other signals while in handler */ - bzero(&sa, sizeof(sa)); + memset(&sa, 0, sizeof(sa)); sa.sa_handler = handler; sigfillset(&sa.sa_mask); +#if defined(SA_RESTART) && !defined(NO_SA_RESTART) if (signum != SIGALRM) sa.sa_flags = SA_RESTART; +#endif if (sigaction(signum, &sa, &osa) == -1) { debug3("sigaction(%s): %s", strsignal(signum), strerror(errno)); return SIG_ERR; |