coda_vnops.h revision 1.3
11.3Srvb/*	$NetBSD: coda_vnops.h,v 1.3 1998/09/12 15:05:49 rvb Exp $	*/
21.2Srvb
31.1Srvb/*
41.2Srvb *
51.2Srvb *             Coda: an Experimental Distributed File System
61.2Srvb *                              Release 3.1
71.2Srvb *
81.2Srvb *           Copyright (c) 1987-1998 Carnegie Mellon University
91.2Srvb *                          All Rights Reserved
101.2Srvb *
111.2Srvb * Permission  to  use, copy, modify and distribute this software and its
121.2Srvb * documentation is hereby granted,  provided  that  both  the  copyright
131.2Srvb * notice  and  this  permission  notice  appear  in  all  copies  of the
141.2Srvb * software, derivative works or  modified  versions,  and  any  portions
151.2Srvb * thereof, and that both notices appear in supporting documentation, and
161.2Srvb * that credit is given to Carnegie Mellon University  in  all  documents
171.2Srvb * and publicity pertaining to direct or indirect use of this code or its
181.2Srvb * derivatives.
191.2Srvb *
201.2Srvb * CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS  KNOWN  TO  HAVE  BUGS,
211.2Srvb * SOME  OF  WHICH MAY HAVE SERIOUS CONSEQUENCES.  CARNEGIE MELLON ALLOWS
221.2Srvb * FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION.   CARNEGIE  MELLON
231.2Srvb * DISCLAIMS  ANY  LIABILITY  OF  ANY  KIND  FOR  ANY  DAMAGES WHATSOEVER
241.2Srvb * RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE  OR  OF
251.2Srvb * ANY DERIVATIVE WORK.
261.2Srvb *
271.2Srvb * Carnegie  Mellon  encourages  users  of  this  software  to return any
281.2Srvb * improvements or extensions that  they  make,  and  to  grant  Carnegie
291.2Srvb * Mellon the rights to redistribute these changes without encumbrance.
301.2Srvb *
311.2Srvb * 	@(#) cfs/cfs_vnodeops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $
321.2Srvb */
331.1Srvb
341.1Srvb/*
351.1Srvb * Mach Operating System
361.1Srvb * Copyright (c) 1990 Carnegie-Mellon University
371.1Srvb * Copyright (c) 1989 Carnegie-Mellon University
381.1Srvb * All rights reserved.  The CMU software License Agreement specifies
391.1Srvb * the terms and conditions for use and redistribution.
401.1Srvb */
411.1Srvb
421.1Srvb/*
431.1Srvb * This code was written for the Coda file system at Carnegie Mellon
441.1Srvb * University.  Contributers include David Steere, James Kistler, and
451.1Srvb * M. Satyanarayanan.
461.1Srvb */
471.1Srvb
481.1Srvb/*
491.1Srvb * HISTORY
501.1Srvb * $Log: coda_vnops.h,v $
511.3Srvb * Revision 1.3  1998/09/12 15:05:49  rvb
521.3Srvb * Change cfs/CFS in symbols, strings and constants to coda/CODA
531.3Srvb * to avoid fs conflicts.
541.2Srvb *
551.2Srvb * Revision 1.2  1998/09/08 17:12:48  rvb
561.2Srvb * Pass2 complete
571.1Srvb *
581.1Srvb * Revision 1.1.1.1  1998/08/29 21:26:46  rvb
591.1Srvb * Very Preliminary Coda
601.1Srvb *
611.1Srvb * Revision 1.7  1998/08/28 18:12:24  rvb
621.1Srvb * Now it also works on FreeBSD -current.  This code will be
631.1Srvb * committed to the FreeBSD -current and NetBSD -current
641.1Srvb * trees.  It will then be tailored to the particular platform
651.1Srvb * by flushing conditional code.
661.1Srvb *
671.1Srvb * Revision 1.6  1998/08/18 17:05:22  rvb
681.1Srvb * Don't use __RCSID now
691.1Srvb *
701.3Srvb * Revision 1.5  1998/08/18 16:31:47  rvb
711.1Srvb * Sync the code for NetBSD -current; test on 1.3 later
721.1Srvb *
731.1Srvb * Revision 1.4  98/01/23  11:53:49  rvb
741.1Srvb * Bring RVB_CODA1_1 to HEAD
751.1Srvb *
761.1Srvb * Revision 1.3.2.3  98/01/23  11:21:13  rvb
771.1Srvb * Sync with 2.2.5
781.1Srvb *
791.3Srvb * Revision 1.3.2.2  97/12/16  12:40:20  rvb
801.1Srvb * Sync with 1.3
811.1Srvb *
821.1Srvb * Revision 1.3.2.1  97/12/10  14:08:34  rvb
831.1Srvb * Fix O_ flags; check result in coda_call
841.1Srvb *
851.3Srvb * Revision 1.3  97/12/05  10:39:25  rvb
861.1Srvb * Read CHANGES
871.1Srvb *
881.1Srvb * Revision 1.2.34.2  97/11/20  11:46:54  rvb
891.1Srvb * Capture current coda_venus
901.1Srvb *
911.1Srvb * Revision 1.2.34.1  97/11/13  22:03:04  rvb
921.1Srvb * pass2 cfs_NetBSD.h mt
931.1Srvb *
941.3Srvb * Revision 1.2  96/01/02  16:57:14  bnoble
951.1Srvb * Added support for Coda MiniCache and raw inode calls (final commit)
961.1Srvb *
971.1Srvb * Revision 1.1.2.1  1995/12/20 01:57:40  bnoble
981.1Srvb * Added Coda-specific files
991.3Srvb *
1001.3Srvb */
1011.3Srvb
1021.3Srvb/* NetBSD interfaces to the vnodeops */
1031.3Srvbint coda_open      __P((void *));
1041.3Srvbint coda_close     __P((void *));
1051.3Srvbint coda_read      __P((void *));
1061.3Srvbint coda_write     __P((void *));
1071.3Srvbint coda_ioctl     __P((void *));
1081.3Srvb/* 1.3 int coda_select    __P((void *));*/
1091.3Srvbint coda_getattr   __P((void *));
1101.3Srvbint coda_setattr   __P((void *));
1111.3Srvbint coda_access    __P((void *));
1121.3Srvbint coda_abortop   __P((void *));
1131.3Srvbint coda_readlink  __P((void *));
1141.3Srvbint coda_fsync     __P((void *));
1151.3Srvbint coda_inactive  __P((void *));
1161.3Srvbint coda_lookup    __P((void *));
1171.3Srvbint coda_create    __P((void *));
1181.3Srvbint coda_remove    __P((void *));
1191.3Srvbint coda_link      __P((void *));
1201.3Srvbint coda_rename    __P((void *));
1211.3Srvbint coda_mkdir     __P((void *));
1221.3Srvbint coda_rmdir     __P((void *));
1231.3Srvbint coda_symlink   __P((void *));
1241.3Srvbint coda_readdir   __P((void *));
1251.3Srvbint coda_bmap      __P((void *));
1261.3Srvbint coda_strategy  __P((void *));
1271.3Srvbint coda_reclaim   __P((void *));
1281.3Srvbint coda_lock      __P((void *));
1291.1Srvbint coda_unlock    __P((void *));
1301.3Srvbint coda_islocked  __P((void *));
1311.3Srvbint coda_vop_error   __P((void *));
1321.1Srvbint coda_vop_nop     __P((void *));
1331.1Srvb
1341.3Srvbint (**coda_vnodeop_p)(void *);
1351.1Srvbint coda_rdwr(struct vnode *vp, struct uio *uiop, enum uio_rw rw,
1361.1Srvb    int ioflag, struct ucred *cred, struct proc *p);
137
138int coda_grab_vnode(dev_t dev, ino_t ino, struct vnode **vpp);
139void print_vattr(struct vattr *attr);
140void print_cred(struct ucred *cred);
141