Annotation of sys/sys/vnode_if.h, Revision 1.1.1.1
1.1 nbrk 1: /*
2: * Warning: This file is generated automatically.
3: * (Modifications made here may easily be lost!)
4: *
5: * Created from the file:
6: * OpenBSD: vnode_if.src,v 1.32 2007/01/16 17:52:18 thib Exp
7: * by the script:
8: * OpenBSD: vnode_if.sh,v 1.15 2006/01/02 05:05:11 jsg Exp
9: */
10:
11: /*
12: * Copyright (c) 1992, 1993
13: * The Regents of the University of California. All rights reserved.
14: *
15: * Redistribution and use in source and binary forms, with or without
16: * modification, are permitted provided that the following conditions
17: * are met:
18: * 1. Redistributions of source code must retain the above copyright
19: * notice, this list of conditions and the following disclaimer.
20: * 2. Redistributions in binary form must reproduce the above copyright
21: * notice, this list of conditions and the following disclaimer in the
22: * documentation and/or other materials provided with the distribution.
23: * 3. Neither the name of the University nor the names of its contributors
24: * may be used to endorse or promote products derived from this software
25: * without specific prior written permission.
26: *
27: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS AS IS'' AND
28: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
31: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37: * SUCH DAMAGE.
38: */
39:
40: extern struct vnodeop_desc vop_default_desc;
41:
42: #include "systm.h"
43:
44: struct vop_islocked_args {
45: struct vnodeop_desc *a_desc;
46: struct vnode *a_vp;
47: };
48: extern struct vnodeop_desc vop_islocked_desc;
49: int VOP_ISLOCKED(struct vnode *);
50:
51: struct vop_lookup_args {
52: struct vnodeop_desc *a_desc;
53: struct vnode *a_dvp;
54: struct vnode **a_vpp;
55: struct componentname *a_cnp;
56: };
57: extern struct vnodeop_desc vop_lookup_desc;
58: int VOP_LOOKUP(struct vnode *, struct vnode **, struct componentname *);
59:
60: struct vop_create_args {
61: struct vnodeop_desc *a_desc;
62: struct vnode *a_dvp;
63: struct vnode **a_vpp;
64: struct componentname *a_cnp;
65: struct vattr *a_vap;
66: };
67: extern struct vnodeop_desc vop_create_desc;
68: int VOP_CREATE(struct vnode *, struct vnode **, struct componentname *,
69: struct vattr *);
70:
71: struct vop_mknod_args {
72: struct vnodeop_desc *a_desc;
73: struct vnode *a_dvp;
74: struct vnode **a_vpp;
75: struct componentname *a_cnp;
76: struct vattr *a_vap;
77: };
78: extern struct vnodeop_desc vop_mknod_desc;
79: int VOP_MKNOD(struct vnode *, struct vnode **, struct componentname *,
80: struct vattr *);
81:
82: struct vop_open_args {
83: struct vnodeop_desc *a_desc;
84: struct vnode *a_vp;
85: int a_mode;
86: struct ucred *a_cred;
87: struct proc *a_p;
88: };
89: extern struct vnodeop_desc vop_open_desc;
90: int VOP_OPEN(struct vnode *, int, struct ucred *, struct proc *);
91:
92: struct vop_close_args {
93: struct vnodeop_desc *a_desc;
94: struct vnode *a_vp;
95: int a_fflag;
96: struct ucred *a_cred;
97: struct proc *a_p;
98: };
99: extern struct vnodeop_desc vop_close_desc;
100: int VOP_CLOSE(struct vnode *, int, struct ucred *, struct proc *);
101:
102: struct vop_access_args {
103: struct vnodeop_desc *a_desc;
104: struct vnode *a_vp;
105: int a_mode;
106: struct ucred *a_cred;
107: struct proc *a_p;
108: };
109: extern struct vnodeop_desc vop_access_desc;
110: int VOP_ACCESS(struct vnode *, int, struct ucred *, struct proc *);
111:
112: struct vop_getattr_args {
113: struct vnodeop_desc *a_desc;
114: struct vnode *a_vp;
115: struct vattr *a_vap;
116: struct ucred *a_cred;
117: struct proc *a_p;
118: };
119: extern struct vnodeop_desc vop_getattr_desc;
120: int VOP_GETATTR(struct vnode *, struct vattr *, struct ucred *, struct proc *);
121:
122: struct vop_setattr_args {
123: struct vnodeop_desc *a_desc;
124: struct vnode *a_vp;
125: struct vattr *a_vap;
126: struct ucred *a_cred;
127: struct proc *a_p;
128: };
129: extern struct vnodeop_desc vop_setattr_desc;
130: int VOP_SETATTR(struct vnode *, struct vattr *, struct ucred *, struct proc *);
131:
132: struct vop_read_args {
133: struct vnodeop_desc *a_desc;
134: struct vnode *a_vp;
135: struct uio *a_uio;
136: int a_ioflag;
137: struct ucred *a_cred;
138: };
139: extern struct vnodeop_desc vop_read_desc;
140: int VOP_READ(struct vnode *, struct uio *, int, struct ucred *);
141:
142: struct vop_write_args {
143: struct vnodeop_desc *a_desc;
144: struct vnode *a_vp;
145: struct uio *a_uio;
146: int a_ioflag;
147: struct ucred *a_cred;
148: };
149: extern struct vnodeop_desc vop_write_desc;
150: int VOP_WRITE(struct vnode *, struct uio *, int, struct ucred *);
151:
152: struct vop_ioctl_args {
153: struct vnodeop_desc *a_desc;
154: struct vnode *a_vp;
155: u_long a_command;
156: void *a_data;
157: int a_fflag;
158: struct ucred *a_cred;
159: struct proc *a_p;
160: };
161: extern struct vnodeop_desc vop_ioctl_desc;
162: int VOP_IOCTL(struct vnode *, u_long, void *, int, struct ucred *,
163: struct proc *);
164:
165: struct vop_poll_args {
166: struct vnodeop_desc *a_desc;
167: struct vnode *a_vp;
168: int a_events;
169: struct proc *a_p;
170: };
171: extern struct vnodeop_desc vop_poll_desc;
172: int VOP_POLL(struct vnode *, int, struct proc *);
173:
174: struct vop_kqfilter_args {
175: struct vnodeop_desc *a_desc;
176: struct vnode *a_vp;
177: struct knote *a_kn;
178: };
179: extern struct vnodeop_desc vop_kqfilter_desc;
180: int VOP_KQFILTER(struct vnode *, struct knote *);
181:
182: struct vop_revoke_args {
183: struct vnodeop_desc *a_desc;
184: struct vnode *a_vp;
185: int a_flags;
186: };
187: extern struct vnodeop_desc vop_revoke_desc;
188: int VOP_REVOKE(struct vnode *, int);
189:
190: struct vop_fsync_args {
191: struct vnodeop_desc *a_desc;
192: struct vnode *a_vp;
193: struct ucred *a_cred;
194: int a_waitfor;
195: struct proc *a_p;
196: };
197: extern struct vnodeop_desc vop_fsync_desc;
198: int VOP_FSYNC(struct vnode *, struct ucred *, int, struct proc *);
199:
200: struct vop_remove_args {
201: struct vnodeop_desc *a_desc;
202: struct vnode *a_dvp;
203: struct vnode *a_vp;
204: struct componentname *a_cnp;
205: };
206: extern struct vnodeop_desc vop_remove_desc;
207: int VOP_REMOVE(struct vnode *, struct vnode *, struct componentname *);
208:
209: struct vop_link_args {
210: struct vnodeop_desc *a_desc;
211: struct vnode *a_dvp;
212: struct vnode *a_vp;
213: struct componentname *a_cnp;
214: };
215: extern struct vnodeop_desc vop_link_desc;
216: int VOP_LINK(struct vnode *, struct vnode *, struct componentname *);
217:
218: struct vop_rename_args {
219: struct vnodeop_desc *a_desc;
220: struct vnode *a_fdvp;
221: struct vnode *a_fvp;
222: struct componentname *a_fcnp;
223: struct vnode *a_tdvp;
224: struct vnode *a_tvp;
225: struct componentname *a_tcnp;
226: };
227: extern struct vnodeop_desc vop_rename_desc;
228: int VOP_RENAME(struct vnode *, struct vnode *, struct componentname *,
229: struct vnode *, struct vnode *, struct componentname *);
230:
231: struct vop_mkdir_args {
232: struct vnodeop_desc *a_desc;
233: struct vnode *a_dvp;
234: struct vnode **a_vpp;
235: struct componentname *a_cnp;
236: struct vattr *a_vap;
237: };
238: extern struct vnodeop_desc vop_mkdir_desc;
239: int VOP_MKDIR(struct vnode *, struct vnode **, struct componentname *,
240: struct vattr *);
241:
242: struct vop_rmdir_args {
243: struct vnodeop_desc *a_desc;
244: struct vnode *a_dvp;
245: struct vnode *a_vp;
246: struct componentname *a_cnp;
247: };
248: extern struct vnodeop_desc vop_rmdir_desc;
249: int VOP_RMDIR(struct vnode *, struct vnode *, struct componentname *);
250:
251: struct vop_symlink_args {
252: struct vnodeop_desc *a_desc;
253: struct vnode *a_dvp;
254: struct vnode **a_vpp;
255: struct componentname *a_cnp;
256: struct vattr *a_vap;
257: char *a_target;
258: };
259: extern struct vnodeop_desc vop_symlink_desc;
260: int VOP_SYMLINK(struct vnode *, struct vnode **, struct componentname *,
261: struct vattr *, char *);
262:
263: struct vop_readdir_args {
264: struct vnodeop_desc *a_desc;
265: struct vnode *a_vp;
266: struct uio *a_uio;
267: struct ucred *a_cred;
268: int *a_eofflag;
269: int *a_ncookies;
270: u_long **a_cookies;
271: };
272: extern struct vnodeop_desc vop_readdir_desc;
273: int VOP_READDIR(struct vnode *, struct uio *, struct ucred *, int *, int *,
274: u_long **);
275:
276: struct vop_readlink_args {
277: struct vnodeop_desc *a_desc;
278: struct vnode *a_vp;
279: struct uio *a_uio;
280: struct ucred *a_cred;
281: };
282: extern struct vnodeop_desc vop_readlink_desc;
283: int VOP_READLINK(struct vnode *, struct uio *, struct ucred *);
284:
285: struct vop_abortop_args {
286: struct vnodeop_desc *a_desc;
287: struct vnode *a_dvp;
288: struct componentname *a_cnp;
289: };
290: extern struct vnodeop_desc vop_abortop_desc;
291: int VOP_ABORTOP(struct vnode *, struct componentname *);
292:
293: struct vop_inactive_args {
294: struct vnodeop_desc *a_desc;
295: struct vnode *a_vp;
296: struct proc *a_p;
297: };
298: extern struct vnodeop_desc vop_inactive_desc;
299: int VOP_INACTIVE(struct vnode *, struct proc *);
300:
301: struct vop_reclaim_args {
302: struct vnodeop_desc *a_desc;
303: struct vnode *a_vp;
304: struct proc *a_p;
305: };
306: extern struct vnodeop_desc vop_reclaim_desc;
307: int VOP_RECLAIM(struct vnode *, struct proc *);
308:
309: struct vop_lock_args {
310: struct vnodeop_desc *a_desc;
311: struct vnode *a_vp;
312: int a_flags;
313: struct proc *a_p;
314: };
315: extern struct vnodeop_desc vop_lock_desc;
316: int VOP_LOCK(struct vnode *, int, struct proc *);
317:
318: struct vop_unlock_args {
319: struct vnodeop_desc *a_desc;
320: struct vnode *a_vp;
321: int a_flags;
322: struct proc *a_p;
323: };
324: extern struct vnodeop_desc vop_unlock_desc;
325: int VOP_UNLOCK(struct vnode *, int, struct proc *);
326:
327: struct vop_bmap_args {
328: struct vnodeop_desc *a_desc;
329: struct vnode *a_vp;
330: daddr64_t a_bn;
331: struct vnode **a_vpp;
332: daddr64_t *a_bnp;
333: int *a_runp;
334: };
335: extern struct vnodeop_desc vop_bmap_desc;
336: int VOP_BMAP(struct vnode *, daddr64_t, struct vnode **, daddr64_t *, int *);
337:
338: struct vop_print_args {
339: struct vnodeop_desc *a_desc;
340: struct vnode *a_vp;
341: };
342: extern struct vnodeop_desc vop_print_desc;
343: int VOP_PRINT(struct vnode *);
344:
345: struct vop_pathconf_args {
346: struct vnodeop_desc *a_desc;
347: struct vnode *a_vp;
348: int a_name;
349: register_t *a_retval;
350: };
351: extern struct vnodeop_desc vop_pathconf_desc;
352: int VOP_PATHCONF(struct vnode *, int, register_t *);
353:
354: struct vop_advlock_args {
355: struct vnodeop_desc *a_desc;
356: struct vnode *a_vp;
357: void *a_id;
358: int a_op;
359: struct flock *a_fl;
360: int a_flags;
361: };
362: extern struct vnodeop_desc vop_advlock_desc;
363: int VOP_ADVLOCK(struct vnode *, void *, int, struct flock *, int);
364:
365: struct vop_reallocblks_args {
366: struct vnodeop_desc *a_desc;
367: struct vnode *a_vp;
368: struct cluster_save *a_buflist;
369: };
370: extern struct vnodeop_desc vop_reallocblks_desc;
371: int VOP_REALLOCBLKS(struct vnode *, struct cluster_save *);
372:
373: /* Special cases: */
374: #include <sys/buf.h>
375:
376: struct vop_strategy_args {
377: struct vnodeop_desc *a_desc;
378: struct buf *a_bp;
379: };
380: extern struct vnodeop_desc vop_strategy_desc;
381: int VOP_STRATEGY(struct buf *);
382:
383: struct vop_bwrite_args {
384: struct vnodeop_desc *a_desc;
385: struct buf *a_bp;
386: };
387: extern struct vnodeop_desc vop_bwrite_desc;
388: int VOP_BWRITE(struct buf *);
389:
390: /* End of special cases. */
CVSweb