summaryrefslogtreecommitdiffstats
path: root/sys/sys/event.h
diff options
context:
space:
mode:
authorguenther <guenther@openbsd.org>2010-08-02 19:54:07 +0000
committerguenther <guenther@openbsd.org>2010-08-02 19:54:07 +0000
commit458bf05c8809c4e815fe1c53afb84eec1ec811a6 (patch)
tree2dd92f7a5dc3a21e1053b3837208fee97a4ecf27 /sys/sys/event.h
parentThere is no reason to call the start function upon resume; the network stack (diff)
downloadwireguard-openbsd-458bf05c8809c4e815fe1c53afb84eec1ec811a6.tar.xz
wireguard-openbsd-458bf05c8809c4e815fe1c53afb84eec1ec811a6.zip
Fix knote handling for exiting processes: when triggering a NOTE_EXIT
knote, remove it from the process's klist; after handling those, remove and drop any remaining knotes from the process's klist. Ban attaching knotes to processes that have started exiting or attaching them via the pid of a thread other than the main thread. ok tedu@, deraadt@
Diffstat (limited to 'sys/sys/event.h')
-rw-r--r--sys/sys/event.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/sys/event.h b/sys/sys/event.h
index c528d669e8f..89fa08b20f8 100644
--- a/sys/sys/event.h
+++ b/sys/sys/event.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: event.h,v 1.14 2010/07/28 21:44:41 nicm Exp $ */
+/* $OpenBSD: event.h,v 1.15 2010/08/02 19:54:07 guenther Exp $ */
/*-
* Copyright (c) 1999,2000,2001 Jonathan Lemon <jlemon@FreeBSD.org>
@@ -169,6 +169,7 @@ struct proc;
extern void knote(struct klist *list, long hint);
extern void knote_remove(struct proc *p, struct klist *list);
extern void knote_fdclose(struct proc *p, int fd);
+extern void knote_processexit(struct process *);
extern int kqueue_register(struct kqueue *kq,
struct kevent *kev, struct proc *p);
extern int filt_seltrue(struct knote *kn, long hint);