From: Timo Sirainen Date: Wed, 16 Jun 2010 16:02:09 +0000 (+0100) Subject: doveadm mailbox status: Added "all" field as an alias for showing everything. X-Git-Tag: 2.0.rc1~163 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=14e0f6334476ed4616e4737a277fc7d9b2aa1151;p=thirdparty%2Fdovecot%2Fcore.git doveadm mailbox status: Added "all" field as an alias for showing everything. --HG-- branch : HEAD --- diff --git a/src/doveadm/doveadm-mail-mailbox-status.c b/src/doveadm/doveadm-mail-mailbox-status.c index d1039a7199..cbdd022c93 100644 --- a/src/doveadm/doveadm-mail-mailbox-status.c +++ b/src/doveadm/doveadm-mail-mailbox-status.c @@ -8,6 +8,11 @@ #include "doveadm-mail.h" #include "doveadm-mail-list-iter.h" +#define ALL_STATUS_ITEMS \ + (STATUS_MESSAGES | STATUS_RECENT | \ + STATUS_UIDNEXT | STATUS_UIDVALIDITY | \ + STATUS_UNSEEN | STATUS_HIGHESTMODSEQ | STATUS_VIRTUAL_SIZE) + #define TOTAL_STATUS_ITEMS \ (STATUS_MESSAGES | STATUS_RECENT | STATUS_UNSEEN | STATUS_VIRTUAL_SIZE) @@ -30,7 +35,14 @@ static void status_parse_fields(struct status_cmd_context *ctx, for (; *fields != NULL; fields++) { const char *field = *fields; - if (strcmp(field, "messages") == 0) + if (strcmp(field, "all") == 0) { + if (ctx->total_sum) + ctx->items |= TOTAL_STATUS_ITEMS; + else { + ctx->items |= ALL_STATUS_ITEMS; + ctx->guid = TRUE; + } + } else if (strcmp(field, "messages") == 0) ctx->items |= STATUS_MESSAGES; else if (strcmp(field, "recent") == 0) ctx->items |= STATUS_RECENT;