[PATCH] connect.2: Document error semantics of nonblocking UNIX domain sockets.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



connect(2) on a nonblocking UNIX domain socket when the receive queue is full
results in EAGAIN [1]. This is unlike other connection-based socket families
that return EINPROGRESS as already documented.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/net/unix/af_unix.c?id=815f0ddb346c196018d4d8f8f55c12b83da1de3f#n1267

Signed-off-by: Benjamin Peterson <benjamin@xxxxxxxxxx>
---
 man2/connect.2 | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/man2/connect.2 b/man2/connect.2
index 5941cf2d3..313f73add 100644
--- a/man2/connect.2
+++ b/man2/connect.2
@@ -168,7 +168,9 @@ The passed address didn't have the correct address family in its
 field.
 .TP
 .B EAGAIN
-Insufficient entries in the routing cache.
+For nonblocking UNIX domain sockets, the socket is nonblocking, and the
+connection cannot be completed immediately. For other socket families, there are
+insufficient entries in the routing cache.
 .TP
 .B EALREADY
 The socket is nonblocking and a previous connection attempt has not yet
@@ -188,7 +190,9 @@ The socket structure address is outside the user's address space.
 .TP
 .B EINPROGRESS
 The socket is nonblocking and the connection cannot be completed
-immediately.
+immediately. (UNIX domain sockets return
+.BR EAGAIN
+instead.)
 It is possible to
 .BR select (2)
 or
-- 
2.17.1




[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux