[net.unix] 4.2 signal handling

rael@ecr.UUCP (Paul Philp) (02/27/85)

I have just discovered that 4.2 BSD signals do not
interupt system calls. Is this absolutely true,
or is it an option, or does it depend on something else.
This will make porting a whole ton of existing software
incredibly difficult.

On the other hand, it will make error processing considrably
easier. Either way, it would be nice to know what I am
getting into with 4.2, and I can start taking proper
precautions with any software I write in the future.

				Paul

gwyn@Brl-Vld.ARPA (VLD/VMB) (03/03/85)

Yes, on 4.2BSD interrupted system calls are restarted when the user
interrupt handler returns.  There is no simple way to obtain the
previous UNIX behavior (EINTR error return from interrupted "slow"
system calls).  I once posted an emulation of signal(2) for 4.2BSD;
it was VAX-specific but the kludgery used could be adapted to other
architectures.  If you are interested in this routine, send me mail.
	gwyn@brl.ARPA		decvax!brl-bmd!gwyn