dovecot-2.0: doveadm fetch: Added support for mailbox-guid searc...
dovecot at dovecot.org
dovecot at dovecot.org
Fri Apr 30 15:36:02 EEST 2010
details: http://hg.dovecot.org/dovecot-2.0/rev/5d0027f17bd8
changeset: 11233:5d0027f17bd8
user: Timo Sirainen <tss at iki.fi>
date: Fri Apr 30 15:33:15 2010 +0300
description:
doveadm fetch: Added support for mailbox-guid search key/fetch field.
diffstat:
src/doveadm/doveadm-mail-expunge.c | 4 ++++
src/doveadm/doveadm-mail-fetch.c | 11 +++++++++++
2 files changed, 15 insertions(+), 0 deletions(-)
diffs (63 lines):
diff -r 389a251c9cfe -r 5d0027f17bd8 src/doveadm/doveadm-mail-expunge.c
--- a/src/doveadm/doveadm-mail-expunge.c Fri Apr 30 15:32:50 2010 +0300
+++ b/src/doveadm/doveadm-mail-expunge.c Fri Apr 30 15:33:15 2010 +0300
@@ -52,6 +52,7 @@
return FALSE;
break;
case SEARCH_MAILBOX:
+ case SEARCH_MAILBOX_GUID:
case SEARCH_MAILBOX_GLOB:
break;
default:
@@ -71,6 +72,7 @@
for (arg = args; arg != NULL; arg = arg->next) {
switch (arg->type) {
case SEARCH_MAILBOX:
+ case SEARCH_MAILBOX_GUID:
case SEARCH_MAILBOX_GLOB:
return TRUE;
case SEARCH_OR:
@@ -112,6 +114,7 @@
for (arg = args; arg != NULL; arg = arg->next) {
switch (arg->type) {
case SEARCH_MAILBOX:
+ case SEARCH_MAILBOX_GUID:
case SEARCH_MAILBOX_GLOB:
return FALSE;
case SEARCH_OR:
@@ -138,6 +141,7 @@
for (arg = args; arg != NULL; arg = arg->next) {
switch (arg->type) {
case SEARCH_MAILBOX:
+ case SEARCH_MAILBOX_GUID:
case SEARCH_MAILBOX_GLOB:
break;
case SEARCH_OR:
diff -r 389a251c9cfe -r 5d0027f17bd8 src/doveadm/doveadm-mail-fetch.c
--- a/src/doveadm/doveadm-mail-fetch.c Fri Apr 30 15:32:50 2010 +0300
+++ b/src/doveadm/doveadm-mail-fetch.c Fri Apr 30 15:33:15 2010 +0300
@@ -38,6 +38,16 @@
return 0;
}
+static int fetch_mailbox_guid(struct fetch_context *ctx)
+{
+ uint8_t guid[MAIL_GUID_128_SIZE];
+
+ if (mailbox_get_guid(ctx->mail->box, guid) < 0)
+ return -1;
+ str_append(ctx->hdr, mail_guid_128_to_string(guid));
+ return 0;
+}
+
static int fetch_seq(struct fetch_context *ctx)
{
str_printfa(ctx->hdr, "%u", ctx->mail->seq);
@@ -208,6 +218,7 @@
static const struct fetch_field fetch_fields[] = {
{ "mailbox", 0, fetch_mailbox },
+ { "mailbox-guid", 0, fetch_mailbox_guid },
{ "seq", 0, fetch_seq },
{ "uid", 0, fetch_uid },
{ "guid", 0, fetch_guid },
More information about the dovecot-cvs
mailing list