~ubuntu-branches/ubuntu/wily/dovecot/wily

« back to all changes in this revision

Viewing changes to src/doveadm/dsync/dsync-mailbox-import.h

  • Committer: Package Import Robot
  • Author(s): Jaldhar H. Vyas
  • Date: 2013-09-09 00:57:32 UTC
  • mfrom: (1.13.11)
  • mto: (4.8.5 experimental) (1.16.1)
  • mto: This revision was merged to the branch mainline in revision 97.
  • Revision ID: package-import@ubuntu.com-20130909005732-dn1eell8srqbhh0e
Tags: upstream-2.2.5
ImportĀ upstreamĀ versionĀ 2.2.5

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef DSYNC_MAILBOX_IMPORT_H
 
2
#define DSYNC_MAILBOX_IMPORT_H
 
3
 
 
4
enum dsync_mailbox_import_flags {
 
5
        DSYNC_MAILBOX_IMPORT_FLAG_MASTER_BRAIN          = 0x01,
 
6
        DSYNC_MAILBOX_IMPORT_FLAG_WANT_MAIL_REQUESTS    = 0x02,
 
7
        DSYNC_MAILBOX_IMPORT_FLAG_REVERT_LOCAL_CHANGES  = 0x04,
 
8
        DSYNC_MAILBOX_IMPORT_FLAG_DEBUG                 = 0x08,
 
9
        DSYNC_MAILBOX_IMPORT_FLAG_MAILS_HAVE_GUIDS      = 0x10
 
10
};
 
11
 
 
12
struct mailbox;
 
13
struct dsync_mailbox_attribute;
 
14
struct dsync_mail;
 
15
struct dsync_mail_change;
 
16
struct dsync_transaction_log_scan;
 
17
 
 
18
struct dsync_mailbox_importer *
 
19
dsync_mailbox_import_init(struct mailbox *box,
 
20
                          struct dsync_transaction_log_scan *log_scan,
 
21
                          uint32_t last_common_uid,
 
22
                          uint64_t last_common_modseq,
 
23
                          uint64_t last_common_pvt_modseq,
 
24
                          uint32_t remote_uid_next,
 
25
                          uint32_t remote_first_recent_uid,
 
26
                          uint64_t remote_highest_modseq,
 
27
                          uint64_t remote_highest_pvt_modseq,
 
28
                          enum dsync_mailbox_import_flags flags);
 
29
int dsync_mailbox_import_attribute(struct dsync_mailbox_importer *importer,
 
30
                                   const struct dsync_mailbox_attribute *attr);
 
31
int dsync_mailbox_import_change(struct dsync_mailbox_importer *importer,
 
32
                                const struct dsync_mail_change *change);
 
33
void dsync_mailbox_import_changes_finish(struct dsync_mailbox_importer *importer);
 
34
const struct dsync_mail_request *
 
35
dsync_mailbox_import_next_request(struct dsync_mailbox_importer *importer);
 
36
void dsync_mailbox_import_mail(struct dsync_mailbox_importer *importer,
 
37
                               const struct dsync_mail *mail);
 
38
int dsync_mailbox_import_deinit(struct dsync_mailbox_importer **importer,
 
39
                                bool success,
 
40
                                uint32_t *last_common_uid_r,
 
41
                                uint64_t *last_common_modseq_r,
 
42
                                uint64_t *last_common_pvt_modseq_r,
 
43
                                bool *changes_during_sync_r);
 
44
 
 
45
const char *dsync_mailbox_import_get_proctitle(struct dsync_mailbox_importer *importer);
 
46
 
 
47
#endif