xref: /onnv-gate/usr/src/lib/libast/common/comp/conf.tab (revision 10898:1883b621b3ea)
14887Schin#
24887Schin# posix { getconf limits } macro table
34887Schin#
48462SApril.Chin@Sun.COM# @(#)conf.tab (AT&T Research) 2008-01-31
54887Schin#
64887Schin# name standard section call flags [ header ... ] [ value ... ]
74887Schin#
84887Schin# name:		sans prefix
94887Schin# standard:	AST, C, POSIX, SVID, XOPEN, <vendor> { SCO, SGI, SUN, ... }
104887Schin# section:	section number in standard
114887Schin# call:		CS=confstr PC=pathconf SC=sysconf SI=sysinfo QQ=query XX=none
124887Schin# flags:	0	no flags
134887Schin#		C	defer call to native getconf(1)
144887Schin#		D	defer minmax to native getconf(1)
154887Schin#		F	unistd.h feature
164887Schin#		L	limits.h constant
174887Schin#		M	has _<standard><section>_<name> minmax value
184887Schin#		N	_<call>_<name>
194887Schin#		O	use original name and definition
204887Schin#		R	_<standard>_<call>_<section>_<name>
214887Schin#		S	_<call>_<standard><section>_<name>
224887Schin#		U	<standard><section>_<name> prefixed by underscore
234887Schin#		V	_ prefix not allowed
244887Schin#		W	standard required
254887Schin#		X	define even if native is dynamic (ast special)
264887Schin#
274887Schin# default names if <section> <= 1
284887Schin#
294887Schin#	_<call>_<name>
304887Schin#	<standard>_<name>
314887Schin#
324887Schin# default names if <section> > 1
334887Schin#
344887Schin#	_<call>_<section>_<name>
354887Schin#	<standard><section>_<name>
364887Schin#
374887Schin# the [NSU] flags modify the default names
384887Schin#
394887Schin
404887SchinABI_AIO_XFER_MAX		C	QQ 1 L
414887SchinABI_ASYNCHRONOUS_IO		C	QQ 1 L
424887SchinABI_ASYNC_IO			C	QQ 1 L
434887SchinADVISORY_INFO			POSIX	SC 1 FUW
444887SchinAIO_LISTIO_MAX			POSIX	SC 1 LMU	2
454887SchinAIO_MAX				POSIX	SC 1 LMU	1
464887SchinAIO_PRIO_DELTA_MAX		POSIX	SC 1 LMU
474887SchinALLOC_SIZE_MIN			POSIX	PC 1 LUVW
488462SApril.Chin@Sun.COMARCHITECTURE			SVID	SI 1 O
494887SchinARG_MAX				POSIX	SC 1 CDLMUX	NCARGS 4096
504887SchinASYNCHRONOUS_IO			POSIX	SC 1 CDFUW
514887SchinASYNC_IO			POSIX	PC 1 FUW
524887SchinATEXIT_MAX			XOPEN	SC 1 LMU	32
534887SchinAUDIT				C	QQ 1 L
544887SchinAVAIL_PROCESSORS		C	QQ 1 L
554887SchinAVPHYS_PAGES			SUN	SC 1 0
564887SchinBARRIERS			POSIX	SC 1 FUW
574887SchinBC_BASE_MAX			POSIX	SC 2 LMN	99
584887SchinBC_DIM_MAX			POSIX	SC 2 LMN	2048
594887SchinBC_SCALE_MAX			POSIX	SC 2 LMN	99
604887SchinBC_STRING_MAX			POSIX	SC 2 LMN	1000
618462SApril.Chin@Sun.COMBUSTYPES			SVID	SI 1 O
624887SchinCHARCLASS_NAME_MAX		XOPEN	XX 1 L		14
634887SchinCHAR_BIT			C	XX 1 L		8
644887SchinCHAR_MAX			C	XX 1 L
654887SchinCHAR_MIN			C	XX 1 L
664887SchinCHAR_TERM			POSIX	SC 2 FUW
674887SchinCHILD_MAX			POSIX	SC 1 CDLMUX	6	cc{
684887Schin	#if _lib_fork
694887Schin	#define child()		fork()
704887Schin	#else
714887Schin	#ifdef	_map_spawnve
724887Schin	#define spawnve		_map_spawnve
734887Schin	#endif
744887Schin	extern int		spawnve(const char*, char* const[], char* const[]);
754887Schin	static char*		cmd[] = { "/bin/echo", 0 };
764887Schin	#define child()		spawnve(cmd[0],cmd,(char**)0)
774887Schin	#endif
784887Schin	int main()
794887Schin	{
804887Schin		int	i;
814887Schin		int	n;
824887Schin		for (i = 3; i < 512 && (n = child()) >= 0; i++)
834887Schin			if (!n) _exit(0);
844887Schin		while (wait((int*)0) > 0);
854887Schin		for (n = 8; n < i; n <<= 1);
864887Schin		printf("%d", n);
874887Schin		return 0;
884887Schin	}
894887Schin}
904887SchinCHOWN_RESTRICTED		POSIX	PC 1 FUW
914887SchinCKPT				POSIX	SC 1 FU
924887SchinCLK_TCK				POSIX	SC 1 L		HZ 60
934887SchinCLOCKRES_MIN			POSIX	SC 1 MUW	1
944887SchinCLOCKS_PER_SEC			C	QQ 1 L
954887SchinCLOCK_SELECTION			POSIX	SC 1 FUVW
964887SchinCOLL_WEIGHTS_MAX		POSIX	SC 2 DLMN	2
974887SchinCPUTIME				POSIX	SC 1 FUW
984887SchinCPU_KEYBITS1			C	QQ 1 L
994887SchinCPU_VERSION			C	QQ 1 L
1004887SchinCRYPT				XOPEN	SC 1 FSUW
1018462SApril.Chin@Sun.COMC_BIND				POSIX	SC 2 CFU
1028462SApril.Chin@Sun.COMC_DEV				POSIX	SC 2 CFU
1034887SchinC_VERSION			POSIX	SC 2 CDFU
1044887SchinDATAKEYS_MAX			C	QQ 1 0
1054887SchinDELAYTIMER_MAX			POSIX	SC 1 LMU	32
1064887SchinENH_I18N			XOPEN	SC 1 FSUW
1074887SchinEQUIV_CLASS_MAX			C	QQ 1 L
1084887SchinEXEC_INTERPRETER_LENGTH		C	QQ 1 L
1094887SchinEXPR_NEST_MAX			POSIX	SC 2 LMN	32
1104887SchinFCHR_MAX			SVID	SC 1 LMU	LONG_MAX 2147483647
1114887SchinFILESIZEBITS			POSIX	PC 1 LMU	(8*sizeof(off_t)) 32
1124887SchinFILE_LOCKING			POSIX	SC 1 FU
1138462SApril.Chin@Sun.COMFORT_DEV			POSIX	SC 2 CFUW
1148462SApril.Chin@Sun.COMFORT_RUN			POSIX	SC 2 CFUW
1154887SchinFSYNC				POSIX	SC 1 CDFUW	_lib_fsync
1164887SchinGETGR_R_SIZE_MAX		C	QQ 1 L
1174887SchinGETPW_R_SIZE_MAX		C	QQ 1 L
1184887SchinHOSTID				C	QQ 1 L
1198462SApril.Chin@Sun.COMHOSTNAME			SVID	SI 1 O
1204887SchinHOST_NAME_MAX			POSIX	SC 1 LMU	255
1218462SApril.Chin@Sun.COMHW_PROVIDER			SVID	SI 1 O
1224887SchinHW_SERIAL			C	QQ 1 L
1234887SchinILP32_OFF32			XBS5	SC 1 FU
1244887SchinILP32_OFF32_CFLAGS		XBS5	CS 1 FU
1254887SchinILP32_OFF32_LDFLAGS		XBS5	CS 1 FU
1264887SchinILP32_OFF32_LIBS		XBS5	CS 1 FU
1274887SchinILP32_OFF32_LINTFLAGS		XBS5	CS 1 FU
1284887SchinILP32_OFFBIG			XBS5	SC 1 FU
1294887SchinILP32_OFFBIG_CFLAGS		XBS5	CS 1 FU
1304887SchinILP32_OFFBIG_LDFLAGS		XBS5	CS 1 FU
1314887SchinILP32_OFFBIG_LIBS		XBS5	CS 1 FU
1324887SchinILP32_OFFBIG_LINTFLAGS		XBS5	CS 1 FU
1338462SApril.Chin@Sun.COMINITTAB_NAME			SVID	SI 1 O
1344887SchinINT_MAX				C	XX 1 L		32767
1354887SchinINT_MIN				C	XX 1 L		-32767
1364887SchinIOV_MAX				XOPEN	SC 1 LMU	16
1374887SchinIO_TYPE				C	QQ 1 L
1384887SchinIPV6				POSIX	SC 1 FUW
1394887SchinIP_SECOPTS			C	QQ 1 L
1404887SchinJOB_CONTROL			POSIX	SC 1 FUW	cc{
1414887Schin	#include "FEATURE/wait"
1424887Schin	#if _ok_wif
1434887Schin	int main()
1444887Schin	{
1454887Schin		printf("1");
1464887Schin		return 0;
1474887Schin	}
1484887Schin	#endif
1494887Schin}
1504887SchinKERNEL_CLIST			SCO	SC 1 0
1514887SchinKERNEL_CLIST_MAX		SCO	SC 1 0
1524887SchinKERNEL_DISK			SCO	SC 1 0
1534887SchinKERNEL_DISK_MAX			SCO	SC 1 0
1544887SchinKERNEL_DMABUF			SCO	SC 1 0
1554887SchinKERNEL_DMABUF_MAX		SCO	SC 1 0
1564887SchinKERNEL_FILE			SCO	SC 1 0
1574887SchinKERNEL_FILE_MAX			SCO	SC 1 0
1584887SchinKERNEL_FLCKREC			SCO	SC 1 0
1594887SchinKERNEL_FLCKREC_MAX		SCO	SC 1 0
1604887SchinKERNEL_INODE			SCO	SC 1 0
1614887SchinKERNEL_INODE_MAX		SCO	SC 1 0
1624887SchinKERNEL_MOUNT			SCO	SC 1 0
1634887SchinKERNEL_MOUNT_MAX		SCO	SC 1 0
1644887SchinKERNEL_PINODE			SCO	SC 1 0
1654887SchinKERNEL_PINODE_MAX		SCO	SC 1 0
1664887SchinKERNEL_PROC			SCO	SC 1 0
1674887SchinKERNEL_PROC_MAX			SCO	SC 1 0
1684887SchinKERNEL_REGION			SCO	SC 1 0
1694887SchinKERNEL_REGION_MAX		SCO	SC 1 0
1704887SchinKERNEL_S5INODE			SCO	SC 1 0
1714887SchinKERNEL_S5INODE_MAX		SCO	SC 1 0
1728462SApril.Chin@Sun.COMKERNEL_STAMP			SVID	SI 1 O
1734887SchinKERN_POINTERS			C	QQ 1 L
1744887SchinKERN_SIM			C	QQ 1 L
1754887SchinLEGACY				XOPEN	SC 1 FU
1764887SchinLFS_CFLAGS			POSIX	CS 1 MU		cc{ -D_LARGEFILE_SOURCE "-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" -D_LARGEFILE64_SOURCE -64
1774887Schin	#include <sys/types.h>
1784887Schin	int
1794887Schin	main()
1804887Schin	{
1814887Schin		if (sizeof(off_t) >= sizeof(off_64_t))
1824887Schin		{
1834887Schin			printf("-");
1844887Schin			return 0;
1854887Schin		}
1864887Schin		return 1;
1874887Schin	}
1884887Schin}
1894887SchinLFS64_CFLAGS			POSIX	CS 1 MU		: LFS_CFLAGS
1904887SchinLFS64_LDFLAGS			POSIX	CS 1 MU		: LFS_CFLAGS
1914887SchinLFS64_LIBS			POSIX	CS 1 MU
1924887SchinLFS64_LINTFLAGS			POSIX	CS 1 MU		: LFS_CFLAGS
1934887SchinLFS_LDFLAGS			POSIX	CS 1 MU		: LFS_CFLAGS
1944887SchinLFS_LIBS			POSIX	CS 1 MU
1954887SchinLFS_LINTFLAGS			POSIX	CS 1 MU		: LFS_CFLAGS
1964887SchinLINE_MAX			POSIX	SC 2 LMN	2048
1974887SchinLINK_MAX			POSIX	PC 1 LMU	MAXLINK SHRT_MAX 8
1984887SchinLLONG_MAX			C	XX 1 L
1994887SchinLLONG_MIN			C	XX 1 L
2004887SchinLOCALEDEF			POSIX	SC 1 FUW
2018462SApril.Chin@Sun.COMLOCALEDEF			POSIX	SC 2 CFUW
2024887SchinLOGIN_NAME_MAX			POSIX	SC 1 LMU
2034887SchinLOGNAME_MAX			SVID	SC 1 MU		8
2044887SchinLONG_BIT			XOPEN	XX 1 L		(8*sizeof(long)) 32
2054887SchinLONG_MAX			C	XX 1 L		2147483647
2064887SchinLONG_MIN			C	XX 1 L		-2147483647
2074887SchinLP64_OFF64			XBS5	SC 1 FU
2084887SchinLP64_OFF64_CFLAGS		XBS5	CS 1 FU
2094887SchinLP64_OFF64_LDFLAGS		XBS5	CS 1 FU
2104887SchinLP64_OFF64_LIBS			XBS5	CS 1 FU
2114887SchinLP64_OFF64_LINTFLAGS		XBS5	CS 1 FU
2124887SchinLPBIG_OFFBIG			XBS5	SC 1 FU
2134887SchinLPBIG_OFFBIG_CFLAGS		XBS5	CS 1 FU
2144887SchinLPBIG_OFFBIG_LDFLAGS		XBS5	CS 1 FU
2154887SchinLPBIG_OFFBIG_LIBS		XBS5	CS 1 FU
2164887SchinLPBIG_OFFBIG_LINTFLAGS		XBS5	CS 1 FU
2178462SApril.Chin@Sun.COMMACHINE				SVID	SI 1 O
2184887SchinMAPPED_FILES			POSIX	SC 1 CDFUW	_lib_mmap
2194887SchinMAX_CANON			POSIX	PC 1 LMU	CANBSIZ 255
2204887SchinMAX_INPUT			POSIX	PC 1 LMU	MAX_CANON 255
2214887SchinMB_LEN_MAX			C	XX 1 L		1
2224887SchinMCAS_OFFSET			C	QQ 1 L
2234887SchinMEMLOCK				POSIX	SC 1 CDFUW
2244887SchinMEMLOCK_RANGE			POSIX	SC 1 CDFUW
2254887SchinMEMORY_PROTECTION		POSIX	SC 1 CDFUW
2264887SchinMESSAGE_PASSING			POSIX	SC 1 CDFUW
2274887SchinMMAP_FIXED_ALIGNMENT		C	QQ 1 L		_AST_PAGESIZE
2284887SchinMONOTONIC_CLOCK			POSIX	SC 1 FUW
2294887SchinMQ_OPEN_MAX			POSIX	SC 1 LMU	8
2304887SchinMQ_PRIO_MAX			POSIX	SC 1 LMU	32
2314887SchinMSEM_LOCKID			C	QQ 1 L
2324887SchinMULTI_PROCESS			POSIX	SC 1 FU
2334887SchinNACLS_MAX			SVID	SC 1 0
2344887SchinNAME_MAX			POSIX	PC 1 LMU	14	cc{
2354887Schin	int main()
2364887Schin	{
2374887Schin	#ifdef MAXNAMLEN
2384887Schin		printf("%d", MAXNAMLEN);
2394887Schin	#else
2404887Schin	#if !defined(remove) && (!_lib_remove || _lib_unlink)
2414887Schin	#define remove		unlink
2424887Schin	#endif
2434887Schin		int	i;
2444887Schin		int	n;
2454887Schin		int	v;
2464887Schin		char	name[256];
2474887Schin		for (i = 0; i < sizeof(name); i++)
2484887Schin			name[i] = 'F';
2494887Schin		name[8] = '.';
2504887Schin		name[sizeof(name) - 1] = 0;
2514887Schin		if ((n = creat(name, 0666)) >= 0)
2524887Schin		{
2534887Schin			close(n);
2544887Schin			for (v = 12; v < sizeof(name); v++)
2554887Schin			{
2564887Schin				name[v] = 0;
2574887Schin				if (remove(name) >= 0) break;
2584887Schin				name[v] = 'F';
2594887Schin			}
2604887Schin		}
2614887Schin		else for (v = 12; v < sizeof(name); v++)
2624887Schin		{
2634887Schin			name[v] = 0;
2644887Schin			if ((n = creat(name, 0666)) >= 0)
2654887Schin			{
2664887Schin				close(n);
2674887Schin				remove(name);
2684887Schin				name[v] = 'F';
2694887Schin			}
2704887Schin			else
2714887Schin			{
2724887Schin				v--;
2734887Schin				break;
2744887Schin			}
2754887Schin		}
2764887Schin		printf("%d", v);
2774887Schin		return 0;
2784887Schin	}
2794887Schin	#endif
2804887Schin}
2814887SchinNGROUPS_MAX			POSIX	SC 1 CDLMU	8	cc{
2824887Schin	#if _lib_getgroups
2834887Schin	int main()
2844887Schin	{
2854887Schin		int	n;
2864887Schin		gid_t	g;
2874887Schin		if ((n = getgroups(0, &g)) < 0)
2884887Schin	#if defined(NGROUPS) && (NGROUPS-0) > 0
2894887Schin			n = NGROUPS;
2904887Schin	#else
2914887Schin			return 1;
2924887Schin	#endif
2934887Schin		printf("%d", n);
2944887Schin		return 0;
2954887Schin	}
2964887Schin	#endif
2974887Schin}
2984887SchinNL_ARGMAX			XOPEN	XX 1 L		9
2994887SchinNL_LANGMAX			XOPEN	XX 1 L		14
3004887SchinNL_MAX				C	QQ 1 L
3014887SchinNL_MSGMAX			XOPEN	XX 1 L		32767
3024887SchinNL_NMAX				XOPEN	XX 1 L		1
3034887SchinNL_SETMAX			XOPEN	XX 1 L		255
3044887SchinNL_SPECMAX			C	QQ 1 L
3054887SchinNL_TEXTMAX			XOPEN	XX 1 L		LINE_MAX
3064887SchinNO_TRUNC			POSIX	PC 1 FUW
3074887SchinNPROCESSORS_CONF		SVID	SC 1 0
308*10898Sroland.mainz@nrubsig.orgNPROCESSORS_MAX			SVID	SC 1 0
3094887SchinNPROCESSORS_ONLN		SVID	SC 1 0
3104887SchinNPROC_CONF			C	QQ 1 L
3114887SchinNPROC_ONLN			C	QQ 1 L
3124887SchinNSS_BUFLEN_GROUP		C	QQ 1 L
3134887SchinNSS_BUFLEN_PASSWD		C	QQ 1 L
3144887SchinNUM_PROCESSORS			C	QQ 1 L
3154887SchinNZERO				XOPEN	XX 1 L		20
3164887SchinOPEN_MAX			POSIX	SC 1 CDLMUX	16	cc{
3174887Schin	#if _lib_getdtablesize
3184887Schin	extern int		getdtablesize(void);
3194887Schin	int main()
3204887Schin	{
3214887Schin		printf("%d", getdtablesize());
3224887Schin		return 0;
3234887Schin	}
3244887Schin	#else
3254887Schin	int main()
3264887Schin	{
3274887Schin		int	i;
3284887Schin		int	n;
3294887Schin		int	v;
3304887Schin		n = 0;
3314887Schin		v = 2;
3324887Schin		while ((i = dup(0)) >= 0)
3334887Schin		{
3344887Schin			if (!n) n = i;
3354887Schin			if (i > v) v = i;
3364887Schin		}
3374887Schin		while (n <= v) close(n++);
3384887Schin		printf("%d", v);
3394887Schin		return 0;
3404887Schin	}
3414887Schin	#endif
3424887Schin}
3434887SchinOPEN_MAX_CEIL			AST	XX 1 L		OPEN_MAX
3444887SchinOSREL_MAJ			C	QQ 1 L
3454887SchinOSREL_MIN			C	QQ 1 L
3464887SchinOSREL_PATCH			C	QQ 1 L
3478462SApril.Chin@Sun.COMOS_BASE				SVID	SI 1 O
3488462SApril.Chin@Sun.COMOS_PROVIDER			SVID	SI 1 O
3494887SchinOS_VERSION			AES	SC 1 FSU
3504887SchinPAGESIZE			POSIX	SC 1 MU		PAGESIZE PAGE_SIZE 4096	cc{
3514887Schin	int main()
3524887Schin	{
3534887Schin	#if _WIN32
3544887Schin		printf("%ld", 64*1024L);
3554887Schin		return 0;
3564887Schin	#else
3574887Schin	#if _lib_getpagesize
3584887Schin	#if _npt_getpagesize
3594887Schin	extern size_t		getpagesize(void);
3604887Schin	#endif
3614887Schin		printf("%d", getpagesize());
3624887Schin		return 0;
3634887Schin	#endif
3644887Schin	#else
3654887Schin		return 1;
3664887Schin	#endif
3674887Schin	}
3684887Schin}
3694887SchinPAGE_SIZE			POSIX	SC 1 MU		_AST_PAGESIZE
3704887SchinPASS_MAX			SVID	SC 1 CDLMU	8
3714887SchinPATH				POSIX	CS 1 CMU	"/bin:/usr/bin"
3724887SchinPATH_MAX			POSIX	PC 1 CDLMUX	MAXPATHLEN 1024
3734887SchinPBS				POSIX	SC 2 FUW
3744887SchinPBS_ACCOUNTING			POSIX	SC 2 FUW
3754887SchinPBS_CHECKPOINT			POSIX	SC 2 FUW
3764887SchinPBS_LOCATE			POSIX	SC 2 FUW
3774887SchinPBS_MESSAGE			POSIX	SC 2 FUW
3784887SchinPBS_TRACK			POSIX	SC 2 FUW
3794887SchinPHYS_PAGES			SUN	SC 1 0
3804887SchinPID_MAX				SVID	SC 1 LMU	30000	cc{
3814887Schin	int main()
3824887Schin	{
3834887Schin		int	fd;
3844887Schin		int	n;
3854887Schin		char	buf[1024];
3864887Schin		if ((fd = open("/proc/sys/kernel/pid_max", 0)) < 0)
3874887Schin			return 1;
3884887Schin		if ((n = read(fd, buf, sizeof(buf)-1)) < 2)
3894887Schin			return 1;
3904887Schin		buf[n] = 0;
3914887Schin		n = (int)strtol(buf, (char**)0, 0);
3924887Schin		printf("%ld", n);
3934887Schin		return 0;
3944887Schin	}
3954887Schin}
3964887SchinPII				POSIX	SC 1 FU
3974887SchinPII_INTERNET			POSIX	SC 1 FU
3984887SchinPII_INTERNET_DGRAM		POSIX	SC 1 FU
3994887SchinPII_INTERNET_STREAM		POSIX	SC 1 FU
4004887SchinPII_OSI				POSIX	SC 1 FU
4014887SchinPII_OSI_CLTS			POSIX	SC 1 FU
4024887SchinPII_OSI_COTS			POSIX	SC 1 FU
4034887SchinPII_OSI_M			POSIX	SC 1 FU
4044887SchinPII_SOCKET			POSIX	SC 1 FU
4054887SchinPII_XTI				POSIX	SC 1 FU
4064887SchinPIPE_BUF			POSIX	PC 1 LMU	512
4074887SchinPOLL				POSIX	SC 1 FU
4084887SchinPRIORITIZED_IO			POSIX	SC 1 FUW
4094887SchinPRIORITY_SCHEDULING		POSIX	SC 1 CDFUW
4104887SchinPRIO_IO				POSIX	PC 1 FUW
4114887SchinPROC_RSRC_MGR			C	QQ 1 L
4124887SchinPTHREAD_DESTRUCTOR_ITERATIONS	C	QQ 1 L
4134887SchinPTHREAD_KEYS_MAX		C	QQ 1 L
4144887SchinPTHREAD_STACK_MIN		C	QQ 1 L
4154887SchinPTHREAD_THREADS_MAX		C	QQ 1 L
4164887SchinPTRDIFF_MAX			C	XX 1 LMU	stdint.h 65535
4174887SchinPTRDIFF_MIN			C	XX 1 LMU	stdint.h -65535
4184887SchinRAW_SOCKETS			POSIX	SC 1 FUW
4194887SchinREADER_WRITER_LOCKS		POSIX	SC 1 FUW
4204887SchinREALTIME			XOPEN	SC 1 FU
4214887SchinREALTIME_SIGNALS		POSIX	SC 1 CDFUW
4224887SchinREALTIME_THREADS		XOPEN	SC 1 FU
4234887SchinREC_INCR_XFER_SIZE		POSIX	PC 1 LVW
4244887SchinREC_MAX_XFER_SIZE		POSIX	PC 1 LVW
4254887SchinREC_MIN_XFER_SIZE		POSIX	PC 1 LVW
4264887SchinREC_XFER_ALIGN			POSIX	PC 1 LVW
4274887SchinREENTRANT_FUNCTIONS		POSIX	SC 1 FU
4284887SchinREGEXP				POSIX	SC 1 FUW
4294887SchinREGEX_VERSION			POSIX	SC 1 F		20030916
4308462SApril.Chin@Sun.COMRELEASE				AST	XX 1 L
4314887SchinRESOURCE_LIMITS			POSIX	SC 1 FU
4324887SchinRE_DUP_MAX			POSIX	SC 2 LMN	255
4334887SchinRTSIG_MAX			POSIX	SC 1 LMU	8
4344887SchinSAVED_IDS			POSIX	SC 1 FUW	cc{
4354887Schin	#if _lib_setuid && !_lib_setreuid
4364887Schin	int main()
4374887Schin	{
4384887Schin		printf("1");
4394887Schin		return 0;
4404887Schin	}
4414887Schin	#endif
4424887Schin}
4434887SchinSCHAR_MAX			C	XX 1 L		127
4444887SchinSCHAR_MIN			C	XX 1 L		-127
4454887SchinSECURITY_CLASS			C	QQ 1 L
4464887SchinSELECT				POSIX	SC 1 FU
4474887SchinSEMAPHORES			POSIX	SC 1 CDFUW
4484887SchinSEM_NSEMS_MAX			POSIX	SC 1 LMU	256
4494887SchinSEM_VALUE_MAX			POSIX	SC 1 LMU	32767
4504887SchinSH				AST	CS 1 MU		sh{
4514887Schin	ifs=$IFS
4524887Schin	IFS=:
4534887Schin	set '' `$CONF_getconf PATH 2>/dev/null` /bin /usr/bin /sbin /usr/sbin
4544887Schin	shift
4554887Schin	path=$*
4564887Schin	IFS=$ifs
4574887Schin	for s in ksh ksh93 sh
4584887Schin	do	for d in $path
4594887Schin		do	if	test -x $d/$s
4604887Schin			then	case $s in
4614887Schin				ksh)	case `$d/$s '--?-author' 2>&1` in
4624887Schin					*'David Korn'*) ;;
4634887Schin					*)		continue ;;
4644887Schin					esac
4654887Schin					;;
4664887Schin				esac
4678462SApril.Chin@Sun.COM				echo '"'$d/$s'"'
4684887Schin				exit
4694887Schin			fi
4704887Schin		done
4714887Schin	done
4724887Schin	echo '"/bin/sh"'
4734887Schin}
4744887SchinSHARED_MEMORY_OBJECTS		POSIX	SC 1 CDFUW
4754887SchinSHELL				POSIX	SC 1 FUVW
4764887SchinSHM				XOPEN	SC 1 FSUW
4774887SchinSHRT_MAX			C	XX 1 L		32767
4784887SchinSHRT_MIN			C	XX 1 L		-32767
4794887SchinSIG_ATOMIC_MAX			C	XX 1 L		signal.h
4804887SchinSIG_ATOMIC_MIN			C	XX 1 L		signal.h
4814887SchinSIGQUEUE_MAX			POSIX	SC 1 LMU	32
4824887SchinSIGQUEUE_MAX			POSIX	SC 1 LMU	32
4834887SchinSIGRT_MAX			SVID	SC 1 0
4844887SchinSIGRT_MIN			SVID	SC 1 0
4854887SchinSIZE_MAX			C	XX 1 LMX	stdint.h UINT_MAX 65535
4864887SchinSLVM_MAXNODES			C	QQ 1 L
4874887SchinSOCK_MAXBUF			C	QQ 1 0
4884887SchinSOFTPOWER			C	QQ 1 L
4894887SchinSPAWN				POSIX	SC 1 FUW
4904887SchinSPIN_LOCKS			POSIX	SC 1 FUW
4914887SchinSPORADIC_SERVER			POSIX	SC 1 FUW
4924887SchinSRPC_DOMAIN			C	QQ 1 0
4934887SchinSS_REPL_MAX			POSIX	SC 1 FUW
4944887SchinSSIZE_MAX			POSIX	XX 1 LMUX	INT_MAX 32767
4954887SchinSTD_BLK				SVID	SC 1 LMU	1024
4964887SchinSTREAM_MAX			POSIX	SC 1 LMU	OPEN_MAX 8
4974887SchinSTREAMS				XOPEN	SC 1 FSUW
4988462SApril.Chin@Sun.COMSW_DEV				POSIX	SC 2 CFUW
4994887SchinSYMLINK_MAX			POSIX	PC 1 LMU	255	cc{
5004887Schin	int main()
5014887Schin	{
5024887Schin		printf("%d", PATH_MAX-1);
5034887Schin		return 0;
5044887Schin	}
5054887Schin}
5064887SchinSYMLINKS			POSIX	PC 2 FUW
5074887SchinSYMLOOP_MAX			POSIX	SC 1 LMU	8
5084887SchinSYNCHRONIZED_IO			POSIX	SC 1 CDFUW
5094887SchinSYNC_IO				POSIX	PC 1 FUW
5108462SApril.Chin@Sun.COMSYSNAME				SVID	SI 1 O
5114887SchinSYSPID_MAX			SVID	SC 1 LMU	2
5124887SchinTHREADS				POSIX	SC 1 CDFUW
5134887SchinTHREADS_PRIO_CEILING		POSIX	SC 1 FUW
5144887SchinTHREADS_PRIO_INHERIT		POSIX	SC 1 FUW
5154887SchinTHREAD_ATTR_STACKADDR		POSIX	SC 1 CDFUW
5164887SchinTHREAD_ATTR_STACKSIZE		POSIX	SC 1 CDFUW
5174887SchinTHREAD_CPUTIME			POSIX	SC 1 FUW
5184887SchinTHREAD_DESTRUCTOR_ITERATIONS	POSIX	SC 1 LMUW	PTHREAD_DESTRUCTOR_ITERATIONS 4
5194887SchinTHREAD_KEYS_MAX			POSIX	SC 1 LMUW	PTHREAD_KEYS_MAX 128
5204887SchinTHREAD_PRIORITY_SCHEDULING	POSIX	SC 1 CDFUW
5214887SchinTHREAD_PRIO_INHERIT		POSIX	SC 1 CDFUW
5224887SchinTHREAD_PRIO_PROTECT		POSIX	SC 1 CDFUW
5234887SchinTHREAD_PROCESS_SHARED		POSIX	SC 1 CDFUW
5244887SchinTHREAD_SAFE_FUNCTIONS		POSIX	SC 1 CDFUW
5254887SchinTHREAD_SPORADIC_SERVER		POSIX	SC 1 FUW
5264887SchinTHREAD_STACK_MIN		POSIX	SC 1 LUW	PTHREAD_STACK_MIN
5274887SchinTHREAD_THREADS_MAX		POSIX	SC 1 LMUW	PTHREAD_THREADS_MAX 64
5284887SchinTIMEOUTS			POSIX	SC 1 FUW
5294887SchinTIMERS				POSIX	SC 1 CDFUW
5304887SchinTIMER_MAX			POSIX	SC 1 LMU	32
5314887SchinTMP				AST	CS 1 MU		"/tmp"
5324887SchinTMP_MAX				C	SC 1 LMU	10000
5334887SchinTRACE				POSIX	SC 1 FUW
5344887SchinTRACE_EVENT_FILTER		POSIX	SC 1 FUW
5354887SchinTRACE_EVENT_NAME_MAX		POSIX	SC 1 FUVW
5364887SchinTRACE_INHERIT			POSIX	SC 1 FUW
5374887SchinTRACE_LOG			POSIX	SC 1 FUW
5384887SchinTRACE_NAME_MAX			POSIX	SC 1 FUVW
5394887SchinTRACE_SYS_MAX			POSIX	SC 1 FUVW
5404887SchinTRACE_USER_EVENT_MAX		POSIX	SC 1 FUVW
5414887SchinTTY_NAME_MAX			POSIX	SC 1 LMU	9
5424887SchinTYPED_MEMORY_OBJECTS		POSIX	SC 1 FUW
5434887SchinTZNAME_MAX			POSIX	SC 1 CDLMU	6
5444887SchinT_IOV_MAX			C	QQ 1 0
5454887SchinUCHAR_MAX			C	XX 1 L		255
5464887SchinUCHAR_MIN			C	XX 1 L
5474887SchinUID_MAX				SVID	SC 1 LMU	60002
5484887SchinUINT_MAX			C	XX 1 L		65535
5494887SchinUIO_MAXIOV			C	QQ 1 0
5504887SchinULLONG_MAX			C	XX 1 L
5514887SchinULONG_MAX			C	XX 1 L		4294967295
5524887SchinUNIX				XOPEN	SC 1 FSUW
5538462SApril.Chin@Sun.COMUPE				POSIX	SC 2 CFUW
5548462SApril.Chin@Sun.COMUSER_LIMIT			SVID	SI 1 O
5554887SchinUSHRT_MAX			C	XX 1 L		65535
5564887SchinV6_ILP32_OFF32			POSIX	SC 1 W
5574887SchinV6_ILP32_OFFBIG			POSIX	SC 1 W
5584887SchinV6_LP64_OFF64			POSIX	SC 1 W
5594887SchinV6_LPBIG_OFFBIG			POSIX	SC 1 W
5604887SchinVDISABLE			POSIX	PC 1 FUW
5614887SchinVERSION				POSIX	SC 1 CDFSU	200112
5624887SchinVERSION				POSIX	SC 2 CDFSU	200112
5634887SchinVERSION				XOPEN	SC 1 CDFSU	600
5644887SchinVERSION				AST	XX 1 MS		_AST_VERSION
5654887SchinVERSION				SVID	SI 1 S
5664887SchinVERSION				XPG	SC 3 DFSU
5674887SchinVERSION				XPG	SC 4 DFSU
5684887SchinVERSION_88			C	XX 1 L
5694887SchinVERSION_88			POSIX	SC 1 FSU
5704887SchinVERSION_90			C	XX 1 L
5714887SchinVERSION_90			POSIX	SC 1 FSU
5724887SchinVERSION_93			C	XX 1 L
5734887SchinVERSION_93			POSIX	SC 1 FSU
5744887SchinWCHAR_MAX			C	XX 1 L		stddef.h
5754887SchinWCHAR_MIN			C	XX 1 L		stddef.h
5764887SchinWINT_MIN			C	XX 1 L		wchar.h
5774887SchinWINT_MAX			C	XX 1 L		wchar.h
5784887SchinWORD_BIT			XOPEN	XX 1 L		(8*sizeof(int))
5794887SchinXCU_VERSION			XOPEN	SC 1 CDFSU
5804887SchinXPG2				XOPEN	XX 1 FU
5814887SchinXPG3				XOPEN	XX 1 FU
5824887SchinXPG4				XOPEN	XX 1 FU
5834887Schin
5844887Schin# vendor prefixes
5854887Schin
5864887SchinVERSION				GNU		XX 1 S
5874887SchinVERSION				TRUSTEDBSD	XX 1 S
588