HBA_SendRPL routine
The HBA_SendRPL routine sends a read port list (RPL) request to the indicated port or domain controller.
Syntax
HBA_STATUS HBA_API HBA_SendRPL(
_In_ HBA_HANDLE Handle,
_In_ HBA_WWN HbaPortWWN,
_In_ HBA_WWN AgentWwn,
_In_ HBA_UINT32 AgentDomain,
_In_ HBA_UINT32 PortIndex,
_Out_ void *pRspBuffer,
_Inout_ HBA_UINT32 *RspBufferSize
);
Parameters
Handle [in]
Contains a value returned by the routine HBA_OpenAdapter that identifies the local HBA through which the request is sent.HbaPortWWN [in]
Contains a 64-bit worldwide name (WWN) that uniquely identifies the local port through which the read port list (RPL) command is sent. For a discussion of worldwide names, see the T11 committee's Fibre Channel HBA API specification.AgentWwn [in]
Contains, when non-NULL, a 64-bit WWN that uniquely identifies the port to query for a list of ports of type FC_Port. If this member is NULL, it is ignored. For a definition of FC_Port, see the T11 committee's Fibre Channel HBA API specification.AgentDomain [in]
Contains the domain number for the domain controller to query for a list of ports of type FC_Port. If AgentWwn is non-NULL, this member is ignored.PortIndex [in]
Contains the port index of the first port in the retrieved list of ports of type FC_Port.pRspBuffer [out]
Pointer to a buffer that receives the results of the read port list (RPL) request, if the request succeeds. If the destination port or domain controller rejects the request, this buffer holds the link service reject (LS_RJT) payload data. If the amount of returned data exceeds the buffer size specified in RspBufferSize, the data is truncated to the buffer size*.* The payload data is in big-endian format (higher order bytes are in lower addresses).RspBufferSize [in, out]
On input, indicates the size, in bytes, of the buffer pointed to by pRspBuffer. On return, this member indicates the size, in bytes, of the response data.
Return value
The HBA_SendRPL routine returns a value of type HBA_STATUS that indicates the status of the HBA. In particular, HBA_SendRPL returns one of the following values.
Return code | Description |
---|---|
HBA_STATUS_OK | Returned if the complete payload of a reply to the RPL request was successfully retrieved. |
HBA_STATUS_ERROR_ILLEGAL_WWN | Returned if the HBA referenced by handle does not contain a port with a name that matches HbaPortWWN. |
HBA_STATUS_ERROR_ELS_REJECT | Returned if the destination port referenced by AgentWwn, or the domain controller referenced by AgentDomain, rejected the request node identification information data (RNID) that identifies the source HBA. |
HBA_STATUS_ERROR | Returned if an unspecified error occurred that prevented the execution of the RPL request. |
Requirements
Target platform |
Desktop |
Header |
Hbaapi.h (include Hbaapi.h) |
Library |
Hbaapi.lib |
DLL |
Hbaapi.dll |
See also