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