Mercurial > dovecot > core-2.2
diff src/doveadm/dsync/dsync-ibc-stream.c @ 18181:35e4a6ae8d85
dsync: Added -F parameter to sync only mails with[out] specific flag.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Tue, 20 Jan 2015 04:07:09 +0200 |
parents | 39d00448490f |
children | b4dbe64c0032 |
line wrap: on
line diff
--- a/src/doveadm/dsync/dsync-ibc-stream.c Tue Jan 20 03:23:29 2015 +0200 +++ b/src/doveadm/dsync/dsync-ibc-stream.c Tue Jan 20 04:07:09 2015 +0200 @@ -76,7 +76,7 @@ "debug sync_visible_namespaces exclude_mailboxes " "send_mail_requests backup_send backup_recv lock_timeout " "no_mail_sync no_backup_overwrite purge_remote " - "sync_since_timestamp virtual_all_box" + "sync_since_timestamp sync_flags virtual_all_box" }, { .name = "mailbox_state", .chr = 'S', @@ -658,6 +658,10 @@ dsync_serializer_encode_add(encoder, "sync_since_timestamp", t_strdup_printf("%ld", (long)set->sync_since_timestamp)); } + if (set->sync_flags != NULL) { + dsync_serializer_encode_add(encoder, "sync_flags", + set->sync_flags); + } if ((set->brain_flags & DSYNC_BRAIN_FLAG_SEND_MAIL_REQUESTS) != 0) dsync_serializer_encode_add(encoder, "send_mail_requests", ""); if ((set->brain_flags & DSYNC_BRAIN_FLAG_BACKUP_SEND) != 0) @@ -760,6 +764,8 @@ return DSYNC_IBC_RECV_RET_TRYAGAIN; } } + if (dsync_deserializer_decode_try(decoder, "sync_flags", &value)) + set->sync_flags = p_strdup(pool, value); if (dsync_deserializer_decode_try(decoder, "send_mail_requests", &value)) set->brain_flags |= DSYNC_BRAIN_FLAG_SEND_MAIL_REQUESTS; if (dsync_deserializer_decode_try(decoder, "backup_send", &value))