Open System Services Library Calls Reference Manual (G06.27+, H06.04+)

vfprintf(3) OSS Library Calls Reference Manual
void error(char *funct, char *fmt, ...)
{
va_list args;
/*
** Display the name of the function that called error
*/
fprintf(stderr, "ERROR in %s: ", funct);
/*
** Display the remainder of the message
*/
va_start(args, fmt);
vfprintf(stderr, fmt, args);
va_end(args);
abort();
}
RETURN VALUES
Upon successful completion, this function returns the number of bytes in the output string. Oth-
erwise, a negative value is returned.
ERRORS
The vfprintf( ) function fails if stream is unbuffered, or if streams buffer needed to be ushed
and the function call caused an underlying write( ) or lseek() function to be invoked. In addi-
tion, if the vfprintf() function fails, errno is set to one of the following values:
[EAGAIN] The O_NONBLOCK ag is set for the le descriptor underlying stream and the
process would be delayed in the write operation.
[EBADF] The le descriptor underlying stream is not a valid le descriptor open for writ-
ing.
[EFBIG] An attempt was made to write to a le that exceeds the processs le size limit or
the maximum le size.
[EILSEQ] An invalid wide character was detected.
[EINTR] The operation was interrupted by a signal that was caught, and no data was
transferred.
[EINVAL] There are insufcient arguments.
[EIO] The implementation supports job control; the process is a member of a back-
ground process group attempting to write to its controlling terminal; TOSTOP is
set; the process is neither ignoring nor blocking SIGTTOU; and the process
group of the process is orphaned. This error might also be returned under
implementation-dened conditions.
[ENOMEM] Insufcient storage space was available.
[ENOSPC] There was no free space remaining on the device containing the le.
[ENXIO] A request was made of a nonexistent device, or the request was outside the capa-
bilities of the device.
770 Hewlett-Packard Company 527187-004