On Thu, 20 Apr 2000, Anatoly Vorobey wrote:

# Look into src/lib/libc/i386/gen/_setjmp.S and other files in
# the same directory for setjmp() and sigsetmp(). Basically, it'll store
# edx, ebx, esp, ebp, esi, edi, and the CPU control word, in that order.

Now I finally understand why trying to use the following
construct to get the signalmask no longer works with
version >= 4.0.

        int signalmask = my_sigjmp_buf._sjb[6];

The status control word is there now and the signalmask
comes after because its size can vary.  In theory at least
I should be able to get the signalmask now with something
along the following lines.

        memcpy(signalmask, &(my_sigjmp_buf._sjb[7]),
            sizeof(sigset_t));

Thanks.

-steve



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to