coda_vnops.h revision 1.1
11.1Srvb/*
21.1Srvb
31.1Srvb            Coda: an Experimental Distributed File System
41.1Srvb                             Release 3.1
51.1Srvb
61.1Srvb          Copyright (c) 1987-1998 Carnegie Mellon University
71.1Srvb                         All Rights Reserved
81.1Srvb
91.1SrvbPermission  to  use, copy, modify and distribute this software and its
101.1Srvbdocumentation is hereby granted,  provided  that  both  the  copyright
111.1Srvbnotice  and  this  permission  notice  appear  in  all  copies  of the
121.1Srvbsoftware, derivative works or  modified  versions,  and  any  portions
131.1Srvbthereof, and that both notices appear in supporting documentation, and
141.1Srvbthat credit is given to Carnegie Mellon University  in  all  documents
151.1Srvband publicity pertaining to direct or indirect use of this code or its
161.1Srvbderivatives.
171.1Srvb
181.1SrvbCODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS  KNOWN  TO  HAVE  BUGS,
191.1SrvbSOME  OF  WHICH MAY HAVE SERIOUS CONSEQUENCES.  CARNEGIE MELLON ALLOWS
201.1SrvbFREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION.   CARNEGIE  MELLON
211.1SrvbDISCLAIMS  ANY  LIABILITY  OF  ANY  KIND  FOR  ANY  DAMAGES WHATSOEVER
221.1SrvbRESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE  OR  OF
231.1SrvbANY DERIVATIVE WORK.
241.1Srvb
251.1SrvbCarnegie  Mellon  encourages  users  of  this  software  to return any
261.1Srvbimprovements or extensions that  they  make,  and  to  grant  Carnegie
271.1SrvbMellon the rights to redistribute these changes without encumbrance.
281.1Srvb*/
291.1Srvb
301.1Srvb/* $Header: /tank/opengrok/rsync2/NetBSD/src/sys/coda/coda_vnops.h,v 1.1 1998/08/29 21:26:46 rvb Exp $ */
311.1Srvb
321.1Srvb/*
331.1Srvb * Mach Operating System
341.1Srvb * Copyright (c) 1990 Carnegie-Mellon University
351.1Srvb * Copyright (c) 1989 Carnegie-Mellon University
361.1Srvb * All rights reserved.  The CMU software License Agreement specifies
371.1Srvb * the terms and conditions for use and redistribution.
381.1Srvb */
391.1Srvb
401.1Srvb/*
411.1Srvb * This code was written for the Coda file system at Carnegie Mellon
421.1Srvb * University.  Contributers include David Steere, James Kistler, and
431.1Srvb * M. Satyanarayanan.
441.1Srvb */
451.1Srvb
461.1Srvb/*
471.1Srvb * HISTORY
481.1Srvb * $Log: coda_vnops.h,v $
491.1Srvb * Revision 1.1  1998/08/29 21:26:46  rvb
501.1Srvb * Initial revision
511.1Srvb *
521.1Srvb * Revision 1.7  1998/08/28 18:12:24  rvb
531.1Srvb * Now it also works on FreeBSD -current.  This code will be
541.1Srvb * committed to the FreeBSD -current and NetBSD -current
551.1Srvb * trees.  It will then be tailored to the particular platform
561.1Srvb * by flushing conditional code.
571.1Srvb *
581.1Srvb * Revision 1.6  1998/08/18 17:05:22  rvb
591.1Srvb * Don't use __RCSID now
601.1Srvb *
611.1Srvb * Revision 1.5  1998/08/18 16:31:47  rvb
621.1Srvb * Sync the code for NetBSD -current; test on 1.3 later
631.1Srvb *
641.1Srvb * Revision 1.4  98/01/23  11:53:49  rvb
651.1Srvb * Bring RVB_CFS1_1 to HEAD
661.1Srvb *
671.1Srvb * Revision 1.3.2.3  98/01/23  11:21:13  rvb
681.1Srvb * Sync with 2.2.5
691.1Srvb *
701.1Srvb * Revision 1.3.2.2  97/12/16  12:40:20  rvb
711.1Srvb * Sync with 1.3
721.1Srvb *
731.1Srvb * Revision 1.3.2.1  97/12/10  14:08:34  rvb
741.1Srvb * Fix O_ flags; check result in cfscall
751.1Srvb *
761.1Srvb * Revision 1.3  97/12/05  10:39:25  rvb
771.1Srvb * Read CHANGES
781.1Srvb *
791.1Srvb * Revision 1.2.34.2  97/11/20  11:46:54  rvb
801.1Srvb * Capture current cfs_venus
811.1Srvb *
821.1Srvb * Revision 1.2.34.1  97/11/13  22:03:04  rvb
831.1Srvb * pass2 cfs_NetBSD.h mt
841.1Srvb *
851.1Srvb * Revision 1.2  96/01/02  16:57:14  bnoble
861.1Srvb * Added support for Coda MiniCache and raw inode calls (final commit)
871.1Srvb *
881.1Srvb * Revision 1.1.2.1  1995/12/20 01:57:40  bnoble
891.1Srvb * Added CFS-specific files
901.1Srvb *
911.1Srvb */
921.1Srvb
931.1Srvb
941.1Srvb/* NetBSD interfaces to the vnodeops */
951.1Srvbint cfs_open      __P((void *));
961.1Srvbint cfs_close     __P((void *));
971.1Srvbint cfs_read      __P((void *));
981.1Srvbint cfs_write     __P((void *));
991.1Srvbint cfs_ioctl     __P((void *));
1001.1Srvb/* 1.3 int cfs_select    __P((void *));*/
1011.1Srvbint cfs_getattr   __P((void *));
1021.1Srvbint cfs_setattr   __P((void *));
1031.1Srvbint cfs_access    __P((void *));
1041.1Srvbint cfs_abortop   __P((void *));
1051.1Srvbint cfs_readlink  __P((void *));
1061.1Srvbint cfs_fsync     __P((void *));
1071.1Srvbint cfs_inactive  __P((void *));
1081.1Srvbint cfs_lookup    __P((void *));
1091.1Srvbint cfs_create    __P((void *));
1101.1Srvbint cfs_remove    __P((void *));
1111.1Srvbint cfs_link      __P((void *));
1121.1Srvbint cfs_rename    __P((void *));
1131.1Srvbint cfs_mkdir     __P((void *));
1141.1Srvbint cfs_rmdir     __P((void *));
1151.1Srvbint cfs_symlink   __P((void *));
1161.1Srvbint cfs_readdir   __P((void *));
1171.1Srvbint cfs_bmap      __P((void *));
1181.1Srvbint cfs_strategy  __P((void *));
1191.1Srvbint cfs_reclaim   __P((void *));
1201.1Srvbint cfs_lock      __P((void *));
1211.1Srvbint cfs_unlock    __P((void *));
1221.1Srvbint cfs_islocked  __P((void *));
1231.1Srvbint nbsd_vop_error   __P((void *));
1241.1Srvbint nbsd_vop_nop     __P((void *));
1251.1Srvb#ifdef __FreeBSD__
1261.1Srvbint fbsd_vnotsup  __P((void *ap));
1271.1Srvb#ifdef	__FreeBSD_version
1281.1Srvbint cfs_fbsd_getpages	__P((void *));
1291.1Srvbint cfs_fbsd_putpages	__P((void *));
1301.1Srvb#endif
1311.1Srvb#endif
1321.1Srvb
1331.1Srvbint (**cfs_vnodeop_p)(void *);
1341.1Srvbint cfs_rdwr(struct vnode *vp, struct uio *uiop, enum uio_rw rw,
1351.1Srvb    int ioflag, struct ucred *cred, struct proc *p);
1361.1Srvb
1371.1Srvb
1381.1Srvb
139int cfs_grab_vnode(dev_t dev, ino_t ino, struct vnode **vpp);
140void print_vattr(struct vattr *attr);
141void print_cred(struct ucred *cred);
142