major improvements to cancellation handling

- there is no longer any risk of spoofing cancellation requests, since
  the cancel flag is set in pthread_cancel rather than in the signal
  handler.

- cancellation signal is no longer unblocked when running the
  cancellation handlers. instead, pthread_create will cause any new
  threads created from a cancellation handler to unblock their own
  cancellation signal.

- various tweaks in preparation for POSIX timer support.
This commit is contained in:
Rich Felker 2011-03-29 12:58:22 -04:00
commit bf619d82c8
4 changed files with 19 additions and 8 deletions

View file

@ -18,6 +18,7 @@ struct __libc {
FILE *ofl_head;
int ofl_lock;
void (*lockfile)(FILE *);
void (*sigtimer)();
};