Lines Matching refs:mail
5 #include "mail-cache.h"
6 #include "mail-storage-private.h"
37 /* If binary flags are set, it's not checked whether mail is
135 struct mail_private mail;
141 /* per-mail variables, here for performance reasons: */
147 #define HEADER_MATCH_USABLE(mail, num) \
148 ((num & ~1) == (mail)->header_match_value)
154 /* mail created by mailbox_search_*() */
160 #define INDEX_MAIL(s) container_of(s, struct index_mail, mail.mail)
162 struct mail *
166 void index_mail_init(struct index_mail *mail,
171 void index_mail_set_seq(struct mail *mail, uint32_t seq, bool saving);
172 bool index_mail_set_uid(struct mail *mail, uint32_t uid);
173 void index_mail_set_uid_cache_updates(struct mail *mail, bool set);
174 bool index_mail_prefetch(struct mail *mail);
175 void index_mail_add_temp_wanted_fields(struct mail *mail,
178 void index_mail_update_access_parts_pre(struct mail *mail);
179 void index_mail_update_access_parts_post(struct mail *_mail);
180 void index_mail_close(struct mail *mail);
181 void index_mail_close_streams(struct index_mail *mail);
182 void index_mail_free(struct mail *mail);
183 void index_mail_set_message_parts_corrupted(struct mail *mail, const char *error);
185 bool index_mail_want_parse_headers(struct index_mail *mail);
186 void index_mail_parse_header_init(struct index_mail *mail,
191 struct index_mail *mail) ATTR_NULL(1);
192 int index_mail_parse_headers(struct index_mail *mail,
196 int index_mail_headers_get_envelope(struct index_mail *mail);
198 int index_mail_get_first_header(struct mail *_mail, const char *field,
200 int index_mail_get_headers(struct mail *_mail, const char *field,
202 int index_mail_get_header_stream(struct mail *_mail,
205 void index_mail_set_read_buffer_size(struct mail *mail, struct istream *input);
207 enum mail_flags index_mail_get_flags(struct mail *_mail);
208 uint64_t index_mail_get_modseq(struct mail *_mail);
209 uint64_t index_mail_get_pvt_modseq(struct mail *_mail);
210 const char *const *index_mail_get_keywords(struct mail *_mail);
212 index_mail_get_keyword_indexes(struct mail *_mail);
213 int index_mail_get_parts(struct mail *_mail, struct message_part **parts_r);
214 int index_mail_get_received_date(struct mail *_mail, time_t *date_r);
215 int index_mail_get_save_date(struct mail *_mail, time_t *date_r);
216 int index_mail_get_date(struct mail *_mail, time_t *date_r, int *timezone_r);
217 int index_mail_get_virtual_size(struct mail *mail, uoff_t *size_r);
218 int index_mail_get_physical_size(struct mail *mail, uoff_t *size_r);
219 int index_mail_init_stream(struct index_mail *mail,
223 int index_mail_get_binary_stream(struct mail *_mail,
228 int index_mail_get_special(struct mail *_mail, enum mail_fetch_field field,
230 int index_mail_get_backend_mail(struct mail *mail, struct mail **real_mail_r);
232 void index_mail_update_flags(struct mail *mail, enum modify_type modify_type,
234 void index_mail_update_keywords(struct mail *mail, enum modify_type modify_type,
236 void index_mail_update_modseq(struct mail *mail, uint64_t min_modseq);
237 void index_mail_update_pvt_modseq(struct mail *mail, uint64_t min_pvt_modseq);
238 void index_mail_expunge(struct mail *mail);
239 void index_mail_precache(struct mail *mail);
240 void index_mail_set_cache_corrupted(struct mail *mail,
243 int index_mail_opened(struct mail *mail, struct istream **stream);
244 int index_mail_stream_check_failure(struct index_mail *mail);
245 void index_mail_stream_log_failure_for(struct index_mail *mail,
247 void index_mail_refresh_expunged(struct mail *mail);
248 struct index_mail *index_mail_get_index_mail(struct mail *mail);
250 bool index_mail_get_cached_uoff_t(struct index_mail *mail,
252 bool index_mail_get_cached_virtual_size(struct index_mail *mail,
254 bool index_mail_get_cached_body(struct index_mail *mail, const char **value_r);
255 bool index_mail_get_cached_bodystructure(struct index_mail *mail,
257 const uint32_t *index_mail_get_vsize_extension(struct mail *_mail);
259 bool index_mail_want_cache(struct index_mail *mail, enum index_cache_field field);
260 void index_mail_cache_add(struct index_mail *mail, enum index_cache_field field,
262 void index_mail_cache_add_idx(struct index_mail *mail, unsigned int field_idx,
265 struct istream *index_mail_cache_parse_init(struct mail *mail,
267 void index_mail_cache_parse_continue(struct mail *mail);
268 void index_mail_cache_parse_deinit(struct mail *mail, time_t received_date,
271 int index_mail_cache_lookup_field(struct index_mail *mail, buffer_t *buf,
275 const char *index_mail_cache_reason(struct mail *mail, const char *reason);