LIBXO(3)

NAME
xo_err - emit errors and warnings in multiple formats

LIBRARY
libxo

SYNOPSIS
#include <libxo/xo.h>
void
xo_warn(const char *fmt, ...);
void
xo_warnx(const char *fmt, ...);
void
xo_warn_c(int code, const char *fmt, ...);
void
xo_warn_hc(xo_handle_t *xop, int code, const char *fmt, ...);
void
xo_err(int eval, const char *fmt, ...);
void
xo_errc(int eval, int code, const char *fmt, ...);
void
xo_errx(int eval, const char *fmt, ...);
void
xo_message(const char *fmt, ...);
void
xo_message_c(int code, const char *fmt, ...);
void
xo_message_hc(xo_handle_t *xop, int code, const char *fmt, ...);
void
xo_message_hcv(xo_handle_t *xop, int code, const char *fmt, va_list vap);

DESCRIPTION
Many programs make use of the standard library functions err(3) and warn(3) to generate errors and warnings for the user. libxo wants to pass that information via the current output style, and provides compatible functions to allow this.

These functions display the program name, a colon, a formatted message based on the arguments, and then optionally a colon and an error message associated with either errno or the code parameter.

        EXAMPLE:
            if (open(filename, O_RDONLY) < 0)
                xo_err(1, "cannot open file '%s'", filename);

ADDITIONAL DOCUMENTATION
Complete documentation can be found on github:

    http://juniper.github.io/libxo/libxo-manual.html

libxo lives on github as:

    https://github.com/Juniper/libxo

The latest release of libxo is available at:

    https://github.com/Juniper/libxo/releases

SEE ALSO
xo_emit(3)

HISTORY
The libxo library was added in FreeBSD 11.0.

AUTHOR
Phil Shafer