annotate src/imap/cmd-id.c @ 9658:8ba4253adc9b HEAD tip

*-login: SSL connections didn't get closed when the client got destroyed.
author Timo Sirainen <tss@iki.fi>
date Thu, 08 May 2014 16:41:29 +0300
parents 00cd9aacd03c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9532
00cd9aacd03c Updated copyright notices to include year 2010.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
1 /* Copyright (c) 2008-2010 Dovecot authors, see the included COPYING file */
7917
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
3 #include "common.h"
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
4 #include "imap-id.h"
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
5
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
6 bool cmd_id(struct client_command_context *cmd)
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
7 {
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
8 const struct imap_arg *args;
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
9 const char *value;
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
10
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
11 if (!client_read_args(cmd, 0, 0, &args))
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
12 return FALSE;
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
13
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
14 if (!cmd->client->id_logged) {
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
15 cmd->client->id_logged = TRUE;
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
16 value = imap_id_args_get_log_reply(args, imap_id_log);
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
17 if (value != NULL)
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
18 i_info("ID sent: %s", value);
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
19 }
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
20
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
21 client_send_line(cmd->client, t_strdup_printf(
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
22 "* ID %s", imap_id_reply_generate(imap_id_send)));
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
23 client_send_tagline(cmd, "OK ID completed.");
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
24 return TRUE;
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
25 }
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
26