Home | History | Annotate | Line # | Download | only in coda
      1 /*	$NetBSD: coda_pioctl.h,v 1.9 2015/09/06 06:00:59 dholland Exp $	*/
      2 
      3 /*
      4  *
      5  *             Coda: an Experimental Distributed File System
      6  *                              Release 3.1
      7  *
      8  *           Copyright (c) 1987-1998 Carnegie Mellon University
      9  *                          All Rights Reserved
     10  *
     11  * Permission  to  use, copy, modify and distribute this software and its
     12  * documentation is hereby granted,  provided  that  both  the  copyright
     13  * notice  and  this  permission  notice  appear  in  all  copies  of the
     14  * software, derivative works or  modified  versions,  and  any  portions
     15  * thereof, and that both notices appear in supporting documentation, and
     16  * that credit is given to Carnegie Mellon University  in  all  documents
     17  * and publicity pertaining to direct or indirect use of this code or its
     18  * derivatives.
     19  *
     20  * CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS  KNOWN  TO  HAVE  BUGS,
     21  * SOME  OF  WHICH MAY HAVE SERIOUS CONSEQUENCES.  CARNEGIE MELLON ALLOWS
     22  * FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION.   CARNEGIE  MELLON
     23  * DISCLAIMS  ANY  LIABILITY  OF  ANY  KIND  FOR  ANY  DAMAGES WHATSOEVER
     24  * RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE  OR  OF
     25  * ANY DERIVATIVE WORK.
     26  *
     27  * Carnegie  Mellon  encourages  users  of  this  software  to return any
     28  * improvements or extensions that  they  make,  and  to  grant  Carnegie
     29  * Mellon the rights to redistribute these changes without encumbrance.
     30  *
     31  * 	@(#) coda/coda_pioctl.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $
     32  */
     33 
     34 /*
     35  * Mach Operating System
     36  * Copyright (c) 1989 Carnegie-Mellon University
     37  * Copyright (c) 1988 Carnegie-Mellon University
     38  * Copyright (c) 1987 Carnegie-Mellon University
     39  * All rights reserved.  The CMU software License Agreement specifies
     40  * the terms and conditions for use and redistribution.
     41  */
     42 
     43 /*
     44  * ITC Remote file system - vice ioctl interface module
     45  */
     46 
     47 /*
     48  *  TODO:  Find /usr/local/include/viceioctl.h.
     49  */
     50 
     51 #ifndef	_SYS_PIOCTL_H_
     52 #define _SYS_PIOCTL_H_
     53 
     54 #include <sys/ioccom.h>
     55 
     56 /* The 8K limits above are a consequence of the size of the kernel buffer
     57    used to buffer requests from the user to venus--2*MAXPATHLEN.
     58    The buffer pointers may be null, or the counts may be 0 if there
     59    are no input or output parameters
     60  */
     61 
     62 #define _VICEIOCTL(id)  ((unsigned int ) _IOW('V', id, struct ViceIoctl))
     63 
     64 /* Use this macro to define up to 256 vice ioctl's.  These ioctl's
     65    all potentially have in/out parameters--this depends upon the
     66    values in the ViceIoctl structure.  This structure is itself passed
     67    into the kernel by the normal ioctl parameter passing mechanism.
     68  */
     69 
     70 #define _VALIDVICEIOCTL(com) (com >= _VICEIOCTL(0) && com <= _VICEIOCTL(255))
     71 
     72 #endif
     73