From 1e0ea8d2e2e1c5035dcb6c57c0e03884ce44e457 Mon Sep 17 00:00:00 2001
From: Aki Tuomi <aki.tuomi@open-xchange.com>
Date: Mon, 25 Nov 2024 14:49:32 +0200
Subject: [PATCH] managesieve-login: Create client io when auth is ready

---
 src/managesieve-login/client.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/managesieve-login/client.c b/src/managesieve-login/client.c
index c79b6a10f..cc0aa46b3 100644
--- a/src/managesieve-login/client.c
+++ b/src/managesieve-login/client.c
@@ -410,7 +410,6 @@ static int managesieve_client_create(struct client *client)
 	}
 	msieve_client->parser = managesieve_parser_create(client->input,
 							  MAX_MANAGESIEVE_LINE);
-	client->io = io_add_istream(client->input, client_input, client);
 	return 0;
 }
 
@@ -449,6 +448,8 @@ static void managesieve_client_notify_auth_ready(struct client *client)
 	o_stream_uncork(client->output);
 
 	client->banner_sent = TRUE;
+	i_assert(client->io == NULL);
+	client->io = io_add_istream(client->input, client_input, client);
 }
 
 static void managesieve_client_starttls(struct client *client)
-- 
GitLab