In article <[EMAIL PROTECTED]>, Bruce Evans <[EMAIL PROTECTED]> wrote: > On Tue, 27 May 2003, Terry Lambert wrote: > > > BTW: signal stacks are irrelevent; technically, you are not > > allowed to do floating point in signal handlers anyway. 8-). > > Not true. Signal handlers can do almost anything with local variables. > The main relevant restrictions on them is that they must not access > any static or global variables (other than write-only accesses to > objects whose type is volatile sig_atomic_t) or call any functions > that might make such accesses (which rules out calling most functions > including everything in libm).
Those are the rules set forth by the C standard, but POSIX.1 demands much more from the implementation. There's a whole list of functions that POSIX says must be safely callable from signal handlers. Almost all of the I/O calls are included. Even fork and exec[lv]e must be callable from signal handlers. John -- John Polstra John D. Polstra & Co., Inc. Seattle, Washington USA "Two buttocks cannot avoid friction." -- Malawi saying _______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "[EMAIL PROTECTED]"