From: Timo Sirainen Date: Tue, 31 Oct 2017 18:05:19 +0000 (+0200) Subject: doveadm-server: Deinitialize log proxying before closing SSL iostream X-Git-Tag: 2.3.0.rc1~664 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=103e63c7d2394f848f989b3d1d78572b0d8593dc;p=thirdparty%2Fdovecot%2Fcore.git doveadm-server: Deinitialize log proxying before closing SSL iostream Otherwise the SSL iostream destroying may trigger debug/error logging, which attempts to proxy logs when the stream is already closed. This caused a panic. --- diff --git a/src/doveadm/client-connection-tcp.c b/src/doveadm/client-connection-tcp.c index e96a23b2e4..65239322c3 100644 --- a/src/doveadm/client-connection-tcp.c +++ b/src/doveadm/client-connection-tcp.c @@ -597,13 +597,12 @@ client_connection_tcp_free(struct client_connection *_conn) doveadm_print_deinit(); doveadm_print_ostream = NULL; - if (conn->ssl_iostream != NULL) - ssl_iostream_destroy(&conn->ssl_iostream); - if (conn->log_out != NULL) { doveadm_server_restore_logs(); o_stream_unref(&conn->log_out); } + if (conn->ssl_iostream != NULL) + ssl_iostream_destroy(&conn->ssl_iostream); io_remove(&conn->io); o_stream_destroy(&conn->output);