DLPI_SET_TIMEOUT(3DLPI) Data Link Provider Interface Library Functions

NAME


dlpi_set_timeout - set DLPI handle timeout interval

SYNOPSIS


cc [ flag ... ] file ... -ldlpi [ library ... ]
#include <libdlpi.h>

int dlpi_set_timeout(dlpi_handle_t dh, int sec);


DESCRIPTION


The dlpi_set_timeout() function sets the timeout interval to sec seconds
on DLPI handle dh. This timeout is used by libdlpi(3LIB) functions that
require explicit acknowledgment from the associated DLPI link, and bounds
the number of seconds that a function will wait for an acknowledgment
before returning DLPI_ETIMEDOUT. Except for dlpi_recv(3DLPI), which has a
timeout argument, any function that is documented to return
DLPI_ETIMEDOUT can take up to the timeout interval to complete.


Callers that do not require an upper bound on timeouts are strongly
encouraged to never call dlpi_set_timeout(), and allow libdlpi to use its
default timeout value. The default timeout value is intended to ensure
that DLPI_ETIMEDOUT will only be returned if the DLPI link has truly
become unresponsive. The default timeout value is intended to ensure that
DLPI_ETIMEDOUT will be returned only if the DLPI link has truly become
unresponsive.


Callers that do require an explicit upper bound can specify that value at
any time by calling dlpi_set_timeout(). However, note that values less
than 5 seconds may trigger spurious failures on certain DLPI links and
systems under high load, and thus are discouraged. Attempts to set the
timeout value to less than 1 second will fail.


If sec is set to DLPI_DEF_TIMEOUT, the default timeout value is restored.

RETURN VALUES


Upon success, DLPI_SUCCESS is returned. Otherwise, a DLPI error value is
returned.

ERRORS


DLPI_EINHANDLE
Invalid DLPI handle


ATTRIBUTES


See attributes(7) for description of the following attributes:


+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Committed |
+--------------------+-----------------+
|MT-Level | Safe |
+--------------------+-----------------+

SEE ALSO


libdlpi(3LIB), attributes(7)

August 21, 2007 DLPI_SET_TIMEOUT(3DLPI)