changeset 4943:0caa14813235 HEAD

Forgot to add
author Timo Sirainen <tss@iki.fi>
date Thu, 21 Dec 2006 12:20:42 +0200
parents b382b21409b5
children 51e2a2adc141
files src/imap/cmd-x-cancel.c
diffstat 1 files changed, 28 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/imap/cmd-x-cancel.c	Thu Dec 21 12:20:42 2006 +0200
@@ -0,0 +1,28 @@
+/* Copyright (C) 2006 Timo Sirainen */
+
+#include "common.h"
+#include "commands.h"
+
+bool cmd_x_cancel(struct client_command_context *cmd)
+{
+	struct client_command_context *cancel_cmd;
+	const char *tag;
+
+	/* <tag> */
+	if (!client_read_string_args(cmd, 1, &tag))
+		return FALSE;
+
+	cancel_cmd = cmd->client->command_queue;
+	for (; cancel_cmd != NULL; cancel_cmd = cancel_cmd->next) {
+		if (cancel_cmd->tag != NULL && cancel_cmd != cmd &&
+		    strcmp(cancel_cmd->tag, tag) == 0) {
+			client_command_cancel(cancel_cmd);
+			client_send_tagline(cmd, "OK Command cancelled.");
+			return TRUE;
+		}
+	}
+
+	client_send_tagline(cmd, "NO Command tag not found.");
+	return TRUE;
+}
+