Home | History | Annotate | Line # | Download | only in coda
coda_pioctl.h revision 1.3
      1  1.3  rvb /*	$NetBSD: coda_pioctl.h,v 1.3 1998/09/12 15:05:50 rvb Exp $	*/
      2  1.2  rvb 
      3  1.1  rvb /*
      4  1.2  rvb  *
      5  1.2  rvb  *             Coda: an Experimental Distributed File System
      6  1.2  rvb  *                              Release 3.1
      7  1.2  rvb  *
      8  1.2  rvb  *           Copyright (c) 1987-1998 Carnegie Mellon University
      9  1.2  rvb  *                          All Rights Reserved
     10  1.2  rvb  *
     11  1.2  rvb  * Permission  to  use, copy, modify and distribute this software and its
     12  1.2  rvb  * documentation is hereby granted,  provided  that  both  the  copyright
     13  1.2  rvb  * notice  and  this  permission  notice  appear  in  all  copies  of the
     14  1.2  rvb  * software, derivative works or  modified  versions,  and  any  portions
     15  1.2  rvb  * thereof, and that both notices appear in supporting documentation, and
     16  1.2  rvb  * that credit is given to Carnegie Mellon University  in  all  documents
     17  1.2  rvb  * and publicity pertaining to direct or indirect use of this code or its
     18  1.2  rvb  * derivatives.
     19  1.2  rvb  *
     20  1.2  rvb  * CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS  KNOWN  TO  HAVE  BUGS,
     21  1.2  rvb  * SOME  OF  WHICH MAY HAVE SERIOUS CONSEQUENCES.  CARNEGIE MELLON ALLOWS
     22  1.2  rvb  * FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION.   CARNEGIE  MELLON
     23  1.2  rvb  * DISCLAIMS  ANY  LIABILITY  OF  ANY  KIND  FOR  ANY  DAMAGES WHATSOEVER
     24  1.2  rvb  * RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE  OR  OF
     25  1.2  rvb  * ANY DERIVATIVE WORK.
     26  1.2  rvb  *
     27  1.2  rvb  * Carnegie  Mellon  encourages  users  of  this  software  to return any
     28  1.2  rvb  * improvements or extensions that  they  make,  and  to  grant  Carnegie
     29  1.2  rvb  * Mellon the rights to redistribute these changes without encumbrance.
     30  1.2  rvb  *
     31  1.2  rvb  * 	@(#) cfs/pioctl.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $
     32  1.2  rvb  */
     33  1.1  rvb 
     34  1.1  rvb /*
     35  1.1  rvb  * Mach Operating System
     36  1.1  rvb  * Copyright (c) 1989 Carnegie-Mellon University
     37  1.1  rvb  * Copyright (c) 1988 Carnegie-Mellon University
     38  1.1  rvb  * Copyright (c) 1987 Carnegie-Mellon University
     39  1.1  rvb  * All rights reserved.  The CMU software License Agreement specifies
     40  1.1  rvb  * the terms and conditions for use and redistribution.
     41  1.1  rvb  */
     42  1.1  rvb 
     43  1.1  rvb /*
     44  1.1  rvb  * HISTORY
     45  1.1  rvb  * $Log: coda_pioctl.h,v $
     46  1.3  rvb  * Revision 1.3  1998/09/12 15:05:50  rvb
     47  1.3  rvb  * Change cfs/CFS in symbols, strings and constants to coda/CODA
     48  1.3  rvb  * to avoid fs conflicts.
     49  1.2  rvb  *
     50  1.2  rvb  * Revision 1.2  1998/09/08 17:12:49  rvb
     51  1.2  rvb  * Pass2 complete
     52  1.1  rvb  *
     53  1.1  rvb  * Revision 1.1.1.1  1998/08/29 21:26:46  rvb
     54  1.1  rvb  * Very Preliminary Coda
     55  1.1  rvb  *
     56  1.1  rvb  * Revision 1.7  1998/08/28 18:12:26  rvb
     57  1.1  rvb  * Now it also works on FreeBSD -current.  This code will be
     58  1.1  rvb  * committed to the FreeBSD -current and NetBSD -current
     59  1.1  rvb  * trees.  It will then be tailored to the particular platform
     60  1.1  rvb  * by flushing conditional code.
     61  1.1  rvb  *
     62  1.1  rvb  * Revision 1.6  1998/08/18 17:05:26  rvb
     63  1.1  rvb  * Don't use __RCSID now
     64  1.1  rvb  *
     65  1.3  rvb  * Revision 1.5  1998/08/18 16:31:51  rvb
     66  1.1  rvb  * Sync the code for NetBSD -current; test on 1.3 later
     67  1.1  rvb  *
     68  1.1  rvb  * Revision 1.4  98/01/23  11:53:54  rvb
     69  1.1  rvb  * Bring RVB_CODA1_1 to HEAD
     70  1.1  rvb  *
     71  1.1  rvb  * Revision 1.3.2.1  97/12/06  17:41:29  rvb
     72  1.1  rvb  * Sync with peters coda.h
     73  1.1  rvb  *
     74  1.1  rvb  * Revision 1.3  97/12/05  10:39:31  rvb
     75  1.1  rvb  * Read CHANGES
     76  1.1  rvb  *
     77  1.1  rvb  * Revision 1.2.34.2  97/11/13  22:03:06  rvb
     78  1.1  rvb  * pass2 cfs_NetBSD.h mt
     79  1.1  rvb  *
     80  1.1  rvb  * Revision 1.2.34.1  97/11/12  12:38:11  rvb
     81  1.1  rvb  * mach_vioctl.h -> pioctl.h
     82  1.1  rvb  *
     83  1.3  rvb  * Revision 1.2  96/01/02  16:57:27  bnoble
     84  1.1  rvb  * Added support for Coda MiniCache and raw inode calls (final commit)
     85  1.1  rvb  *
     86  1.1  rvb  * Revision 1.1.2.1  1995/12/20 01:57:54  bnoble
     87  1.1  rvb  * Added CODA-specific files
     88  1.1  rvb  *
     89  1.1  rvb  * Revision 2.4  90/08/30  11:51:12  bohman
     90  1.1  rvb  * 	Ioctl changes for STDC.
     91  1.1  rvb  * 	[90/08/28            bohman]
     92  1.1  rvb  *
     93  1.1  rvb  * Revision 2.3  89/03/09  22:10:26  rpd
     94  1.1  rvb  * 	More cleanup.
     95  1.1  rvb  *
     96  1.1  rvb  * Revision 2.2  89/02/25  17:58:32  gm0w
     97  1.1  rvb  * 	Changes for cleanup.
     98  1.1  rvb  *
     99  1.1  rvb  *  7-Feb-87  Avadis Tevanian (avie) at Carnegie-Mellon University
    100  1.1  rvb  *	No need for VICE conditional.
    101  1.1  rvb  *
    102  1.2  rvb  * 22-Oct-86  Jay Kistler (jjk) at Carnegie-Mellon University
    103  1.1  rvb  *	Created from Andrew's vice.h and viceioctl.h.
    104  1.1  rvb  *
    105  1.1  rvb  */
    106  1.1  rvb 
    107  1.1  rvb /*
    108  1.1  rvb  * ITC Remote file system - vice ioctl interface module
    109  1.1  rvb  */
    110  1.1  rvb 
    111  1.1  rvb /*
    112  1.1  rvb  *  TODO:  Find /usr/local/include/viceioctl.h.
    113  1.1  rvb  */
    114  1.1  rvb 
    115  1.1  rvb #ifndef	_SYS_PIOCTL_H_
    116  1.1  rvb #define _SYS_PIOCTL_H_
    117  1.1  rvb 
    118  1.1  rvb /* The 2K limits above are a consequence of the size of the kernel buffer
    119  1.1  rvb    used to buffer requests from the user to venus--2*MAXPATHLEN.
    120  1.1  rvb    The buffer pointers may be null, or the counts may be 0 if there
    121  1.2  rvb    are no input or output parameters
    122  1.1  rvb  */
    123  1.1  rvb 
    124  1.1  rvb #define _VICEIOCTL(id)  ((unsigned int ) _IOW('V', id, struct ViceIoctl))
    125  1.1  rvb 
    126  1.1  rvb /* Use this macro to define up to 256 vice ioctl's.  These ioctl's
    127  1.1  rvb    all potentially have in/out parameters--this depends upon the
    128  1.1  rvb    values in the ViceIoctl structure.  This structure is itself passed
    129  1.1  rvb    into the kernel by the normal ioctl parameter passing mechanism.
    130  1.2  rvb  */
    131           
    132           #define _VALIDVICEIOCTL(com) (com >= _VICEIOCTL(0) && com <= _VICEIOCTL(255))
    133           
    134           #endif
    135