From c1bde612020b106cf3db511cf4961791c206998f Mon Sep 17 00:00:00 2001 From: mycroft Date: Fri, 28 Apr 1995 21:30:16 +0000 Subject: Use POSIX signal and tty semantics. --- sail/machdep.h | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) (limited to 'sail') diff --git a/sail/machdep.h b/sail/machdep.h index a6721037..087d5636 100644 --- a/sail/machdep.h +++ b/sail/machdep.h @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.h,v 1.3 1995/04/22 10:37:00 cgd Exp $ */ +/* $NetBSD: machdep.h,v 1.4 1995/04/28 21:30:16 mycroft Exp $ */ /* * Copyright (c) 1983, 1993 @@ -37,12 +37,18 @@ #define TIMEOUT 300 /* Sync() timeout in seconds */ -/* for 4.2bsd machines */ -#define blockalarm() ((void) sigblock(1 << SIGALRM-1)) -#define unblockalarm() ((void) sigsetmask(sigblock(0) & ~(1 << SIGALRM-1))) - -/* for 2.9bsd machines (onyx) -typedef int void; -#define blockalarm() ((void) sighold(SIGALRM)) -#define unblockalarm() ((void) sigrelse(SIGALRM)) -*/ +/* for POSIX systems */ +#define blockalarm() \ + do { \ + sigset_t sigset; \ + sigemptyset(&sigset); \ + sigaddset(&sigset, SIGALRM); \ + sigprocmask(SIG_BLOCK, &sigset, (sigset_t *)0); \ + } while (0) +#define unblockalarm() \ + do { \ + sigset_t sigset; \ + sigemptyset(&sigset); \ + sigaddset(&sigset, SIGALRM); \ + sigprocmask(SIG_UNBLOCK, &sigset, (sigset_t *)0); \ + } while (0) -- cgit v1.2.3-56-ge451