xref: /original-bsd/sys/ufs/lfs/lfs_extern.h (revision 2932bec8)
1 /*-
2  * Copyright (c) 1991 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * %sccs.include.redist.c%
6  *
7  *	@(#)lfs_extern.h	7.13 (Berkeley) 04/21/92
8  */
9 
10 struct fid;
11 struct mount;
12 struct nameidata;
13 struct proc;
14 struct statfs;
15 struct timeval;
16 struct inode;
17 struct uio;
18 
19 __BEGIN_DECLS
20 u_long	 cksum __P((void *, size_t));				/* XXX */
21 int	 lfs_balloc __P((struct vnode *, u_long, daddr_t, struct buf **));
22 int	 lfs_blkatoff __P((struct vnode *, off_t, char **, struct buf **));
23 int	 lfs_bmap __P((struct vnode *, daddr_t, struct vnode **, daddr_t *));
24 int	 lfs_bmaparray
25 	    __P((struct vnode *, daddr_t, daddr_t *, INDIR *, int *));
26 int	 lfs_bwrite __P((struct buf *));
27 int	 lfs_fhtovp __P((struct mount *, struct fid *, int, struct vnode **));
28 int	 lfs_fsync
29 	     __P((struct vnode *, int, struct ucred *, int, struct proc *));
30 int	 lfs_inactive __P((struct vnode *, struct proc *));
31 int	 lfs_init __P((void));
32 int	 lfs_makeinode __P((int, struct nameidata *, struct inode **));
33 int	 lfs_mount __P((struct mount *,
34 	    char *, caddr_t, struct nameidata *, struct proc *));
35 int	 lfs_mountroot __P((void));
36 int	 lfs_read __P((struct vnode *, struct uio *, int, struct ucred *));
37 int	 lfs_root __P((struct mount *, struct vnode **));
38 int	 lfs_segwrite __P((struct mount *, int));
39 int	 lfs_statfs __P((struct mount *, struct statfs *, struct proc *));
40 int	 lfs_sync __P((struct mount *, int));
41 int	 lfs_truncate __P((struct vnode *, off_t, int, struct ucred *));
42 int	 lfs_unmount __P((struct mount *, int, struct proc *));
43 int	 lfs_update
44 	     __P((struct vnode *, struct timeval *, struct timeval *, int));
45 int	 lfs_valloc __P((struct vnode *, int, struct ucred *, struct vnode **));
46 int	 lfs_vcreate __P((struct mount *, ino_t, struct vnode **));
47 void	 lfs_vfree __P((struct vnode *, ino_t, int));
48 int	 lfs_vflush __P((struct vnode *));
49 int	 lfs_vget __P((struct mount *, ino_t, struct vnode **));
50 int	 lfs_vptofh __P((struct vnode *, struct fid *));
51 int	 lfs_write __P((struct vnode *, struct uio *, int, struct ucred *));
52 #ifdef DEBUG
53 void	lfs_dump_dinode __P((struct dinode *));
54 void	lfs_dump_super __P((struct lfs *));
55 int	lfs_umountdebug __P((struct mount *));
56 int	lfs_vinvalbuf __P((struct vnode *));
57 #endif
58 __END_DECLS
59 extern struct vnodeops lfs_vnodeops, lfs_specops;
60 #ifdef FIFO
61 extern struct vnodeops lfs_fifoops;
62 #define LFS_FIFOOPS &lfs_fifoops
63 #else
64 #define LFS_FIFOOPS NULL
65 #endif
66