&doveadm_cmd_stats_dump_ver2,
&doveadm_cmd_stats_add_ver2,
&doveadm_cmd_stats_remove_ver2,
+ &doveadm_cmd_stats_reopen_ver2,
&doveadm_cmd_penalty_ver2,
&doveadm_cmd_kick_ver2,
&doveadm_cmd_proxy_kick_ver2,
extern struct doveadm_cmd_ver2 doveadm_cmd_stats_dump_ver2;
extern struct doveadm_cmd_ver2 doveadm_cmd_stats_add_ver2;
extern struct doveadm_cmd_ver2 doveadm_cmd_stats_remove_ver2;
+extern struct doveadm_cmd_ver2 doveadm_cmd_stats_reopen_ver2;
extern struct doveadm_cmd_ver2 doveadm_cmd_mailbox_mutf7;
extern struct doveadm_cmd_ver2 doveadm_cmd_penalty_ver2;
extern struct doveadm_cmd_ver2 doveadm_cmd_pw;
static int build_stats_dump_cmd(struct stats_cmd_context *ctx, const char **error_r);
static int build_stats_add_cmd(struct stats_cmd_context *ctx, const char **error_r);
static int build_stats_remove_cmd(struct stats_cmd_context *ctx, const char **error_r);
+static int build_stats_reopen_cmd(struct stats_cmd_context *ctx, const char **error_r);
static void stats_dump_process_response(struct stats_cmd_context *ctx);
static void stats_modify_process_response(struct stats_cmd_context *ctx);
.process_response = stats_modify_process_response
};
+static struct stats_cmd_vfuncs reopen_vfuncs = {
+ .build_cmd = build_stats_reopen_cmd,
+ .process_response = stats_modify_process_response
+};
+
static string_t *init_stats_cmd(void)
{
string_t *cmd = t_str_new(128);
return 0;
}
+static int build_stats_reopen_cmd(struct stats_cmd_context *ctx,
+ const char **error_r ATTR_UNUSED)
+{
+ ctx->cmd = init_stats_cmd();
+ str_append(ctx->cmd, "REOPEN\n");
+
+ return 0;
+}
+
static void doveadm_cmd_stats_dump(struct doveadm_cmd_context *cctx)
{
stats_exec_cmd(cctx, &dump_vfuncs);
stats_exec_cmd(cctx, &remove_vfuncs);
}
+static void doveadm_cmd_stats_reopen(struct doveadm_cmd_context *cctx)
+{
+ stats_exec_cmd(cctx, &reopen_vfuncs);
+}
+
struct doveadm_cmd_ver2 doveadm_cmd_stats_dump_ver2 = {
.cmd = doveadm_cmd_stats_dump,
.name = "stats dump",
DOVEADM_CMD_PARAM('\0', "name", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
DOVEADM_CMD_PARAMS_END
};
+
+struct doveadm_cmd_ver2 doveadm_cmd_stats_reopen_ver2 = {
+ .cmd = doveadm_cmd_stats_reopen,
+ .name = "stats reopen",
+ .usage = "",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAMS_END
+};