coda_vnops.h revision 1.10
11.10Sperry/*	$NetBSD: coda_vnops.h,v 1.10 2005/02/26 23:04:16 perry Exp $	*/
21.2Srvb
31.1Srvb/*
41.10Sperry *
51.2Srvb *             Coda: an Experimental Distributed File System
61.2Srvb *                              Release 3.1
71.10Sperry *
81.2Srvb *           Copyright (c) 1987-1998 Carnegie Mellon University
91.2Srvb *                          All Rights Reserved
101.10Sperry *
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.10Sperry *
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.10Sperry *
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.10Sperry *
311.10Sperry * 	@(#) coda/coda_vnops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $
321.2Srvb */
331.1Srvb
341.10Sperry/*
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.10Sperry * M. Satyanarayanan.
461.1Srvb */
471.1Srvb
481.1Srvb/* NetBSD interfaces to the vnodeops */
491.3Srvbint coda_open      __P((void *));
501.3Srvbint coda_close     __P((void *));
511.3Srvbint coda_read      __P((void *));
521.3Srvbint coda_write     __P((void *));
531.3Srvbint coda_ioctl     __P((void *));
541.3Srvb/* 1.3 int coda_select    __P((void *));*/
551.3Srvbint coda_getattr   __P((void *));
561.3Srvbint coda_setattr   __P((void *));
571.3Srvbint coda_access    __P((void *));
581.3Srvbint coda_abortop   __P((void *));
591.3Srvbint coda_readlink  __P((void *));
601.3Srvbint coda_fsync     __P((void *));
611.3Srvbint coda_inactive  __P((void *));
621.3Srvbint coda_lookup    __P((void *));
631.3Srvbint coda_create    __P((void *));
641.3Srvbint coda_remove    __P((void *));
651.3Srvbint coda_link      __P((void *));
661.3Srvbint coda_rename    __P((void *));
671.3Srvbint coda_mkdir     __P((void *));
681.3Srvbint coda_rmdir     __P((void *));
691.3Srvbint coda_symlink   __P((void *));
701.3Srvbint coda_readdir   __P((void *));
711.3Srvbint coda_bmap      __P((void *));
721.3Srvbint coda_strategy  __P((void *));
731.3Srvbint coda_reclaim   __P((void *));
741.3Srvbint coda_lock      __P((void *));
751.3Srvbint coda_unlock    __P((void *));
761.3Srvbint coda_islocked  __P((void *));
771.3Srvbint coda_vop_error   __P((void *));
781.3Srvbint coda_vop_nop     __P((void *));
791.6Schsint coda_getpages  __P((void *));
801.6Schsint coda_putpages  __P((void *));
811.1Srvb
821.3Srvbint (**coda_vnodeop_p)(void *);
831.3Srvbint coda_rdwr(struct vnode *vp, struct uio *uiop, enum uio_rw rw,
841.9Sfvdl    int ioflag, struct ucred *cred, struct proc *p);
851.1Srvb
861.8Sthorpejint coda_grab_vnode(dev_t dev, ino_t ino, struct vnode **vpp);
871.1Srvbvoid print_vattr(struct vattr *attr);
881.1Srvbvoid print_cred(struct ucred *cred);
89