The explain_fcntl_or_die function is used to call the fcntl(2) system call. On failure an explanation
will be printed to stderr, obtained from explain_fcntl(3), and then the process terminates by calling
exit(EXIT_FAILURE).
This function is intended to be used in a fashion similar to the following example:
int result = explain_fcntl_or_die(fildes, command, arg);
fildes The fildes, exactly as to be passed to the fcntl(2) system call.
command The command, exactly as to be passed to the fcntl(2) system call.
arg The arg, exactly as to be passed to the fcntl(2) system call.
Returns:
This function only returns on success, and it returns whatever was returned by the fcntl(2) call;
depending on the command, this may have no use. On failure, prints an explanation and exits, it
does not return.