diff options
author | phk <phk@FreeBSD.org> | 2003-06-22 08:41:43 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-06-22 08:41:43 +0000 |
commit | c81c59299bd255eb5ab7510c9e84e9c54b8003d0 (patch) | |
tree | c8262a3d430fc3cafab7fb6aec641ce293cd3361 /sys/security/mac/mac_net.c | |
parent | 4a223af282e5f60223c443ce3755f565f9db2465 (diff) | |
download | FreeBSD-src-c81c59299bd255eb5ab7510c9e84e9c54b8003d0.zip FreeBSD-src-c81c59299bd255eb5ab7510c9e84e9c54b8003d0.tar.gz |
Add a f_vnode field to struct file.
Several of the subtypes have an associated vnode which is used for
stuff like the f*() functions.
By giving the vnode a speparate field, a number of checks for the specific
subtype can be replaced simply with a check for f_vnode != NULL, and
we can later free f_data up to subtype specific use.
At this point in time, f_data still points to the vnode, so any code I
might have overlooked will still work.
Diffstat (limited to 'sys/security/mac/mac_net.c')
-rw-r--r-- | sys/security/mac/mac_net.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/security/mac/mac_net.c b/sys/security/mac/mac_net.c index e5e25dc..79a12ec 100644 --- a/sys/security/mac/mac_net.c +++ b/sys/security/mac/mac_net.c @@ -3496,7 +3496,7 @@ __mac_get_fd(struct thread *td, struct __mac_get_fd_args *uap) switch (fp->f_type) { case DTYPE_FIFO: case DTYPE_VNODE: - vp = fp->f_data; + vp = fp->f_vnode; mac_init_vnode_label(&intlabel); @@ -3704,7 +3704,7 @@ __mac_set_fd(struct thread *td, struct __mac_set_fd_args *uap) break; } - vp = fp->f_data; + vp = fp->f_vnode; error = vn_start_write(vp, &mp, V_WAIT | PCATCH); if (error != 0) { mac_destroy_vnode_label(&intlabel); |