VNSUBR(9) | Kernel Developer's Manual | VNSUBR(9) |
vnsubr
, vn_bwrite
,
vn_close
, vn_default_error
,
vn_isunder
, vn_lock
,
vn_markexec
, vn_marktext
,
vn_rdwr
, vn_open
,
vn_stat
, vn_writechk
—
#include <sys/param.h>
#include <sys/lock.h>
#include <sys/vnode.h>
int
vn_bwrite
(void
*ap);
int
vn_close
(struct
vnode *vp, int
flags, kauth_cred_t
cred);
int
vn_default_error
(void
*v);
int
vn_isunder
(struct
vnode *dvp, struct vnode
*rvp, struct lwp
*l);
int
vn_lock
(struct
vnode *vp, int
flags);
void
vn_markexec
(struct
vnode *vp);
void
vn_marktext
(struct
vnode *vp);
int
vn_open
(struct
nameidata *ndp, int
fmode, int
cmode);
int
vn_rdwr
(enum uio_rw rw,
struct vnode *vp, void *base,
int len, off_t offset,
enum uio_seg segflg, int ioflg,
kauth_cred_t cred, size_t
*aresid, struct lwp *l);
int
vn_readdir
(file_t
*fp, char *buf,
int segflg,
u_int count,
int *done,
struct lwp *l,
off_t **cookies,
int *ncookies);
int
vn_stat
(struct
vnode *vp, struct stat
*sb);
int
vn_writechk
(struct
vnode *vp);
vn_bwrite
(ap)vn_close
(vp,
flags, cred)vn_close
() simply locks the vnode, invokes the
vnode operation
VOP_CLOSE(9) and calls
vput
() to return the vnode to the freelist or
holdlist. Note that vn_close
() expects an
unlocked, referenced vnode and will dereference the vnode prior to
returning. If the operation is successful zero is returned, otherwise an
appropriate error is returned.vn_default_error
(v)vn_isunder
(dvp,
rvp, l)vn_isunder
() is intended
to be used in chroot(2),
chdir(2),
fchdir(2), etc., to ensure
that chroot(2) actually
means something. If the operation is successful zero is returned,
otherwise 1 is returned.vn_lock
(vp,
flags)If the operation is successful zero is returned, otherwise an appropriate error code is returned.
vn_lock
() must not be called when the
vnode's reference count is zero.
vn_markexec
(vp)vn_marktext
(vp)vn_open
(ndp,
fmode, cmode)vn_open
() checks
permissions and invokes the
VOP_OPEN(9) or
VOP_CREATE(9) vnode
operations. If the operation is successful zero is returned and the vnode
is locked, otherwise an appropriate error code is returned.vn_rdwr
(rw,
vp, base,
len, offset,
segflg, ioflg,
cred, aresid,
l)UIO_READ
) or write
(UIO_WRITE
) operation. The vnode is specified by
vp. The arguments l and
cred are the calling lwp and its credentials. If
ioflg contains
IO_NODELOCKED
, it is expected that the vnode is
locked. ioflg will be passed to
VOP_READ
()/VOP_WRITE
().
The remaining arguments specify the uio parameters. For further
information on these parameters see
uiomove(9).vn_readdir
(fp,
buf, segflg,
count, done,
l, cookies,
ncookies)NULL
if
they aren't required to be returned by
vn_readdir
(). If the operation is successful zero
is returned, otherwise an appropriate error code is returned.vn_stat
(vp,
sb)vn_stat
()
basically calls the vnode operation
VOP_GETATTR(9) and
transfers the contents of a vattr structure into a struct stat. If the
operation is successful zero is returned, otherwise an appropriate error
code is returned.vn_writechk
(vp)January 2, 2017 | NetBSD 9.2 |