diff --git a/src/lib-ssl-iostream/istream-openssl.c b/src/lib-ssl-iostream/istream-openssl.c index 3bdfdb17cc..d23efd0a99 100644 --- a/src/lib-ssl-iostream/istream-openssl.c +++ b/src/lib-ssl-iostream/istream-openssl.c @@ -23,6 +23,7 @@ static void i_stream_ssl_destroy(struct iostream_private *stream) { struct ssl_istream *sstream = (struct ssl_istream *)stream; + openssl_iostream_shutdown(sstream->ssl_io); i_stream_free_buffer(&sstream->istream); sstream->ssl_io->ssl_input = NULL; ssl_iostream_unref(&sstream->ssl_io); diff --git a/src/lib-ssl-iostream/ostream-openssl.c b/src/lib-ssl-iostream/ostream-openssl.c index e6e8aa5686..d1518bc5d7 100644 --- a/src/lib-ssl-iostream/ostream-openssl.c +++ b/src/lib-ssl-iostream/ostream-openssl.c @@ -26,6 +26,7 @@ static void o_stream_ssl_destroy(struct iostream_private *stream) struct ssl_ostream *sstream = (struct ssl_ostream *)stream; struct istream *ssl_input = sstream->ssl_io->ssl_input; + openssl_iostream_shutdown(sstream->ssl_io); sstream->ssl_io->ssl_output = NULL; i_stream_unref(&ssl_input); ssl_iostream_unref(&sstream->ssl_io);