Interface Libraries libSMHBAAPI(3LIB)
NAME
libSMHBAAPI, libsmhbaapi, SMHBA_GetAdapterAttributes,
SMHBA_GetAdapterPortAttributes, SMHBA_GetBindingCapability,
SMHBA_GetBindingSupport, SMHBA_GetDiscoveredPortAttributes,
SMHBA_GetFCPhyAttributes, SMHBA_GetLUNStatistics,
SMHBA_GetNumberofPorts, SMHBA_GetPersistentBinding,
SMHBA_GetPhyStatistics, SMHBA_GetPortAttributesByWWN,
SMHBA_GetPortType, SMHBA_GetProtocolStatistics,
SMHBA_GetSASPhyAttributes, SMHBA_GetTargetMapping,
SMHBA_GetVendorLibraryAttributes, SMHBA_GetVersion,
SMHBA_GetWrapperLibraryAttributes,
SMHBA_RegisterForAdapterAddEvents,
SMHBA_RegisterForAdapterEvents,
SMHBA_RegisterForAdapterPhyStatEvents,
SMHBA_RegisterForAdapterPortEvents,
SMHBA_RegisterForAdapterPortStatEvents,
SMHBA_RegisterForTargetEvents, SMHBA_RegisterLibrary,
SMHBA_RemoveAllPersistentBindings,
SMHBA_RemovePersistentBinding, SMHBA_ScsiInquiry,
SMHBA_ScsiReadCapacity, SMHBA_ScsiReportLuns,
SMHBA_SendECHO, SMHBA_SendSMPPassThru, SMHBA_SendTEST,
SMHBA_SetBindingSupport, SMHBA_SetPersistentBinding - Common
Storage Management HBA information librarySYNOPSIS
cc [ flag... ] file... -lSMHBAAPI [ library... ]
#include
DESCRIPTION
The functions in this library access Fibre Channel and/or Sereal Attached SCSI HBA data depending on vendor provided implementation underneath. 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 discovered devices and operating system SCSI information o Discovered devices port attributes o SCSI commands for discovered devices (Report LUNS, Read Capacity, and Inquiry) o Storage Managment Protocol commands to discoverSunOS 5.11 Last change: 28 Sep 2009 1
Interface Libraries libSMHBAAPI(3LIB) Serial Attached SCSI configuration details o Common Transport commands to discover Fibre Channel Fabric details INTERFACES The shared object libSMHBAAPI.so.1 provides the publicinterfaces defined below. See Intro(3) for additional infor-
mation on shared object interfaces.HBA_CloseAdapter HBA_FreeLibrary
HBA_GetAdapterName HBA_GetNumberOfAdapters
HBA_GetRNIDMgmtInfo HBA_LoadLibrary
HBA_OpenAdapter HBA_RefreshAdapterConfiguration
HBA_RefreshInformation HBA_RegisterForLinkEvents
HBA_RemoveCallback HBA_SendCTPassThruV2
HBA_SendLIRR HBA_SendRLS
HBA_SendRNIDV2 HBA_SendRPL
HBA_SendRPS HBA_SendSRL
HBA_SetRNIDMgmtInfo SMHBA_GetAdapterAttributes
SMHBA_GetAdapterPortAttributes SMHBA_GetBindingCapability
SMHBA_GetBindingSupport SMHBA_GetDiscoveredPortAttributes
SMHBA_GetFCPhyAttributes SMHBA_GetLUNStatistics
SMHBA_GetNumberofPorts SMHBA_GetPersistentBinding
SMHBA_GetPhyStatistics SMHBA_GetPortAttributesByWWN
SMHBA_GetPortType SMHBA_GetProtocolStatistics
SMHBA_GetSASPhyAttributes SMHBA_GetTargetMapping
SMHBA_GetVendorLibraryAttributes SMHBA_GetVersion
SMHBA_GetWrapperLibraryAttributes SMHBA_RegisterForAdapterAddEvents
SMHBA_RegisterForAdapterEvents SMHBA_RegisterForAdapterPhyStatEvents
SMHBA_RegisterForAdapterPortEvents SMHBA_RegisterForAdapterPortStatEvents
SMHBA_RegisterForTargetEvents SMHBA_RegisterLibrary
SMHBA_RemoveAllPersistentBindings SMHBA_RemovePersistentBinding
SMHBA_ScsiInquiry SMHBA_ScsiReadCapacity
SMHBA_ScsiReportLuns SMHBA_SendECHO
SMHBA_SendSMPPassThru SMHBA_SendTEST
SMHBA_SetBindingSupport SMHBA_SetPersistentBinding
USAGE
Client applications link with the Common Library (using-lSMHBAAPI) to access the interfaces. The Common Library
dynamically loads individual Vendor-Specific Libraries (VSL)
listed in /etc/smhba.conf and described on smhba.conf(4). Using the libSMHBAAPI involves the following steps: 1. Optionally determining the version of the libraryby calling SMHBA_GetVersion().
SunOS 5.11 Last change: 28 Sep 2009 2
Interface Libraries libSMHBAAPI(3LIB) 2. Initializing the Common Library by callingHBA_LoadLibrary().
3. Determine the number of HBAs known to the commonlibrary by calling HBA_GetNumberOfAdapters().
4. Determine each HBA name in turn by callingHBA_GetAdapterName().
5. Open each HBA in turn by calling HBA_OpenAdapter().
6. Operate on a given HBA by calling the following:o SMHBA_GetAdapterAttributes()
o SMHBA_GetAdapterPortAttributes()
o SMHBA_GetDiscoveredPortAttributes()
o SMHBA_GetPortAttributesByWWN()
o SMHBA_GetNumberofPorts()
o SMHBA_GetPortType()
o SMHBA_GetProtocolStatistics()
o SMHBA_GetPhyStatistics()
o SMHBA_GetBindingCapability()
o SMHBA_GetBindingSupport()
o SMHBA_SetBindingSupport()
o SMHBA_GetTargetMapping()
o SMHBA_GetPersistentBinding()
o SMHBA_SetPersistentBinding()
o SMHBA_RemoveAllPersistentBindings()
o SMHBA_GetLUNStatistics()
o SMHBA_SendScsiInquiry()
o SMHBA_SendReportLuns()
o SMHBA_SendReadCapacity()
o SMHBA_RegisterForAdapterAddEvents()
SunOS 5.11 Last change: 28 Sep 2009 3
Interface Libraries libSMHBAAPI(3LIB)o SMHBA_RegisterForAdapterEvents()
o SMHBA_RegisterForAdapterPortEvents()
o SMHBA_RegisterForAdapterPortStatEvents()
o SMHBA_RegisterForAdapterPhyStatEvents()
o SMHBA_RegisterForTargetEvents()
o HBA_RegisterForLinkEvents()
o HBA_RemoveCallback()
For Serial Attached HBAo SMHBA_GetSASPhyAttributes()
o SMHBA_SendSMPPassThru()
For Fibre Channle HBAo SMHBA_GetFCPhyAttributes()
o HBA_SendCTPassThruV2()
o HBA_SetRNIDMgmtInfo()
o HBA_GetRNIDMgmtInfo()
o HBA_SendRNIDV2()
o HBA_SendRPL()
o HBA_SendRPS()
o HBA_SendSRL()
o HBA_SendLIRR()
o HBA_SendRLS()
o HBA_SendTEST()
o HBA_SendECHO()
7. Close open HBAs by calling HBA_CloseAdapter().
8. Unload the library by calling HBA_FreeLibrary().
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:SunOS 5.11 Last change: 28 Sep 2009 4
Interface Libraries libSMHBAAPI(3LIB)____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| ___________________________|_____________________________|__
| Availability | system/storage/sasinfo, | | | system/storage/sasinfor || ____________________________|_____________________________|_
| Interface Stability | Committed || ____________________________|_____________________________|_
| MT-Level | MT-Safe |
| ____________________________|_____________________________|_
| Standard | ANSI INCITS 428 Storage| | | Management Host Bus Adapter| | | Application Programming|| | Interface (SM-HBA) |
|_____________________________|_____________________________|
SEE ALSO
smhba.conf(4), attributes(5)SunOS 5.11 Last change: 28 Sep 2009 5