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

explain_lchmod_or_die - change permissions of a file and report errors

#include <libexplain/lchmod.h>

void explain_lchmod_or_die(const char *pathname, mode_t mode);
int explain_lchmod_on_error(const char *pathname, mode_t mode);

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

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

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

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

The explain_lchmod_on_error function always returns the value return by the wrapped lchmod(2) system call.

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

explain_lchmod_or_die(pathname, mode);

lchmod(2)
change permissions of a file
explain_lchmod(3)
explain lchmod(2) errors
exit(2)
terminate the calling process

libexplain version 1.4
Copyright (C) 2012 Peter Miller