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

explain_mknod_or_die - create a special or ordinary file and report errors

#include <libexplain/mknod.h>

void explain_mknod_or_die(const char *pathname, mode_t mode, dev_t dev);
int explain_mknod_on_error(const char *pathname, mode_t mode, dev_t dev);

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

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

The pathname, exactly as to be passed to the mknod(2) system call.
The mode, exactly as to be passed to the mknod(2) system call.
The dev, exactly as to be passed to the mknod(2) system call.

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

The explain_mknod_on_error function always returns the value return by the wrapped mknod(2) system call.

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

explain_mknod_or_die(pathname, mode, dev);

mknod(2)
create a special or ordinary file
explain_mknod(3)
explain mknod(2) errors
exit(2)
terminate the calling process

libexplain version 1.4
Copyright (C) 2009 Peter Miller