993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen#ifndef MAIL_TRANSACTION_LOG_VIEW_PRIVATE_H
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen#define MAIL_TRANSACTION_LOG_VIEW_PRIVATE_H
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen#include "mail-transaction-log-private.h"
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainenstruct mail_transaction_log_view {
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen struct mail_transaction_log *log;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen struct mail_transaction_log_view *next;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen uint32_t min_file_seq, max_file_seq;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen uoff_t min_file_offset, max_file_offset;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen struct mail_transaction_header tmp_hdr;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen /* a list of log files we've referenced. we have to keep this list
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen explicitly because more files may be added into the linked list
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen at any time. */
4ee00532a265bdfb38539d811fcd12d51210ac35Timo Sirainen ARRAY(struct mail_transaction_log_file *) file_refs;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen struct mail_transaction_log_file *cur, *head, *tail;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen uoff_t cur_offset;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen uint64_t prev_modseq;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen uint32_t prev_file_seq;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen uoff_t prev_file_offset;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen struct mail_transaction_log_file *mark_file;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen uoff_t mark_offset, mark_next_offset;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen uint64_t mark_modseq;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
0dffa25d211be541ee3c953b23566a1a990789dfTimo Sirainen bool broken:1;
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen};
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen
993e6c2caaae971dd3c34913a42d854e3b623261Timo Sirainen#endif