From: Timo Sirainen Date: Thu, 15 Dec 2016 17:02:56 +0000 (+0200) Subject: director: doveadm command handling was missing USER-KICK-ALT X-Git-Tag: 2.3.0.rc1~2420 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=365b5a495ae7f6fd20f6a0b0517f6aa3ad4fe1a7;p=thirdparty%2Fdovecot%2Fcore.git director: doveadm command handling was missing USER-KICK-ALT --- diff --git a/src/director/doveadm-connection.c b/src/director/doveadm-connection.c index cfcd0142fb..8546c8e0eb 100644 --- a/src/director/doveadm-connection.c +++ b/src/director/doveadm-connection.c @@ -692,6 +692,20 @@ doveadm_cmd_user_kick(struct doveadm_connection *conn, const char *const *args) return 1; } +static int +doveadm_cmd_user_kick_alt(struct doveadm_connection *conn, const char *const *args) +{ + if (str_array_length(args) < 2) { + i_error("doveadm sent invalid USER-KICK-ALT parameters"); + return -1; + } + + director_kick_user_alt(conn->dir, conn->dir->self_host, NULL, + args[0], args[1]); + o_stream_nsend(conn->output, "OK\n", 3); + return 1; +} + static int doveadm_connection_cmd(struct doveadm_connection *conn, const char *line) { @@ -738,6 +752,8 @@ doveadm_connection_cmd(struct doveadm_connection *conn, const char *line) ret = doveadm_cmd_user_move(conn, args); else if (strcmp(cmd, "USER-KICK") == 0) ret = doveadm_cmd_user_kick(conn, args); + else if (strcmp(cmd, "USER-KICK-ALT") == 0) + ret = doveadm_cmd_user_kick_alt(conn, args); else { i_error("doveadm sent unknown command: %s", line); ret = -1;