The tlsdns_cycle() might call uv_write() to write data to the socket,
when this happens and the socket is shutdown before the callback
completes, the uvreq structure was not freed because the callback would
be called with non-zero status code.
free_senddata(sock);
+ isc__nm_uvreq_put(&uvreq, sock);
+
if (status != 0) {
tls_error(sock, isc__nm_uverr2result(status));
return;
}
- isc__nm_uvreq_put(&uvreq, sock);
-
result = tls_cycle(sock);
if (result != ISC_R_SUCCESS) {
tls_error(sock, result);