I noticed that you are checking for EINTR across all socket functions. Can you explain why? As far as I understand, in order for a system call to be interrupted, the following conditions must be met:
The process must be blocked by a system call (which only occurs in select since you are using a non-blocking socket).
The process must be catching signals, but the code does not catch any signals.
I noticed that you are checking for
EINTR
across all socket functions. Can you explain why? As far as I understand, in order for a system call to be interrupted, the following conditions must be met: