xref: /original-bsd/usr.sbin/amd/include/fstype.h (revision c3e32dec)
1 /*
2  * Copyright (c) 1989 Jan-Simon Pendry
3  * Copyright (c) 1989 Imperial College of Science, Technology & Medicine
4  * Copyright (c) 1989, 1993
5  *	The Regents of the University of California.  All rights reserved.
6  *
7  * This code is derived from software contributed to Berkeley by
8  * Jan-Simon Pendry at Imperial College, London.
9  *
10  * %sccs.include.redist.c%
11  *
12  *	@(#)fstype.h	8.1 (Berkeley) 06/06/93
13  *
14  * $Id: fstype.h,v 5.2.2.1 1992/02/09 15:09:57 jsp beta $
15  *
16  */
17 
18 /*
19  * File system types
20  */
21 
22 /*
23  * Automount File System
24  */
25 #define HAS_AFS
26 extern am_ops	afs_ops;	/* Automount file system (this!) */
27 extern am_ops	toplvl_ops;	/* Top-level automount file system */
28 extern am_ops	root_ops;	/* Root file system */
29 extern qelem	afs_srvr_list;
30 extern fserver *find_afs_srvr P((mntfs*));
31 
32 /*
33  * Direct Automount File System
34  */
35 #define	HAS_DFS
36 extern am_ops	dfs_ops;	/* Direct Automount file system (this too) */
37 
38 /*
39  * Error File System
40  */
41 #define HAS_EFS
42 extern am_ops	efs_ops;	/* Error file system */
43 
44 /*
45  * Inheritance File System
46  */
47 #define HAS_IFS
48 extern am_ops	ifs_ops;	/* Inheritance file system */
49 
50 /*
51  * Loopback File System
52  * LOFS is optional - you can compile without it.
53  */
54 #ifdef OS_HAS_LOFS
55 /*
56  * Most systems can't support this, and in
57  * any case most of the functionality is
58  * available with Symlink FS.  In fact,
59  * lofs_ops is not yet available.
60  */
61 #define HAS_LOFS
62 extern am_ops lofs_ops;
63 #endif
64 
65 /*
66  * Netw*rk File System
67  * Good, slow, NFS.
68  * NFS host - a whole tree
69  */
70 #define HAS_NFS
71 #define	HAS_HOST
72 #define HAS_NFSX
73 extern am_ops	nfs_ops;	/* NFS */
74 extern am_ops	nfsx_ops;	/* NFS X */
75 extern am_ops	host_ops;	/* NFS host */
76 #ifdef HOST_EXEC
77 extern char	*host_helper;	/* "/usr/local/etc/amd-host" */
78 #endif
79 extern qelem	nfs_srvr_list;
80 extern fserver *find_nfs_srvr P((mntfs*));
81 
82 /*
83  * Program File System
84  * PFS is optional - you can compile without it.
85  * This is useful for things like RVD.
86  */
87 #define HAS_PFS
88 extern am_ops	pfs_ops;	/* PFS */
89 
90 /*
91  * Translucent File System
92  * TFS is optional - you can compile without it.
93  * This is just plain cute.
94  */
95 #ifdef notdef
96 extern am_ops	tfs_ops;	/* TFS */
97 #endif
98 #undef	HAS_TFS
99 
100 /*
101  * Un*x File System
102  * Normal local disk file system.
103  */
104 #define HAS_UFS
105 extern am_ops	ufs_ops;	/* Un*x file system */
106 
107 /*
108  * Symbolic-link file system
109  * A "filesystem" which is just a symbol link.
110  *
111  * sfsx also checks that the target of the link exists.
112  */
113 #define HAS_SFS
114 extern am_ops	sfs_ops;	/* Symlink FS */
115 #define HAS_SFSX
116 extern am_ops	sfsx_ops;	/* Symlink FS with existence check */
117 
118 /*
119  * Union file system
120  */
121 #define	HAS_UNION_FS
122 extern am_ops	union_ops;	/* Union FS */
123