diff --git a/src/lib-smtp/smtp-server-connection.c b/src/lib-smtp/smtp-server-connection.c index 56b7c2b10e..eeeecddb1e 100644 --- a/src/lib-smtp/smtp-server-connection.c +++ b/src/lib-smtp/smtp-server-connection.c @@ -689,7 +689,8 @@ int smtp_server_connection_flush(struct smtp_server_connection *conn) if ((ret = o_stream_flush(output)) <= 0) { if (ret < 0) { - if (errno != EPIPE && errno != ECONNRESET) { + if (output->stream_errno != EPIPE && + output->stream_errno != ECONNRESET) { smtp_server_connection_error(conn, "Connection lost: write(%s) failed: %s", o_stream_get_name(output), diff --git a/src/lib-smtp/smtp-server-reply.c b/src/lib-smtp/smtp-server-reply.c index 6c034f3207..0663ecdf9f 100644 --- a/src/lib-smtp/smtp-server-reply.c +++ b/src/lib-smtp/smtp-server-reply.c @@ -425,7 +425,8 @@ static int smtp_server_reply_send_real(struct smtp_server_reply *reply, } if (o_stream_send(output, str_data(textbuf), str_len(textbuf)) < 0) { - if (errno != EPIPE && errno != ECONNRESET) { + if (output->stream_errno != EPIPE && + output->stream_errno != ECONNRESET) { *error_r = t_strdup_printf("write(%s) failed: %s", o_stream_get_name(output), o_stream_get_error(output));