Open System Services System Calls Reference Manual (G06.29+, H06.08+, J06.03+)
spt_acceptx(2) OSS System Calls Reference Manual
NOTES
The macro to map accept() to spt_acceptx() is available in C applications when
SPT_THREAD_AWARE_NONBLOCK has been defined in the following manner before
including spthread.h:
#define SPT_THREAD_AWARE_NONBLOCK
The alias to link accept() to spt_acceptx() is available in C++ applications when
SPT_THREAD_AWARE_PRAGMA_NONBLOCK has been defined in the following manner
before including spthread.h:
#define SPT_THREAD_AWARE_PRAGMA_NONBLOCK
To use this function in a threaded application that uses the Standard POSIX Threads library on
systems running J06.10 or later RVUs or H06.21 or later RVUs, you must perform all of the fol-
lowing tasks:
• Include the spthread.h header file in the application.
• Compile the application using the _SPT_MODEL_ feature test macro or equivalent
compiler command option in addition to any other feature test macros in use.
• Link the application to the zsptdll library (/G/system/zdllnnn/zsptdll).
When a connection is available, a call to the select() function indicates that the file descriptor for
the original socket is ready for reading.
The accepted socket cannot itself accept more connections. The original socket remains open
and can accept more connections.
RETURN VALUES
Upon successful completion, the spt_acceptx() function returns the file descriptor of the
accepted socket. If the spt_acceptx() function call fails, the value -1 is returned and errno is set
to indicate the error.
If the socket 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
If any of the following conditions occurs, the spt_acceptx() function sets errno to the
corresponding value:
[EBADF] The socket parameter is not a valid file descriptor.
[ECONNABORTED]
The connection was aborted.
[ECONNRESET]
One of the following conditions occurred:
• The transport-provider process for this socket is no longer available.
• The TCP/IP subsystem for this socket is no longer available.
• The connection was forcibly closed by the peer socket.
The socket can only be closed.
7−132 Hewlett-Packard Company 527186-023