1139745Simp/*- 2176139Srwatson * 338759Srvb * Coda: an Experimental Distributed File System 438759Srvb * Release 3.1 5176139Srwatson * 638759Srvb * Copyright (c) 1987-1998 Carnegie Mellon University 738759Srvb * All Rights Reserved 8176139Srwatson * 938759Srvb * Permission to use, copy, modify and distribute this software and its 1038759Srvb * documentation is hereby granted, provided that both the copyright 1138759Srvb * notice and this permission notice appear in all copies of the 1238759Srvb * software, derivative works or modified versions, and any portions 1338759Srvb * thereof, and that both notices appear in supporting documentation, and 1438759Srvb * that credit is given to Carnegie Mellon University in all documents 1538759Srvb * and publicity pertaining to direct or indirect use of this code or its 1638759Srvb * derivatives. 17176139Srwatson * 1838759Srvb * CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS KNOWN TO HAVE BUGS, 1938759Srvb * SOME OF WHICH MAY HAVE SERIOUS CONSEQUENCES. CARNEGIE MELLON ALLOWS 2038759Srvb * FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION. CARNEGIE MELLON 2138759Srvb * DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER 2238759Srvb * RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE OR OF 2338759Srvb * ANY DERIVATIVE WORK. 24176139Srwatson * 2538759Srvb * Carnegie Mellon encourages users of this software to return any 2638759Srvb * improvements or extensions that they make, and to grant Carnegie 2738759Srvb * Mellon the rights to redistribute these changes without encumbrance. 28176139Srwatson * 29176139Srwatson * @(#) src/sys/coda/coda_pioctl.h,v 1.1.1.1 1998/08/29 21:14:52 rvb Exp $ 3050477Speter * $FreeBSD$ 31176139Srwatson * 3238759Srvb */ 3338625Srvb 34139745Simp/*- 3538625Srvb * Mach Operating System 3638625Srvb * Copyright (c) 1989 Carnegie-Mellon University 3738625Srvb * Copyright (c) 1988 Carnegie-Mellon University 3838625Srvb * Copyright (c) 1987 Carnegie-Mellon University 3938625Srvb * All rights reserved. The CMU software License Agreement specifies 4038625Srvb * the terms and conditions for use and redistribution. 4138625Srvb */ 4238625Srvb 4338625Srvb/* 4496755Strhodes * ITC Remote filesystem - vice ioctl interface module 45176139Srwatson * 46176139Srwatson * TODO: Find /usr/local/include/viceioctl.h. 4738625Srvb */ 4838625Srvb 4938625Srvb#ifndef _SYS_PIOCTL_H_ 50176139Srwatson#define _SYS_PIOCTL_H_ 5138625Srvb 52176139Srwatson/* 53176139Srwatson * The 2K limits above are a consequence of the size of the kernel buffer 54176139Srwatson * used to buffer requests from the user to venus--2*MAXPATHLEN. The buffer 55176139Srwatson * pointers may be null, or the counts may be 0 if there are no input or 56176139Srwatson * output parameters. 5738625Srvb */ 58176139Srwatson#define _VICEIOCTL(id) ((unsigned int )_IOW('V', id, struct ViceIoctl)) 5938625Srvb 60176139Srwatson/* 61176139Srwatson * Use this macro to define up to 256 vice ioctl's. These ioctl's all 62176139Srwatson * potentially have in/out parameters--this depends upon the values in the 63176139Srwatson * ViceIoctl structure. This structure is itself passed into the kernel by 64176139Srwatson * the normal ioctl parameter passing mechanism. 6538625Srvb */ 66176139Srwatson#define _VALIDVICEIOCTL(com) (com >= _VICEIOCTL(0) && \ 67176139Srwatson com <= _VICEIOCTL(255)) 6838625Srvb 69176139Srwatson#endif /* !_SYS_PIOCTL_H_ */ 70