Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/sys_pipe.c
| Show First 20 Lines • Show All 1,604 Lines • ▼ Show 20 Lines | pipe_chown(fp, uid, gid, active_cred, td) | ||||
| if (cpipe->pipe_state & PIPE_NAMED) | if (cpipe->pipe_state & PIPE_NAMED) | ||||
| error = vn_chown(fp, uid, gid, active_cred, td); | error = vn_chown(fp, uid, gid, active_cred, td); | ||||
| else | else | ||||
| error = invfo_chown(fp, uid, gid, active_cred, td); | error = invfo_chown(fp, uid, gid, active_cred, td); | ||||
| return (error); | return (error); | ||||
| } | } | ||||
| static int | static int | ||||
| pipe_fill_kinfo(struct file *fp, struct kinfo_file *kif, struct filedesc *fdp) | pipe_fill_kinfo(struct file *fp, struct kinfo_file *kif, struct filedesc *fdp, | ||||
| int lkflags) | |||||
| { | { | ||||
| struct pipe *pi; | struct pipe *pi; | ||||
| if (fp->f_type == DTYPE_FIFO) | if (fp->f_type == DTYPE_FIFO) | ||||
| return (vn_fill_kinfo(fp, kif, fdp)); | return (vn_fill_kinfo(fp, kif, fdp, lkflags)); | ||||
| kif->kf_type = KF_TYPE_PIPE; | kif->kf_type = KF_TYPE_PIPE; | ||||
| pi = fp->f_data; | pi = fp->f_data; | ||||
| kif->kf_un.kf_pipe.kf_pipe_addr = (uintptr_t)pi; | kif->kf_un.kf_pipe.kf_pipe_addr = (uintptr_t)pi; | ||||
| kif->kf_un.kf_pipe.kf_pipe_peer = (uintptr_t)pi->pipe_peer; | kif->kf_un.kf_pipe.kf_pipe_peer = (uintptr_t)pi->pipe_peer; | ||||
| kif->kf_un.kf_pipe.kf_pipe_buffer_cnt = pi->pipe_buffer.cnt; | kif->kf_un.kf_pipe.kf_pipe_buffer_cnt = pi->pipe_buffer.cnt; | ||||
| return (0); | return (0); | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 216 Lines • Show Last 20 Lines | |||||