diff --git a/src/imap/Makefile.am b/src/imap/Makefile.am index 2ffb6061a2..94294896e7 100644 --- a/src/imap/Makefile.am +++ b/src/imap/Makefile.am @@ -103,7 +103,8 @@ headers = \ imap-settings.h \ imap-status.h \ imap-state.h \ - imap-sync.h + imap-sync.h \ + imap-sync-private.h pkginc_libdir=$(pkgincludedir) pkginc_lib_HEADERS = $(headers) diff --git a/src/imap/imap-sync-private.h b/src/imap/imap-sync-private.h new file mode 100644 index 0000000000..ef5c39c86d --- /dev/null +++ b/src/imap/imap-sync-private.h @@ -0,0 +1,35 @@ +#ifndef IMAP_SYNC_PRIVATE_H +#define IMAP_SYNC_PRIVATE_H + +#include "imap-sync.h" + +struct imap_sync_context { + struct client *client; + struct mailbox *box; + enum imap_sync_flags imap_flags; + + struct mailbox_transaction_context *t; + struct mailbox_sync_context *sync_ctx; + struct mail *mail; + + struct mailbox_status status; + struct mailbox_sync_status sync_status; + + struct mailbox_sync_rec sync_rec; + ARRAY_TYPE(keywords) tmp_keywords; + ARRAY_TYPE(seq_range) expunges; + uint32_t seq; + + ARRAY_TYPE(seq_range) search_adds, search_removes; + unsigned int search_update_idx; + + unsigned int messages_count; + + unsigned int failed:1; + unsigned int finished:1; + unsigned int no_newmail:1; + unsigned int have_new_mails:1; + unsigned int search_update_notifying:1; +}; + +#endif diff --git a/src/imap/imap-sync.c b/src/imap/imap-sync.c index 5d4e506b55..51973ce585 100644 --- a/src/imap/imap-sync.c +++ b/src/imap/imap-sync.c @@ -11,7 +11,7 @@ #include "imap-fetch.h" #include "imap-notify.h" #include "imap-commands.h" -#include "imap-sync.h" +#include "imap-sync-private.h" struct client_sync_context { /* if multiple commands are in progress, we may need to wait for them @@ -22,35 +22,6 @@ struct client_sync_context { const char *tagline; }; -struct imap_sync_context { - struct client *client; - struct mailbox *box; - enum imap_sync_flags imap_flags; - - struct mailbox_transaction_context *t; - struct mailbox_sync_context *sync_ctx; - struct mail *mail; - - struct mailbox_status status; - struct mailbox_sync_status sync_status; - - struct mailbox_sync_rec sync_rec; - ARRAY_TYPE(keywords) tmp_keywords; - ARRAY_TYPE(seq_range) expunges; - uint32_t seq; - - ARRAY_TYPE(seq_range) search_adds, search_removes; - unsigned int search_update_idx; - - unsigned int messages_count; - - unsigned int failed:1; - unsigned int finished:1; - unsigned int no_newmail:1; - unsigned int have_new_mails:1; - unsigned int search_update_notifying:1; -}; - static void uids_to_seqs(struct mailbox *box, ARRAY_TYPE(seq_range) *uids) { T_BEGIN {