I have difficulties in finding good documentation of cancellation points among "ordinary" library functions
I manually noted in the past the following list but it might be incomplete and/or not up to date:
//CANCELATION POINTS
/*
* pthread_cond_wait
* pthread_cond_timedwait_relative
* pthread_join
* sem_wait
*
//might be some of the following are ASYNC (not internally DEFERRED). In that case cancellation handlers will run anyway.
close(2).
fcntl(2).
fsync(2).
lseek(2).
msync(2).
nanosleep(2).
open(2).
pause(2).
read(2).
system(3).
tcdrain(2).
wait(2).
waitpid(2).
write(2).
*
* accept(2)
* connect(2)
* recv(2)
* recvfrom(2).
* recvmsg(2).
* send(2).
* sendmsg(2).
* sendto(2).
Could you please suggest a link where to find this documentat. (complete! easy! up to date!)?
For instance here http://linux.die.net/man/2/accept accept is not mentioned as a cancellation point but i had noted it down! I probably read it somewhere on the internet do not remember where..
Quite confusing..