xref: /onnv-gate/usr/src/lib/libima/common/ima-plugin.h (revision 10156:a1ab3f203504)
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