doveadm-mail-mailbox-status.c revision 14e0f6334476ed4616e4737a277fc7d9b2aa1151
/* Copyright (c) 2010 Dovecot authors, see the included COPYING file */
#include "lib.h"
#include "str.h"
#include "mail-namespace.h"
#include "mail-storage.h"
#include "doveadm-print.h"
#include "doveadm-mail.h"
#include "doveadm-mail-list-iter.h"
#define ALL_STATUS_ITEMS \
(STATUS_MESSAGES | STATUS_RECENT | \
#define TOTAL_STATUS_ITEMS \
struct status_cmd_context {
struct doveadm_mail_cmd_context ctx;
struct mail_search_args *search_args;
enum mailbox_status_items items;
struct mailbox_status total_status;
unsigned int guid:1;
unsigned int total_sum:1;
};
const char *const *fields)
{
i_fatal("No status fields");
else {
}
else
}
}
const struct mailbox_status *status,
{
}
static void
const struct mailbox_status *status)
{
}
static void
{
struct mailbox_status status;
return;
}
}
else
mailbox_free(&box);
}
static void
{
struct doveadm_mail_list_iter *iter;
const struct mailbox_info *info;
T_BEGIN {
} T_END;
}
}
const char *const args[])
{
doveadm_mail_help_name("mailbox status");
}
doveadm_print_header_simple("messages");
doveadm_print_header_simple("recent");
doveadm_print_header_simple("uidnext");
doveadm_print_header_simple("uidvalidity");
doveadm_print_header_simple("unseen");
doveadm_print_header_simple("highestmodseq");
doveadm_print_header_simple("vsize");
doveadm_print_header_simple("guid");
}
static bool
{
switch (c) {
case 't':
break;
default:
return FALSE;
}
return TRUE;
}
static struct doveadm_mail_cmd_context *cmd_mailbox_status_alloc(void)
{
struct status_cmd_context *ctx;
}
struct doveadm_mail_cmd cmd_mailbox_status = {
cmd_mailbox_status_alloc, "mailbox status",
"[-t] <fields> <mailbox mask> [...]"
};