Home | History | Annotate | Line # | Download | only in coda
      1  1.9  dholland /*	$NetBSD: coda_pioctl.h,v 1.9 2015/09/06 06:00:59 dholland Exp $	*/
      2  1.2       rvb 
      3  1.1       rvb /*
      4  1.6     perry  *
      5  1.2       rvb  *             Coda: an Experimental Distributed File System
      6  1.2       rvb  *                              Release 3.1
      7  1.6     perry  *
      8  1.2       rvb  *           Copyright (c) 1987-1998 Carnegie Mellon University
      9  1.2       rvb  *                          All Rights Reserved
     10  1.6     perry  *
     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.6     perry  *
     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.6     perry  *
     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.6     perry  *
     31  1.6     perry  * 	@(#) coda/coda_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.6     perry /*
     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.2       rvb 
     43  1.1       rvb /*
     44  1.1       rvb  * ITC Remote file system - vice ioctl interface module
     45  1.1       rvb  */
     46  1.1       rvb 
     47  1.1       rvb /*
     48  1.1       rvb  *  TODO:  Find /usr/local/include/viceioctl.h.
     49  1.1       rvb  */
     50  1.1       rvb 
     51  1.1       rvb #ifndef	_SYS_PIOCTL_H_
     52  1.1       rvb #define _SYS_PIOCTL_H_
     53  1.1       rvb 
     54  1.9  dholland #include <sys/ioccom.h>
     55  1.9  dholland 
     56  1.8  christos /* The 8K limits above are a consequence of the size of the kernel buffer
     57  1.1       rvb    used to buffer requests from the user to venus--2*MAXPATHLEN.
     58  1.1       rvb    The buffer pointers may be null, or the counts may be 0 if there
     59  1.1       rvb    are no input or output parameters
     60  1.1       rvb  */
     61  1.1       rvb 
     62  1.1       rvb #define _VICEIOCTL(id)  ((unsigned int ) _IOW('V', id, struct ViceIoctl))
     63  1.2       rvb 
     64  1.1       rvb /* Use this macro to define up to 256 vice ioctl's.  These ioctl's
     65  1.1       rvb    all potentially have in/out parameters--this depends upon the
     66  1.1       rvb    values in the ViceIoctl structure.  This structure is itself passed
     67  1.1       rvb    into the kernel by the normal ioctl parameter passing mechanism.
     68  1.1       rvb  */
     69  1.1       rvb 
     70  1.1       rvb #define _VALIDVICEIOCTL(com) (com >= _VICEIOCTL(0) && com <= _VICEIOCTL(255))
     71  1.1       rvb 
     72  1.2       rvb #endif
     73