xref: /csrg-svn/usr.sbin/amd/include/fstype.h (revision 61794)
144922Smckusick /*
244922Smckusick  * Copyright (c) 1989 Jan-Simon Pendry
344922Smckusick  * Copyright (c) 1989 Imperial College of Science, Technology & Medicine
4*61794Sbostic  * Copyright (c) 1989, 1993
5*61794Sbostic  *	The Regents of the University of California.  All rights reserved.
644922Smckusick  *
744922Smckusick  * This code is derived from software contributed to Berkeley by
844922Smckusick  * Jan-Simon Pendry at Imperial College, London.
944922Smckusick  *
1044922Smckusick  * %sccs.include.redist.c%
1144922Smckusick  *
12*61794Sbostic  *	@(#)fstype.h	8.1 (Berkeley) 06/06/93
1349688Spendry  *
1452456Spendry  * $Id: fstype.h,v 5.2.2.1 1992/02/09 15:09:57 jsp beta $
1549688Spendry  *
1644922Smckusick  */
1744922Smckusick 
1844922Smckusick /*
1944922Smckusick  * File system types
2044922Smckusick  */
2144922Smckusick 
2244922Smckusick /*
2344922Smckusick  * Automount File System
2444922Smckusick  */
2544922Smckusick #define HAS_AFS
2644922Smckusick extern am_ops	afs_ops;	/* Automount file system (this!) */
2747527Spendry extern am_ops	toplvl_ops;	/* Top-level automount file system */
2847527Spendry extern am_ops	root_ops;	/* Root file system */
2944922Smckusick extern qelem	afs_srvr_list;
3044922Smckusick extern fserver *find_afs_srvr P((mntfs*));
3144922Smckusick 
3244922Smckusick /*
3344922Smckusick  * Direct Automount File System
3444922Smckusick  */
3544922Smckusick #define	HAS_DFS
3644922Smckusick extern am_ops	dfs_ops;	/* Direct Automount file system (this too) */
3744922Smckusick 
3844922Smckusick /*
3944922Smckusick  * Error File System
4044922Smckusick  */
4144922Smckusick #define HAS_EFS
4244922Smckusick extern am_ops	efs_ops;	/* Error file system */
4344922Smckusick 
4444922Smckusick /*
4544922Smckusick  * Inheritance File System
4644922Smckusick  */
4744922Smckusick #define HAS_IFS
4844922Smckusick extern am_ops	ifs_ops;	/* Inheritance file system */
4944922Smckusick 
5044922Smckusick /*
5144922Smckusick  * Loopback File System
5244922Smckusick  * LOFS is optional - you can compile without it.
5344922Smckusick  */
5444922Smckusick #ifdef OS_HAS_LOFS
5544922Smckusick /*
5644922Smckusick  * Most systems can't support this, and in
5744922Smckusick  * any case most of the functionality is
5844922Smckusick  * available with Symlink FS.  In fact,
5944922Smckusick  * lofs_ops is not yet available.
6044922Smckusick  */
6144922Smckusick #define HAS_LOFS
6244922Smckusick extern am_ops lofs_ops;
6344922Smckusick #endif
6444922Smckusick 
6544922Smckusick /*
6644922Smckusick  * Netw*rk File System
6744922Smckusick  * Good, slow, NFS.
6844922Smckusick  * NFS host - a whole tree
6944922Smckusick  */
7044922Smckusick #define HAS_NFS
7144922Smckusick #define	HAS_HOST
7247527Spendry #define HAS_NFSX
7344922Smckusick extern am_ops	nfs_ops;	/* NFS */
7447527Spendry extern am_ops	nfsx_ops;	/* NFS X */
7544922Smckusick extern am_ops	host_ops;	/* NFS host */
7644922Smckusick #ifdef HOST_EXEC
7744922Smckusick extern char	*host_helper;	/* "/usr/local/etc/amd-host" */
7844922Smckusick #endif
7944922Smckusick extern qelem	nfs_srvr_list;
8044922Smckusick extern fserver *find_nfs_srvr P((mntfs*));
8144922Smckusick 
8244922Smckusick /*
8344922Smckusick  * Program File System
8444922Smckusick  * PFS is optional - you can compile without it.
8544922Smckusick  * This is useful for things like RVD.
8644922Smckusick  */
8744922Smckusick #define HAS_PFS
8844922Smckusick extern am_ops	pfs_ops;	/* PFS */
8944922Smckusick 
9044922Smckusick /*
9144922Smckusick  * Translucent File System
9244922Smckusick  * TFS is optional - you can compile without it.
9344922Smckusick  * This is just plain cute.
9444922Smckusick  */
9544922Smckusick #ifdef notdef
9644922Smckusick extern am_ops	tfs_ops;	/* TFS */
9744922Smckusick #endif
9844922Smckusick #undef	HAS_TFS
9944922Smckusick 
10044922Smckusick /*
10144922Smckusick  * Un*x File System
10244922Smckusick  * Normal local disk file system.
10344922Smckusick  */
10444922Smckusick #define HAS_UFS
10544922Smckusick extern am_ops	ufs_ops;	/* Un*x file system */
10644922Smckusick 
10744922Smckusick /*
10844922Smckusick  * Symbolic-link file system
10944922Smckusick  * A "filesystem" which is just a symbol link.
11052456Spendry  *
11152456Spendry  * sfsx also checks that the target of the link exists.
11244922Smckusick  */
11344922Smckusick #define HAS_SFS
11444922Smckusick extern am_ops	sfs_ops;	/* Symlink FS */
11552456Spendry #define HAS_SFSX
11652456Spendry extern am_ops	sfsx_ops;	/* Symlink FS with existence check */
11747527Spendry 
11847527Spendry /*
11947527Spendry  * Union file system
12047527Spendry  */
12147527Spendry #define	HAS_UNION_FS
12247527Spendry extern am_ops	union_ops;	/* Union FS */
123