Open System Services System Calls Reference Manual (G06.28+, H06.05+)

System Functions (s and S) spt_fputcx(2)
RETURN VALUES
The spt_fputcx( ) function, upon successful completion, returns the value written. If this func-
tion fails, it returns the constant EOF and sets errno.
If the le descriptor underlying stream becomes invalid (is closed by another thread), EOF is
returned with an errno value of [EBADF]. If a signal is received via pthread_kill(2) and is not
blocked, ignored, or handled, EOF is returned with an errno value of [EINTR].
ERRORS
The spt_fputcx( ) function fails if:
The stream parameter is not open for writing.
The output le size cannot be increased.
The stream is unbuffered.
The buffer of the stream needs to be ushed and the function call causes an underlying
spt_writex() or lseek() to be invoked, and this underlying operation fails.
In addition, if any of these conditions occur, the spt_fputcx( ) function sets errno to the
corresponding value:
[EAGAIN] The O_NONBLOCK ag is set for the le descriptor underlying the output
stream and the process would be delayed in the write operation.
[EBADF] The le descriptor underlying the output stream is not a valid le descriptor open
for writing.
[EFBIG] An attempt was made to write to a le that exceeds the processs le size limit or
the maximum le size.
[EINTR] The write operation was interrupted by a signal that was caught, and no data was
transferred.
[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 memory storage space is available.
[ENOSPC] No free space was 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.
[EPIPE] An attempt was made to write to a pipe or FIFO that is not open for reading by
any process. A SIGPIPE signal will also be sent to the process.
Any error encountered during the underlying call to the spt_writex() function can cause this
function to return the corresponding errno value reported by the spt_writex() function. If your
application program encounters an errno value not listed on this reference page, refer to the
spt_writex(2) reference page either online or in the Open System Services System Calls Refer-
ence Manual for information about the cause of that error.
527186-007 Hewlett-Packard Company 7165