xref: /illumos-gate/usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi (revision fe4627ef755b7c263f91a0e6f07cdca5d7083501)
te
Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
DLPI_SET_TIMEOUT 3DLPI "Aug 21, 2007"
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(5) for description of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
Interface Stability Committed
MT-Level Safe
SEE ALSO

libdlpi(3LIB), attributes(5)