]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/man/man2/kqueue.2
xnu-2782.30.5.tar.gz
[apple/xnu.git] / bsd / man / man2 / kqueue.2
index f7a12d52375b28b1e2b1daa66dd1fc08b9e62f69..c3e668072bc0b61145571253ec603c095881d447 100644 (file)
@@ -1,5 +1,5 @@
 .\"
 .\"
-.\" Copyright (c) 2008 Apple Inc.  All rights reserved.
+.\" Copyright (c) 2008-2015 Apple Inc.  All rights reserved.
 .\"
 .\" @APPLE_LICENSE_HEADER_START@
 .\" 
 .\"
 .\" @APPLE_LICENSE_HEADER_START@
 .\" 
@@ -74,7 +74,7 @@ and
 The
 .Fn kqueue
 system call
 The
 .Fn kqueue
 system call
-provides a generic method of notifying the user when an kernel
+provides a generic method of notifying the user when a kernel
 event (kevent) happens or a condition holds, based on the results
 of small pieces of kernel code termed filters.
 A kevent is identified by an (ident, filter) pair and specifies
 event (kevent) happens or a condition holds, based on the results
 of small pieces of kernel code termed filters.
 A kevent is identified by an (ident, filter) pair and specifies
@@ -267,7 +267,7 @@ the descriptor.
 .It EV_RECEIPT
 This flag is useful for making bulk changes to a kqueue without draining any
 pending events. When passed as input, it forces EV_ERROR to always be returned.
 .It EV_RECEIPT
 This flag is useful for making bulk changes to a kqueue without draining any
 pending events. When passed as input, it forces EV_ERROR to always be returned.
-When a filter is successfully added. The
+When a filter is successfully added, the
 .Va data
 field will be zero.
 .It EV_ONESHOT
 .Va data
 field will be zero.
 .It EV_ONESHOT
@@ -281,6 +281,9 @@ instead of the current state.  Note that some filters may automatically
 set this flag internally.
 .It EV_EOF
 Filters may set this flag to indicate filter-specific EOF condition.
 set this flag internally.
 .It EV_EOF
 Filters may set this flag to indicate filter-specific EOF condition.
+.It EV_OOBAND
+Read filter on socket may set this flag to indicate the presence of out of
+band data on the descriptor.
 .It EV_ERROR
 See
 .Sx RETURN VALUES
 .It EV_ERROR
 See
 .Sx RETURN VALUES
@@ -329,6 +332,12 @@ On return,
 .Va data
 contains the number of bytes of protocol data available to read.
 .Pp
 .Va data
 contains the number of bytes of protocol data available to read.
 .Pp
+The presence of EV_OOBAND in
+.Va flags ,
+indicates the presence of out of band data on the socket
+.Va data
+equal to the potential number of OOB bytes availble to read.
+.Pp
 If the read direction of the socket has shutdown, then the filter
 also sets EV_EOF in
 .Va flags ,
 If the read direction of the socket has shutdown, then the filter
 also sets EV_EOF in
 .Va flags ,
@@ -433,6 +442,8 @@ The events to monitor are:
 .Bl -tag -width NOTE_SIGNAL 
 .It NOTE_EXIT
 The process has exited.
 .Bl -tag -width NOTE_SIGNAL 
 .It NOTE_EXIT
 The process has exited.
+.It NOTE_EXITSTATUS
+The process has exited and its exit status is in filter specific data. Valid only on child processes and to be used along with NOTE_EXIT.
 .It NOTE_FORK
 The process created a child process via
 .Xr fork 2
 .It NOTE_FORK
 The process created a child process via
 .Xr fork 2
@@ -448,7 +459,7 @@ or similar call.
 .It NOTE_REAP
 The process was reaped by the parent via
 .Xr wait 2
 .It NOTE_REAP
 The process was reaped by the parent via
 .Xr wait 2
-or similar call.
+or similar call. Deprecated, use NOTE_EXIT.
 .El
 .Pp
 On return,
 .El
 .Pp
 On return,
@@ -497,6 +508,12 @@ data is in microseconds
 data is in nanoseconds
 .It NOTE_ABSOLUTE
 data is an absolute timeout
 data is in nanoseconds
 .It NOTE_ABSOLUTE
 data is an absolute timeout
+.It NOTE_CRITICAL
+system makes a best effort to fire this timer as scheduled.
+.It NOTE_BACKGROUND
+system has extra leeway to coalesce this timer.
+.It NOTE_LEEWAY
+ext[1] holds user-supplied slop in deadline for timer coalescing.
 .El
 .Pp
 If fflags is not set, the default is milliseconds. The timer will be periodic unless EV_ONESHOT is specified.
 .El
 .Pp
 If fflags is not set, the default is milliseconds. The timer will be periodic unless EV_ONESHOT is specified.
@@ -507,42 +524,6 @@ contains the number of times the timeout has expired since the last call to
 or
 .Fn kevent64 .
 This filter automatically sets the EV_CLEAR flag internally.
 or
 .Fn kevent64 .
 This filter automatically sets the EV_CLEAR flag internally.
-.It EVFILT_SESSION
-Takes the audit session ID to monitor as the identifier and the events to watch for in 
-.Va fflags ,
-and returns when one or more of the requested session events occurs.  
-To monitor for events for any audit session the value AS_ANY_ASID 
-should be used as the identifier.  With AS_ANY_ASID, as new audit
-sessions are created they are included as if the were added
-individually.  The events to monitor are:
-.Bl -tag -width NOTE_AS_UPDATE
-.It NOTE_AS_START
-A new audit session has started. 
-.It NOTE_AS_END
-All the processes in the audit session have exited.  
-.It NOTE_AS_CLOSE
-This audit session is no longer valid in the kernel.  In other words, it
-is now safe to dispose of any cached information about this session or
-reuse its session ID for a new audit session.
-.It NOTE_AS_UPDATE
-The audit session information was updated.  The audit session information is 
-considered immutable once initially set.  If this becomes enforced in
-the kernel then this event may no longer be needed and may become
-obsolete.
-.It NOTE_AS_ERR
-This flag is returned if the system was unable to attach an event to a
-new session when the audit session ID of AS_ANY_ASID
-is used.  This is usually due to resource limitations.
-.El
-.Pp
-On return, 
-.Va fflags
-contains the events which triggered the filter,
-.Va ident
-contains the audit session ID, and
-.Va data
-contains the audit user ID.
-This filter automatically sets the EV_CLEAR flag internally.
 .El
 .Pp
 ----
 .El
 .Pp
 ----