BUG/MINOR: sockpair: wrong return value for fd_send_uxst()
The fd_send_uxst() function which is used to send a socket over the
socketpair returns 1 upon error instead of -1, which means the error
case of the sendmsg() is never catched correctly.
Must be backported as far as 1.9.
(cherry picked from commit f67e8fb92c795808f60b2406ae395ebc0ca180c5)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit ae1e5a8c72ced4c9527f05bd5b14916d1b9d92c8)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 479a22c22f13e7abc7a3f32e33671ea8eadbe558)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/proto_sockpair.c b/src/proto_sockpair.c
index 0357552..21728eb 100644
--- a/src/proto_sockpair.c
+++ b/src/proto_sockpair.c
@@ -247,7 +247,7 @@
if (sendmsg(fd, &msghdr, 0) != sizeof(iobuf)) {
ha_warning("Failed to transfer socket\n");
- return 1;
+ return -1;
}
return 0;