root / lab4 / .minix-src / include / sys / vnode_if.h @ 14
History | View | Annotate | Download (15.7 KB)
1 | 13 | up20180614 | /* $NetBSD: vnode_if.h,v 1.90 2015/04/20 23:11:27 riastradh Exp $ */
|
---|---|---|---|
2 | |||
3 | /*
|
||
4 | * Warning: DO NOT EDIT! This file is automatically generated!
|
||
5 | * (Modifications made here may easily be lost!)
|
||
6 | *
|
||
7 | * Created from the file:
|
||
8 | * NetBSD: vnode_if.src,v 1.69 2015/04/20 23:08:07 riastradh Exp
|
||
9 | * by the script:
|
||
10 | * NetBSD: vnode_if.sh,v 1.60 2014/01/13 12:07:55 hannken Exp
|
||
11 | */
|
||
12 | |||
13 | /*
|
||
14 | * Copyright (c) 1992, 1993, 1994, 1995
|
||
15 | * The Regents of the University of California. All rights reserved.
|
||
16 | *
|
||
17 | * Redistribution and use in source and binary forms, with or without
|
||
18 | * modification, are permitted provided that the following conditions
|
||
19 | * are met:
|
||
20 | * 1. Redistributions of source code must retain the above copyright
|
||
21 | * notice, this list of conditions and the following disclaimer.
|
||
22 | * 2. Redistributions in binary form must reproduce the above copyright
|
||
23 | * notice, this list of conditions and the following disclaimer in the
|
||
24 | * documentation and/or other materials provided with the distribution.
|
||
25 | * 3. Neither the name of the University nor the names of its contributors
|
||
26 | * may be used to endorse or promote products derived from this software
|
||
27 | * without specific prior written permission.
|
||
28 | *
|
||
29 | * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||
30 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||
31 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||
32 | * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||
33 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||
34 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||
35 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||
36 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||
37 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||
38 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||
39 | * SUCH DAMAGE.
|
||
40 | */
|
||
41 | |||
42 | #ifndef _SYS_VNODE_IF_H_
|
||
43 | #define _SYS_VNODE_IF_H_
|
||
44 | |||
45 | extern const struct vnodeop_desc vop_default_desc; |
||
46 | |||
47 | struct buf;
|
||
48 | |||
49 | #ifndef _KERNEL
|
||
50 | #include <stdbool.h> |
||
51 | #endif
|
||
52 | |||
53 | #define VOP_BWRITE_DESCOFFSET 1 |
||
54 | struct vop_bwrite_args {
|
||
55 | const struct vnodeop_desc *a_desc; |
||
56 | struct vnode *a_vp;
|
||
57 | struct buf *a_bp;
|
||
58 | }; |
||
59 | extern const struct vnodeop_desc vop_bwrite_desc; |
||
60 | int VOP_BWRITE(struct vnode *, struct buf *); |
||
61 | |||
62 | #define VOP_LOOKUP_DESCOFFSET 2 |
||
63 | struct vop_lookup_v2_args {
|
||
64 | const struct vnodeop_desc *a_desc; |
||
65 | struct vnode *a_dvp;
|
||
66 | struct vnode **a_vpp;
|
||
67 | struct componentname *a_cnp;
|
||
68 | }; |
||
69 | extern const struct vnodeop_desc vop_lookup_desc; |
||
70 | int VOP_LOOKUP(struct vnode *, struct vnode **, struct componentname *); |
||
71 | |||
72 | #define VOP_CREATE_DESCOFFSET 3 |
||
73 | struct vop_create_v3_args {
|
||
74 | const struct vnodeop_desc *a_desc; |
||
75 | struct vnode *a_dvp;
|
||
76 | struct vnode **a_vpp;
|
||
77 | struct componentname *a_cnp;
|
||
78 | struct vattr *a_vap;
|
||
79 | }; |
||
80 | extern const struct vnodeop_desc vop_create_desc; |
||
81 | int VOP_CREATE(struct vnode *, struct vnode **, struct componentname *, |
||
82 | struct vattr *);
|
||
83 | |||
84 | #define VOP_MKNOD_DESCOFFSET 4 |
||
85 | struct vop_mknod_v3_args {
|
||
86 | const struct vnodeop_desc *a_desc; |
||
87 | struct vnode *a_dvp;
|
||
88 | struct vnode **a_vpp;
|
||
89 | struct componentname *a_cnp;
|
||
90 | struct vattr *a_vap;
|
||
91 | }; |
||
92 | extern const struct vnodeop_desc vop_mknod_desc; |
||
93 | int VOP_MKNOD(struct vnode *, struct vnode **, struct componentname *, |
||
94 | struct vattr *);
|
||
95 | |||
96 | #define VOP_OPEN_DESCOFFSET 5 |
||
97 | struct vop_open_args {
|
||
98 | const struct vnodeop_desc *a_desc; |
||
99 | struct vnode *a_vp;
|
||
100 | int a_mode;
|
||
101 | kauth_cred_t a_cred; |
||
102 | }; |
||
103 | extern const struct vnodeop_desc vop_open_desc; |
||
104 | int VOP_OPEN(struct vnode *, int, kauth_cred_t); |
||
105 | |||
106 | #define VOP_CLOSE_DESCOFFSET 6 |
||
107 | struct vop_close_args {
|
||
108 | const struct vnodeop_desc *a_desc; |
||
109 | struct vnode *a_vp;
|
||
110 | int a_fflag;
|
||
111 | kauth_cred_t a_cred; |
||
112 | }; |
||
113 | extern const struct vnodeop_desc vop_close_desc; |
||
114 | int VOP_CLOSE(struct vnode *, int, kauth_cred_t); |
||
115 | |||
116 | #define VOP_ACCESS_DESCOFFSET 7 |
||
117 | struct vop_access_args {
|
||
118 | const struct vnodeop_desc *a_desc; |
||
119 | struct vnode *a_vp;
|
||
120 | int a_mode;
|
||
121 | kauth_cred_t a_cred; |
||
122 | }; |
||
123 | extern const struct vnodeop_desc vop_access_desc; |
||
124 | int VOP_ACCESS(struct vnode *, int, kauth_cred_t); |
||
125 | |||
126 | #define VOP_GETATTR_DESCOFFSET 8 |
||
127 | struct vop_getattr_args {
|
||
128 | const struct vnodeop_desc *a_desc; |
||
129 | struct vnode *a_vp;
|
||
130 | struct vattr *a_vap;
|
||
131 | kauth_cred_t a_cred; |
||
132 | }; |
||
133 | extern const struct vnodeop_desc vop_getattr_desc; |
||
134 | int VOP_GETATTR(struct vnode *, struct vattr *, kauth_cred_t); |
||
135 | |||
136 | #define VOP_SETATTR_DESCOFFSET 9 |
||
137 | struct vop_setattr_args {
|
||
138 | const struct vnodeop_desc *a_desc; |
||
139 | struct vnode *a_vp;
|
||
140 | struct vattr *a_vap;
|
||
141 | kauth_cred_t a_cred; |
||
142 | }; |
||
143 | extern const struct vnodeop_desc vop_setattr_desc; |
||
144 | int VOP_SETATTR(struct vnode *, struct vattr *, kauth_cred_t); |
||
145 | |||
146 | #define VOP_READ_DESCOFFSET 10 |
||
147 | struct vop_read_args {
|
||
148 | const struct vnodeop_desc *a_desc; |
||
149 | struct vnode *a_vp;
|
||
150 | struct uio *a_uio;
|
||
151 | int a_ioflag;
|
||
152 | kauth_cred_t a_cred; |
||
153 | }; |
||
154 | extern const struct vnodeop_desc vop_read_desc; |
||
155 | int VOP_READ(struct vnode *, struct uio *, int, kauth_cred_t); |
||
156 | |||
157 | #define VOP_WRITE_DESCOFFSET 11 |
||
158 | struct vop_write_args {
|
||
159 | const struct vnodeop_desc *a_desc; |
||
160 | struct vnode *a_vp;
|
||
161 | struct uio *a_uio;
|
||
162 | int a_ioflag;
|
||
163 | kauth_cred_t a_cred; |
||
164 | }; |
||
165 | extern const struct vnodeop_desc vop_write_desc; |
||
166 | int VOP_WRITE(struct vnode *, struct uio *, int, kauth_cred_t); |
||
167 | |||
168 | #define VOP_FALLOCATE_DESCOFFSET 12 |
||
169 | struct vop_fallocate_args {
|
||
170 | const struct vnodeop_desc *a_desc; |
||
171 | struct vnode *a_vp;
|
||
172 | off_t a_pos; |
||
173 | off_t a_len; |
||
174 | }; |
||
175 | extern const struct vnodeop_desc vop_fallocate_desc; |
||
176 | int VOP_FALLOCATE(struct vnode *, off_t, off_t); |
||
177 | |||
178 | #define VOP_FDISCARD_DESCOFFSET 13 |
||
179 | struct vop_fdiscard_args {
|
||
180 | const struct vnodeop_desc *a_desc; |
||
181 | struct vnode *a_vp;
|
||
182 | off_t a_pos; |
||
183 | off_t a_len; |
||
184 | }; |
||
185 | extern const struct vnodeop_desc vop_fdiscard_desc; |
||
186 | int VOP_FDISCARD(struct vnode *, off_t, off_t); |
||
187 | |||
188 | #define VOP_IOCTL_DESCOFFSET 14 |
||
189 | struct vop_ioctl_args {
|
||
190 | const struct vnodeop_desc *a_desc; |
||
191 | struct vnode *a_vp;
|
||
192 | u_long a_command; |
||
193 | void *a_data;
|
||
194 | int a_fflag;
|
||
195 | kauth_cred_t a_cred; |
||
196 | }; |
||
197 | extern const struct vnodeop_desc vop_ioctl_desc; |
||
198 | int VOP_IOCTL(struct vnode *, u_long, void *, int, kauth_cred_t); |
||
199 | |||
200 | #define VOP_FCNTL_DESCOFFSET 15 |
||
201 | struct vop_fcntl_args {
|
||
202 | const struct vnodeop_desc *a_desc; |
||
203 | struct vnode *a_vp;
|
||
204 | u_int a_command; |
||
205 | void *a_data;
|
||
206 | int a_fflag;
|
||
207 | kauth_cred_t a_cred; |
||
208 | }; |
||
209 | extern const struct vnodeop_desc vop_fcntl_desc; |
||
210 | int VOP_FCNTL(struct vnode *, u_int, void *, int, kauth_cred_t); |
||
211 | |||
212 | #define VOP_POLL_DESCOFFSET 16 |
||
213 | struct vop_poll_args {
|
||
214 | const struct vnodeop_desc *a_desc; |
||
215 | struct vnode *a_vp;
|
||
216 | int a_events;
|
||
217 | }; |
||
218 | extern const struct vnodeop_desc vop_poll_desc; |
||
219 | int VOP_POLL(struct vnode *, int); |
||
220 | |||
221 | #define VOP_KQFILTER_DESCOFFSET 17 |
||
222 | struct vop_kqfilter_args {
|
||
223 | const struct vnodeop_desc *a_desc; |
||
224 | struct vnode *a_vp;
|
||
225 | struct knote *a_kn;
|
||
226 | }; |
||
227 | extern const struct vnodeop_desc vop_kqfilter_desc; |
||
228 | int VOP_KQFILTER(struct vnode *, struct knote *); |
||
229 | |||
230 | #define VOP_REVOKE_DESCOFFSET 18 |
||
231 | struct vop_revoke_args {
|
||
232 | const struct vnodeop_desc *a_desc; |
||
233 | struct vnode *a_vp;
|
||
234 | int a_flags;
|
||
235 | }; |
||
236 | extern const struct vnodeop_desc vop_revoke_desc; |
||
237 | int VOP_REVOKE(struct vnode *, int); |
||
238 | |||
239 | #define VOP_MMAP_DESCOFFSET 19 |
||
240 | struct vop_mmap_args {
|
||
241 | const struct vnodeop_desc *a_desc; |
||
242 | struct vnode *a_vp;
|
||
243 | vm_prot_t a_prot; |
||
244 | kauth_cred_t a_cred; |
||
245 | }; |
||
246 | extern const struct vnodeop_desc vop_mmap_desc; |
||
247 | int VOP_MMAP(struct vnode *, vm_prot_t, kauth_cred_t); |
||
248 | |||
249 | #define VOP_FSYNC_DESCOFFSET 20 |
||
250 | struct vop_fsync_args {
|
||
251 | const struct vnodeop_desc *a_desc; |
||
252 | struct vnode *a_vp;
|
||
253 | kauth_cred_t a_cred; |
||
254 | int a_flags;
|
||
255 | off_t a_offlo; |
||
256 | off_t a_offhi; |
||
257 | }; |
||
258 | extern const struct vnodeop_desc vop_fsync_desc; |
||
259 | int VOP_FSYNC(struct vnode *, kauth_cred_t, int, off_t, off_t); |
||
260 | |||
261 | #define VOP_SEEK_DESCOFFSET 21 |
||
262 | struct vop_seek_args {
|
||
263 | const struct vnodeop_desc *a_desc; |
||
264 | struct vnode *a_vp;
|
||
265 | off_t a_oldoff; |
||
266 | off_t a_newoff; |
||
267 | kauth_cred_t a_cred; |
||
268 | }; |
||
269 | extern const struct vnodeop_desc vop_seek_desc; |
||
270 | int VOP_SEEK(struct vnode *, off_t, off_t, kauth_cred_t); |
||
271 | |||
272 | #define VOP_REMOVE_DESCOFFSET 22 |
||
273 | struct vop_remove_args {
|
||
274 | const struct vnodeop_desc *a_desc; |
||
275 | struct vnode *a_dvp;
|
||
276 | struct vnode *a_vp;
|
||
277 | struct componentname *a_cnp;
|
||
278 | }; |
||
279 | extern const struct vnodeop_desc vop_remove_desc; |
||
280 | int VOP_REMOVE(struct vnode *, struct vnode *, struct componentname *); |
||
281 | |||
282 | #define VOP_LINK_DESCOFFSET 23 |
||
283 | struct vop_link_v2_args {
|
||
284 | const struct vnodeop_desc *a_desc; |
||
285 | struct vnode *a_dvp;
|
||
286 | struct vnode *a_vp;
|
||
287 | struct componentname *a_cnp;
|
||
288 | }; |
||
289 | extern const struct vnodeop_desc vop_link_desc; |
||
290 | int VOP_LINK(struct vnode *, struct vnode *, struct componentname *); |
||
291 | |||
292 | #define VOP_RENAME_DESCOFFSET 24 |
||
293 | struct vop_rename_args {
|
||
294 | const struct vnodeop_desc *a_desc; |
||
295 | struct vnode *a_fdvp;
|
||
296 | struct vnode *a_fvp;
|
||
297 | struct componentname *a_fcnp;
|
||
298 | struct vnode *a_tdvp;
|
||
299 | struct vnode *a_tvp;
|
||
300 | struct componentname *a_tcnp;
|
||
301 | }; |
||
302 | extern const struct vnodeop_desc vop_rename_desc; |
||
303 | int VOP_RENAME(struct vnode *, struct vnode *, struct componentname *, |
||
304 | struct vnode *, struct vnode *, struct componentname *); |
||
305 | |||
306 | #define VOP_MKDIR_DESCOFFSET 25 |
||
307 | struct vop_mkdir_v3_args {
|
||
308 | const struct vnodeop_desc *a_desc; |
||
309 | struct vnode *a_dvp;
|
||
310 | struct vnode **a_vpp;
|
||
311 | struct componentname *a_cnp;
|
||
312 | struct vattr *a_vap;
|
||
313 | }; |
||
314 | extern const struct vnodeop_desc vop_mkdir_desc; |
||
315 | int VOP_MKDIR(struct vnode *, struct vnode **, struct componentname *, |
||
316 | struct vattr *);
|
||
317 | |||
318 | #define VOP_RMDIR_DESCOFFSET 26 |
||
319 | struct vop_rmdir_args {
|
||
320 | const struct vnodeop_desc *a_desc; |
||
321 | struct vnode *a_dvp;
|
||
322 | struct vnode *a_vp;
|
||
323 | struct componentname *a_cnp;
|
||
324 | }; |
||
325 | extern const struct vnodeop_desc vop_rmdir_desc; |
||
326 | int VOP_RMDIR(struct vnode *, struct vnode *, struct componentname *); |
||
327 | |||
328 | #define VOP_SYMLINK_DESCOFFSET 27 |
||
329 | struct vop_symlink_v3_args {
|
||
330 | const struct vnodeop_desc *a_desc; |
||
331 | struct vnode *a_dvp;
|
||
332 | struct vnode **a_vpp;
|
||
333 | struct componentname *a_cnp;
|
||
334 | struct vattr *a_vap;
|
||
335 | char *a_target;
|
||
336 | }; |
||
337 | extern const struct vnodeop_desc vop_symlink_desc; |
||
338 | int VOP_SYMLINK(struct vnode *, struct vnode **, struct componentname *, |
||
339 | struct vattr *, char *); |
||
340 | |||
341 | #define VOP_READDIR_DESCOFFSET 28 |
||
342 | struct vop_readdir_args {
|
||
343 | const struct vnodeop_desc *a_desc; |
||
344 | struct vnode *a_vp;
|
||
345 | struct uio *a_uio;
|
||
346 | kauth_cred_t a_cred; |
||
347 | int *a_eofflag;
|
||
348 | off_t **a_cookies; |
||
349 | int *a_ncookies;
|
||
350 | }; |
||
351 | extern const struct vnodeop_desc vop_readdir_desc; |
||
352 | int VOP_READDIR(struct vnode *, struct uio *, kauth_cred_t, int *, off_t **, |
||
353 | int *);
|
||
354 | |||
355 | #define VOP_READLINK_DESCOFFSET 29 |
||
356 | struct vop_readlink_args {
|
||
357 | const struct vnodeop_desc *a_desc; |
||
358 | struct vnode *a_vp;
|
||
359 | struct uio *a_uio;
|
||
360 | kauth_cred_t a_cred; |
||
361 | }; |
||
362 | extern const struct vnodeop_desc vop_readlink_desc; |
||
363 | int VOP_READLINK(struct vnode *, struct uio *, kauth_cred_t); |
||
364 | |||
365 | #define VOP_ABORTOP_DESCOFFSET 30 |
||
366 | struct vop_abortop_args {
|
||
367 | const struct vnodeop_desc *a_desc; |
||
368 | struct vnode *a_dvp;
|
||
369 | struct componentname *a_cnp;
|
||
370 | }; |
||
371 | extern const struct vnodeop_desc vop_abortop_desc; |
||
372 | int VOP_ABORTOP(struct vnode *, struct componentname *); |
||
373 | |||
374 | #define VOP_INACTIVE_DESCOFFSET 31 |
||
375 | struct vop_inactive_args {
|
||
376 | const struct vnodeop_desc *a_desc; |
||
377 | struct vnode *a_vp;
|
||
378 | bool *a_recycle;
|
||
379 | }; |
||
380 | extern const struct vnodeop_desc vop_inactive_desc; |
||
381 | int VOP_INACTIVE(struct vnode *, bool *); |
||
382 | |||
383 | #define VOP_RECLAIM_DESCOFFSET 32 |
||
384 | struct vop_reclaim_args {
|
||
385 | const struct vnodeop_desc *a_desc; |
||
386 | struct vnode *a_vp;
|
||
387 | }; |
||
388 | extern const struct vnodeop_desc vop_reclaim_desc; |
||
389 | int VOP_RECLAIM(struct vnode *); |
||
390 | |||
391 | #define VOP_LOCK_DESCOFFSET 33 |
||
392 | struct vop_lock_args {
|
||
393 | const struct vnodeop_desc *a_desc; |
||
394 | struct vnode *a_vp;
|
||
395 | int a_flags;
|
||
396 | }; |
||
397 | extern const struct vnodeop_desc vop_lock_desc; |
||
398 | int VOP_LOCK(struct vnode *, int); |
||
399 | |||
400 | #define VOP_UNLOCK_DESCOFFSET 34 |
||
401 | struct vop_unlock_args {
|
||
402 | const struct vnodeop_desc *a_desc; |
||
403 | struct vnode *a_vp;
|
||
404 | }; |
||
405 | extern const struct vnodeop_desc vop_unlock_desc; |
||
406 | int VOP_UNLOCK(struct vnode *); |
||
407 | |||
408 | #define VOP_BMAP_DESCOFFSET 35 |
||
409 | struct vop_bmap_args {
|
||
410 | const struct vnodeop_desc *a_desc; |
||
411 | struct vnode *a_vp;
|
||
412 | daddr_t a_bn; |
||
413 | struct vnode **a_vpp;
|
||
414 | daddr_t *a_bnp; |
||
415 | int *a_runp;
|
||
416 | }; |
||
417 | extern const struct vnodeop_desc vop_bmap_desc; |
||
418 | int VOP_BMAP(struct vnode *, daddr_t, struct vnode **, daddr_t *, int *); |
||
419 | |||
420 | #define VOP_STRATEGY_DESCOFFSET 36 |
||
421 | struct vop_strategy_args {
|
||
422 | const struct vnodeop_desc *a_desc; |
||
423 | struct vnode *a_vp;
|
||
424 | struct buf *a_bp;
|
||
425 | }; |
||
426 | extern const struct vnodeop_desc vop_strategy_desc; |
||
427 | int VOP_STRATEGY(struct vnode *, struct buf *); |
||
428 | |||
429 | #define VOP_PRINT_DESCOFFSET 37 |
||
430 | struct vop_print_args {
|
||
431 | const struct vnodeop_desc *a_desc; |
||
432 | struct vnode *a_vp;
|
||
433 | }; |
||
434 | extern const struct vnodeop_desc vop_print_desc; |
||
435 | int VOP_PRINT(struct vnode *); |
||
436 | |||
437 | #define VOP_ISLOCKED_DESCOFFSET 38 |
||
438 | struct vop_islocked_args {
|
||
439 | const struct vnodeop_desc *a_desc; |
||
440 | struct vnode *a_vp;
|
||
441 | }; |
||
442 | extern const struct vnodeop_desc vop_islocked_desc; |
||
443 | int VOP_ISLOCKED(struct vnode *); |
||
444 | |||
445 | #define VOP_PATHCONF_DESCOFFSET 39 |
||
446 | struct vop_pathconf_args {
|
||
447 | const struct vnodeop_desc *a_desc; |
||
448 | struct vnode *a_vp;
|
||
449 | int a_name;
|
||
450 | register_t *a_retval; |
||
451 | }; |
||
452 | extern const struct vnodeop_desc vop_pathconf_desc; |
||
453 | int VOP_PATHCONF(struct vnode *, int, register_t *); |
||
454 | |||
455 | #define VOP_ADVLOCK_DESCOFFSET 40 |
||
456 | struct vop_advlock_args {
|
||
457 | const struct vnodeop_desc *a_desc; |
||
458 | struct vnode *a_vp;
|
||
459 | void *a_id;
|
||
460 | int a_op;
|
||
461 | struct flock *a_fl;
|
||
462 | int a_flags;
|
||
463 | }; |
||
464 | extern const struct vnodeop_desc vop_advlock_desc; |
||
465 | int VOP_ADVLOCK(struct vnode *, void *, int, struct flock *, int); |
||
466 | |||
467 | #define VOP_WHITEOUT_DESCOFFSET 41 |
||
468 | struct vop_whiteout_args {
|
||
469 | const struct vnodeop_desc *a_desc; |
||
470 | struct vnode *a_dvp;
|
||
471 | struct componentname *a_cnp;
|
||
472 | int a_flags;
|
||
473 | }; |
||
474 | extern const struct vnodeop_desc vop_whiteout_desc; |
||
475 | int VOP_WHITEOUT(struct vnode *, struct componentname *, int); |
||
476 | |||
477 | #define VOP_GETPAGES_DESCOFFSET 42 |
||
478 | struct vop_getpages_args {
|
||
479 | const struct vnodeop_desc *a_desc; |
||
480 | struct vnode *a_vp;
|
||
481 | voff_t a_offset; |
||
482 | struct vm_page **a_m;
|
||
483 | int *a_count;
|
||
484 | int a_centeridx;
|
||
485 | vm_prot_t a_access_type; |
||
486 | int a_advice;
|
||
487 | int a_flags;
|
||
488 | }; |
||
489 | extern const struct vnodeop_desc vop_getpages_desc; |
||
490 | int VOP_GETPAGES(struct vnode *, voff_t, struct vm_page **, int *, int, |
||
491 | vm_prot_t, int, int); |
||
492 | |||
493 | #define VOP_PUTPAGES_DESCOFFSET 43 |
||
494 | struct vop_putpages_args {
|
||
495 | const struct vnodeop_desc *a_desc; |
||
496 | struct vnode *a_vp;
|
||
497 | voff_t a_offlo; |
||
498 | voff_t a_offhi; |
||
499 | int a_flags;
|
||
500 | }; |
||
501 | extern const struct vnodeop_desc vop_putpages_desc; |
||
502 | int VOP_PUTPAGES(struct vnode *, voff_t, voff_t, int); |
||
503 | |||
504 | #define VOP_CLOSEEXTATTR_DESCOFFSET 44 |
||
505 | struct vop_closeextattr_args {
|
||
506 | const struct vnodeop_desc *a_desc; |
||
507 | struct vnode *a_vp;
|
||
508 | int a_commit;
|
||
509 | kauth_cred_t a_cred; |
||
510 | }; |
||
511 | extern const struct vnodeop_desc vop_closeextattr_desc; |
||
512 | int VOP_CLOSEEXTATTR(struct vnode *, int, kauth_cred_t); |
||
513 | |||
514 | #define VOP_GETEXTATTR_DESCOFFSET 45 |
||
515 | struct vop_getextattr_args {
|
||
516 | const struct vnodeop_desc *a_desc; |
||
517 | struct vnode *a_vp;
|
||
518 | int a_attrnamespace;
|
||
519 | const char *a_name; |
||
520 | struct uio *a_uio;
|
||
521 | size_t *a_size; |
||
522 | kauth_cred_t a_cred; |
||
523 | }; |
||
524 | extern const struct vnodeop_desc vop_getextattr_desc; |
||
525 | int VOP_GETEXTATTR(struct vnode *, int, const char *, struct uio *, |
||
526 | size_t *, kauth_cred_t); |
||
527 | |||
528 | #define VOP_LISTEXTATTR_DESCOFFSET 46 |
||
529 | struct vop_listextattr_args {
|
||
530 | const struct vnodeop_desc *a_desc; |
||
531 | struct vnode *a_vp;
|
||
532 | int a_attrnamespace;
|
||
533 | struct uio *a_uio;
|
||
534 | size_t *a_size; |
||
535 | int a_flag;
|
||
536 | kauth_cred_t a_cred; |
||
537 | }; |
||
538 | extern const struct vnodeop_desc vop_listextattr_desc; |
||
539 | int VOP_LISTEXTATTR(struct vnode *, int, struct uio *, size_t *, int, |
||
540 | kauth_cred_t); |
||
541 | |||
542 | #define VOP_OPENEXTATTR_DESCOFFSET 47 |
||
543 | struct vop_openextattr_args {
|
||
544 | const struct vnodeop_desc *a_desc; |
||
545 | struct vnode *a_vp;
|
||
546 | kauth_cred_t a_cred; |
||
547 | }; |
||
548 | extern const struct vnodeop_desc vop_openextattr_desc; |
||
549 | int VOP_OPENEXTATTR(struct vnode *, kauth_cred_t); |
||
550 | |||
551 | #define VOP_DELETEEXTATTR_DESCOFFSET 48 |
||
552 | struct vop_deleteextattr_args {
|
||
553 | const struct vnodeop_desc *a_desc; |
||
554 | struct vnode *a_vp;
|
||
555 | int a_attrnamespace;
|
||
556 | const char *a_name; |
||
557 | kauth_cred_t a_cred; |
||
558 | }; |
||
559 | extern const struct vnodeop_desc vop_deleteextattr_desc; |
||
560 | int VOP_DELETEEXTATTR(struct vnode *, int, const char *, kauth_cred_t); |
||
561 | |||
562 | #define VOP_SETEXTATTR_DESCOFFSET 49 |
||
563 | struct vop_setextattr_args {
|
||
564 | const struct vnodeop_desc *a_desc; |
||
565 | struct vnode *a_vp;
|
||
566 | int a_attrnamespace;
|
||
567 | const char *a_name; |
||
568 | struct uio *a_uio;
|
||
569 | kauth_cred_t a_cred; |
||
570 | }; |
||
571 | extern const struct vnodeop_desc vop_setextattr_desc; |
||
572 | int VOP_SETEXTATTR(struct vnode *, int, const char *, struct uio *, |
||
573 | kauth_cred_t); |
||
574 | |||
575 | #define VNODE_OPS_COUNT 50 |
||
576 | |||
577 | #endif /* !_SYS_VNODE_IF_H_ */ |