/netbsd/sys/kern/ |
H A D | vfs_cwd.c | 63 struct cwdinfo *cwdi; in cwdinit() local 71 if (cwdi->cwdi_cdir) in cwdinit() 74 if (cwdi->cwdi_rdir) in cwdinit() 77 if (cwdi->cwdi_edir) in cwdinit() 83 return (cwdi); in cwdinit() 110 struct cwdinfo *cwdi; in cwdshare() local 115 p2->p_cwdi = cwdi; in cwdshare() 128 cwdi = cwdinit(); in cwdunshare() 130 p->p_cwdi = cwdi; in cwdunshare() 147 if (cwdi->cwdi_rdir) in cwdfree() [all …]
|
H A D | vfs_getcwd.c | 274 struct cwdinfo *cwdi = l->l_proc->p_cwdi; in getcwd_common() local 283 rvp = cwdi->cwdi_rdir; in getcwd_common() 481 struct cwdinfo *cwdi; in sys___getcwd() local 498 cwdi = l->l_proc->p_cwdi; in sys___getcwd() 499 rw_enter(&cwdi->cwdi_lock, RW_READER); in sys___getcwd() 500 error = getcwd_common(cwdi->cwdi_cdir, NULL, &bp, path, in sys___getcwd() 502 rw_exit(&cwdi->cwdi_lock); in sys___getcwd()
|
H A D | vfs_mount.c | 720 struct cwdinfo *cwdi; in mount_checkdirs() local 734 if ((cwdi = p->p_cwdi) == NULL) in mount_checkdirs() 741 if (cwdi->cwdi_cdir != olddp && in mount_checkdirs() 742 cwdi->cwdi_rdir != olddp) in mount_checkdirs() 750 if (cwdi->cwdi_cdir == olddp) { in mount_checkdirs() 751 rele1 = cwdi->cwdi_cdir; in mount_checkdirs() 753 cwdi->cwdi_cdir = newdp; in mount_checkdirs() 756 rele2 = cwdi->cwdi_rdir; in mount_checkdirs() 758 cwdi->cwdi_rdir = newdp; in mount_checkdirs() 760 rw_exit(&cwdi->cwdi_lock); in mount_checkdirs() [all …]
|
H A D | vfs_syscalls.c | 1473 struct cwdinfo *cwdi; in do_sys_fchdir() local 1511 cwdi = p->p_cwdi; in do_sys_fchdir() 1517 vrele(cwdi->cwdi_cdir); in do_sys_fchdir() 1518 cwdi->cwdi_cdir = vp; in do_sys_fchdir() 1582 struct cwdinfo * cwdi; in do_sys_chdir() local 1588 cwdi = p->p_cwdi; in do_sys_chdir() 1590 vrele(cwdi->cwdi_cdir); in do_sys_chdir() 1591 cwdi->cwdi_cdir = vp; in do_sys_chdir() 1648 vrele(cwdi->cwdi_rdir); in change_root() 1649 cwdi->cwdi_rdir = vp; in change_root() [all …]
|
H A D | vfs_lookup.c | 523 struct cwdinfo *cwdi; /* pointer to cwd state */ in namei_getstartdir() local 535 cwdi = self->l_proc->p_cwdi; in namei_getstartdir() 536 rw_enter(&cwdi->cwdi_lock, RW_READER); in namei_getstartdir() 539 if (cwdi->cwdi_rdir == NULL || (cnp->cn_flags & NOCHROOT)) { in namei_getstartdir() 542 rootdir = cwdi->cwdi_rdir; in namei_getstartdir() 557 erootdir = cwdi->cwdi_edir; in namei_getstartdir() 561 curdir = cwdi->cwdi_cdir; in namei_getstartdir() 594 rw_exit(&cwdi->cwdi_lock); in namei_getstartdir()
|
H A D | vfs_subr.c | 1309 struct cwdinfo *cwdi = l->l_proc->p_cwdi; in set_statvfs_info() local 1311 if (cwdi->cwdi_rdir != NULL) { in set_statvfs_info() 1318 rw_enter(&cwdi->cwdi_lock, RW_READER); in set_statvfs_info() 1319 error = getcwd_common(cwdi->cwdi_rdir, rootvnode, &bp, in set_statvfs_info() 1321 rw_exit(&cwdi->cwdi_lock); in set_statvfs_info()
|
H A D | kern_exec.c | 684 struct cwdinfo *cwdi; in exec_makepathbuf() local 710 cwdi = l->l_proc->p_cwdi; in exec_makepathbuf() 711 rw_enter(&cwdi->cwdi_lock, RW_READER); in exec_makepathbuf() 712 error = getcwd_common(cwdi->cwdi_cdir, NULL, &bp, path, MAXPATHLEN / 2, in exec_makepathbuf() 714 rw_exit(&cwdi->cwdi_lock); in exec_makepathbuf()
|
H A D | kern_auth.c | 250 kauth_proc_chroot(kauth_cred_t cred, struct cwdinfo *cwdi) in kauth_proc_chroot() argument 252 kauth_cred_hook(cred, KAUTH_CRED_CHROOT, cwdi, NULL); in kauth_proc_chroot()
|
H A D | kern_proc.c | 3005 struct cwdinfo *cwdi; in fill_cwd() local 3020 cwdi = p->p_cwdi; in fill_cwd() 3021 rw_enter(&cwdi->cwdi_lock, RW_READER); in fill_cwd() 3022 vp = cwdi->cwdi_cdir; in fill_cwd() 3024 rw_exit(&cwdi->cwdi_lock); in fill_cwd()
|
H A D | sys_mqueue.c | 417 struct cwdinfo *cwdi = p->p_cwdi; in mqueue_create() local 465 mq->mq_mode = ((mode & ~cwdi->cwdi_cmask) & ALLPERMS) & ~S_ISTXT; in mqueue_create()
|
/netbsd/sys/fs/ptyfs/ |
H A D | ptyfs_vfsops.c | 98 struct cwdinfo *cwdi = l->l_proc->p_cwdi; in ptyfs__getmp() local 104 if (cwdi->cwdi_rdir == NULL) in ptyfs__getmp() 107 if (vn_isunder(mp->mnt_vnodecovered, cwdi->cwdi_rdir, l)) in ptyfs__getmp() 121 struct cwdinfo *cwdi = l->l_proc->p_cwdi; in ptyfs__getpath() local 129 if (cwdi->cwdi_rdir == NULL) in ptyfs__getpath() 135 error = getcwd_common(mp->mnt_vnodecovered, cwdi->cwdi_rdir, &bp, in ptyfs__getpath()
|
/netbsd/usr.bin/fstat/ |
H A D | fstat.c | 445 struct cwdinfo cwdi; in dofiles() local 461 if (!KVM_READ(p->p_cwdi, &cwdi, sizeof(cwdi))) { in dofiles() 479 if (cwdi.cwdi_rdir) in dofiles() 480 vtrans(NULL, cwdi.cwdi_rdir, RDIR, FREAD, (long)cwdi.cwdi_rdir); in dofiles() 484 vtrans(NULL, cwdi.cwdi_cdir, CDIR, FREAD, (long)cwdi.cwdi_cdir); in dofiles()
|
/netbsd/sys/miscfs/procfs/ |
H A D | procfs_vnops.c | 512 struct cwdinfo *cwdi; in procfs_dir() local 537 cwdi = caller->l_proc->p_cwdi; in procfs_dir() 538 rw_enter(&cwdi->cwdi_lock, RW_READER); in procfs_dir() 540 rvp = cwdi->cwdi_rdir; in procfs_dir() 553 rw_exit(&cwdi->cwdi_lock); in procfs_dir() 572 rw_exit(&cwdi->cwdi_lock); in procfs_dir()
|
H A D | procfs_linux.c | 618 struct cwdinfo *cwdi = curl->l_proc->p_cwdi; in procfs_domounts() local 637 if (!root && cwdi->cwdi_rdir) in procfs_domounts() 639 &cwdi->cwdi_rdir->v_mount->mnt_stat, curl, 1); in procfs_domounts()
|
/netbsd/sys/compat/netbsd32/ |
H A D | netbsd32_fs.c | 740 struct cwdinfo *cwdi; in netbsd32___getcwd() local 758 cwdi = p->p_cwdi; in netbsd32___getcwd() 759 rw_enter(&cwdi->cwdi_lock, RW_READER); in netbsd32___getcwd() 760 error = getcwd_common (cwdi->cwdi_cdir, NULL, &bp, path, len/2, in netbsd32___getcwd() 762 rw_exit(&cwdi->cwdi_lock); in netbsd32___getcwd()
|
/netbsd/sys/sys/ |
H A D | kauth.h | 544 void kauth_proc_chroot(kauth_cred_t cred, struct cwdinfo *cwdi);
|