LIBXO(3)

NAME
xo_message, xo_message_c, xo_message_hc, xo_message_hcv - emit messages in multiple output styles

LIBRARY
libxo

SYNOPSIS
#include <libxo/xo.h>
void
xo_message(const char *fmt, ...);
void
xo_message_e(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
xo_message generates text message which lack any sort of structure. These functions should not be used under normal conditions, since they completely defeat the value of using libxo. They are provided for scenarios when the output's content is genuinely unknown and unusable. It is used in converting programs where err/warn where not used, and error messages went to stdout, not stderr. Use of xo_message allows backwards compatibility with that output, but does not put the error in a useful form.

The xo_message function generates output strings using the printf-style format string and arguments provided. If the format string does not end in a newline, xo_message_e will appear a colon, a space, and the error associated with the current errno value. xo_message_c behaves similarly for the value passed in the code parameter. xo_message_hc accepts a handle as opened by xo_create(3) and xo_message_hcv accepts a va_list parameter of arguments.

SEE ALSO
xo_emit(3), libxo(3)

HISTORY
The libxo library first appeared in FreeBSD 11.0.

AUTHORS
libxo was written by Phil Shafer <phil@freebsd.org>.