imap-sync-private.h revision d64280bc41338078701e79aefaab3169686b683d
c25356d5978632df6203437e1953bcb29e0c736fTimo Sirainen#ifndef IMAP_SYNC_PRIVATE_H
c25356d5978632df6203437e1953bcb29e0c736fTimo Sirainen#define IMAP_SYNC_PRIVATE_H
ecc81625167ed96c04c02aa190a1ea5baa65b474Timo Sirainen
49e358eebea107aad9919dcc4bd88cee8519ba2eTimo Sirainen#include "imap-sync.h"
49e358eebea107aad9919dcc4bd88cee8519ba2eTimo Sirainen
49e358eebea107aad9919dcc4bd88cee8519ba2eTimo Sirainenstruct imap_sync_context {
c0435c854a0e7246373b9752d163095cc4fbe985Timo Sirainen struct client *client;
dd62b77c932d1b518f2a3e4bf80e36542becc256Timo Sirainen struct mailbox *box;
ecc81625167ed96c04c02aa190a1ea5baa65b474Timo Sirainen enum imap_sync_flags imap_flags;
ecc81625167ed96c04c02aa190a1ea5baa65b474Timo Sirainen
03f5c621d06d6b6d77a145196c9633a7aa64dc78Timo Sirainen struct mailbox_transaction_context *t;
c06f4017027263cf3a08becc551f5126409e2a83Timo Sirainen struct mailbox_sync_context *sync_ctx;
ecc81625167ed96c04c02aa190a1ea5baa65b474Timo Sirainen struct mail *mail;
da2aa032ccfa8e7e4a4380ef738014549f4d2c2dTimo Sirainen
da2aa032ccfa8e7e4a4380ef738014549f4d2c2dTimo Sirainen struct mailbox_status status;
411d6baa37f31d90730e90c4a28c43e1974bbe58Timo Sirainen struct mailbox_sync_status sync_status;
7e1f68ad71d3485f1882142837b01f7a98ca8467Timo Sirainen
7e1f68ad71d3485f1882142837b01f7a98ca8467Timo Sirainen struct mailbox_sync_rec sync_rec;
ecc81625167ed96c04c02aa190a1ea5baa65b474Timo Sirainen ARRAY_TYPE(keywords) tmp_keywords;
252db51b6c0a605163326b3ea5d09e9936ca3b29Timo Sirainen ARRAY_TYPE(seq_range) expunges;
ecc81625167ed96c04c02aa190a1ea5baa65b474Timo Sirainen uint32_t seq;
ecc81625167ed96c04c02aa190a1ea5baa65b474Timo Sirainen
5ac0b0bf32898c63da086ae169674ecac151a31eTimo Sirainen ARRAY_TYPE(seq_range) search_adds, search_removes;
5ac0b0bf32898c63da086ae169674ecac151a31eTimo Sirainen unsigned int search_update_idx;
2526d52441ef368215ab6bf04fd0356d3b09d235Timo Sirainen
2526d52441ef368215ab6bf04fd0356d3b09d235Timo Sirainen unsigned int messages_count;
09801f106cd531a28b4e03ec665e44c421264560Timo Sirainen
09801f106cd531a28b4e03ec665e44c421264560Timo Sirainen /* Module-specific contexts. */
09801f106cd531a28b4e03ec665e44c421264560Timo Sirainen ARRAY(union imap_module_context *) module_contexts;
fe363b433b8038a69b55169da9dca27892ad7d18Timo Sirainen
c0435c854a0e7246373b9752d163095cc4fbe985Timo Sirainen bool failed:1;
6ef7e31619edfaa17ed044b45861d106a86191efTimo Sirainen bool finished:1;
fe363b433b8038a69b55169da9dca27892ad7d18Timo Sirainen bool no_newmail:1;
10c96a244935de4add8213ba0b894178dfb889a5Timo Sirainen bool have_new_mails:1;
bdcb00145ad87765e3fd22d4ebc4d2c029a326b9Timo Sirainen bool search_update_notifying:1;
bdcb00145ad87765e3fd22d4ebc4d2c029a326b9Timo Sirainen};
0c1835a90dd1dcedaeaedd1cd91672299cbeb5beTimo Sirainen
ecc81625167ed96c04c02aa190a1ea5baa65b474Timo Sirainen#endif
8cb72c59d5ea4e9e5f638d7ec840bb853f5a188eTimo Sirainen