coda_pioctl.h revision 1.4 1 /* $NetBSD: coda_pioctl.h,v 1.4 1998/09/15 02:02:59 rvb 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 * HISTORY
45 * $Log: coda_pioctl.h,v $
46 * Revision 1.4 1998/09/15 02:02:59 rvb
47 * Final piece of rename cfs->coda
48 *
49 * Revision 1.3 1998/09/12 15:05:50 rvb
50 * Change cfs/CFS in symbols, strings and constants to coda/CODA
51 * to avoid fs conflicts.
52 *
53 * Revision 1.2 1998/09/08 17:12:49 rvb
54 * Pass2 complete
55 *
56 * Revision 1.1.1.1 1998/08/29 21:26:46 rvb
57 * Very Preliminary Coda
58 *
59 * Revision 1.7 1998/08/28 18:12:26 rvb
60 * Now it also works on FreeBSD -current. This code will be
61 * committed to the FreeBSD -current and NetBSD -current
62 * trees. It will then be tailored to the particular platform
63 * by flushing conditional code.
64 *
65 * Revision 1.6 1998/08/18 17:05:26 rvb
66 * Don't use __RCSID now
67 *
68 * Revision 1.5 1998/08/18 16:31:51 rvb
69 * Sync the code for NetBSD -current; test on 1.3 later
70 *
71 * Revision 1.4 98/01/23 11:53:54 rvb
72 * Bring RVB_CODA1_1 to HEAD
73 *
74 * Revision 1.3.2.1 97/12/06 17:41:29 rvb
75 * Sync with peters coda.h
76 *
77 * Revision 1.3 97/12/05 10:39:31 rvb
78 * Read CHANGES
79 *
80 * Revision 1.2.34.2 97/11/13 22:03:06 rvb
81 * pass2 cfs_NetBSD.h mt
82 *
83 * Revision 1.2.34.1 97/11/12 12:38:11 rvb
84 * mach_vioctl.h -> pioctl.h
85 *
86 * Revision 1.2 96/01/02 16:57:27 bnoble
87 * Added support for Coda MiniCache and raw inode calls (final commit)
88 *
89 * Revision 1.1.2.1 1995/12/20 01:57:54 bnoble
90 * Added CODA-specific files
91 *
92 * Revision 2.4 90/08/30 11:51:12 bohman
93 * Ioctl changes for STDC.
94 * [90/08/28 bohman]
95 *
96 * Revision 2.3 89/03/09 22:10:26 rpd
97 * More cleanup.
98 *
99 * Revision 2.2 89/02/25 17:58:32 gm0w
100 * Changes for cleanup.
101 *
102 * 7-Feb-87 Avadis Tevanian (avie) at Carnegie-Mellon University
103 * No need for VICE conditional.
104 *
105 * 22-Oct-86 Jay Kistler (jjk) at Carnegie-Mellon University
106 * Created from Andrew's vice.h and viceioctl.h.
107 *
108 */
109
110 /*
111 * ITC Remote file system - vice ioctl interface module
112 */
113
114 /*
115 * TODO: Find /usr/local/include/viceioctl.h.
116 */
117
118 #ifndef _SYS_PIOCTL_H_
119 #define _SYS_PIOCTL_H_
120
121 /* The 2K limits above are a consequence of the size of the kernel buffer
122 used to buffer requests from the user to venus--2*MAXPATHLEN.
123 The buffer pointers may be null, or the counts may be 0 if there
124 are no input or output parameters
125 */
126
127 #define _VICEIOCTL(id) ((unsigned int ) _IOW('V', id, struct ViceIoctl))
128
129 /* Use this macro to define up to 256 vice ioctl's. These ioctl's
130 all potentially have in/out parameters--this depends upon the
131 values in the ViceIoctl structure. This structure is itself passed
132 into the kernel by the normal ioctl parameter passing mechanism.
133 */
134
135 #define _VALIDVICEIOCTL(com) (com >= _VICEIOCTL(0) && com <= _VICEIOCTL(255))
136
137 #endif
138