12061Sjkh/*
250479Speter * CDDL HEADER START
32061Sjkh *
438666Sjb * The contents of this file are subject to the terms of the
532427Sjb * Common Development and Distribution License, Version 1.0 only
638666Sjb * (the "License").  You may not use this file except in compliance
738666Sjb * with the License.
838666Sjb *
938666Sjb * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
1064049Salex * or https://opensource.org/licenses/CDDL-1.0.
1164049Salex * See the License for the specific language governing permissions
1266071Smarkm * and limitations under the License.
1373504Sobrien *
1438666Sjb * When distributing Covered Code, include this CDDL HEADER in each
1544918Sjkh * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1638666Sjb * If applicable, add the following below this CDDL HEADER, with the
1738666Sjb * fields enclosed by brackets "[]" replaced with your own identifying
1838666Sjb * information: Portions Copyright [yyyy] [name of copyright owner]
1938666Sjb *
2038666Sjb * CDDL HEADER END
2138666Sjb */
2238666Sjb/*
2338978Sjb * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
2438978Sjb * Use is subject to license terms.
2532427Sjb */
2638666Sjb
2738666Sjb#ifndef _LIBSPL_SYS_PARAM_H
2838666Sjb#define	_LIBSPL_SYS_PARAM_H
2938666Sjb
3038666Sjb#include_next <sys/param.h>
3138666Sjb#include <unistd.h>
3217308Speter
3391606Skeramida/*
3419175Sbde * File system parameters and macros.
3596205Sjwd *
3696205Sjwd * The file system is made out of blocks of at most MAXBSIZE units,
3738042Sbde * with smaller units (fragments) only in the last direct block.
3896205Sjwd * MAXBSIZE primarily determines the size of buffers in the buffer
3996205Sjwd * pool. It may be made larger without any effect on existing
4038042Sbde * file systems; however making it smaller may make some file
4196205Sjwd * systems unmountable.
4296205Sjwd *
4317308Speter * Note that the blocked devices are assumed to have DEV_BSIZE
4496205Sjwd * "sectors" and that fragments must be some multiple of this size.
4596205Sjwd */
4617308Speter#define	MAXNAMELEN	256
4796205Sjwd
4896205Sjwd#define	UID_NOACCESS	60002		/* user ID no access */
4996205Sjwd
5096205Sjwd#define	MAXUID		UINT32_MAX	/* max user id */
5196205Sjwd#define	MAXPROJID	MAXUID		/* max project id */
5296205Sjwd
5396205Sjwd#ifdef	PAGESIZE
5496205Sjwd#undef	PAGESIZE
5596205Sjwd#endif /* PAGESIZE */
5696205Sjwd
5796205Sjwdextern size_t spl_pagesize(void);
5896205Sjwd#define	PAGESIZE	(spl_pagesize())
5945108Sobrien
6042128Speter#ifndef HAVE_EXECVPE
6142128Speterextern int execvpe(const char *name, char * const argv[], char * const envp[]);
6238666Sjb#endif
6351361Sjb
6438666Sjb#endif
6517308Speter