coda_vfsops.h revision 1.1 1 /*
2
3 Coda: an Experimental Distributed File System
4 Release 3.1
5
6 Copyright (c) 1987-1998 Carnegie Mellon University
7 All Rights Reserved
8
9 Permission to use, copy, modify and distribute this software and its
10 documentation is hereby granted, provided that both the copyright
11 notice and this permission notice appear in all copies of the
12 software, derivative works or modified versions, and any portions
13 thereof, and that both notices appear in supporting documentation, and
14 that credit is given to Carnegie Mellon University in all documents
15 and publicity pertaining to direct or indirect use of this code or its
16 derivatives.
17
18 CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS KNOWN TO HAVE BUGS,
19 SOME OF WHICH MAY HAVE SERIOUS CONSEQUENCES. CARNEGIE MELLON ALLOWS
20 FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION. CARNEGIE MELLON
21 DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER
22 RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE OR OF
23 ANY DERIVATIVE WORK.
24
25 Carnegie Mellon encourages users of this software to return any
26 improvements or extensions that they make, and to grant Carnegie
27 Mellon the rights to redistribute these changes without encumbrance.
28 */
29
30 /* $Header: /tank/opengrok/rsync2/NetBSD/src/sys/coda/coda_vfsops.h,v 1.1 1998/08/29 21:26:46 rvb Exp $ */
31
32 /*
33 * cfid structure:
34 * This overlays the fid structure (see vfs.h)
35 * Only used below and will probably go away.
36 */
37
38 struct cfid {
39 u_short cfid_len;
40 u_short padding;
41 ViceFid cfid_fid;
42 };
43
44
45 struct mount;
46
47 int cfs_vfsopstats_init(void);
48 #ifdef NetBSD1_3
49 int cfs_mount(struct mount *, const char *, void *, struct nameidata *,
50 struct proc *);
51 #else
52 int cfs_mount(struct mount *, char *, caddr_t, struct nameidata *,
53 struct proc *);
54 #endif
55 int cfs_start(struct mount *, int, struct proc *);
56 int cfs_unmount(struct mount *, int, struct proc *);
57 int cfs_root(struct mount *, struct vnode **);
58 int cfs_quotactl(struct mount *, int, uid_t, caddr_t, struct proc *);
59 int cfs_nb_statfs(struct mount *, struct statfs *, struct proc *);
60 int cfs_sync(struct mount *, int, struct ucred *, struct proc *);
61 int cfs_vget(struct mount *, ino_t, struct vnode **);
62 int cfs_fhtovp(struct mount *, struct fid *, struct mbuf *, struct vnode **,
63 int *, struct ucred **);
64 int cfs_vptofh(struct vnode *, struct fid *);
65 #ifdef __NetBSD__
66 void cfs_init(void);
67 #elif defined(__FreeBSD__)
68 #ifdef __FreeBSD_version
69 int cfs_init(struct vfsconf *vfsp);
70 #else
71 int cfs_init(void);
72 #endif
73 #endif
74 #if defined(__NetBSD__) && defined(NetBSD1_3) && (NetBSD1_3 >= 7)
75 int cfs_sysctl(int *, u_int, void *, size_t *, void *, size_t,
76 struct proc *);
77 #endif
78 int getNewVnode(struct vnode **vpp);
79