HBA_SetRNIDMCommonoFibreAChannel HBA Information LHBA_SetRNIDMgmtInfo(3HBAAPI)NAME
HBA_SetRNIDMgmtInfo, HBA_GetRNIDMgmtInfo, HBA_SendRNID, HBA_SendRNIDV2
- access Fibre Channel Request Node Identification Data (RNID)
SYNOPSIS
cc [ flag... ] file... -lHBAAPI [ library... ]
#include <hbaapi.h>
HBA_STATUS HBA_SetRNIDMgmtInfo(HBA_HANDLE handle, HBA_MGMTINFO *pInfo);
HBA_STATUS HBA_GetRNIDMgmtInfo(HBA_HANDLE handle, HBA_MGMTINFO *pInfo);
HBA_STATUS HBA_SendRNID(HBA_HANDLE handle, HBA_WWN wwn , HBA_WWNTYPE
wwntype , void *pRspBuffer , HBA_UINT32 *RspBufferSize);
HBA_STATUS HBA_SendRNIDV2(HBA_HANDLE handle, HBA_WWN hbaPortWWN ,
HBA_WWN destWWN , HBA_UINT32 destFCID , HBA_UINT32 NodeIdDataFormat ,
void *pRspBuffer , HBA_UINT32 *RspBufferSize);
PARAMETERS
handle an open handle returned from HBA_OpenAdapter(3HBAAPI)
pInfo
HBA_SetRNIDMgmtInfo()
a pointer to a HBA_MGMTINFO structure containing
the new RNID
HBA_GetRNIDMgmtInfo()
a pointer to a HBA_MGMTINFO structure into which
the RNID is copied
wwn the discovered port WWN to which the request is sent
wwntype deprecated
hbaPortWWN the Port WWN of the local HBA through which to send the
ELS
destWWN the Port WWN of the remote Target to which the ELS is
sent
destFCID If destFCID is non-zero, destFCID is the address iden‐
tifier of the remote target to which the ELS is sent.
If destFCID is 0, destFCID is ignored.
NodeIdDataFormatthe Node Identification Data Fromat value as defined in
FC-FS
pRspBuffer A pointer to a buffer into which the RNID response is
copied . The data will be in Big Endian format.
RspBufferSize A pointer to the size of the buffer. On completion it
will contain the size of the actual response payload
copied into the buffer.
DESCRIPTION
These functions access Fibre Channel Request Node Identification Data
(RNID) as defined in the T11 specification FC-FS.
The HBA_SetRNIDMgmtInfo() function sets the RNID returned from by HBA.
The HBA_GetRNIDMgmtInfo() function retrieves the stored RNID from the
HBA.
The HBA_SendRNID() function sends an RNID request to a discovered port.
The Node Identification Data format is always set to 0xDF for General
Topology Discovery Format as defined in the T11 specification FC-FS.
The HBA_SendRNIDV2() function sends an RNID request to a discovered
port requesting a specified Node Identification Data format.
RETURN VALUES
Upon successful completion, HBA_SetRNIDMgmtInfo() returns HBA_STATUS_OK
and sets the RNID.
Upon successful completion, HBA_GetRNIDMgmtInfo() returns HBA_STA‐
TUS_OK. Otherwise, an error value is returned and the content of pInfo
is undefined.
Upon successful completion, HBA_SendRNID() returns HBA_STATUS_OK. Oth‐
erwise, an error value is returned and the content of pRspBuffer is
undefined.
The HBA_SendRNIDV2() returns the following values:
HBA_STATUS_OK
The RNID ELS has been successfully returned.
HBA_STATUS_ERROR_ELS_REJECT
The RNID ELS was rejected by the HBA Port.
HBA_STATUS_ERROR_ILLEGAL_WWN
The value of hbaPortWWN is not a valid port WWN on the specified
HBA.
HBA_STATUS_ERROR_ILLEGAL_FCID
The destWWN/destFCID pair conflicts with a discovered Port
Name/address identifier pair known by the HBA.
HBA_STATUS_ERROR_ILLEGAL_FCID
The N_Port WWN in the RNID response does not match destWWN.
HBA_STATUS_ERROR
An error occurred.
ERRORS
See attributes(5) for general error status values.
ATTRIBUTES
See libhbaapi(3LIB) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Standard: FC-MI 1.92 (API │
│ │version 1) │
├─────────────────────────────┼─────────────────────────────┤
│ │Standard: FC-HBA Version 4 │
│ │(API version 2) │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOHBA_OpenAdapter(3HBAAPI), libhbaapi(3LIB), attributes(5)
T11 FC-MI Specification
BUGS
The HBA_SetRNIDMgmtInfo() and HBA_GetRNIDMgmtInfo() functions do not
take a portindex to define to which port of a multi-ported HBA the com‐
mand should apply. The behavior on multi-ported HBAs is vendor-specific
and can result in all ports being set to the same value.
The HBA_SetRNIDMgmtInfo() and HBA_GetRNIDMgmtInfo() functions allow
only 0xDF (General Topology Discovery Format).
The HBA_SendRNID() function does not take a portindex to define through
which port of a multi-ported HBA to send the command. The behavior on
multi-ported HBAs is vendor-specific and can result in the command
being sent through the first port.
The HBA_SendRNID() function does not take an argument to specify the
Node Identification Data Format. It always assumes that 0xDF (General
Topology Discovery Format) is desired. SNIA version 2 defines
HBA_SendRNIDV2() to take a Port WWN and a Node Data Format. This fixes
the bugs with multi-ported HBAs of allowing only0xDF (General Topology
Discovery Format) in HBA_SendRNID().
SunOS 5.10 1 Sep 2003 HBA_SetRNIDMgmtInfo(3HBAAPI)