It's been rumoured that Christophe Leroy said:
> 
> Hello,
> 
> I'm using gcc on Linux RedHat 6.2
> It's said in man that signal() behaviour is SYSV one. But, when I
> compile my programs, signal() has got the BSD behaviour. Why ?
> How can I make it have SYSV behaviour ?
> 
> read() doesn't return on signal. Why ? I want it to return with
> errno=EINTR. How can I do that ?

This may not be helpful, but last time I did this, an interrupt of a
blocked read() of a socket and also of a serial port did indeed return 
EINTR (or EAGAIN?) .  This was on older versions of redhat.

Not all signals would do this e.g. ignored signals wouldn't.  What
signal are you using?

--linas

> 
> Thanks
> 
> Christophe
> 

Reply via email to