summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_sig.c
diff options
context:
space:
mode:
authortedu <tedu@openbsd.org>2019-02-19 22:42:41 +0000
committertedu <tedu@openbsd.org>2019-02-19 22:42:41 +0000
commit9bc5295bb82c3ac11a35640b39267e1ca1783cbf (patch)
tree8bb9992db9ff6865a669ef05a21547158eec6c84 /sys/kern/kern_sig.c
parentUse $CC instead of gcc, the latter does not exist on arm64. (diff)
downloadwireguard-openbsd-9bc5295bb82c3ac11a35640b39267e1ca1783cbf.tar.xz
wireguard-openbsd-9bc5295bb82c3ac11a35640b39267e1ca1783cbf.zip
open the coredump file non-blocking. cheloha found it blocks with a fifo.
ok cheloha deraadt
Diffstat (limited to 'sys/kern/kern_sig.c')
-rw-r--r--sys/kern/kern_sig.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c
index 0993d8aa810..39a789987e5 100644
--- a/sys/kern/kern_sig.c
+++ b/sys/kern/kern_sig.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kern_sig.c,v 1.227 2019/01/23 21:53:42 cheloha Exp $ */
+/* $OpenBSD: kern_sig.c,v 1.228 2019/02/19 22:42:41 tedu Exp $ */
/* $NetBSD: kern_sig.c,v 1.54 1996/04/22 01:38:32 christos Exp $ */
/*
@@ -1580,7 +1580,8 @@ coredump(struct proc *p)
NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_SYSSPACE, name, p);
- error = vn_open(&nd, O_CREAT | FWRITE | O_NOFOLLOW, S_IRUSR | S_IWUSR);
+ error = vn_open(&nd, O_CREAT | FWRITE | O_NOFOLLOW | O_NONBLOCK,
+ S_IRUSR | S_IWUSR);
if (error)
goto out;