Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!rochester!pt!ius2.cs.cmu.edu!edw
From: edw@ius2.cs.cmu.edu (Eddie Wyatt)
Newsgroups: comp.unix.wizards
Subject: Re: No more signals
Message-ID: <1216@ius2.cs.cmu.edu>
Date: Thu, 25-Jun-87 17:49:46 EDT
Article-I.D.: ius2.1216
Posted: Thu Jun 25 17:49:46 1987
Date-Received: Sun, 5-Jul-87 19:46:48 EDT
References: <48300005@hcx1> <1714@munnari.oz> <492@its63b.ed.ac.uk>
Organization: Carnegie-Mellon University, CS/RI
Lines: 24
Summary: y

In article <492@its63b.ed.ac.uk>, simon@its63b.ed.ac.uk (Simon Brown) writes:
> 
> One really nasty bug that really needs fixing fast is that the so-called
> "safe signal" mechanism is anything but! If I send 5 SIGINT signals to a
> process, there is no guarentee that that process will receive them all - ok,
> it will certainly receive at least one, but whether it receives 2,3,4 or 5
> is pretty much left to chance!
> 

  This really isn't a bug as far as I know.  The documentation for signal
and sigvec specifically say that the interrupt causing the interrupt
handler to be called is mask out during the time the interrupt handler
is executing and then restored  at the end of the call.  If any of
those interrupts come during the time the interrupt handler is
called then they are lost, simple is that.  You can always
have the interrupt handle reinstate the interrupt (sigsetmask) if
you really want to.

-- 
					Eddie Wyatt

e-mail: edw@ius2.cs.cmu.edu

terrorist, cryptography, DES, drugs, cipher, secret, decode, NSA, CIA, NRO.