diff options
author | 2018-07-10 08:58:50 +0000 | |
---|---|---|
committer | 2018-07-10 08:58:50 +0000 | |
commit | 30cae0e11a68544aad56fe31465ffb5607069c7a (patch) | |
tree | 8626bb6e60d911b2bd944df073b425039351382d /sys/kern/sys_socket.c | |
parent | Drop the ignored selectors (tf_[defg]s) from the trap and interrupt frames. (diff) | |
download | wireguard-openbsd-30cae0e11a68544aad56fe31465ffb5607069c7a.tar.xz wireguard-openbsd-30cae0e11a68544aad56fe31465ffb5607069c7a.zip |
Move socket & pipe specific logic in their ioctl handler.
ok visa@, tb@
Diffstat (limited to 'sys/kern/sys_socket.c')
-rw-r--r-- | sys/kern/sys_socket.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/kern/sys_socket.c b/sys/kern/sys_socket.c index 8bf77ebb7aa..01e0ced2f43 100644 --- a/sys/kern/sys_socket.c +++ b/sys/kern/sys_socket.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sys_socket.c,v 1.38 2018/06/06 06:55:22 mpi Exp $ */ +/* $OpenBSD: sys_socket.c,v 1.39 2018/07/10 08:58:50 mpi Exp $ */ /* $NetBSD: sys_socket.c,v 1.13 1995/08/12 23:59:09 mycroft Exp $ */ /* @@ -109,12 +109,18 @@ soo_ioctl(struct file *fp, u_long cmd, caddr_t data, struct proc *p) *(int *)data = so->so_rcv.sb_datacc; break; + case TIOCSPGRP: + /* FALLTHROUGH */ case SIOCSPGRP: so->so_pgid = *(int *)data; so->so_siguid = p->p_ucred->cr_ruid; so->so_sigeuid = p->p_ucred->cr_uid; break; + case TIOCGPGRP: + *(int *)data = -so->so_pgid; + break; + case SIOCGPGRP: *(int *)data = so->so_pgid; break; |