diff options
Diffstat (limited to 'src/imap/imap-sync.h')
-rw-r--r-- | src/imap/imap-sync.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/imap/imap-sync.h b/src/imap/imap-sync.h new file mode 100644 index 0000000..a1c5198 --- /dev/null +++ b/src/imap/imap-sync.h @@ -0,0 +1,25 @@ +#ifndef IMAP_SYNC_H +#define IMAP_SYNC_H + +enum imap_sync_flags { + IMAP_SYNC_FLAG_SEND_UID = 0x01, + IMAP_SYNC_FLAG_SAFE = 0x02 +}; + +struct client; + +struct imap_sync_context * +imap_sync_init(struct client *client, struct mailbox *box, + enum imap_sync_flags imap_flags, enum mailbox_sync_flags flags); +int imap_sync_deinit(struct imap_sync_context *ctx, + struct client_command_context *sync_cmd); +int imap_sync_more(struct imap_sync_context *ctx); + +/* Returns TRUE if syncing would be allowed currently. */ +bool imap_sync_is_allowed(struct client *client); + +bool cmd_sync(struct client_command_context *cmd, enum mailbox_sync_flags flags, + enum imap_sync_flags imap_flags, const char *tagline); +bool cmd_sync_delayed(struct client *client) ATTR_NOWARN_UNUSED_RESULT; + +#endif |