DAT_EP_GET_STATUS(3DAT) Direct Access Transport Library Functions DAT_EP_GET_STATUS(3DAT)

dat_ep_get_status - provide a quick snapshot of the Endpoint

cc [ flag... ] file... -ldat [ library... ]
#include <dat/udat.h>
DAT_RETURN

dat_ep_get_status (
IN DAT_EP_HANDLE ep_handle,
OUT DAT_EP_STATE *ep_state,
OUT DAT_BOOLEAN *recv_idle,
OUT DAT_BOOLEAN *request_idle
)

ep_handle

Handle for an instance of the Endpoint.

ep_state

Current state of the Endpoint.

recv_idle

Status of the incoming DTOs on the Endpoint.

request_idle

Status of the outgoing DTOs and RMR Bind operations on the Endpoint.

the dat_ep_get_status() function provides the Consumer a quick snapshot of the Endpoint. The snapshot consists of the Endpoint state and whether there are outstanding or in-progress, incoming or outgoing DTOs. Incoming DTOs consist of Receives. Outgoing DTOs consist of the Requests, Send, RDMA Read, RDMA Write, and RMR Bind.

The ep_state parameter returns the value of the current state of the Endpoint ep_handle. State value is one of the following: DAT_EP_STATE_UNCONNECTED, DAT_EP_STATE_RESERVED, DAT_EP_STATE_PASSIVE_CONNECTION_PENDING, DAT_EP_STATE_ACTIVE_CONNECTION_PENDING, DAT_EP_STATE_TENTATIVE_CONNECTION_PENDING, DAT_EP_STATE_CONNECTED, DAT_EP_STATE_DISCONNECT_PENDING, or DAT_EP_STATE_DISCONNECTED.

A recv_idle value of DAT_TRUE specifies that there are no outstanding or in-progress Receive DTOs at the Endpoint, and DAT_FALSE otherwise.

A request_idle value of DAT_TRUE specifies that there are no outstanding or in-progress Send, RDMA Read, and RDMA Write DTOs, and RMR Binds at the Endpoint, and DAT_FALSE otherwise.

This call provides a snapshot of the Endpoint status only. No heroic synchronization with DTO queuing or processing is implied.

DAT_SUCCESS

The operation was successful.

DAT_INVALID_HANDLE

The ep_handle parameter is invalid.

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

ATTRIBUTE TYPE ATTRIBUTE VALUE
Interface Stability Standard: uDAPL, 1.1, 1.2
MT-Level Safe

libdat(3LIB), attributes(7)

July 16, 2004 OmniOS