Lines Matching refs:cnp

79 	struct componentname *cnp = v->a_cnp;
89 error = VOP_ACCESS(dvp, VEXEC, cnp->cn_cred, cnp->cn_thread);
96 !(cnp->cn_flags & ISDOTDOT)));
103 if (cnp->cn_flags & ISDOTDOT) {
111 cnp->cn_lkflags, vpp);
115 } else if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') {
120 de = tmpfs_dir_lookup(dnode, NULL, cnp);
122 cnp->cn_flags |= ISWHITEOUT;
128 if ((cnp->cn_flags & ISLASTCN) &&
129 (cnp->cn_nameiop == CREATE || \
130 cnp->cn_nameiop == RENAME ||
131 (cnp->cn_nameiop == DELETE &&
132 cnp->cn_flags & DOWHITEOUT &&
133 cnp->cn_flags & ISWHITEOUT))) {
134 error = VOP_ACCESS(dvp, VWRITE, cnp->cn_cred,
135 cnp->cn_thread);
141 cnp->cn_flags |= SAVENAME;
159 !(cnp->cn_flags & ISLASTCN)) {
167 if ((cnp->cn_flags & ISLASTCN) &&
168 (cnp->cn_nameiop == DELETE ||
169 cnp->cn_nameiop == RENAME)) {
170 error = VOP_ACCESS(dvp, VWRITE, cnp->cn_cred,
171 cnp->cn_thread);
177 cnp->cn_lkflags, vpp);
182 VOP_ACCESS(dvp, VADMIN, cnp->cn_cred, cnp->cn_thread) &&
183 VOP_ACCESS(*vpp, VADMIN, cnp->cn_cred, cnp->cn_thread)) {
189 cnp->cn_flags |= SAVENAME;
192 cnp->cn_lkflags, vpp);
200 if ((cnp->cn_flags & MAKEENTRY) && cnp->cn_nameiop != CREATE)
201 cache_enter(dvp, *vpp, cnp);
218 struct componentname *cnp = v->a_cnp;
223 return tmpfs_alloc_file(dvp, vpp, vap, cnp, NULL);
232 struct componentname *cnp = v->a_cnp;
239 return tmpfs_alloc_file(dvp, vpp, vap, cnp, NULL);
870 struct componentname *cnp = v->a_cnp;
877 MPASS(cnp->cn_flags & HASBUF);
912 cnp->cn_nameptr, cnp->cn_namelen, &de);
917 if (cnp->cn_flags & ISWHITEOUT)
918 tmpfs_dir_whiteout_remove(dvp, cnp);
1345 struct componentname *cnp = v->a_cnp;
1350 return tmpfs_alloc_file(dvp, vpp, vap, cnp, NULL);
1455 struct componentname *cnp = v->a_cnp;
1465 return tmpfs_alloc_file(dvp, vpp, vap, cnp, target);
1732 struct componentname *cnp = ap->a_cnp;
1739 de = tmpfs_dir_lookup(VP_TO_TMPFS_DIR(dvp), NULL, cnp);
1742 return (tmpfs_dir_whiteout_add(dvp, cnp));
1744 tmpfs_dir_whiteout_remove(dvp, cnp);