@@ -101,9 +101,6 @@ srv_recv(void *arg, unsigned short e)
101101 iov [0 ].iov_base = sctx -> srv_buf ;
102102 iov [0 ].iov_len = cmd .sc_datalen ;
103103
104- sr -> sr_result = cmd .sc_result ;
105- sr -> sr_errno = cmd .sc_errno ;
106-
107104 nread = recvmsg (sctx -> srv_fd , & msg , MSG_WAITALL );
108105 if (nread == -1 ) {
109106 logerr ("%s: recvmsg cmd" , __func__ );
@@ -116,8 +113,10 @@ srv_recv(void *arg, unsigned short e)
116113 }
117114 }
118115
119- sr -> sr_datalen = cmd .sc_datalen ;
116+ sr -> sr_result = cmd .sc_result ;
117+ sr -> sr_errno = cmd .sc_errno ;
120118 sr -> sr_data = sr -> sr_datalen != 0 ? sctx -> srv_buf : NULL ;
119+ sr -> sr_datalen = cmd .sc_datalen ;
121120
122121 /* We are either a dispatcher for the helper, or a blocking loop for a
123122 * response */
@@ -241,7 +240,7 @@ srv_init(struct ctx *ctx, const char *name,
241240 goto error ;
242241 }
243242
244- if (xsocketpair (PF_LOCAL , SOCK_STREAM | SOCK_CXNB , 0 , fdset ) == -1 ) {
243+ if (xsocketpair (PF_LOCAL , SOCK_STREAM | SOCK_CLOEXEC , 0 , fdset ) == -1 ) {
245244 logerr ("%s: socketpair" , __func__ );
246245 goto error ;
247246 }
0 commit comments