NAME¶
VOP_LINK
—
create a new name for a file
SYNOPSIS¶
#include
<sys/param.h>
#include
<sys/vnode.h>
int
VOP_LINK
(
struct
vnode *dvp,
struct vnode
*vp,
struct
componentname *cnp);
DESCRIPTION¶
This links a new name in the specified directory to an existing file.
Its arguments are:
- dvp
- The vnode of the directory.
- vp
- The vnode of the file to be linked.
- cnp
- Pathname information about the file.
The pathname info should
not be released on exit
because it is done by the caller. The directory and file vnodes should
not be released on exit.
LOCKS¶
VOP_LINK
() expects the directory and file
vnodes to be locked on entry and will leave the vnodes locked on return.
RETURN VALUES¶
Zero is returned if the file was linked successfully, otherwise an error is
returned.
ERRORS¶
- [
EMLINK
]
- The file has too many links.
- [
EPERM
]
- The file is immutable.
- [
EXDEV
]
- A hard link is not possible between different file systems.
SEE ALSO¶
vn_lock(9),
vnode(9)
AUTHORS¶
This manual page was originally written by
Doug
Rabson.