xref: /titanic_44/usr/src/lib/libstmf/common/libstmf_impl.h (revision fdcc480a6215c1e81d58d8e7af8c84fd6f1faa50)
18fe96085Stim szeto /*
28fe96085Stim szeto  * CDDL HEADER START
38fe96085Stim szeto  *
48fe96085Stim szeto  * The contents of this file are subject to the terms of the
58fe96085Stim szeto  * Common Development and Distribution License (the "License").
68fe96085Stim szeto  * You may not use this file except in compliance with the License.
78fe96085Stim szeto  *
88fe96085Stim szeto  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
98fe96085Stim szeto  * or http://www.opensolaris.org/os/licensing.
108fe96085Stim szeto  * See the License for the specific language governing permissions
118fe96085Stim szeto  * and limitations under the License.
128fe96085Stim szeto  *
138fe96085Stim szeto  * When distributing Covered Code, include this CDDL HEADER in each
148fe96085Stim szeto  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
158fe96085Stim szeto  * If applicable, add the following below this CDDL HEADER, with the
168fe96085Stim szeto  * fields enclosed by brackets "[]" replaced with your own identifying
178fe96085Stim szeto  * information: Portions Copyright [yyyy] [name of copyright owner]
188fe96085Stim szeto  *
198fe96085Stim szeto  * CDDL HEADER END
208fe96085Stim szeto  */
218fe96085Stim szeto /*
228fe96085Stim szeto  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
238fe96085Stim szeto  * Use is subject to license terms.
248fe96085Stim szeto  */
258fe96085Stim szeto 
268fe96085Stim szeto #ifndef	_LIBSTMF_IMPL_H
278fe96085Stim szeto #define	_LIBSTMF_IMPL_H
288fe96085Stim szeto 
298fe96085Stim szeto #ifdef	__cplusplus
308fe96085Stim szeto extern "C" {
318fe96085Stim szeto #endif
328fe96085Stim szeto 
338fe96085Stim szeto #include <libstmf.h>
348fe96085Stim szeto 
358fe96085Stim szeto typedef struct _luResourceImpl {
368fe96085Stim szeto 	uint16_t type;
378fe96085Stim szeto 	void *resource;
388fe96085Stim szeto } luResourceImpl;
398fe96085Stim szeto 
408fe96085Stim szeto 
418fe96085Stim szeto typedef struct _diskResource {
428fe96085Stim szeto 	boolean_t   luDataFileNameValid;
438fe96085Stim szeto 	char	    luDataFileName[MAXPATHLEN];
448fe96085Stim szeto 	boolean_t   luMetaFileNameValid;
458fe96085Stim szeto 	char	    luMetaFileName[MAXPATHLEN];
468fe96085Stim szeto 	boolean_t   luSizeValid;
478fe96085Stim szeto 	uint64_t    luSize;
488fe96085Stim szeto 	boolean_t   blkSizeValid;
498fe96085Stim szeto 	uint16_t    blkSize;
508fe96085Stim szeto 	boolean_t   luGuidValid;
518fe96085Stim szeto 	uint8_t	    luGuid[16];
528fe96085Stim szeto 	boolean_t   serialNumValid;
538fe96085Stim szeto 	char	    serialNum[253];
548fe96085Stim szeto 	boolean_t   companyIdValid;
558fe96085Stim szeto 	uint32_t    companyId;
568fe96085Stim szeto 	boolean_t   luAliasValid;
578fe96085Stim szeto 	char	    luAlias[256];
582f624233SNattuvetty Bhavyan 	boolean_t   luMgmtUrlValid;
592f624233SNattuvetty Bhavyan 	char	    luMgmtUrl[1024];
608fe96085Stim szeto 	boolean_t   vidValid;
618fe96085Stim szeto 	char	    vid[8];
628fe96085Stim szeto 	boolean_t   pidValid;
638fe96085Stim szeto 	char	    pid[16];
648fe96085Stim szeto 	boolean_t   revValid;
658fe96085Stim szeto 	char	    rev[4];
668fe96085Stim szeto 	boolean_t   writeProtectEnableValid;
678fe96085Stim szeto 	boolean_t   writeProtectEnable;
688fe96085Stim szeto 	boolean_t   writebackCacheDisableValid;
698fe96085Stim szeto 	boolean_t   writebackCacheDisable;
7045039663SJohn Forte 	uint16_t    accessState;
71*fdcc480aSJohn Forte 	uint32_t    hostId;
72*fdcc480aSJohn Forte 	boolean_t   hostIdValid;
738fe96085Stim szeto } diskResource;
748fe96085Stim szeto 
758fe96085Stim szeto 
768fe96085Stim szeto #ifdef	__cplusplus
778fe96085Stim szeto }
788fe96085Stim szeto #endif
798fe96085Stim szeto 
808fe96085Stim szeto #endif	/* _LIBSTMF_IMPL_H */
81