diff options
author | guenther <guenther@openbsd.org> | 2010-08-02 19:54:07 +0000 |
---|---|---|
committer | guenther <guenther@openbsd.org> | 2010-08-02 19:54:07 +0000 |
commit | 458bf05c8809c4e815fe1c53afb84eec1ec811a6 (patch) | |
tree | 2dd92f7a5dc3a21e1053b3837208fee97a4ecf27 /sys/sys/event.h | |
parent | There is no reason to call the start function upon resume; the network stack (diff) | |
download | wireguard-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.h | 3 |
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); |