Fibre Channel SNIA HBA API Programmer's Guide

status = HBA GetPortAttributesByWWN(adapter_handle,
wwn,
&port_attributes);
if (status == HBA_STATUS_OK)
{
printf("Discovered port type is %u\n",
port_attributes.PortType);
}
FC-3 Management Functions
Call the following functions for FC-3 management:
HBA_ SendCTPassThru
NOTE: This function only applies for an HBA connected in a public loop or fabric topology.
Function:
HBA_STATUS HBA_SendCTPassThru(
HBA_HANDLE handle,
void * p_req_buffer,
HBA_UINT32 req_buffer_size,
void * p_rsp_buffer,
HBA_UINT32 rsp_buffer_size
);
Purpose: Sends a Common Transport pass through frame.
Input Parameters: handle - Handle to an adapter already opened by a call to
HBA_OpenAdapter().
p_req_buffer - Pointer to the request buffer containing full
Common Transport frame in big-endian format.
req_buffer_size - Request buffer size.
rsp_buffer_size - Response buffer size.
Output Parameters: p_rsp_buffer - Pointer to a buffer containing the received Common
Transport frame in big-endian format.
Return Values: Returned after a
successful execution of the
call.
HBA_STATUS_OK
HBA_STATUS_ERROR_MORE_DATA
Returned when the
allocated buffer is
insufficient.
HBA_STATUS_ERROR
Returned when an
internal library or system
error is detected.
HBA_STATUS_ERROR_BUSY
Returned when the library
is busy and cannot
currently process this call.
HBA_STATUS_ERROR_INVALID_HANDLE
Returned when the handle
passed to this function is
invalid.
HBA_STATUS_ERROR_ARG
Returned when any of the
pointers passed to this
function are NULL.
FC-3 Management Functions 21