xref: /onnv-gate/usr/src/lib/libast/sparc/include/ast/ast.h (revision 12068:08a39a083754)
14887Schin 
24887Schin /* : : generated by proto : : */
34887Schin /***********************************************************************
44887Schin *                                                                      *
54887Schin *               This software is part of the ast package               *
6*12068SRoger.Faulkner@Oracle.COM *          Copyright (c) 1985-2010 AT&T Intellectual Property          *
74887Schin *                      and is licensed under the                       *
84887Schin *                  Common Public License, Version 1.0                  *
98462SApril.Chin@Sun.COM *                    by AT&T Intellectual Property                     *
104887Schin *                                                                      *
114887Schin *                A copy of the License is available at                 *
124887Schin *            http://www.opensource.org/licenses/cpl1.0.txt             *
134887Schin *         (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9)         *
144887Schin *                                                                      *
154887Schin *              Information and Software Systems Research               *
164887Schin *                            AT&T Research                             *
174887Schin *                           Florham Park NJ                            *
184887Schin *                                                                      *
194887Schin *                 Glenn Fowler <gsf@research.att.com>                  *
204887Schin *                  David Korn <dgk@research.att.com>                   *
214887Schin *                   Phong Vo <kpv@research.att.com>                    *
224887Schin *                                                                      *
234887Schin ***********************************************************************/
244887Schin 
254887Schin /*
264887Schin  * Advanced Software Technology Library
274887Schin  * AT&T Research
284887Schin  *
294887Schin  * std + posix + ast
304887Schin  */
314887Schin 
324887Schin #ifndef _AST_H
334887Schin #if !defined(__PROTO__)
344887Schin #include <prototyped.h>
354887Schin #endif
364887Schin #if !defined(__LINKAGE__)
374887Schin #define __LINKAGE__		/* 2004-08-11 transition */
384887Schin #endif
394887Schin 
404887Schin #define _AST_H
414887Schin 
424887Schin #include <ast_version.h>
434887Schin 
444887Schin #ifndef _AST_STD_H
454887Schin #include <ast_std.h>
464887Schin #endif
474887Schin 
484887Schin #ifndef _SFIO_H
494887Schin #include <sfio.h>
504887Schin #endif
514887Schin 
524887Schin #ifndef	ast
534887Schin #define ast		_ast_info
544887Schin #endif
554887Schin 
564887Schin #ifndef PATH_MAX
574887Schin #define PATH_MAX	1024
584887Schin #endif
594887Schin 
604887Schin /*
614887Schin  * workaround botched headers that assume <stdio.h>
624887Schin  */
634887Schin 
644887Schin #ifndef FILE
654887Schin #ifndef _SFIO_H
664887Schin struct _sfio_s;
674887Schin #endif
684887Schin #define FILE		struct _sfio_s
694887Schin #ifndef	__FILE_typedef
704887Schin #define __FILE_typedef	1
714887Schin #endif
724887Schin #ifndef _FILEDEFED
734887Schin #define _FILEDEFED	1
744887Schin #endif
754887Schin #endif
764887Schin 
774887Schin /*
784887Schin  * exit() support -- this matches shell exit codes
794887Schin  */
804887Schin 
814887Schin #define EXIT_BITS	8			/* # exit status bits	*/
824887Schin 
834887Schin #define EXIT_USAGE	2			/* usage exit code	*/
844887Schin #define EXIT_QUIT	((1<<(EXIT_BITS))-1)	/* parent should quit	*/
854887Schin #define EXIT_NOTFOUND	((1<<(EXIT_BITS-1))-1)	/* command not found	*/
864887Schin #define EXIT_NOEXEC	((1<<(EXIT_BITS-1))-2)	/* other exec error	*/
874887Schin 
884887Schin #define EXIT_CODE(x)	((x)&((1<<EXIT_BITS)-1))
894887Schin #define EXIT_CORE(x)	(EXIT_CODE(x)|(1<<EXIT_BITS)|(1<<(EXIT_BITS-1)))
904887Schin #define EXIT_TERM(x)	(EXIT_CODE(x)|(1<<EXIT_BITS))
914887Schin 
924887Schin /*
934887Schin  * NOTE: for compatibility the following work for EXIT_BITS={7,8}
944887Schin  */
954887Schin 
964887Schin #define EXIT_STATUS(x)	(((x)&((1<<(EXIT_BITS-2))-1))?(x):EXIT_CODE((x)>>EXIT_BITS))
974887Schin 
984887Schin #define EXITED_CORE(x)	(((x)&((1<<EXIT_BITS)|(1<<(EXIT_BITS-1))))==((1<<EXIT_BITS)|(1<<(EXIT_BITS-1)))||((x)&((1<<(EXIT_BITS-1))|(1<<(EXIT_BITS-2))))==((1<<(EXIT_BITS-1))|(1<<(EXIT_BITS-2))))
994887Schin #define EXITED_TERM(x)	((x)&((1<<EXIT_BITS)|(1<<(EXIT_BITS-1))))
1004887Schin 
1014887Schin /*
1024887Schin  * astconflist() flags
1034887Schin  */
1044887Schin 
1054887Schin #define ASTCONF_parse		0x0001
1064887Schin #define ASTCONF_write		0x0002
1074887Schin #define ASTCONF_read		0x0004
1084887Schin #define ASTCONF_lower		0x0008
1094887Schin #define ASTCONF_base		0x0010
1104887Schin #define ASTCONF_defined		0x0020
1114887Schin #define ASTCONF_quote		0x0040
1124887Schin #define ASTCONF_table		0x0080
1134887Schin #define ASTCONF_matchcall	0x0100
1144887Schin #define ASTCONF_matchname	0x0200
1154887Schin #define ASTCONF_matchstandard	0x0400
1164887Schin #define ASTCONF_error		0x0800
1174887Schin #define ASTCONF_system		0x1000
1184887Schin #define ASTCONF_AST		0x2000
1194887Schin 
1204887Schin /*
1214887Schin  * pathcanon() flags
1224887Schin  */
1234887Schin 
1244887Schin #define PATH_PHYSICAL	01
1254887Schin #define PATH_DOTDOT	02
1264887Schin #define PATH_EXISTS	04
1274887Schin #define PATH_VERIFIED(n) (((n)&01777)<<5)
1284887Schin 
1294887Schin /*
1304887Schin  * pathaccess() flags
1314887Schin  */
1324887Schin 
1334887Schin #define PATH_READ	004
1344887Schin #define PATH_WRITE	002
1354887Schin #define PATH_EXECUTE	001
1364887Schin #define	PATH_REGULAR	010
1374887Schin #define PATH_ABSOLUTE	020
1384887Schin 
1394887Schin /*
1404887Schin  * touch() flags
1414887Schin  */
1424887Schin 
1434887Schin #define PATH_TOUCH_CREATE	01
1444887Schin #define PATH_TOUCH_VERBATIM	02
1454887Schin 
1464887Schin /*
1474887Schin  * pathcheck() info
1484887Schin  */
1494887Schin 
1504887Schin typedef struct
1514887Schin {
1524887Schin 	unsigned long	date;
1534887Schin 	char*		feature;
1544887Schin 	char*		host;
1554887Schin 	char*		user;
1564887Schin } Pathcheck_t;
1574887Schin 
1584887Schin /*
1594887Schin  * strgrpmatch() flags
1604887Schin  */
1614887Schin 
1624887Schin #define STR_MAXIMAL	01		/* maximal match		*/
1634887Schin #define STR_LEFT	02		/* implicit left anchor		*/
1644887Schin #define STR_RIGHT	04		/* implicit right anchor	*/
1654887Schin #define STR_ICASE	010		/* ignore case			*/
1664887Schin #define STR_GROUP	020		/* (|&) inside [@|&](...) only	*/
1674887Schin 
1684887Schin /*
1694887Schin  * fmtquote() flags
1704887Schin  */
1714887Schin 
1724887Schin #define FMT_ALWAYS	0x01		/* always quote			*/
1734887Schin #define FMT_ESCAPED	0x02		/* already escaped		*/
1744887Schin #define FMT_SHELL	0x04		/* escape $ ` too		*/
1754887Schin #define FMT_WIDE	0x08		/* don't escape 8 bit chars	*/
1764887Schin #define FMT_PARAM	0x10		/* disable FMT_SHELL ${$( quote	*/
1774887Schin 
1784887Schin /*
1794887Schin  * multibyte macros
1804887Schin  */
1814887Schin 
1824887Schin #define mbmax()		(ast.mb_cur_max)
1834887Schin #define mberr()		(ast.tmp_int<0)
1844887Schin 
1854887Schin #define mbcoll()	(ast.mb_xfrm!=0)
1864887Schin #define mbwide()	(mbmax()>1)
1874887Schin 
18810898Sroland.mainz@nrubsig.org #define mbchar(p)	(mbwide()?((ast.tmp_int=(*ast.mb_towc)(&ast.tmp_wchar,(char*)(p),mbmax()))>0?((p+=ast.tmp_int),ast.tmp_wchar):(p+=ast.mb_sync+1,ast.tmp_int)):(*(unsigned char*)(p++)))
1894887Schin #define mbinit()	(mbwide()?(*ast.mb_towc)((wchar_t*)0,(char*)0,mbmax()):0)
1904887Schin #define mbsize(p)	(mbwide()?(*ast.mb_len)((char*)(p),mbmax()):((p),1))
1914887Schin #define mbconv(s,w)	(ast.mb_conv?(*ast.mb_conv)(s,w):((*(s)=(w)),1))
1924887Schin #define mbwidth(w)	(ast.mb_width&&((ast.tmp_int=(*ast.mb_width)(w))>=0||(w)>UCHAR_MAX)?ast.tmp_int:1)
1934887Schin #define mbxfrm(t,f,n)	(mbcoll()?(*ast.mb_xfrm)((char*)(t),(char*)(f),n):0)
1944887Schin 
1954887Schin /*
1964887Schin  * common macros
1974887Schin  */
1984887Schin 
1994887Schin #define elementsof(x)	(sizeof(x)/sizeof(x[0]))
2004887Schin #define integralof(x)	(((char*)(x))-((char*)0))
2014887Schin #define newof(p,t,n,x)	((p)?(t*)realloc((char*)(p),sizeof(t)*(n)+(x)):(t*)calloc(1,sizeof(t)*(n)+(x)))
2024887Schin #define oldof(p,t,n,x)	((p)?(t*)realloc((char*)(p),sizeof(t)*(n)+(x)):(t*)malloc(sizeof(t)*(n)+(x)))
2034887Schin #define pointerof(x)	((__V_*)((char*)0+(x)))
2044887Schin #define roundof(x,y)	(((x)+(y)-1)&~((y)-1))
2054887Schin #define ssizeof(x)	((int)sizeof(x))
2064887Schin 
2074887Schin #define streq(a,b)	(*(a)==*(b)&&!strcmp(a,b))
2084887Schin #define strneq(a,b,n)	(*(a)==*(b)&&!strncmp(a,b,n))
2094887Schin #define strsignal(s)	fmtsignal(s)
2104887Schin 
2114887Schin #if defined(__STDC__) || defined(__cplusplus) || defined(c_plusplus)
2124887Schin #define NiL		0
2134887Schin #define NoP(x)		(void)(x)
2144887Schin #else
2154887Schin #define NiL		((char*)0)
2164887Schin #define NoP(x)		(&x,1)
2174887Schin #endif
2184887Schin 
2194887Schin #if !defined(NoF)
2204887Schin #if defined(__STDC__) || defined(__STDPP__)
2214887Schin #define NoF(x)		void _DATA_ ## x () {}
2224887Schin #else
2234887Schin #define NoF(x)		void _DATA_/**/x () {}
2244887Schin #endif
2254887Schin #if !defined(_DATA_)
2264887Schin #define _DATA_
2274887Schin #endif
2284887Schin #endif
2294887Schin 
2304887Schin #if !defined(NoN)
2314887Schin #if defined(__STDC__) || defined(__STDPP__)
2324887Schin #define NoN(x)		void _STUB_ ## x () {}
2334887Schin #else
2344887Schin #define NoN(x)		void _STUB_/**/x () {}
2354887Schin #endif
2364887Schin #if !defined(_STUB_)
2374887Schin #define _STUB_
2384887Schin #endif
2394887Schin #endif
2404887Schin 
2414887Schin #define NOT_USED(x)	NoP(x)
2424887Schin 
2434887Schin typedef int (*Error_f) __PROTO__((__V_*, __V_*, int, ...));
2444887Schin 
2454887Schin typedef int (*Ast_confdisc_f) __PROTO__((const char*, const char*, const char*));
2464887Schin typedef int (*Strcmp_context_f) __PROTO__((const char*, const char*, __V_*));
2474887Schin typedef int (*Strcmp_f) __PROTO__((const char*, const char*));
2484887Schin 
2494887Schin #if _BLD_ast && defined(__EXPORT__)
2504887Schin #undef __MANGLE__
2514887Schin #define __MANGLE__ __LINKAGE__		__EXPORT__
2524887Schin #endif
2534887Schin 
2544887Schin extern __MANGLE__ char*		astgetconf __PROTO__((const char*, const char*, const char*, int, Error_f));
2554887Schin extern __MANGLE__ char*		astconf __PROTO__((const char*, const char*, const char*));
2564887Schin extern __MANGLE__ Ast_confdisc_f	astconfdisc __PROTO__((Ast_confdisc_f));
2574887Schin extern __MANGLE__ void		astconflist __PROTO__((Sfio_t*, const char*, int, const char*));
2584887Schin extern __MANGLE__ off_t		astcopy __PROTO__((int, int, off_t));
2594887Schin extern __MANGLE__ int		astlicense __PROTO__((char*, int, char*, char*, int, int, int));
2604887Schin extern __MANGLE__ int		astquery __PROTO__((int, const char*, ...));
2614887Schin extern __MANGLE__ void		astwinsize __PROTO__((int, int*, int*));
2624887Schin 
2634887Schin extern __MANGLE__ ssize_t		base64encode __PROTO__((const __V_*, size_t, __V_**, __V_*, size_t, __V_**));
2644887Schin extern __MANGLE__ ssize_t		base64decode __PROTO__((const __V_*, size_t, __V_**, __V_*, size_t, __V_**));
2654887Schin extern __MANGLE__ int		chresc __PROTO__((const char*, char**));
2664887Schin extern __MANGLE__ int		chrtoi __PROTO__((const char*));
2674887Schin extern __MANGLE__ int		eaccess __PROTO__((const char*, int));
2684887Schin extern __MANGLE__ char*		fmtbase __PROTO__((long, int, int));
2694887Schin extern __MANGLE__ char*		fmtbasell __PROTO__((intmax_t, int, int));
2704887Schin #define fmtbase(a,b,c)	fmtbasell((intmax_t)(a),b,c) /* until 2003-09-01 */
2714887Schin extern __MANGLE__ char*		fmtbuf __PROTO__((size_t));
2724887Schin extern __MANGLE__ char*		fmtclock __PROTO__((Sfulong_t));
2734887Schin extern __MANGLE__ char*		fmtelapsed __PROTO__((unsigned long, int));
2744887Schin extern __MANGLE__ char*		fmterror __PROTO__((int));
2754887Schin extern __MANGLE__ char*		fmtesc __PROTO__((const char*));
2764887Schin extern __MANGLE__ char*		fmtesq __PROTO__((const char*, const char*));
2774887Schin extern __MANGLE__ char*		fmtident __PROTO__((const char*));
2784887Schin extern __MANGLE__ char*		fmtip4 __PROTO__((uint32_t, int));
2794887Schin extern __MANGLE__ char*		fmtfmt __PROTO__((const char*));
2804887Schin extern __MANGLE__ char*		fmtgid __PROTO__((int));
2814887Schin extern __MANGLE__ char*		fmtmatch __PROTO__((const char*));
2824887Schin extern __MANGLE__ char*		fmtmode __PROTO__((int, int));
2834887Schin extern __MANGLE__ char*		fmtnesq __PROTO__((const char*, const char*, size_t));
2844887Schin extern __MANGLE__ char*		fmtnum __PROTO__((unsigned long, int));
2854887Schin extern __MANGLE__ char*		fmtperm __PROTO__((int));
2864887Schin extern __MANGLE__ char*		fmtquote __PROTO__((const char*, const char*, const char*, size_t, int));
2874887Schin extern __MANGLE__ char*		fmtre __PROTO__((const char*));
2884887Schin extern __MANGLE__ char*		fmtscale __PROTO__((Sfulong_t, int));
2894887Schin extern __MANGLE__ char*		fmtsignal __PROTO__((int));
2904887Schin extern __MANGLE__ char*		fmttime __PROTO__((const char*, time_t));
2914887Schin extern __MANGLE__ char*		fmtuid __PROTO__((int));
2924887Schin extern __MANGLE__ char*		fmtversion __PROTO__((unsigned long));
2934887Schin extern __MANGLE__ __V_*		memdup __PROTO__((const __V_*, size_t));
2944887Schin extern __MANGLE__ void		memfatal __PROTO__((void));
2954887Schin extern __MANGLE__ unsigned int	memhash __PROTO__((const __V_*, int));
2964887Schin extern __MANGLE__ unsigned long	memsum __PROTO__((const __V_*, int, unsigned long));
2974887Schin extern __MANGLE__ char*		pathaccess __PROTO__((char*, const char*, const char*, const char*, int));
2984887Schin extern __MANGLE__ char*		pathbin __PROTO__((void));
2994887Schin extern __MANGLE__ char*		pathcanon __PROTO__((char*, int));
3004887Schin extern __MANGLE__ char*		pathcat __PROTO__((char*, const char*, int, const char*, const char*));
3014887Schin extern __MANGLE__ int		pathcd __PROTO__((const char*, const char*));
3024887Schin extern __MANGLE__ int		pathcheck __PROTO__((const char*, const char*, Pathcheck_t*));
3034887Schin extern __MANGLE__ int		pathexists __PROTO__((char*, int));
3044887Schin extern __MANGLE__ char*		pathfind __PROTO__((const char*, const char*, const char*, char*, size_t));
3054887Schin extern __MANGLE__ int		pathgetlink __PROTO__((const char*, char*, int));
3064887Schin extern __MANGLE__ int		pathinclude __PROTO__((const char*));
3074887Schin extern __MANGLE__ char*		pathkey __PROTO__((char*, char*, const char*, const char*, const char*));
3084887Schin extern __MANGLE__ size_t		pathnative __PROTO__((const char*, char*, size_t));
3094887Schin extern __MANGLE__ char*		pathpath __PROTO__((char*, const char*, const char*, int));
3104887Schin extern __MANGLE__ size_t		pathposix __PROTO__((const char*, char*, size_t));
3114887Schin extern __MANGLE__ char*		pathprobe __PROTO__((char*, char*, const char*, const char*, const char*, int));
31210898Sroland.mainz@nrubsig.org extern __MANGLE__ size_t		pathprog __PROTO__((const char*, char*, size_t));
3134887Schin extern __MANGLE__ char*		pathrepl __PROTO__((char*, const char*, const char*));
3144887Schin extern __MANGLE__ int		pathsetlink __PROTO__((const char*, const char*));
3154887Schin extern __MANGLE__ char*		pathshell __PROTO__((void));
3164887Schin extern __MANGLE__ char*		pathtemp __PROTO__((char*, size_t, const char*, const char*, int*));
3174887Schin extern __MANGLE__ char*		pathtmp __PROTO__((char*, const char*, const char*, int*));
3184887Schin extern __MANGLE__ char*		setenviron __PROTO__((const char*));
3194887Schin extern __MANGLE__ int		stracmp __PROTO__((const char*, const char*));
3204887Schin extern __MANGLE__ char*		strcopy __PROTO__((char*, const char*));
3214887Schin extern __MANGLE__ unsigned long	strelapsed __PROTO__((const char*, char**, int));
3224887Schin extern __MANGLE__ int		stresc __PROTO__((char*));
3234887Schin extern __MANGLE__ long		streval __PROTO__((const char*, char**, long(*)(const char*, char**)));
3244887Schin extern __MANGLE__ long		strexpr __PROTO__((const char*, char**, long(*)(const char*, char**, __V_*), __V_*));
3254887Schin extern __MANGLE__ int		strgid __PROTO__((const char*));
3264887Schin extern __MANGLE__ int		strgrpmatch __PROTO__((const char*, const char*, int*, int, int));
3274887Schin extern __MANGLE__ unsigned int	strhash __PROTO__((const char*));
3284887Schin extern __MANGLE__ __V_*		strlook __PROTO__((const __V_*, size_t, const char*));
3294887Schin extern __MANGLE__ int		strmatch __PROTO__((const char*, const char*));
3304887Schin extern __MANGLE__ int		strmode __PROTO__((const char*));
3314887Schin extern __MANGLE__ int		strnacmp __PROTO__((const char*, const char*, size_t));
3324887Schin extern __MANGLE__ char*		strncopy __PROTO__((char*, const char*, size_t));
33310898Sroland.mainz@nrubsig.org extern __MANGLE__ int		strnpcmp __PROTO__((const char*, const char*, size_t));
3344887Schin extern __MANGLE__ double		strntod __PROTO__((const char*, size_t, char**));
3354887Schin extern __MANGLE__ _ast_fltmax_t	strntold __PROTO__((const char*, size_t, char**));
3364887Schin extern __MANGLE__ long		strntol __PROTO__((const char*, size_t, char**, int));
3374887Schin extern __MANGLE__ intmax_t		strntoll __PROTO__((const char*, size_t, char**, int));
3388462SApril.Chin@Sun.COM extern __MANGLE__ long		strnton __PROTO__((const char*, size_t, char**, char*, int));
3394887Schin extern __MANGLE__ unsigned long	strntoul __PROTO__((const char*, size_t, char**, int));
3408462SApril.Chin@Sun.COM extern __MANGLE__ intmax_t		strntonll __PROTO__((const char*, size_t, char**, char*, int));
3414887Schin extern __MANGLE__ uintmax_t	strntoull __PROTO__((const char*, size_t, char**, int));
34210898Sroland.mainz@nrubsig.org extern __MANGLE__ int		strnvcmp __PROTO__((const char*, const char*, size_t));
3434887Schin extern __MANGLE__ int		stropt __PROTO__((const char*, const __V_*, int, int(*)(__V_*, const __V_*, int, const char*), __V_*));
34410898Sroland.mainz@nrubsig.org extern __MANGLE__ int		strpcmp __PROTO__((const char*, const char*));
3454887Schin extern __MANGLE__ int		strperm __PROTO__((const char*, char**, int));
3464887Schin extern __MANGLE__ __V_*		strpsearch __PROTO__((const __V_*, size_t, size_t, const char*, char**));
3474887Schin extern __MANGLE__ __V_*		strsearch __PROTO__((const __V_*, size_t, size_t, Strcmp_f, const char*, __V_*));
3484887Schin extern __MANGLE__ void		strsort __PROTO__((char**, int, int(*)(const char*, const char*)));
3494887Schin extern __MANGLE__ char*		strsubmatch __PROTO__((const char*, const char*, int));
3504887Schin extern __MANGLE__ unsigned long	strsum __PROTO__((const char*, unsigned long));
3514887Schin extern __MANGLE__ char*		strtape __PROTO__((const char*, char**));
3524887Schin extern __MANGLE__ int		strtoip4 __PROTO__((const char*, char**, uint32_t*, unsigned char*));
3534887Schin extern __MANGLE__ long		strton __PROTO__((const char*, char**, char*, int));
3544887Schin extern __MANGLE__ intmax_t		strtonll __PROTO__((const char*, char**, char*, int));
3554887Schin extern __MANGLE__ int		struid __PROTO__((const char*));
3564887Schin extern __MANGLE__ int		struniq __PROTO__((char**, int));
35710898Sroland.mainz@nrubsig.org extern __MANGLE__ int		strvcmp __PROTO__((const char*, const char*));
3584887Schin 
3594887Schin #undef __MANGLE__
3604887Schin #define __MANGLE__ __LINKAGE__
3614887Schin 
3624887Schin /*
3634887Schin  * C library global data symbols not prototyped by <unistd.h>
3644887Schin  */
3654887Schin 
3664887Schin #if !defined(environ) && defined(__DYNAMIC__)
3674887Schin #define	environ		__DYNAMIC__(environ)
3684887Schin #else
3694887Schin extern __MANGLE__ char**		environ;
3704887Schin #endif
3714887Schin 
3724887Schin /*
3734887Schin  * really handy malloc()/free() (__FILE__,__LINE__,__FUNCTION__) tracing
3744887Schin  * make with VMDEBUG==1 or debug=1 or CCFLAGS=$(CC.DEBUG)
3754887Schin  * VMDEBUG==0 disables
3764887Schin  * at runtime export VMDEBUG or VMTRACE per vmalloc.3
3774887Schin  * to list originating call locations
3784887Schin  */
3794887Schin 
3804887Schin #if !_std_malloc && !defined(VMFL) && !defined(_VMHDR_H) && \
3814887Schin 	(!defined(VMDEBUG) || VMDEBUG) && (VMDEBUG || _BLD_DEBUG)
3824887Schin 
3834887Schin #define VMFL	1
3844887Schin #include <vmalloc.h>
3854887Schin 
3864887Schin #endif
3874887Schin 
3884887Schin #endif
389