17836SJohn.Forte@Sun.COM /* 27836SJohn.Forte@Sun.COM * CDDL HEADER START 37836SJohn.Forte@Sun.COM * 47836SJohn.Forte@Sun.COM * The contents of this file are subject to the terms of the 57836SJohn.Forte@Sun.COM * Common Development and Distribution License (the "License"). 67836SJohn.Forte@Sun.COM * You may not use this file except in compliance with the License. 77836SJohn.Forte@Sun.COM * 87836SJohn.Forte@Sun.COM * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97836SJohn.Forte@Sun.COM * or http://www.opensolaris.org/os/licensing. 107836SJohn.Forte@Sun.COM * See the License for the specific language governing permissions 117836SJohn.Forte@Sun.COM * and limitations under the License. 127836SJohn.Forte@Sun.COM * 137836SJohn.Forte@Sun.COM * When distributing Covered Code, include this CDDL HEADER in each 147836SJohn.Forte@Sun.COM * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157836SJohn.Forte@Sun.COM * If applicable, add the following below this CDDL HEADER, with the 167836SJohn.Forte@Sun.COM * fields enclosed by brackets "[]" replaced with your own identifying 177836SJohn.Forte@Sun.COM * information: Portions Copyright [yyyy] [name of copyright owner] 187836SJohn.Forte@Sun.COM * 197836SJohn.Forte@Sun.COM * CDDL HEADER END 207836SJohn.Forte@Sun.COM */ 217836SJohn.Forte@Sun.COM /* 22*10156SZhang.Yi@Sun.COM * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 237836SJohn.Forte@Sun.COM * Use is subject to license terms. 247836SJohn.Forte@Sun.COM */ 257836SJohn.Forte@Sun.COM 267836SJohn.Forte@Sun.COM /* 277836SJohn.Forte@Sun.COM * 287836SJohn.Forte@Sun.COM * Description 297836SJohn.Forte@Sun.COM * imaPlugin.h: interface for the iScsiPlugin class. 307836SJohn.Forte@Sun.COM * 317836SJohn.Forte@Sun.COM * License: 327836SJohn.Forte@Sun.COM * The contents of this file are subject to the SNIA Public License 337836SJohn.Forte@Sun.COM * Version 1.0 (the "License"); you may not use this file except in 347836SJohn.Forte@Sun.COM * compliance with the License. You may obtain a copy of the License at 357836SJohn.Forte@Sun.COM * 367836SJohn.Forte@Sun.COM * /http://www.snia.org/English/Resources/Code/OpenSource.html 377836SJohn.Forte@Sun.COM * 387836SJohn.Forte@Sun.COM * Software distributed under the License is distributed on an "AS IS" 397836SJohn.Forte@Sun.COM * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See 407836SJohn.Forte@Sun.COM * the License for the specific language governing rights and limitations 417836SJohn.Forte@Sun.COM * under the License. 427836SJohn.Forte@Sun.COM * 437836SJohn.Forte@Sun.COM * The Original Code is SNIA HBA API and IMA general header file 447836SJohn.Forte@Sun.COM * 457836SJohn.Forte@Sun.COM * The Initial Developer of the Original Code is: 467836SJohn.Forte@Sun.COM * Benjamin F. Kuo, Troika Networks, Inc. (benk@troikanetworks.com) 477836SJohn.Forte@Sun.COM * David Dillard VERITAS Software david.dillard@veritas.com 487836SJohn.Forte@Sun.COM * 497836SJohn.Forte@Sun.COM * Contributor(s): 507836SJohn.Forte@Sun.COM * Jeff Ding, Adaptec, Inc. (jding@corp.adaptec.com) 517836SJohn.Forte@Sun.COM * 527836SJohn.Forte@Sun.COM ******************************************************************************* 537836SJohn.Forte@Sun.COM * 547836SJohn.Forte@Sun.COM * Changes: 557836SJohn.Forte@Sun.COM * 09/24/2003 Initial Draft 567836SJohn.Forte@Sun.COM * (for other changes... see the CVS logs) 577836SJohn.Forte@Sun.COM * 12/15/2003 corrected the defined parameter in IMA_SetPhbaIsnsDiscovery(). 587836SJohn.Forte@Sun.COM * lower case the computer name as iscsi name in IMA_GenerateNodeName(). 597836SJohn.Forte@Sun.COM ******************************************************************************/ 607836SJohn.Forte@Sun.COM 617836SJohn.Forte@Sun.COM #ifdef __cplusplus 627836SJohn.Forte@Sun.COM extern "C" { 637836SJohn.Forte@Sun.COM #endif 647836SJohn.Forte@Sun.COM 657836SJohn.Forte@Sun.COM #ifndef IMAPLUGIN_H 667836SJohn.Forte@Sun.COM #define IMAPLUGIN_H 677836SJohn.Forte@Sun.COM 687836SJohn.Forte@Sun.COM typedef IMA_STATUS (* Initialize)( 697836SJohn.Forte@Sun.COM IMA_UINT32 pluginOid 707836SJohn.Forte@Sun.COM ); 717836SJohn.Forte@Sun.COM 727836SJohn.Forte@Sun.COM typedef void (* TerminateFn)(); 737836SJohn.Forte@Sun.COM 747836SJohn.Forte@Sun.COM 757836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetPluginPropertiesFn)( 767836SJohn.Forte@Sun.COM IMA_OID pluginOid, 777836SJohn.Forte@Sun.COM IMA_PLUGIN_PROPERTIES *pProps 787836SJohn.Forte@Sun.COM ); 797836SJohn.Forte@Sun.COM 807836SJohn.Forte@Sun.COM 817836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetSharedNodeOidFn)( 827836SJohn.Forte@Sun.COM IMA_OID *pSharedNodeId 837836SJohn.Forte@Sun.COM ); 847836SJohn.Forte@Sun.COM 857836SJohn.Forte@Sun.COM 867836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetNodePropertiesFn)( 877836SJohn.Forte@Sun.COM IMA_OID nodeOid, 887836SJohn.Forte@Sun.COM IMA_NODE_PROPERTIES *pProps 897836SJohn.Forte@Sun.COM ); 907836SJohn.Forte@Sun.COM 917836SJohn.Forte@Sun.COM 927836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetNodeNameFn)( 937836SJohn.Forte@Sun.COM IMA_OID nodeOid, 947836SJohn.Forte@Sun.COM const IMA_NODE_NAME newName 957836SJohn.Forte@Sun.COM ); 967836SJohn.Forte@Sun.COM 977836SJohn.Forte@Sun.COM 987836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GenerateNodeNameFn)( 997836SJohn.Forte@Sun.COM IMA_NODE_NAME generatedname 1007836SJohn.Forte@Sun.COM ); 1017836SJohn.Forte@Sun.COM 1027836SJohn.Forte@Sun.COM 1037836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetNodeAliasFn)( 1047836SJohn.Forte@Sun.COM IMA_OID nodeOid, 1057836SJohn.Forte@Sun.COM const IMA_NODE_ALIAS newAlias 1067836SJohn.Forte@Sun.COM ); 1077836SJohn.Forte@Sun.COM 1087836SJohn.Forte@Sun.COM 1097836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetLhbaOidListFn)( 1107836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 1117836SJohn.Forte@Sun.COM ); 1127836SJohn.Forte@Sun.COM 1137836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetLhbaPropertiesFn)( 1147836SJohn.Forte@Sun.COM IMA_OID lhbaId, 1157836SJohn.Forte@Sun.COM IMA_LHBA_PROPERTIES *pProps 1167836SJohn.Forte@Sun.COM ); 1177836SJohn.Forte@Sun.COM 1187836SJohn.Forte@Sun.COM 1197836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetPhbaOidListFn)( 1207836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 1217836SJohn.Forte@Sun.COM ); 1227836SJohn.Forte@Sun.COM 1237836SJohn.Forte@Sun.COM 1247836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetPhbaPropertiesFn)( 1257836SJohn.Forte@Sun.COM IMA_OID phbaId, 1267836SJohn.Forte@Sun.COM IMA_PHBA_PROPERTIES *pProps 1277836SJohn.Forte@Sun.COM ); 1287836SJohn.Forte@Sun.COM 1297836SJohn.Forte@Sun.COM 1307836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetNonSharedNodeOidListFn)( 1317836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 1327836SJohn.Forte@Sun.COM ); 1337836SJohn.Forte@Sun.COM 1347836SJohn.Forte@Sun.COM 1357836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetFirstBurstLengthPropertiesFn)( 1367836SJohn.Forte@Sun.COM IMA_OID Oid, 1377836SJohn.Forte@Sun.COM IMA_MIN_MAX_VALUE *pProps 1387836SJohn.Forte@Sun.COM ); 1397836SJohn.Forte@Sun.COM 1407836SJohn.Forte@Sun.COM 1417836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetMaxBurstLengthPropertiesFn)( 1427836SJohn.Forte@Sun.COM IMA_OID Oid, 1437836SJohn.Forte@Sun.COM IMA_MIN_MAX_VALUE *pProps 1447836SJohn.Forte@Sun.COM ); 1457836SJohn.Forte@Sun.COM 1467836SJohn.Forte@Sun.COM 1477836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetMaxRecvDataSegmentLengthPropertiesFn)( 1487836SJohn.Forte@Sun.COM IMA_OID Oid, 1497836SJohn.Forte@Sun.COM IMA_MIN_MAX_VALUE *pProps 1507836SJohn.Forte@Sun.COM ); 1517836SJohn.Forte@Sun.COM 1527836SJohn.Forte@Sun.COM 1537836SJohn.Forte@Sun.COM /*---------------------------------------------*/ 1547836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_PluginIOCtlFn)( 1557836SJohn.Forte@Sun.COM IMA_OID pluginOid, 1567836SJohn.Forte@Sun.COM IMA_UINT command, 1577836SJohn.Forte@Sun.COM const void *pInputBuffer, 1587836SJohn.Forte@Sun.COM IMA_UINT inputBufferLength, 1597836SJohn.Forte@Sun.COM void *pOutputBuffer, 1607836SJohn.Forte@Sun.COM IMA_UINT *pOutputBufferLength 1617836SJohn.Forte@Sun.COM ); 1627836SJohn.Forte@Sun.COM 1637836SJohn.Forte@Sun.COM 1647836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetNetworkPortalOidListFn)( 1657836SJohn.Forte@Sun.COM IMA_OID lhbaId, 1667836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 1677836SJohn.Forte@Sun.COM ); 1687836SJohn.Forte@Sun.COM 1697836SJohn.Forte@Sun.COM 1707836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetFirstBurstLengthFn)( 1717836SJohn.Forte@Sun.COM IMA_OID lhbaId, 1727836SJohn.Forte@Sun.COM IMA_UINT firstBurstLength 1737836SJohn.Forte@Sun.COM ); 1747836SJohn.Forte@Sun.COM 1757836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetMaxBurstLengthFn)( 1767836SJohn.Forte@Sun.COM IMA_OID lhbaId, 1777836SJohn.Forte@Sun.COM IMA_UINT maxBurstLength 1787836SJohn.Forte@Sun.COM ); 1797836SJohn.Forte@Sun.COM 1807836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetMaxRecvDataSegmentLengthFn)( 1817836SJohn.Forte@Sun.COM IMA_OID lhbaId, 1827836SJohn.Forte@Sun.COM IMA_UINT maxRecvDataSegmentLength 1837836SJohn.Forte@Sun.COM ); 1847836SJohn.Forte@Sun.COM 1857836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetMaxConnectionsPropertiesFn)( 1867836SJohn.Forte@Sun.COM IMA_OID Oid, 1877836SJohn.Forte@Sun.COM IMA_MIN_MAX_VALUE *pProps 1887836SJohn.Forte@Sun.COM ); 1897836SJohn.Forte@Sun.COM 1907836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetMaxConnectionsFn)( 1917836SJohn.Forte@Sun.COM IMA_OID lhbaId, 1927836SJohn.Forte@Sun.COM IMA_UINT maxConnections 1937836SJohn.Forte@Sun.COM ); 1947836SJohn.Forte@Sun.COM 1957836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetDefaultTime2RetainPropertiesFn)( 1967836SJohn.Forte@Sun.COM IMA_OID lhbaId, 1977836SJohn.Forte@Sun.COM IMA_MIN_MAX_VALUE *pProps 1987836SJohn.Forte@Sun.COM ); 1997836SJohn.Forte@Sun.COM 2007836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetDefaultTime2RetainFn)( 2017836SJohn.Forte@Sun.COM IMA_OID lhbaId, 2027836SJohn.Forte@Sun.COM IMA_UINT defaultTime2Retain 2037836SJohn.Forte@Sun.COM ); 2047836SJohn.Forte@Sun.COM 2057836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetDefaultTime2WaitPropertiesFn)( 2067836SJohn.Forte@Sun.COM IMA_OID lhbaId, 2077836SJohn.Forte@Sun.COM IMA_MIN_MAX_VALUE *pProps 2087836SJohn.Forte@Sun.COM ); 2097836SJohn.Forte@Sun.COM 2107836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetDefaultTime2WaitFn)( 2117836SJohn.Forte@Sun.COM IMA_OID lhbaId, 2127836SJohn.Forte@Sun.COM IMA_UINT defaultTime2Wait 2137836SJohn.Forte@Sun.COM ); 2147836SJohn.Forte@Sun.COM 2157836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetMaxOutstandingR2TPropertiesFn)( 2167836SJohn.Forte@Sun.COM IMA_OID Oid, 2177836SJohn.Forte@Sun.COM IMA_MIN_MAX_VALUE *pProps 2187836SJohn.Forte@Sun.COM ); 2197836SJohn.Forte@Sun.COM 2207836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetMaxOutstandingR2TFn)( 2217836SJohn.Forte@Sun.COM IMA_OID lhbaId, 2227836SJohn.Forte@Sun.COM IMA_UINT maxOutstandingR2T 2237836SJohn.Forte@Sun.COM ); 2247836SJohn.Forte@Sun.COM 2257836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetErrorRecoveryLevelPropertiesFn)( 2267836SJohn.Forte@Sun.COM IMA_OID Oid, 2277836SJohn.Forte@Sun.COM IMA_MIN_MAX_VALUE *pProps 2287836SJohn.Forte@Sun.COM ); 2297836SJohn.Forte@Sun.COM 2307836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetErrorRecoveryLevelFn)( 2317836SJohn.Forte@Sun.COM IMA_OID Oid, 2327836SJohn.Forte@Sun.COM IMA_UINT errorRecoveryLevel 2337836SJohn.Forte@Sun.COM ); 2347836SJohn.Forte@Sun.COM 2357836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetInitialR2TPropertiesFn)( 2367836SJohn.Forte@Sun.COM IMA_OID Oid, 2377836SJohn.Forte@Sun.COM IMA_BOOL_VALUE *pProps 2387836SJohn.Forte@Sun.COM ); 2397836SJohn.Forte@Sun.COM 2407836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetInitialR2TFn)( 2417836SJohn.Forte@Sun.COM IMA_OID Oid, 2427836SJohn.Forte@Sun.COM IMA_BOOL initialR2T 2437836SJohn.Forte@Sun.COM ); 2447836SJohn.Forte@Sun.COM 2457836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetImmediateDataPropertiesFn)( 2467836SJohn.Forte@Sun.COM IMA_OID Oid, 2477836SJohn.Forte@Sun.COM IMA_BOOL_VALUE *pProps 2487836SJohn.Forte@Sun.COM ); 2497836SJohn.Forte@Sun.COM 2507836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetImmediateDataFn)( 2517836SJohn.Forte@Sun.COM IMA_OID Oid, 2527836SJohn.Forte@Sun.COM IMA_BOOL immediateData 2537836SJohn.Forte@Sun.COM ); 2547836SJohn.Forte@Sun.COM 2557836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetDataPduInOrderPropertiesFn)( 2567836SJohn.Forte@Sun.COM IMA_OID Oid, 2577836SJohn.Forte@Sun.COM IMA_BOOL_VALUE *pProps 2587836SJohn.Forte@Sun.COM ); 2597836SJohn.Forte@Sun.COM 2607836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetDataPduInOrderFn)( 2617836SJohn.Forte@Sun.COM IMA_OID Oid, 2627836SJohn.Forte@Sun.COM IMA_BOOL dataPduInOrder 2637836SJohn.Forte@Sun.COM ); 2647836SJohn.Forte@Sun.COM 2657836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetDataSequenceInOrderPropertiesFn)( 2667836SJohn.Forte@Sun.COM IMA_OID Oid, 2677836SJohn.Forte@Sun.COM IMA_BOOL_VALUE *pProps 2687836SJohn.Forte@Sun.COM ); 2697836SJohn.Forte@Sun.COM 2707836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetDataSequenceInOrderFn)( 2717836SJohn.Forte@Sun.COM IMA_OID Oid, 2727836SJohn.Forte@Sun.COM IMA_BOOL dataSequenceInOrder 2737836SJohn.Forte@Sun.COM ); 2747836SJohn.Forte@Sun.COM 2757836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetStatisticsCollectionFn)( 2767836SJohn.Forte@Sun.COM IMA_OID Oid, 2777836SJohn.Forte@Sun.COM IMA_BOOL enableStatisticsCollection 2787836SJohn.Forte@Sun.COM ); 2797836SJohn.Forte@Sun.COM 2807836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetNetworkPortStatusFn)( 2817836SJohn.Forte@Sun.COM IMA_OID portOid, 2827836SJohn.Forte@Sun.COM IMA_NETWORK_PORT_STATUS *pStatus 2837836SJohn.Forte@Sun.COM ); 2847836SJohn.Forte@Sun.COM 2857836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetTargetOidListFn)( 2867836SJohn.Forte@Sun.COM IMA_OID Oid, 2877836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 2887836SJohn.Forte@Sun.COM ); 2897836SJohn.Forte@Sun.COM 2907836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_RemoveStaleDataFn)( 2917836SJohn.Forte@Sun.COM IMA_OID lhbaId 2927836SJohn.Forte@Sun.COM ); 2937836SJohn.Forte@Sun.COM 2947836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetIsnsDiscoveryFn)( 2957836SJohn.Forte@Sun.COM IMA_OID phbaId, 2967836SJohn.Forte@Sun.COM IMA_BOOL enableIsnsDiscovery, 2977836SJohn.Forte@Sun.COM IMA_ISNS_DISCOVERY_METHOD discoveryMethod, 2987836SJohn.Forte@Sun.COM const IMA_HOST_ID *iSnsHost 2997836SJohn.Forte@Sun.COM ); 3007836SJohn.Forte@Sun.COM 3017836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetSlpDiscoveryFn)( 3027836SJohn.Forte@Sun.COM IMA_OID phbaId, 3037836SJohn.Forte@Sun.COM IMA_BOOL enableSlpDiscovery 3047836SJohn.Forte@Sun.COM ); 3057836SJohn.Forte@Sun.COM 3067836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetStaticDiscoveryFn)( 3077836SJohn.Forte@Sun.COM IMA_OID phbaId, 3087836SJohn.Forte@Sun.COM IMA_BOOL enableStaticDiscovery 3097836SJohn.Forte@Sun.COM ); 3107836SJohn.Forte@Sun.COM 3117836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetSendTargetsDiscoveryFn)( 3127836SJohn.Forte@Sun.COM IMA_OID phbaId, 3137836SJohn.Forte@Sun.COM IMA_BOOL enableSendTargetsDiscovery 3147836SJohn.Forte@Sun.COM ); 3157836SJohn.Forte@Sun.COM 3167836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_AddPhbaStaticDiscoveryTargetFn)( 3177836SJohn.Forte@Sun.COM IMA_OID phbaOid, 3187836SJohn.Forte@Sun.COM const IMA_TARGET_ADDRESS targetAddress, 3197836SJohn.Forte@Sun.COM IMA_OID_LIST **pTargetOidList 3207836SJohn.Forte@Sun.COM ); 3217836SJohn.Forte@Sun.COM 3227836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_RemovePhbaStaticDiscoveryTargetFn)( 3237836SJohn.Forte@Sun.COM IMA_OID phbaOid, 3247836SJohn.Forte@Sun.COM IMA_OID targetOid 3257836SJohn.Forte@Sun.COM ); 3267836SJohn.Forte@Sun.COM 3277836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetPnpOidListFn)( 3287836SJohn.Forte@Sun.COM IMA_OID Oid, 3297836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 3307836SJohn.Forte@Sun.COM ); 3317836SJohn.Forte@Sun.COM 3327836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetPhbaDownloadPropertiesFn)( 3337836SJohn.Forte@Sun.COM IMA_OID phbaId, 3347836SJohn.Forte@Sun.COM IMA_PHBA_DOWNLOAD_PROPERTIES *pProps 3357836SJohn.Forte@Sun.COM ); 3367836SJohn.Forte@Sun.COM 3377836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_IsPhbaDownloadFileFn)( 3387836SJohn.Forte@Sun.COM IMA_OID phbaId, 3397836SJohn.Forte@Sun.COM const IMA_WCHAR *pFileName, 3407836SJohn.Forte@Sun.COM IMA_PHBA_DOWNLOAD_IMAGE_PROPERTIES *pProps 3417836SJohn.Forte@Sun.COM ); 3427836SJohn.Forte@Sun.COM 3437836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_PhbaDownloadFn)( 3447836SJohn.Forte@Sun.COM IMA_OID phbaId, 3457836SJohn.Forte@Sun.COM IMA_PHBA_DOWNLOAD_IMAGE_TYPE imageType, 3467836SJohn.Forte@Sun.COM const IMA_WCHAR *pFileName 3477836SJohn.Forte@Sun.COM ); 3487836SJohn.Forte@Sun.COM 3497836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetNetworkPortalPropertiesFn)( 3507836SJohn.Forte@Sun.COM IMA_OID networkPortalId, 3517836SJohn.Forte@Sun.COM IMA_NETWORK_PORTAL_PROPERTIES *pProps 3527836SJohn.Forte@Sun.COM ); 3537836SJohn.Forte@Sun.COM 3547836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetNetworkPortalIpAddressFn)( 3557836SJohn.Forte@Sun.COM IMA_OID networkPortalId, 3567836SJohn.Forte@Sun.COM const IMA_IP_ADDRESS NewIpAddress 3577836SJohn.Forte@Sun.COM ); 3587836SJohn.Forte@Sun.COM 3597836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetLnpOidListFn)( 3607836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 3617836SJohn.Forte@Sun.COM ); 3627836SJohn.Forte@Sun.COM 3637836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetLnpPropertiesFn)( 3647836SJohn.Forte@Sun.COM IMA_OID lnpId, 3657836SJohn.Forte@Sun.COM IMA_LNP_PROPERTIES *pProps 3667836SJohn.Forte@Sun.COM ); 3677836SJohn.Forte@Sun.COM 3687836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetPnpPropertiesFn)( 3697836SJohn.Forte@Sun.COM IMA_OID pnpId, 3707836SJohn.Forte@Sun.COM IMA_PNP_PROPERTIES *pProps 3717836SJohn.Forte@Sun.COM ); 3727836SJohn.Forte@Sun.COM 3737836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetPnpStatisticsFn)( 3747836SJohn.Forte@Sun.COM IMA_OID pnpId, 3757836SJohn.Forte@Sun.COM IMA_PNP_STATISTICS *pStats 3767836SJohn.Forte@Sun.COM ); 3777836SJohn.Forte@Sun.COM 3787836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetConnectionPropertiesFn)( 3797836SJohn.Forte@Sun.COM IMA_OID connectionId, 3807836SJohn.Forte@Sun.COM IMA_CONNECTION_PROPERTIES *pProps 3817836SJohn.Forte@Sun.COM ); 3827836SJohn.Forte@Sun.COM 3837836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetTargetPropertiesFn)( 3847836SJohn.Forte@Sun.COM IMA_OID targetId, 3857836SJohn.Forte@Sun.COM IMA_TARGET_PROPERTIES *pProps 3867836SJohn.Forte@Sun.COM ); 3877836SJohn.Forte@Sun.COM 3887836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetSessionPropertiesFn)( 3897836SJohn.Forte@Sun.COM IMA_OID sessionId, 3907836SJohn.Forte@Sun.COM IMA_SESSION_PROPERTIES *pProps 3917836SJohn.Forte@Sun.COM ); 3927836SJohn.Forte@Sun.COM 3937836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetTargetErrorStatisticsFn)( 3947836SJohn.Forte@Sun.COM IMA_OID targetId, 3957836SJohn.Forte@Sun.COM IMA_TARGET_ERROR_STATISTICS *pStats 3967836SJohn.Forte@Sun.COM ); 3977836SJohn.Forte@Sun.COM 3987836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetLuOidListFn)( 3997836SJohn.Forte@Sun.COM IMA_OID Oid, 4007836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 4017836SJohn.Forte@Sun.COM ); 4027836SJohn.Forte@Sun.COM 4037836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetLuOidFn)( 4047836SJohn.Forte@Sun.COM IMA_OID targetId, 4057836SJohn.Forte@Sun.COM IMA_UINT64 lun, 4067836SJohn.Forte@Sun.COM IMA_OID *pluId 4077836SJohn.Forte@Sun.COM ); 4087836SJohn.Forte@Sun.COM 4097836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetLuPropertiesFn)( 4107836SJohn.Forte@Sun.COM IMA_OID luId, 4117836SJohn.Forte@Sun.COM IMA_LU_PROPERTIES *pProps 4127836SJohn.Forte@Sun.COM ); 4137836SJohn.Forte@Sun.COM 4147836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetStatisticsPropertiesFn)( 4157836SJohn.Forte@Sun.COM IMA_OID oid, 4167836SJohn.Forte@Sun.COM IMA_STATISTICS_PROPERTIES *pProps 4177836SJohn.Forte@Sun.COM ); 4187836SJohn.Forte@Sun.COM 4197836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetDeviceStatisticsFn)( 4207836SJohn.Forte@Sun.COM IMA_OID luId, 4217836SJohn.Forte@Sun.COM IMA_DEVICE_STATISTICS *pStats 4227836SJohn.Forte@Sun.COM ); 4237836SJohn.Forte@Sun.COM 4247836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_LuInquiryFn)( 4257836SJohn.Forte@Sun.COM IMA_OID deviceId, 4267836SJohn.Forte@Sun.COM IMA_BOOL evpd, 4277836SJohn.Forte@Sun.COM IMA_BOOL cmddt, 4287836SJohn.Forte@Sun.COM IMA_BYTE pageCode, 4297836SJohn.Forte@Sun.COM 4307836SJohn.Forte@Sun.COM IMA_BYTE *pOutputBuffer, 4317836SJohn.Forte@Sun.COM IMA_UINT *pOutputBufferLength, 4327836SJohn.Forte@Sun.COM 4337836SJohn.Forte@Sun.COM IMA_BYTE *pSenseBuffer, 4347836SJohn.Forte@Sun.COM IMA_UINT *pSenseBufferLength 4357836SJohn.Forte@Sun.COM ); 4367836SJohn.Forte@Sun.COM 4377836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_LuReadCapacityFn)( 4387836SJohn.Forte@Sun.COM IMA_OID deviceId, 4397836SJohn.Forte@Sun.COM IMA_UINT cdbLength, 4407836SJohn.Forte@Sun.COM IMA_BYTE *pOutputBuffer, 4417836SJohn.Forte@Sun.COM IMA_UINT *pOutputBufferLength, 4427836SJohn.Forte@Sun.COM 4437836SJohn.Forte@Sun.COM IMA_BYTE *pSenseBuffer, 4447836SJohn.Forte@Sun.COM IMA_UINT *pSenseBufferLength 4457836SJohn.Forte@Sun.COM ); 4467836SJohn.Forte@Sun.COM 4477836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_LuReportLunsFn)( 4487836SJohn.Forte@Sun.COM IMA_OID deviceId, 4497836SJohn.Forte@Sun.COM IMA_BOOL sendToWellKnownLun, 4507836SJohn.Forte@Sun.COM IMA_BYTE selectReport, 4517836SJohn.Forte@Sun.COM 4527836SJohn.Forte@Sun.COM IMA_BYTE *pOutputBuffer, 4537836SJohn.Forte@Sun.COM IMA_UINT *pOutputBufferLength, 4547836SJohn.Forte@Sun.COM 4557836SJohn.Forte@Sun.COM IMA_BYTE *pSenseBuffer, 4567836SJohn.Forte@Sun.COM IMA_UINT *pSenseBufferLength 4577836SJohn.Forte@Sun.COM ); 4587836SJohn.Forte@Sun.COM 4597836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_ExposeLuFn)( 4607836SJohn.Forte@Sun.COM IMA_OID luId 4617836SJohn.Forte@Sun.COM ); 4627836SJohn.Forte@Sun.COM 4637836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_UnexposeLuFn)( 4647836SJohn.Forte@Sun.COM IMA_OID luId 4657836SJohn.Forte@Sun.COM ); 4667836SJohn.Forte@Sun.COM 4677836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetPhbaStatusFn)( 4687836SJohn.Forte@Sun.COM IMA_OID hbaId, 4697836SJohn.Forte@Sun.COM IMA_PHBA_STATUS *pStatus 4707836SJohn.Forte@Sun.COM ); 4717836SJohn.Forte@Sun.COM 4727836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_RegisterForObjectVisibilityChangesFn) ( 4737836SJohn.Forte@Sun.COM IMA_OBJECT_VISIBILITY_FN pClientFn 4747836SJohn.Forte@Sun.COM ); 4757836SJohn.Forte@Sun.COM 4767836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_DeregisterForObjectVisibilityChangesFn) ( 4777836SJohn.Forte@Sun.COM IMA_OBJECT_VISIBILITY_FN pClientFn 4787836SJohn.Forte@Sun.COM ); 4797836SJohn.Forte@Sun.COM 4807836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_RegisterForObjectPropertyChangesFn) ( 4817836SJohn.Forte@Sun.COM IMA_OBJECT_PROPERTY_FN pClientFn 4827836SJohn.Forte@Sun.COM ); 4837836SJohn.Forte@Sun.COM 4847836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_DeregisterForObjectPropertyChangesFn) ( 4857836SJohn.Forte@Sun.COM IMA_OBJECT_PROPERTY_FN pClientFn 4867836SJohn.Forte@Sun.COM ); 4877836SJohn.Forte@Sun.COM 4887836SJohn.Forte@Sun.COM 4897836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetAddressKeyPropertiesFn)( 4907836SJohn.Forte@Sun.COM IMA_OID targetOid, 4917836SJohn.Forte@Sun.COM IMA_ADDRESS_KEY_PROPERTIES **ppProps 4927836SJohn.Forte@Sun.COM ); 4937836SJohn.Forte@Sun.COM 4947836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetIpPropertiesFn)( 4957836SJohn.Forte@Sun.COM IMA_OID oid, 4967836SJohn.Forte@Sun.COM IMA_IP_PROPERTIES *pProps 4977836SJohn.Forte@Sun.COM ); 4987836SJohn.Forte@Sun.COM 4997836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetIpConfigMethodFn)( 5007836SJohn.Forte@Sun.COM IMA_OID oid, 5017836SJohn.Forte@Sun.COM IMA_BOOL enableDhcpIpConfiguration 5027836SJohn.Forte@Sun.COM ); 5037836SJohn.Forte@Sun.COM 5047836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetSubnetMaskFn)( 5057836SJohn.Forte@Sun.COM IMA_OID oid, 5067836SJohn.Forte@Sun.COM IMA_IP_ADDRESS subnetMask 5077836SJohn.Forte@Sun.COM ); 5087836SJohn.Forte@Sun.COM 5097836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetDnsServerAddressFn)( 5107836SJohn.Forte@Sun.COM IMA_OID oid, 5117836SJohn.Forte@Sun.COM const IMA_IP_ADDRESS *primaryDnsServerAddress, 5127836SJohn.Forte@Sun.COM const IMA_IP_ADDRESS *alternateDnsServerAddress 5137836SJohn.Forte@Sun.COM ); 5147836SJohn.Forte@Sun.COM 5157836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetDefaultGatewayFn)( 5167836SJohn.Forte@Sun.COM IMA_OID oid, 5177836SJohn.Forte@Sun.COM IMA_IP_ADDRESS defaultGateway 5187836SJohn.Forte@Sun.COM ); 5197836SJohn.Forte@Sun.COM 5207836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetSupportedAuthMethodsFn)( 5217836SJohn.Forte@Sun.COM IMA_OID lhbaOid, 5227836SJohn.Forte@Sun.COM IMA_BOOL getSettableMethods, 5237836SJohn.Forte@Sun.COM IMA_UINT *pMethodCount, 5247836SJohn.Forte@Sun.COM IMA_AUTHMETHOD *pMethodList 5257836SJohn.Forte@Sun.COM ); 5267836SJohn.Forte@Sun.COM 5277836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetInUseInitiatorAuthMethodsFn)( 5287836SJohn.Forte@Sun.COM IMA_OID lhbaOid, 5297836SJohn.Forte@Sun.COM IMA_UINT *pMethodCount, 5307836SJohn.Forte@Sun.COM IMA_AUTHMETHOD *pMethodList 5317836SJohn.Forte@Sun.COM ); 5327836SJohn.Forte@Sun.COM 5337836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetInitiatorAuthParmsFn)( 5347836SJohn.Forte@Sun.COM IMA_OID lhbaOid, 5357836SJohn.Forte@Sun.COM IMA_AUTHMETHOD method, 5367836SJohn.Forte@Sun.COM IMA_INITIATOR_AUTHPARMS *pParms 5377836SJohn.Forte@Sun.COM ); 5387836SJohn.Forte@Sun.COM 5397836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetInitiatorAuthMethodsFn)( 5407836SJohn.Forte@Sun.COM IMA_OID lhbaOid, 5417836SJohn.Forte@Sun.COM IMA_UINT methodCount, 5427836SJohn.Forte@Sun.COM const IMA_AUTHMETHOD *pMethodList 5437836SJohn.Forte@Sun.COM ); 5447836SJohn.Forte@Sun.COM 5457836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_SetInitiatorAuthParmsFn)( 5467836SJohn.Forte@Sun.COM IMA_OID lhbaOid, 5477836SJohn.Forte@Sun.COM IMA_AUTHMETHOD method, 5487836SJohn.Forte@Sun.COM const IMA_INITIATOR_AUTHPARMS *pParms 5497836SJohn.Forte@Sun.COM ); 5507836SJohn.Forte@Sun.COM 5517836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_FreeMemoryFn)( 5527836SJohn.Forte@Sun.COM void *pMemory 5537836SJohn.Forte@Sun.COM ); 5547836SJohn.Forte@Sun.COM 5557836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetStaticDiscoveryTargetOidListFn)( 5567836SJohn.Forte@Sun.COM IMA_OID oid, 5577836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 5587836SJohn.Forte@Sun.COM ); 5597836SJohn.Forte@Sun.COM 5607836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetDiscoveryPropertiesFn)( 5617836SJohn.Forte@Sun.COM IMA_OID oid, 5627836SJohn.Forte@Sun.COM IMA_DISCOVERY_PROPERTIES *pProps 5637836SJohn.Forte@Sun.COM ); 5647836SJohn.Forte@Sun.COM 5657836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_AddDiscoveryAddressFn)( 5667836SJohn.Forte@Sun.COM IMA_OID oid, 5677836SJohn.Forte@Sun.COM const IMA_TARGET_ADDRESS discoveryAddress, 5687836SJohn.Forte@Sun.COM IMA_OID *pDiscoveryAddressOid 5697836SJohn.Forte@Sun.COM ); 5707836SJohn.Forte@Sun.COM 5717836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_AddStaticDiscoveryTargetFn)( 5727836SJohn.Forte@Sun.COM IMA_OID oid, 5737836SJohn.Forte@Sun.COM const IMA_STATIC_DISCOVERY_TARGET staticDiscoveryTarget, 5747836SJohn.Forte@Sun.COM IMA_OID *pStaticDiscoveryTargetOid 5757836SJohn.Forte@Sun.COM ); 5767836SJohn.Forte@Sun.COM 5777836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_RemoveStaticDiscoveryTargetFn)( 5787836SJohn.Forte@Sun.COM IMA_OID oid 5797836SJohn.Forte@Sun.COM ); 5807836SJohn.Forte@Sun.COM 5817836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetStaticDiscoveryTargetPropertiesFn)( 5827836SJohn.Forte@Sun.COM IMA_OID staticDiscoveryTargetOid, 5837836SJohn.Forte@Sun.COM IMA_STATIC_DISCOVERY_TARGET_PROPERTIES *pProps 5847836SJohn.Forte@Sun.COM ); 5857836SJohn.Forte@Sun.COM 5867836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetDiscoveryAddressOidListFn) ( 5877836SJohn.Forte@Sun.COM IMA_OID Oid, 5887836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 5897836SJohn.Forte@Sun.COM ); 5907836SJohn.Forte@Sun.COM 5917836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetSessionOidListFn) ( 5927836SJohn.Forte@Sun.COM IMA_OID Oid, 5937836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 5947836SJohn.Forte@Sun.COM ); 5957836SJohn.Forte@Sun.COM 5967836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetConnectionOidListFn) ( 5977836SJohn.Forte@Sun.COM IMA_OID Oid, 5987836SJohn.Forte@Sun.COM IMA_OID_LIST **ppList 5997836SJohn.Forte@Sun.COM ); 6007836SJohn.Forte@Sun.COM 6017836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetDiscoveryAddressPropertiesFn) ( 6027836SJohn.Forte@Sun.COM IMA_OID discoveryAddressOid, 6037836SJohn.Forte@Sun.COM IMA_DISCOVERY_ADDRESS_PROPERTIES *pProps 6047836SJohn.Forte@Sun.COM ); 6057836SJohn.Forte@Sun.COM 6067836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_RemoveDiscoveryAddressFn) ( 6077836SJohn.Forte@Sun.COM IMA_OID discoveryAddressOid 6087836SJohn.Forte@Sun.COM ); 6097836SJohn.Forte@Sun.COM 6107836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetIpsecPropertiesFn) ( 6117836SJohn.Forte@Sun.COM IMA_OID oid, 6127836SJohn.Forte@Sun.COM IMA_IPSEC_PROPERTIES *pProps 6137836SJohn.Forte@Sun.COM ); 6147836SJohn.Forte@Sun.COM 6157836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_GetAddressKeysFn) ( 6167836SJohn.Forte@Sun.COM IMA_OID targetOid, 6177836SJohn.Forte@Sun.COM IMA_ADDRESS_KEYS **ppKeys 6187836SJohn.Forte@Sun.COM ); 6197836SJohn.Forte@Sun.COM 6207836SJohn.Forte@Sun.COM typedef IMA_STATUS (* QIMA_SetUpdateIntervalFn)( 6217836SJohn.Forte@Sun.COM IMA_OID pluginOid, 6227836SJohn.Forte@Sun.COM time_t interval 6237836SJohn.Forte@Sun.COM ); 6247836SJohn.Forte@Sun.COM 6257836SJohn.Forte@Sun.COM typedef IMA_STATUS (* IMA_CommitHbaParametersFn)( 6267836SJohn.Forte@Sun.COM IMA_OID oid, IMA_COMMIT_LEVEL commitLevel 6277836SJohn.Forte@Sun.COM ); 6287836SJohn.Forte@Sun.COM 629*10156SZhang.Yi@Sun.COM typedef IMA_STATUS (* SUN_IMA_GetTunablePropertiesFn) ( 630*10156SZhang.Yi@Sun.COM IMA_OID oid, 631*10156SZhang.Yi@Sun.COM ISCSI_TUNABLE_PARAM *param 632*10156SZhang.Yi@Sun.COM ); 633*10156SZhang.Yi@Sun.COM 634*10156SZhang.Yi@Sun.COM typedef IMA_STATUS (* SUN_IMA_SetTunablePropertiesFn) ( 635*10156SZhang.Yi@Sun.COM IMA_OID oid, 636*10156SZhang.Yi@Sun.COM ISCSI_TUNABLE_PARAM *param 637*10156SZhang.Yi@Sun.COM ); 638*10156SZhang.Yi@Sun.COM 6397836SJohn.Forte@Sun.COM #endif 6407836SJohn.Forte@Sun.COM 6417836SJohn.Forte@Sun.COM #ifdef __cplusplus 6427836SJohn.Forte@Sun.COM } 6437836SJohn.Forte@Sun.COM #endif 6447836SJohn.Forte@Sun.COM 645