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

explain_setenv_or_die - change or add an environment variable and report errors

#include <libexplain/setenv.h>

void explain_setenv_or_die(const char *name, const char *value, int overwrite);
int explain_setenv_on_error(const char *name, const char *value, int overwrite);

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

The explain_setenv_on_error function is used to call the setenv(3) system call. On failure an explanation will be printed to stderr, obtained from the explain_setenv(3) function, but still returns to the caller.

The name, exactly as to be passed to the setenv(3) system call.
The value, exactly as to be passed to the setenv(3) system call.
The overwrite, exactly as to be passed to the setenv(3) system call.

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

The explain_setenv_on_error function always returns the value return by the wrapped setenv(3) system call.

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

explain_setenv_or_die(name, value, overwrite);

setenv(3)
change or add an environment variable
explain_setenv(3)
explain setenv(3) errors
exit(2)
terminate the calling process

libexplain version 1.4
Copyright (C) 2010 Peter Miller