From: Timo Sirainen Date: Thu, 24 Apr 2008 13:08:25 +0000 (+0300) Subject: Send the success reply in one write. Based on patch by Onno Molenkamp. X-Git-Tag: 1.1.rc5~48 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8e50329e2c5e3a199674ae9f6d3dfcddab02487b;p=thirdparty%2Fdovecot%2Fcore.git Send the success reply in one write. Based on patch by Onno Molenkamp. --HG-- branch : HEAD --- diff --git a/src/imap-login/imap-proxy.c b/src/imap-login/imap-proxy.c index e6b0b63fa7..9d212eb906 100644 --- a/src/imap-login/imap-proxy.c +++ b/src/imap-login/imap-proxy.c @@ -46,9 +46,12 @@ static int proxy_input_line(struct imap_client *client, return 0; } else if (strncmp(line, "P OK ", 5) == 0) { /* Login successful. Send this line to client. */ - (void)o_stream_send_str(client->output, client->cmd_tag); - (void)o_stream_send_str(client->output, line + 1); - (void)o_stream_send(client->output, "\r\n", 2); + str = t_str_new(128); + str_append(str, client->cmd_tag); + str_append(str, line + 1); + str_append(str, "\r\n"); + (void)o_stream_send(client->output, + str_data(str), str_len(str)); msg = t_strdup_printf("proxy(%s): started proxying to %s:%u", client->common.virtual_user, diff --git a/src/pop3-login/pop3-proxy.c b/src/pop3-login/pop3-proxy.c index 8ca9dcba06..7a7a25e1fe 100644 --- a/src/pop3-login/pop3-proxy.c +++ b/src/pop3-login/pop3-proxy.c @@ -99,8 +99,8 @@ static void proxy_input(struct istream *input, struct ostream *output, break; /* Login successful. Send this line to client. */ + line = t_strconcat(line, "\r\n", NULL); (void)o_stream_send_str(client->output, line); - (void)o_stream_send(client->output, "\r\n", 2); msg = t_strdup_printf("proxy(%s): started proxying to %s:%u", client->common.virtual_user,