Commit | Line | Data |
---|---|---|
a4b514e3 KM |
1 | # |
2 | # Copyright (c) 1992 The Regents of the University of California. | |
3 | # All rights reserved. | |
4 | # | |
5 | # %sccs.include.redist.sh% | |
6 | # | |
2b83eebf | 7 | # @(#)vnode_if.src 7.4 (Berkeley) %G% |
a4b514e3 KM |
8 | # |
9 | vop_lookup { | |
10 | IN struct vnode *dvp; | |
2b83eebf | 11 | INOUT struct vnode **vpp; |
a4b514e3 KM |
12 | IN struct componentname *cnp; |
13 | }; | |
14 | ||
15 | vop_create { | |
c717e4c0 | 16 | IN WILLRELE struct vnode *dvp; |
a4b514e3 KM |
17 | OUT struct vnode **vpp; |
18 | IN struct componentname *cnp; | |
19 | IN struct vattr *vap; | |
20 | }; | |
21 | ||
22 | vop_mknod { | |
c717e4c0 JH |
23 | IN WILLRELE struct vnode *dvp; |
24 | OUT WILLRELE struct vnode **vpp; | |
a4b514e3 KM |
25 | IN struct componentname *cnp; |
26 | IN struct vattr *vap; | |
27 | }; | |
28 | ||
29 | vop_open { | |
30 | IN struct vnode *vp; | |
31 | IN int mode; | |
32 | IN struct ucred *cred; | |
33 | IN struct proc *p; | |
34 | }; | |
35 | ||
36 | vop_close { | |
37 | IN struct vnode *vp; | |
38 | IN int fflag; | |
39 | IN struct ucred *cred; | |
40 | IN struct proc *p; | |
41 | }; | |
42 | ||
43 | vop_access { | |
44 | IN struct vnode *vp; | |
45 | IN int mode; | |
46 | IN struct ucred *cred; | |
47 | IN struct proc *p; | |
48 | }; | |
49 | ||
50 | vop_getattr { | |
51 | IN struct vnode *vp; | |
52 | IN struct vattr *vap; | |
53 | IN struct ucred *cred; | |
54 | IN struct proc *p; | |
55 | }; | |
56 | ||
57 | vop_setattr { | |
58 | IN struct vnode *vp; | |
59 | IN struct vattr *vap; | |
60 | IN struct ucred *cred; | |
61 | IN struct proc *p; | |
62 | }; | |
63 | ||
64 | vop_read { | |
65 | IN struct vnode *vp; | |
66 | INOUT struct uio *uio; | |
67 | IN int ioflag; | |
68 | IN struct ucred *cred; | |
69 | }; | |
70 | ||
71 | vop_write { | |
72 | IN struct vnode *vp; | |
73 | INOUT struct uio *uio; | |
74 | IN int ioflag; | |
75 | IN struct ucred *cred; | |
76 | }; | |
77 | ||
78 | vop_ioctl { | |
79 | IN struct vnode *vp; | |
80 | IN int command; | |
81 | IN caddr_t data; | |
82 | IN int fflag; | |
83 | IN struct ucred *cred; | |
84 | IN struct proc *p; | |
85 | }; | |
86 | ||
87 | # Needs work? (fflags) | |
88 | vop_select { | |
89 | IN struct vnode *vp; | |
90 | IN int which; | |
91 | IN int fflags; | |
92 | IN struct ucred *cred; | |
93 | IN struct proc *p; | |
94 | }; | |
95 | ||
96 | vop_mmap { | |
97 | IN struct vnode *vp; | |
98 | IN int fflags; | |
99 | IN struct ucred *cred; | |
100 | IN struct proc *p; | |
101 | }; | |
102 | ||
103 | vop_fsync { | |
104 | IN struct vnode *vp; | |
105 | IN struct ucred *cred; | |
106 | IN int waitfor; | |
107 | IN struct proc *p; | |
108 | }; | |
109 | ||
110 | # Needs word: Is newoff right? What's it mean? | |
111 | vop_seek { | |
112 | IN struct vnode *vp; | |
113 | IN off_t oldoff; | |
114 | IN off_t newoff; | |
115 | IN struct ucred *cred; | |
116 | }; | |
117 | ||
118 | vop_remove { | |
c717e4c0 JH |
119 | IN WILLRELE struct vnode *dvp; |
120 | IN WILLRELE struct vnode *vp; | |
a4b514e3 KM |
121 | IN struct componentname *cnp; |
122 | }; | |
123 | ||
124 | vop_link { | |
c717e4c0 | 125 | IN WILLRELE struct vnode *vp; |
a4b514e3 KM |
126 | IN struct vnode *tdvp; |
127 | IN struct componentname *cnp; | |
128 | }; | |
129 | ||
130 | vop_rename { | |
c717e4c0 JH |
131 | IN WILLRELE struct vnode *fdvp; |
132 | IN WILLRELE struct vnode *fvp; | |
a4b514e3 | 133 | IN struct componentname *fcnp; |
c717e4c0 JH |
134 | IN WILLRELE struct vnode *tdvp; |
135 | IN WILLRELE struct vnode *tvp; | |
a4b514e3 KM |
136 | IN struct componentname *tcnp; |
137 | }; | |
138 | ||
139 | vop_mkdir { | |
c717e4c0 | 140 | IN WILLRELE struct vnode *dvp; |
a4b514e3 KM |
141 | OUT struct vnode **vpp; |
142 | IN struct componentname *cnp; | |
143 | IN struct vattr *vap; | |
144 | }; | |
145 | ||
146 | vop_rmdir { | |
c717e4c0 JH |
147 | IN WILLRELE struct vnode *dvp; |
148 | IN WILLRELE struct vnode *vp; | |
a4b514e3 KM |
149 | IN struct componentname *cnp; |
150 | }; | |
151 | ||
152 | vop_symlink { | |
c717e4c0 JH |
153 | IN WILLRELE struct vnode *dvp; |
154 | OUT WILLRELE struct vnode **vpp; | |
a4b514e3 KM |
155 | IN struct componentname *cnp; |
156 | IN struct vattr *vap; | |
157 | IN char *target; | |
158 | }; | |
159 | ||
160 | vop_readdir { | |
161 | IN struct vnode *vp; | |
162 | INOUT struct uio *uio; | |
163 | IN struct ucred *cred; | |
164 | }; | |
165 | ||
166 | vop_readlink { | |
167 | IN struct vnode *vp; | |
168 | INOUT struct uio *uio; | |
169 | IN struct ucred *cred; | |
170 | }; | |
171 | ||
172 | vop_abortop { | |
173 | IN struct vnode *dvp; | |
174 | IN struct componentname *cnp; | |
175 | }; | |
176 | ||
177 | vop_inactive { | |
178 | IN struct vnode *vp; | |
179 | }; | |
180 | ||
181 | vop_reclaim { | |
182 | IN struct vnode *vp; | |
183 | }; | |
184 | ||
185 | vop_lock { | |
186 | IN struct vnode *vp; | |
187 | }; | |
188 | ||
189 | vop_unlock { | |
190 | IN struct vnode *vp; | |
191 | }; | |
192 | ||
193 | vop_bmap { | |
194 | IN struct vnode *vp; | |
195 | IN daddr_t bn; | |
196 | OUT struct vnode **vpp; | |
197 | IN daddr_t *bnp; | |
198 | }; | |
199 | ||
200 | #vop_strategy { | |
201 | # IN struct buf *bp; | |
202 | #}; | |
203 | ||
204 | vop_print { | |
205 | IN struct vnode *vp; | |
206 | }; | |
207 | ||
208 | vop_islocked { | |
209 | IN struct vnode *vp; | |
210 | }; | |
211 | ||
212 | vop_advlock { | |
213 | IN struct vnode *vp; | |
214 | IN caddr_t id; | |
215 | IN int op; | |
216 | IN struct flock *fl; | |
217 | IN int flags; | |
218 | }; | |
219 | ||
220 | vop_blkatoff { | |
221 | IN struct vnode *vp; | |
222 | IN off_t offset; | |
223 | OUT char **res; | |
224 | OUT struct buf **bpp; | |
225 | }; | |
226 | ||
a4b514e3 KM |
227 | vop_valloc { |
228 | IN struct vnode *pvp; | |
229 | IN int mode; | |
230 | IN struct ucred *cred; | |
231 | OUT struct vnode **vpp; | |
232 | }; | |
233 | ||
234 | vop_vfree { | |
235 | IN struct vnode *pvp; | |
236 | IN ino_t ino; | |
237 | IN int mode; | |
238 | }; | |
239 | ||
240 | vop_truncate { | |
241 | IN struct vnode *vp; | |
242 | IN off_t length; | |
243 | IN int flags; | |
244 | IN struct ucred *cred; | |
245 | IN struct proc *p; | |
246 | }; | |
247 | ||
248 | vop_update { | |
249 | IN struct vnode *vp; | |
250 | IN struct timeval *ta; | |
251 | IN struct timeval *tm; | |
252 | IN int waitfor; | |
253 | }; | |
254 | ||
255 | # Needs work: no vp? | |
256 | #vop_bwrite { | |
257 | # IN struct buf *bp; | |
258 | #}; |