DOKK / manpages / debian 12 / libexplain-dev / explain_poll_or_die.3.en
explain_poll_or_die(3) Library Functions Manual explain_poll_or_die(3)

explain_poll_or_die - wait for some event on file descriptor and report errors

#include <libexplain/poll.h>

int explain_poll_or_die(struct pollfd *fds, int nfds, int timeout);
int explain_poll_on_error(struct pollfd *fds, int nfds, int timeout);

The explain_poll_or_die function is used to call the poll(2) system call. On failure an explanation will be printed to stderr, obtained from the explain_poll(3) function, and then the process terminates by calling exit(EXIT_FAILURE).

The explain_poll_on_error function is used to call the poll(2) system call. On failure an explanation will be printed to stderr, obtained from the explain_poll(3) function, but still returns to the caller.

The fds, exactly as to be passed to the poll(2) system call.
The nfds, exactly as to be passed to the poll(2) system call.
The timeout, exactly as to be passed to the poll(2) system call.

The explain_poll_or_die function only returns on success, see poll(2) for more information. On failure, prints an explanation and exits, it does not return.

The explain_poll_on_error function always returns the value return by the wrapped poll(2) system call.

The explain_poll_or_die function is intended to be used in a fashion similar to the following example:

int result = explain_poll_or_die(fds, nfds, timeout);

poll(2)
wait for some event on a file descriptor
explain_poll(3)
explain poll(2) errors
exit(2)
terminate the calling process

libexplain version 1.4
Copyright (C) 2010 Peter Miller