Is there any expert out there that can help me with the following?
I have the following system calls in C:
access()
unlink()
setsockopt()
fcntl()
setsid()
socket()
bind()
listen()
I want to know if they may fail with error code -1 and errno EINTR/EAGAIN.
Should I have to handle EINTR/EAGAIN for these?
The documentation do not refer anything related to EINTR/EAGAIN but many people I see handle it.
Which is the correct?
Here is how I register signal handlers : https://gitorious.org/zepto-web-server/zepto-web-server/source/b1b03b9ecccfe9646e34caf3eb04689e2bbc54dd:src/signal-dispatcher-utility.c
With this configuration: https://gitorious.org/zepto-web-server/zepto-web-server/source/b1b03b9ecccfe9646e34caf3eb04689e2bbc54dd:src/server-signals-support-utility.c
Also here is a commit that I added some EINTR/EAGAIN handling in some system calls that I know that return EINTR or EAGAIN : https://gitorious.org/zepto-web-server/zepto-web-server/commit/b1b03b9ecccfe9646e34caf3eb04689e2bbc54dd
See http://man7.org/linux/man-pages/man7/signal.7.html -- start reading near the bottom where it talks about "Interruption of system calls and library functions..." This is a Linux man page, but the info is pretty generally applicable to any Unix/Posix/Linux-flavored system.