libexplain  1.4.D001
Functions
libexplain/buffer/errno/fcntl.h File Reference

Go to the source code of this file.

Functions

void explain_buffer_errno_fcntl (struct explain_string_buffer_t *sb, int errnum, int fildes, int command, long arg)
int explain_fcntl_command_parse_or_die (const char *text, const char *captn)

Function Documentation

void explain_buffer_errno_fcntl ( struct explain_string_buffer_t sb,
int  errnum,
int  fildes,
int  command,
long  arg 
)

The explain_buffer_errno_fcntl function is used to obtain an explanation of an error returned by the fcntl(2) system call. The least the message will contain is the value of strerror(errnum), but usually it will do much better, and indicate the underlying cause in more detail.

Parameters:
sbThe string buffer in which the message is being constructed. If a safe buffer is specified, this function is thread safe.
errnumThe error value to be decoded, usually obtain from the errno global variable just before this function is called. This is necessary if you need to call any code between the system call to be explained and this function, because many libc functions will alter the value of errno.
fildesThe original fildes, exactly has passed to the fcntl(2) system call.
commandThe original command, exactly has passed to the fcntl(2) system call.
argThe original arg, exactly has passed to the fcntl(2) system call (or zero if the original call didn't need a mode argument, or cast to long if it was a pointer).

Definition at line 425 of file fcntl.c.

int explain_fcntl_command_parse_or_die ( const char *  text,
const char *  captn 
)

The explain_fcntl_command_parse function may be used to parse a text representation of a fcntl command argument, and return a numeric value. Prints error message and exits if string cannot be parsed.

Parameters:
textThe text to be parsed.
captnAdditional caption to be added to error message, if needed.
Returns:
integer value of command

Definition at line 91 of file fcntl.c.