Open System Services System Calls Reference Manual (G06.29+, H06.08+, J06.03+)
System Functions (s and S) spt_vprintfx(2)
NAME
spt_vprintfx - Formats a variable number of parameters for output (thread-aware version)
LIBRARY
G-series native OSS processes: /G/system/sysnn/zsptsrl
H-series OSS processes: /G/system/zdllnnn/zsptdll
SYNOPSIS
[#include <stdarg.h>]
[#include <stdio.h>]
#include <spthread.h>
int spt_vprintfx (
const char *format,
va_list printarg
);
PARAMETERS
format Specifies a character string that contains two types of objects:
• Plain characters, which are copied to the output stream.
• Conversion specifications, each of which causes zero or more items to be
fetched from the stdarg parameter lists.
printarg Specifies the parameters to be printed.
DESCRIPTION
The spt_vprintfx() function is the thread-aware version of the vprintf( ) function.
The spt_vprintfx() function formats and writes stdarg parameter lists.
This function is the same as the spt_printfx( ) function, except that it is not called with a vari-
able number of parameters. Instead, it is called with a parameter list pointer as defined by stdarg.
RETURN VALUES
Upon successful completion, this function returns the number of bytes in the output string. Oth-
erwise, a negative value is returned.
If the file descriptor underlying stdout becomes invalid (is closed by another thread), -1 is
returned with an errno value of [EBADF]. If a signal is received via the pthread_kill() function
and is not blocked, ignored, or handled, -1 is returned with an errno value of [EINTR].
ERRORS
The spt_vprintfx() function fails if the standard output stream is unbuffered, or if the buffer
needed to be flushed and the function call caused an underlying spt_writex() or lseek() function
to be invoked. In addition, if the spt_vprintfx( ) function fails, errno is set to one of these
values:
[EAGAIN] The O_NONBLOCK flag is set for the file descriptor underlying the output
stream and the process would be delayed in the write operation.
[EBADF] The file descriptor underlying the output stream is not a valid file descriptor open
for writing.
[EFBIG] An attempt was made to write to a file that exceeds the process’s file size limit or
the maximum file size.
527186-023 Hewlett-Packard Company 7−447