BUG/MINOR: listener: always fill the source address for accepted socketpairs
The source address was not set but passed down the chain to the upper
layer's accept() calls. Let's initialize it like other UNIX sockets in
this case. At the moment it should not have any impact since socketpairs
are only usable for the master CLI.
This should be backported to 1.9.
diff --git a/src/listener.c b/src/listener.c
index 9a79e6a..553607a 100644
--- a/src/listener.c
+++ b/src/listener.c
@@ -545,6 +545,9 @@
if (unlikely(l->addr.ss_family == AF_CUST_SOCKPAIR)) {
if ((cfd = recv_fd_uxst(fd)) != -1)
fcntl(cfd, F_SETFL, O_NONBLOCK);
+ /* just like with UNIX sockets, only the family is filled */
+ addr.ss_family = AF_UNIX;
+ laddr = sizeof(addr.ss_family);
} else
#ifdef USE_ACCEPT4