Lines Matching refs:pu
47 puffs_path_pcnbuild(struct puffs_usermount *pu, struct puffs_cn *pcn,
50 struct puffs_node *pn_parent = PU_CMAP(pu, parent);
56 assert(pu->pu_flags & PUFFS_FLAG_BUILDPATH);
58 if (pu->pu_pathtransform) {
59 rv = pu->pu_pathtransform(pu, &pn_parent->pn_po, pcn, &po);
67 if (pu->pu_namemod) {
70 rv = pu->pu_namemod(pu, &pn_parent->pn_po, pcn);
75 rv = pu->pu_pathbuild(pu, &pn_parent->pn_po, &po, 0,
77 puffs_path_buildhash(pu, &pcn->pcn_po_full);
79 if (pu->pu_pathtransform)
80 pu->pu_pathfree(pu, &po);
82 if (pu->pu_namemod && rv)
93 puffs_path_prefixadj(struct puffs_usermount *pu, struct puffs_node *pn,
105 if (pu->pu_pathcmp(pu, &pn->pn_po, pi->pi_old, pi->pi_old->po_len, 1))
112 rv = pu->pu_pathbuild(pu, pi->pi_new, &pn->pn_po,
125 puffs_path_buildhash(pu, &localpo);
130 pu->pu_pathfree(pu, &oldpo);
140 puffs_path_walkcmp(struct puffs_usermount *pu, struct puffs_node *pn, void *arg)
152 if (pu->pu_flags & PUFFS_FLAG_HASHPATH)
159 if (pu->pu_pathcmp(pu, po, &po2, PNPLEN(pn), 0) == 0)
171 puffs_path_buildhash(struct puffs_usermount *pu, struct puffs_pathobj *po)
174 if ((pu->pu_flags & PUFFS_FLAG_HASHPATH) == 0)
177 if (pu->pu_pathbuild == puffs_stdpath_buildpath)
192 puffs_stdpath_cmppath(struct puffs_usermount *pu, struct puffs_pathobj *c1,
219 puffs_stdpath_buildpath(struct puffs_usermount *pu,
295 puffs_stdpath_freepath(struct puffs_usermount *pu, struct puffs_pathobj *po)