index-storage.h revision 8bd7404367404f38cc36c1edb0872915c4d06bf1
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbye /* expunge messages marked as deleted, requires index to be
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbye exclusively locked */
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbye int (*expunge_locked)(IndexMailbox *ibox, int notify);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbye unsigned int delay_save_unlocking:1; /* For COPYing inside mailbox */
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeextern ImapMessageCacheIface index_msgcache_iface;
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint mail_storage_set_index_error(IndexMailbox *ibox);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond NorbyeMailIndex *index_storage_lookup_ref(const char *path);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond NorbyeIndexMailbox *index_storage_init(MailStorage *storage, Mailbox *box,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_sync_and_lock(IndexMailbox *ibox, int sync_size,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_sync_modifylog(IndexMailbox *ibox, int hide_deleted);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_mailbox_fix_custom_flags(IndexMailbox *ibox, MailFlags *flags,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbye const char *custom_flags[]);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeunsigned int index_storage_get_recent_count(MailIndex *index);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_expunge_seek_first(IndexMailbox *ibox, unsigned int *seq,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_expunge_mail(IndexMailbox *ibox, MailIndexRecord *rec,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_save(MailStorage *storage, const char *path,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbye IBuffer *inbuf, OBuffer *outbuf, uoff_t data_size);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_msgcache_open(ImapMessageCache *cache, MailIndex *index,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyevoid index_mailbox_check_add(IndexMailbox *ibox, const char *path);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyevoid index_mailbox_check_remove(IndexMailbox *ibox);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbye/* Mailbox methods: */
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyevoid index_storage_set_sync_callbacks(Mailbox *box,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_copy(Mailbox *box, Mailbox *destbox,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_expunge(Mailbox *box, int notify);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_get_status(Mailbox *box, MailboxStatusItems items,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_sync(Mailbox *box, int sync_expunges);
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_update_flags(Mailbox *box, const char *messageset, int uidset,
099386ae66a95e7edfed3088abb82bc1e78b6e7cTrond Norbyeint index_storage_fetch(Mailbox *box, MailFetchData *fetch_data,