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