xref: /csrg-svn/sbin/mount/mntopts.h (revision 68641)
166463Sbostic /*-
266463Sbostic  * Copyright (c) 1994
366463Sbostic  *      The Regents of the University of California.  All rights reserved.
466463Sbostic  *
566463Sbostic  * %sccs.include.redist.c%
666463Sbostic  *
7*68641Smckusick  *	@(#)mntopts.h	8.7 (Berkeley) 03/29/95
866463Sbostic  */
966463Sbostic 
1066463Sbostic struct mntopt {
1166463Sbostic 	const char *m_option;	/* option name */
1266463Sbostic 	int m_inverse;		/* if a negative option, eg "dev" */
1366463Sbostic 	int m_flag;		/* bit to set, eg. MNT_RDONLY */
14*68641Smckusick 	int m_altloc;		/* 1 => set bit in altflags */
1566463Sbostic };
1666463Sbostic 
1766463Sbostic /* User-visible MNT_ flags. */
18*68641Smckusick #define MOPT_ASYNC		{ "async",	0, MNT_ASYNC, 0 }
19*68641Smckusick #define MOPT_NODEV		{ "dev",	1, MNT_NODEV, 0 }
20*68641Smckusick #define MOPT_NOEXEC		{ "exec",	1, MNT_NOEXEC, 0 }
21*68641Smckusick #define MOPT_NOSUID		{ "suid",	1, MNT_NOSUID, 0 }
22*68641Smckusick #define MOPT_RDONLY		{ "rdonly",	0, MNT_RDONLY, 0 }
23*68641Smckusick #define MOPT_SYNC		{ "sync",	0, MNT_SYNCHRONOUS, 0 }
24*68641Smckusick #define MOPT_UNION		{ "union",	0, MNT_UNION, 0 }
25*68641Smckusick #define MOPT_USERQUOTA		{ "userquota",	0, 0, 0 }
26*68641Smckusick #define MOPT_GROUPQUOTA		{ "groupquota",	0, 0, 0 }
2766463Sbostic 
2866463Sbostic /* Control flags. */
29*68641Smckusick #define MOPT_FORCE		{ "force",	0, MNT_FORCE, 0 }
30*68641Smckusick #define MOPT_UPDATE		{ "update",	0, MNT_UPDATE, 0 }
31*68641Smckusick #define MOPT_RO			{ "ro",		0, MNT_RDONLY, 0 }
32*68641Smckusick #define MOPT_RW			{ "rw",		1, MNT_RDONLY, 0 }
3366463Sbostic 
3467414Smckusick /* This is parsed by mount(8), but is ignored by specific mount_*(8)s. */
35*68641Smckusick #define MOPT_AUTO		{ "auto",	0, 0, 0 }
3667414Smckusick 
3766463Sbostic #define MOPT_FSTAB_COMPAT						\
3866463Sbostic 	MOPT_RO,							\
3967414Smckusick 	MOPT_RW,							\
4067414Smckusick 	MOPT_AUTO
4166463Sbostic 
4266463Sbostic /* Standard options which all mounts can understand. */
4366463Sbostic #define MOPT_STDOPTS							\
4467443Smckusick 	MOPT_USERQUOTA,							\
4567443Smckusick 	MOPT_GROUPQUOTA,						\
4666463Sbostic 	MOPT_FSTAB_COMPAT,						\
4766463Sbostic 	MOPT_NODEV,							\
4866463Sbostic 	MOPT_NOEXEC,							\
4966463Sbostic 	MOPT_NOSUID,							\
5066463Sbostic 	MOPT_RDONLY,							\
5166463Sbostic 	MOPT_UNION
5266463Sbostic 
53*68641Smckusick void getmntopts __P((const char *, const struct mntopt *, int *, int *));
54*68641Smckusick extern int getmnt_silent;
55