From 090abb1975e23dbaebf4b07ba6003a7e54097341 Mon Sep 17 00:00:00 2001 From: Stephan Bosch Date: Sun, 10 Dec 2017 11:32:28 +0100 Subject: [PATCH] lib-smtp: server: DATA command: Continue processing connection input once DATA reply is submitted. Fixes a potential connection hang. --- src/lib-smtp/smtp-server-cmd-data.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib-smtp/smtp-server-cmd-data.c b/src/lib-smtp/smtp-server-cmd-data.c index c5511228f7..6d18872ae2 100644 --- a/src/lib-smtp/smtp-server-cmd-data.c +++ b/src/lib-smtp/smtp-server-cmd-data.c @@ -297,7 +297,9 @@ static void cmd_data_next(struct smtp_server_cmd_ctx *cmd) return; } - if (!smtp_server_command_is_replied(command)) { + if (smtp_server_command_is_replied(command)) { + smtp_server_command_input_unlock(cmd); + } else { if (data_cmd->client_input) { /* using input from client connection; capture I/O event */ -- 2.47.3