]> git.ipfire.org Git - thirdparty/man-pages.git/commitdiff
poll.2: Set fd to its bitwise complement to ignore
authorDavid Ward <david.ward@gatech.edu>
Mon, 6 Jun 2022 03:31:39 +0000 (23:31 -0400)
committerAlejandro Colomar <alx.manpages@gmail.com>
Mon, 6 Jun 2022 14:12:51 +0000 (16:12 +0200)
A valid file descriptor will be non-negative, i.e., 0 <= fd <= INT_MAX.
When all of the bits of a valid file descriptor are flipped, the result
is a negative value: ~0 = -1, ~1 = -2, ..., ~INT_MAX = INT_MIN. If all
of these bits are flipped again, then the file descriptor is recovered.

Negating the file descriptor does not quite achieve this, because there
will be no change for fd 0. (Likewise, negating INT_MIN would not cause
any change in value, but it is never a valid file descriptor.)

Link: https://bugzilla.kernel.org/show_bug.cgi?id=79411
Signed-off-by: David Ward <david.ward@gatech.edu>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
man2/poll.2

index a9cfb8ff8530b859a81525dbd818664fb9c83002..06125649db78a1a8a5a8988bd97dee9795fbc432 100644 (file)
@@ -66,10 +66,9 @@ field returns zero.
 (This provides an easy way of ignoring a
 file descriptor for a single
 .BR poll ()
-call: simply negate the
+call: simply set the
 .I fd
-field.
-Note, however, that this technique can't be used to ignore file descriptor 0.)
+field to its bitwise complement.)
 .PP
 The field
 .I events