.hdr_hash_version = brain->hdr_hash_version,
.sync_since_timestamp = brain->sync_since_timestamp,
.sync_until_timestamp = brain->sync_until_timestamp,
+ .sync_max_size = brain->sync_max_size,
.hashed_headers = brain->hashed_headers,
.parent_event = brain->event,
};
time_t sync_since_timestamp;
time_t sync_until_timestamp;
+ uoff_t sync_max_size;
const char *error;
enum mail_error mail_error;
sarg->value.time = exporter->sync_until_timestamp;
}
+ if (exporter->sync_max_size != 0) {
+ sarg = mail_search_build_add(search_args, SEARCH_SMALLER);
+ /* the limit is <= but search criteria is < */
+ sarg->value.size = exporter->sync_max_size + 1;
+ }
+
exporter->trans = mailbox_transaction_begin(exporter->box,
MAILBOX_TRANSACTION_FLAG_SYNC,
__func__);
exporter->hashed_headers = set->hashed_headers;
exporter->sync_since_timestamp = set->sync_since_timestamp;
exporter->sync_until_timestamp = set->sync_until_timestamp;
+ exporter->sync_max_size = set->sync_max_size;
exporter->event = event_create(set->parent_event);
p_array_init(&exporter->requested_uids, pool, 16);