Query: vop_vptocnp
OS: osx
Section: 9
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
VOP_VPTOCNP(9) BSD Kernel Developer's Manual VOP_VPTOCNP(9) NAME
VOP_VPTOCNP -- translate a vnode to its component name SYNOPSIS
#include <sys/param.h> #include <sys/vnode.h> int VOP_VPTOCNP(struct vnode *vp, struct vnode **dvp, char *buf, int *buflen); DESCRIPTION
This translates a vnode into its component name, and writes that name to the head of the buffer specified by buf vp The vnode to translate. dvp The vnode of the parent directory of vp. buf The buffer into which to preprend the component name. buflen The remaining size of the buffer. The default implementation of VOP_VPTOCNP scans through vp's parent directory looking for a dirent with a matching file number. If vp is not a directory, then VOP_VPTOCNP returns ENOENT. LOCKS
The vnode should be locked on entry and will still be locked on exit. The parent directory vnode will be unlocked on a successful exit. However, it will have its hold count incremented. RETURN VALUES
Zero is returned on success, otherwise an error code is returned. ERRORS
[ENOMEM] The buffer was not large enough to hold the vnode's component name. [ENOENT] The vnode was not found on the file system. SEE ALSO
VOP_LOOKUP(9), vnode(9) NOTES
This interface is a work in progress. HISTORY
The function VOP_VPTOCNP appeared in FreeBSD 8.0. AUTHORS
This manual page was written by Joe Marcus Clarke. BSD
December 7, 2008 BSD