Lines Matching refs:imail
21 struct imapc_mailbox *mbox = IMAPC_MAILBOX(mail->imail.mail.mail.box);
23 mail->last_fetch_reply = p_strdup(mail->imail.mail.pool, reply->text_full);
70 mbox = IMAPC_MAILBOX(mail->imail.mail.mail.box);
169 struct imapc_mailbox *mbox = IMAPC_MAILBOX(mail->imail.mail.mail.box);
283 headers_merge(mail->imail.mail.data_pool, headers,
314 mail->imail.data.stream = i_stream_create_fd(mail->fd, 0);
318 mail->imail.data.stream =
333 struct imapc_mailbox *mbox = IMAPC_MAILBOX(mail->imail.mail.mail.box);
334 struct index_mail_data *data = &mail->imail.data;
370 struct mail *_mail = &mail->imail.mail.mail;
381 struct index_mail_data *data = &mail->imail.data;
386 imapc_mail_update_access_parts(&mail->imail);
390 if (mail->imail.data.access_part != 0)
396 !imapc_mail_has_headers_in_cache(&mail->imail, data->wanted_headers)) {
405 mail->imail.data.prefetch_sent = TRUE;
407 return !mail->imail.data.prefetch_sent;
411 imapc_mail_have_fields(struct imapc_mail *imail, enum mail_fetch_field fields)
414 if (imail->imail.data.received_date == (time_t)-1)
419 if (imail->imail.data.physical_size == (uoff_t)-1)
424 if (imail->imail.data.guid == NULL)
429 if (imail->imail.data.body == NULL)
434 if (imail->imail.data.bodystructure == NULL)
440 if (imail->imail.data.stream == NULL)
451 struct imapc_mail *imail = IMAPC_MAIL(_mail);
469 fields |= imapc_mail_get_wanted_fetch_fields(imail);
481 while (imail->fetch_count > 0 &&
482 (!imapc_mail_have_fields(imail, fields) ||
483 !imail->header_list_fetched)) {
486 if (imail->fetch_failed) {
557 struct index_mail *imail = &mail->imail;
558 struct mail *_mail = &imail->mail.mail;
564 i_stream_set_name(imail->data.stream,
566 index_mail_set_read_buffer_size(_mail, imail->data.stream);
571 imapc_stream_filter(&imail->data.stream);
573 if (imail->mail.v.istream_opened != NULL) {
574 if (imail->mail.v.istream_opened(_mail,
575 &imail->data.stream) < 0) {
576 index_mail_close_streams(imail);
580 ret = i_stream_get_size(imail->data.stream, TRUE, &size);
582 index_mail_close_streams(imail);
586 imail->data.physical_size = size;
589 imail->data.virtual_size = size;
592 imail->data.stream_has_only_header = !mail->body_fetched;
593 if (index_mail_init_stream(imail, NULL, NULL, &input) < 0)
594 index_mail_close_streams(imail);
603 struct index_mail *imail = &mail->imail;
604 struct imapc_mailbox *mbox = IMAPC_MAILBOX(imail->mail.mail.box);
609 if (imail->data.stream != NULL) {
618 hdr_stream = imail->data.stream;
628 index_mail_close_streams(imail);
649 imail->data.stream = i_stream_create_fd(fd, 0);
656 mail_set_expunged(&imail->mail.mail);
671 imail->data.stream = i_stream_create_from_data(mail->body->data,
682 inputs[1] = imail->data.stream;
684 imail->data.stream = i_stream_create_concat(inputs);
737 mail_set_expunged(&mail->imail.mail.mail);
743 headers_ctx = mailbox_header_lookup_init(mail->imail.mail.mail.box,
745 index_mail_parse_header_init(&mail->imail, headers_ctx);
749 index_mail_parse_header(NULL, hdr, &mail->imail);
751 index_mail_parse_header(NULL, NULL, &mail->imail);
768 mail_set_critical(&mail->imail.mail.mail,
775 mail_set_critical(&mail->imail.mail.mail,
781 ret = p_strdup(mail->imail.mail.data_pool, str_c(str));
791 struct imapc_mailbox *mbox = IMAPC_MAILBOX(mail->imail.mail.mail.box);
819 mail->imail.data.received_date = t;
823 mail->imail.data.body =
829 mail->imail.data.bodystructure =
837 mail->imail.data.physical_size = size;
842 mail->imail.data.guid =
843 p_strdup(mail->imail.mail.pool, value);