HBA_SendLIRR routine

The HBA_SendLIRR routine registers or de-registers a local (source) port to receive link incident records (LIR) from a remote (destination) port.

Syntax

HBA_STATUS HBA_API HBA_SendLIRR(
  _In_    HBA_HANDLE Handle,
  _In_    HBA_WWN    SourceWWN,
  _In_    HBA_WWN    DestWWN,
  _In_    HBA_UINT8  Function,
  _In_    HBA_UINT8  Type,
  _Out_   void       *pRspBuffer,
  _Inout_ HBA_UINT32 *RspBufferSize
);

Parameters

  • Handle [in]
    Contains a value returned by the routine HBA_OpenAdapter that identifies the HBA through which to send the LIR request.

  • SourceWWN [in]
    Contains the worldwide name (WWN) of the local port from which to issue the command and which will receive link incident records from the destination port referenced by DestWWN. For a definition of worldwide names, see the T11 committee's specification for Fibre Channel HBA API.

  • DestWWN [in]
    Contains the WWN of the remote destination port that will report link incident records to the source port. For a definition of worldwide names, see the T11 committee's specification for Fibre Channel HBA API.

  • Function [in]
    Specifies the action to take. This member either registers a source port to receive link incident records and specifies the mode of registration, or it de-registers a source port that is already registered. This member must have one of the following values.

    Value in Hexadecimal Meaning

    0x0

    Reserved.

    0x01

    Indicates that the registration is conditional. The source port is added to the registration list for records with the format indicated in Type and receives link incident records of that type only if no other ports are receiving records for that type.

    0x02

    Indicates that the source port is always added to the registration list for records with the format indicated in Type.

    0x03

    Reserved.

    0xff

    Indicates that the source port is removed from the registration list for records with the format indicated in Type and no longer receives link incident records of that format type.

     

    For further explanation of the available registration modes, see the T11 committee's Fibre Channel Framing and Signaling specification.

  • Type [in]
    Specifies the type of records whose delivery is affected by the link incident record request (LIRR). When 0, the LIRR governs the delivery of common link incident records, so if the source port is registering to receive records, then the source port is added to the destination port's registration list for common link incident records. If the source port is de-registering, then it is removed from that list.

    If Type is nonzero, then it specifies the format type of the records for which the source port is registering or de-registering. For a list of the types of formats and their corresponding values, see the FC-4 type codes table in the T11 committee's Fibre Channel Framing and Signaling specification.

  • pRspBuffer [out]
    Pointer to a buffer that receives the payload data of the response to the LIRR, if the LIRR succeeds. If the destination port 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 at pRspBuffer. On output, this member indicates the size, in bytes, of the response data. Eight bytes is sufficient for any response.

Return value

The HBA_ScsiReportLUNsV2 routine returns a value of type HBA_STATUS that indicates the status of the HBA. In particular, HBA_ScsiReportLUNsV2 returns one of the following values.

Return code Description
HBA_STATUS_OK

Returned if the LIRR succeeded and payload data 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 SourceWWN.

HBA_STATUS_ERROR_NOT_SUPPORTED

Returned if the local HBA referenced by handle does not support link incident reporting.

HBA_STATUS_ERROR_ELS_REJECT

Returned if the destination port referenced by DestWWN 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 LIR request.

 

Requirements

Target platform

Desktop

Header

Hbaapi.h (include Hbaapi.h)

Library

Hbaapi.lib

DLL

Hbaapi.dll

See also

HBA_OpenAdapter

HBA_STATUS

 

 

Send comments about this topic to Microsoft