xref: /onnv-gate/usr/src/lib/lvm/libsvm/common/hdrs/svm.h (revision 0:68f95e015346)
1*0Sstevel@tonic-gate /*
2*0Sstevel@tonic-gate  * CDDL HEADER START
3*0Sstevel@tonic-gate  *
4*0Sstevel@tonic-gate  * The contents of this file are subject to the terms of the
5*0Sstevel@tonic-gate  * Common Development and Distribution License, Version 1.0 only
6*0Sstevel@tonic-gate  * (the "License").  You may not use this file except in compliance
7*0Sstevel@tonic-gate  * with the License.
8*0Sstevel@tonic-gate  *
9*0Sstevel@tonic-gate  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*0Sstevel@tonic-gate  * or http://www.opensolaris.org/os/licensing.
11*0Sstevel@tonic-gate  * See the License for the specific language governing permissions
12*0Sstevel@tonic-gate  * and limitations under the License.
13*0Sstevel@tonic-gate  *
14*0Sstevel@tonic-gate  * When distributing Covered Code, include this CDDL HEADER in each
15*0Sstevel@tonic-gate  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*0Sstevel@tonic-gate  * If applicable, add the following below this CDDL HEADER, with the
17*0Sstevel@tonic-gate  * fields enclosed by brackets "[]" replaced with your own identifying
18*0Sstevel@tonic-gate  * information: Portions Copyright [yyyy] [name of copyright owner]
19*0Sstevel@tonic-gate  *
20*0Sstevel@tonic-gate  * CDDL HEADER END
21*0Sstevel@tonic-gate  */
22*0Sstevel@tonic-gate /*
23*0Sstevel@tonic-gate  * Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
24*0Sstevel@tonic-gate  * Use is subject to license terms.
25*0Sstevel@tonic-gate  */
26*0Sstevel@tonic-gate 
27*0Sstevel@tonic-gate 
28*0Sstevel@tonic-gate #ifndef	_SVM_H
29*0Sstevel@tonic-gate #define	_SVM_H
30*0Sstevel@tonic-gate 
31*0Sstevel@tonic-gate #pragma ident	"%Z%%M%	%I%	%E% SMI"
32*0Sstevel@tonic-gate 
33*0Sstevel@tonic-gate #ifdef	__cplusplus
34*0Sstevel@tonic-gate extern "C" {
35*0Sstevel@tonic-gate #endif
36*0Sstevel@tonic-gate 
37*0Sstevel@tonic-gate 
38*0Sstevel@tonic-gate #define	RET_SUCCESS	0
39*0Sstevel@tonic-gate #define	RET_ERROR	-1
40*0Sstevel@tonic-gate #define	RET_NOERROR	RET_SUCCESS
41*0Sstevel@tonic-gate 
42*0Sstevel@tonic-gate 
43*0Sstevel@tonic-gate #define	PROP_KEEP_REPL_STATE	"md_keep_repl_state"
44*0Sstevel@tonic-gate #define	PROP_DEVID_DESTROY	"md_devid_destroy"
45*0Sstevel@tonic-gate 
46*0Sstevel@tonic-gate #define	MD_CONF		"/kernel/drv/md.conf"
47*0Sstevel@tonic-gate #define	MD_CONF_ORIG	"/tmp/md.conf.orig"
48*0Sstevel@tonic-gate #define	SYSTEM_FILE	"/etc/system"
49*0Sstevel@tonic-gate #define	NAME_TO_MAJOR	"/etc/name_to_major"
50*0Sstevel@tonic-gate #define	VFSTAB		"/etc/vfstab"
51*0Sstevel@tonic-gate 
52*0Sstevel@tonic-gate #define	MD_MODULE "md"
53*0Sstevel@tonic-gate #define	ROOT_MNTPT "/"
54*0Sstevel@tonic-gate #define	ROOT_METADEVICE "/dev/md/dsk/"
55*0Sstevel@tonic-gate 
56*0Sstevel@tonic-gate 
57*0Sstevel@tonic-gate typedef enum {
58*0Sstevel@tonic-gate 	MD_STR_NOTFOUND,	/* bootlist not found */
59*0Sstevel@tonic-gate 	MD_STR_START,		/* bootlist found, convertion started */
60*0Sstevel@tonic-gate 	MD_STR_DONE		/* bootlist converversion done */
61*0Sstevel@tonic-gate } convflag_t;
62*0Sstevel@tonic-gate 
63*0Sstevel@tonic-gate /* The following defines have been taken from addrem.h */
64*0Sstevel@tonic-gate #define	MAX_CMD_LINE	256
65*0Sstevel@tonic-gate #define	MAX_N2M_ALIAS_LINE	FILENAME_MAX + FILENAME_MAX + 1
66*0Sstevel@tonic-gate #define	MAXLEN_NAM_TO_MAJ_ENT	FILENAME_MAX + MAX_STR_MAJOR + 1
67*0Sstevel@tonic-gate #define	OPT_LEN	128
68*0Sstevel@tonic-gate #define	CADDR_HEX_STR	16
69*0Sstevel@tonic-gate #define	UINT_STR	10
70*0Sstevel@tonic-gate #define	MODLINE_ENT_MAX	(4 * UINT_STR) + CADDR_HEX_STR + MODMAXNAMELEN
71*0Sstevel@tonic-gate #define	MAX_STR_MAJOR	UINT_STR
72*0Sstevel@tonic-gate #define	STR_LONG	10
73*0Sstevel@tonic-gate #define	PERM_STR	4
74*0Sstevel@tonic-gate #define	MAX_PERM_ENTRY	(2 * STR_LONG) + PERM_STR + (2 * FILENAME_MAX) + 1
75*0Sstevel@tonic-gate #define	MAX_DBFILE_ENTRY	MAX_PERM_ENTRY
76*0Sstevel@tonic-gate 
77*0Sstevel@tonic-gate extern void create_diskset_links();
78*0Sstevel@tonic-gate extern int copyfile(char *from, char *to);
79*0Sstevel@tonic-gate extern int get_drv_name(major_t major, char *file_name, char *buf);
80*0Sstevel@tonic-gate extern int mod_unload(char *modname);
81*0Sstevel@tonic-gate extern int valid_bootlist(FILE *fp, int line_size);
82*0Sstevel@tonic-gate extern int convert_bootlist(char *systemfile, char *mdconf, char **tmpfilename);
83*0Sstevel@tonic-gate extern int write_xlate_to_mdconf(char *rootpath);
84*0Sstevel@tonic-gate extern int write_targ_nm_table(char *rootpath);
85*0Sstevel@tonic-gate extern int get_rootmetadevice(char *rootpath, char **devname);
86*0Sstevel@tonic-gate extern void set_upgrade_prop(char *prop_name, int val);
87*0Sstevel@tonic-gate extern int is_upgrade_prop(char *prop_name);
88*0Sstevel@tonic-gate extern int create_in_file_prop(char *prop_name, char *fname);
89*0Sstevel@tonic-gate extern void debug_printf(char *fmt, ...);
90*0Sstevel@tonic-gate 
91*0Sstevel@tonic-gate #ifdef	__cplusplus
92*0Sstevel@tonic-gate }
93*0Sstevel@tonic-gate #endif
94*0Sstevel@tonic-gate 
95*0Sstevel@tonic-gate #endif	/* _SVM_H */
96