Log a printf-style string in a slog2 buffer (varargs)
Synopsis:
#include <sys/slog2.h>
int vslog2f( slog2_buffer_t buffer,
             uint16_t code,
             uint8_t severity,
             const char* format,
             va_list arglist );
Arguments:
- buffer
- The handle of the buffer you want to log the message in, or NULL
  to use the default buffer that you specified earlier with
  slog2_set_default_buffer().
- code
- A user-specified code that you want to be associated with the message.
  The slog2 system doesn't interpret this code in any way.
- severity
- The severity level of this log item; one of:
  
  - SLOG2_SHUTDOWN
- SLOG2_CRITICAL
- SLOG2_ERROR
- SLOG2_WARNING
- SLOG2_NOTICE
- SLOG2_INFO
- SLOG2_DEBUG1
- SLOG2_DEBUG2
 
  For more information, see the entry for
  slog2_register().
   
- format
- A
  printf-formatted
  character string used to define the log.
- arglist
- A va_list of the additional arguments required by the format string.
Library:
libslog2
Use the -l slog2 option to
qcc
to link against this library.
Description:
The vslog2f() function logs a printf-style ASCII-text string in the specified slog2 buffer.
This function is a varargs version of
slog2f().
Returns:
0 on success, or -1 if an error occurred.
Errors:
- EBUSY
- The logger couldn't obtain a buffer within the number of retries that you specified when you registered
  the buffer set; see
  slog2_register().
- EFAULT
- You specified NULL for buffer, but there's no default buffer.
- EINVAL
- The format string is invalid.
- EPERM
- The process hasn't registered with slog2.
Classification:
QNX Neutrino
| Safety: |  | 
|---|
| Cancellation point | No | 
| Interrupt handler | Read the Caveats | 
| Signal handler | Yes | 
| Thread | Yes | 
Caveats:
Don't use double or float arguments in an interrupt handler,
unless your code is compiled to use software floating-point emulation.