Lines Matching defs:mail

7 #include "index-mail.h"
8 #include "dbox-mail.h"
55 static void dbox_mail_set_expunged(struct dbox_mail *mail, uint32_t map_uid)
57 struct mail *_mail = &mail->imail.mail.mail;
72 static int dbox_mail_open_init(struct dbox_mail *mail, uint32_t map_uid)
74 struct mdbox_mailbox *mbox = MDBOX_MAILBOX(mail->imail.mail.mail.box);
79 &file_id, &mail->offset)) <= 0) {
86 dbox_mail_set_expunged(mail, map_uid);
89 mail->open_file = mdbox_file_init(mbox->storage, file_id);
94 int mdbox_mail_open(struct dbox_mail *mail, uoff_t *offset_r,
97 struct mail *_mail = &mail->imail.mail.mail;
109 if (mail->open_file != NULL) {
115 if (dbox_mail_open_init(mail, map_uid) < 0)
118 /* mail is being saved in this transaction */
119 mail->open_file =
122 &mail->offset);
125 if (!dbox_file_is_open(mail->open_file))
127 if (dbox_file_open(mail->open_file, &deleted) <= 0)
132 (struct mdbox_file *)mail->open_file;
135 dbox_mail_set_expunged(mail, map_uid);
141 dbox_file_unref(&mail->open_file);
143 } while (mail->open_file == NULL);
145 *file_r = mail->open_file;
146 *offset_r = mail->offset;
150 static int mdbox_mail_get_save_date(struct mail *mail, time_t *date_r)
152 struct mdbox_mailbox *mbox = MDBOX_MAILBOX(mail->transaction->box);
156 mail_index_lookup_ext(mail->transaction->view, mail->seq,
161 return dbox_mail_get_save_date(mail, date_r);
169 mdbox_mail_get_special(struct mail *_mail, enum mail_fetch_field field,
172 struct dbox_mail *mail = DBOX_MAIL(_mail);
186 *value_r = p_strdup_printf(mail->imail.mail.data_pool, "%u",
212 mdbox_mail_update_flags(struct mail *mail, enum modify_type modify_type,
216 mdbox_purge_alt_flag_change(mail, modify_type != MODIFY_REMOVE);
222 index_mail_update_flags(mail, modify_type, flags);