svcadm(8)을 검색하려면 섹션에서 8 을 선택하고, 맨 페이지 이름에 svcadm을 입력하고 검색을 누른다.
libhbaapi(3lib)
libhbaapi(3LIB) Interface Libraries libhbaapi(3LIB)
NAME
libhbaapi - Common Fibre Channel HBA information library
SYNOPSIS
cc [ flag... ] file... -lHBAAPI [ library... ]
#include <hbaapi.h>
DESCRIPTION
The functions in this library access Fibre Channel HBA data.
Fibre Channel HBA information is provided through a standard interface
in a vendor independent manner. This common interface provides access
to the following information:
o Local HBA attributes
o Local HBA port attributes and statistics
o Mapping between FCP-2 discovered devices and operating sys‐
tem SCSI information
o Discovered devices port attributes
o SCSI commands for discovered FCP-2 devices (Report LUNS,
Read Capacity, and Inquiry)
o Common Transport commands to discover Fabric details
INTERFACES
The shared object libhbaapi.so.1 provides the public interfaces defined
below. See intro(3) for additional information on shared object inter‐
faces.
tab(); lw(2.97i) lw(2.53i) HBA_CloseAdapterHBA_FreeLibrary
HBA_GetAdapterAttributesHBA_GetAdapterName HBA_GetAdapterPortAt‐
tributesHBA_GetBindingCapability HBA_GetBindingSupportHBA_GetDiscov‐
eredPortAttributes HBA_GetEventBufferHBA_GetFC4Statistics HBA_GetFCP‐
StatisticsHBA_GetFcpPersistentBinding HBA_GetFcpTargetMappingHBA_Get‐
FcpTargetMappingV2 HBA_GetNumberOfAdaptersHBA_GetPersistentBindingV2
HBA_GetPortAttributesByWWNHBA_GetPortStatistics HBA_GetRNIDMgmtInfo‐
HBA_GetVendorLibraryAttributes HBA_GetVersionHBA_GetWrapperLibraryAt‐
tributes HBA_LoadLibraryHBA_OpenAdapter HBA_OpenAdapterByWWNHBA_Refre‐
shAdapterConfiguration HBA_RefreshInformationHBA_RegisterForAdapterAd‐
dEvents HBA_RegisterForAdapterEventsHBA_RegisterForAdapterPortEvents
HBA_RegisterForAdapterPortStatEventsHBA_RegisterForLinkEvents HBA_Reg‐
isterForTargetEventsHBA_RemoveAllPersistentBindings HBA_RemoveCallback‐
HBA_RemovePersistentBinding HBA_ResetStatisticsHBA_ScsiInquiryV2
HBA_ScsiReadCapacityV2HBA_ScsiReportLUNsV2 HBA_SendCTPassThruHBA_Send‐
CTPassThruV2 HBA_SendLIRRHBA_SendRLS HBA_SendRNIDHBA_SendRNIDV2
HBA_SendRPLHBA_SendRPS HBA_SendReadCapacityHBA_SendReportLUNs HBA_Send‐
SRLHBA_SendScsiInquiry HBA_SetBindingSupportHBA_SetPersistentBindingV2
HBA_SetRNIDMgmtInfo
USAGE
Client applications link with the Common Library (using -lHBAAPI) to
access the interfaces. The Common Library dynamically loads individual
Vendor-Specific Libraries (VSL) listed in /etc/hba.conf described on
the hba.conf(5).
Using the libhbaapi involves the following steps:
1. Optionally determining the version of the library by calling
HBA_GetVersion(3HBAAPI).
2. Initializing the Common Library by calling HBA_LoadLi‐
brary(3HBAAPI).
3. Determine the number of HBAs known to the common library by
calling HBA_GetNumberOfAdapters(3HBAAPI).
4. Determine each HBA name in turn by calling HBA_GetAdapter‐
Name(3HBAAPI).
5. Open each HBA in turn by calling HBA_OpenAdapter(3HBAAPI).
6. Operate on a given HBA by calling the following:
o HBA_GetAdapterAttributes(3HBAAPI)
o HBA_GetAdapterPortAttributes(3HBAAPI)
o HBA_GetDiscoveredPortAttributes(3HBAAPI)
o HBA_GetPortAttributesByWWN(3HBAAPI)
o HBA_SendCTPassThru(3HBAAPI)
o HBA_SendCTPassThruV2(3HBAAPI)
o HBA_GetEventBuffer(3HBAAPI)
o HBA_SetRNIDMgmtInfo(3HBAAPI)
o HBA_GetRNIDMgmtInfo(3HBAAPI)
o HBA_SendRNID(3HBAAPI)
o HBA_SendRNIDV2(3HBAAPI)
o HBA_RefreshInformation(3HBAAPI)
o HBA_RefreshAdapterConfiguration(3HBAAPI)
o HBA_GetVendorLibraryAttributes(3HBAAPI)
o HBA_GetWrapperLibraryAttributes(3HBAAPI)
o HBA_ResetStatistics(3HBAAPI)
o HBA_GetFcpTargetMapping(3HBAAPI)
o HBA_GetFcpTargetMappingV2(3HBAAPI)
o HBA_GetFcpPersistentBinding(3HBAAPI)
o HBA_SendScsiInquiry(3HBAAPI)
o HBA_SendReportLUNs(3HBAAPI)
o HBA_ScsiReportLUNsV2(3HBAAPI)
o HBA_SendReadCapacity(3HBAAPI)
o HBA_SendRLS(3HBAAPI)
7. Close open HBAs by calling HBA_CloseAdapter(3HBAAPI).
8. Unload the library by calling HBA_FreeLibrary(3HBAAPI).
ERRORS
Errors are generally returned from the underlying VSL and can include
any of the following values:
HBA_STATUS_OK
Request completed successfully. (No Error)
HBA_STATUS_ERROR
Non-specific error encountered.
HBA_STATUS_ERROR_NOT_SUPPORTED
The VSL does not support this interface.
HBA_STATUS_ERROR_INVALID_HANDLE
The handle argument does not refer to an open HBA handle.
HBA_STATUS_ERROR_ARG
An argument in the request was invalid.
HBA_STATUS_ERROR_ILLEGAL_WWN
A WWN in the request was not recognized.
HBA_STATUS_ERROR_ILLEGAL_INDEX
An index in the request was not recognized.
HBA_STATUS_ERROR_MORE_DATA
A larger buffer is required to complete the requested operation.
HBA_STATUS_ERROR_STALE_DATA
The state of the HBA has changed, possibly due to Dynamic Reconfig‐
uration or devices being added or removed. The caller should call
HBA_RefreshInformation(3HBAAPI) and reissue any discovery logic to
reset all indexes related to this HBA.
HBA_STATUS_SCSI_CHECK_CONDITION
A SCSI check-condition was encountered during the I/O operation.
Not all VSLs report this error value. Some might return HBA_STA‐
TUS_ERROR when a check-condition is encountered, or HBA_STATUS_OK.
HBA_STATUS_ERROR_BUSY
The requested device is busy. A retry might be effective.
HBA_STATUS_ERROR_TRY_AGAIN
The requested I/O timed out. A retry might be effective.
HBA_STATUS_ERROR_UNAVAILABLE
The requested HBA has been removed or deactivated.
All other error values are reserved.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
TRIBUTE VALUE _ Availabilitysystem/library/storage/snia-hbaapi _ Inter‐
face StabilityCommitted _ T{ Standard: FC-HBA Version 4 (API version 2)
T} _ MT-LevelSafe _ StandardFC-MI 1.92 (API version 1)
SEE ALSO
HBA_GetAdapterAttributes(3HBAAPI), HBA_GetAdapterName(3HBAAPI),
HBA_GetAdapterPortAttributes(3HBAAPI), HBA_GetBindingCapabil‐
ity(3HBAAPI), HBA_GetDiscoveredPortAttributes(3HBAAPI), HBA_GetEvent‐
Buffer(3HBAAPI), HBA_GetFcpPersistentBinding(3HBAAPI), HBA_GetFcpTar‐
getMapping(3HBAAPI), HBA_GetNumberOfAdapters(3HBAAPI), HBA_GetPortAt‐
tributesByWWN(3HBAAPI), HBA_GetPortStatistics(3HBAAPI), HBA_GetVer‐
sion(3HBAAPI), HBA_GetWrapperLibraryAttributes(3HBAAPI), HBA_LoadLi‐
brary(3HBAAPI), HBA_OpenAdapter(3HBAAPI), HBA_RefreshInforma‐
tion(3HBAAPI), HBA_RegisterForAdapterEvents(3HBAAPI), HBA_SendCT‐
PassThru(3HBAAPI), HBA_SendRLS(3HBAAPI), HBA_SendScsiInquiry(3HBAAPI),
HBA_SetRNIDMgmtInfo(3HBAAPI), hba.conf(5), attributes(7)
T11 FC-MI Specification
Oracle Solaris 11.4 22 Aug 2011 libhbaapi(3LIB)