Mercurial > dovecot > core-2.2
view src/lib-storage/mail.c @ 6410:e4eb71ae8e96 HEAD
Changed .h ifdef/defines to use <NAME>_H format.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sun, 16 Sep 2007 11:31:27 +0300 |
parents | eb7c9d8ece54 |
children | 65c69a53a7be |
line wrap: on
line source
/* Copyright (C) 2002-2003 Timo Sirainen */ #include "lib.h" #include "ioloop.h" #include "mail-storage-private.h" struct mail *mail_alloc(struct mailbox_transaction_context *t, enum mail_fetch_field wanted_fields, struct mailbox_header_lookup_ctx *wanted_headers) { return t->box->v.mail_alloc(t, wanted_fields, wanted_headers); } void mail_free(struct mail **mail) { struct mail_private *p = (struct mail_private *)*mail; p->v.free(*mail); *mail = NULL; } void mail_set_seq(struct mail *mail, uint32_t seq) { struct mail_private *p = (struct mail_private *)mail; p->v.set_seq(mail, seq); } bool mail_set_uid(struct mail *mail, uint32_t uid) { struct mail_private *p = (struct mail_private *)mail; return p->v.set_uid(mail, uid); } enum mail_flags mail_get_flags(struct mail *mail) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_flags(mail); } const char *const *mail_get_keywords(struct mail *mail) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_keywords(mail); } int mail_get_parts(struct mail *mail, const struct message_part **parts_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_parts(mail, parts_r); } int mail_get_date(struct mail *mail, time_t *date_r, int *timezone_r) { struct mail_private *p = (struct mail_private *)mail; int tz; if (timezone_r == NULL) timezone_r = &tz; return p->v.get_date(mail, date_r, timezone_r); } int mail_get_received_date(struct mail *mail, time_t *date_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_received_date(mail, date_r); } int mail_get_save_date(struct mail *mail, time_t *date_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_save_date(mail, date_r); } int mail_get_virtual_size(struct mail *mail, uoff_t *size_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_virtual_size(mail, size_r); } int mail_get_physical_size(struct mail *mail, uoff_t *size_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_physical_size(mail, size_r); } int mail_get_first_header(struct mail *mail, const char *field, const char **value_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_first_header(mail, field, FALSE, value_r); } int mail_get_first_header_utf8(struct mail *mail, const char *field, const char **value_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_first_header(mail, field, TRUE, value_r); } int mail_get_headers(struct mail *mail, const char *field, const char *const **value_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_headers(mail, field, FALSE, value_r); } int mail_get_headers_utf8(struct mail *mail, const char *field, const char *const **value_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_headers(mail, field, TRUE, value_r); } int mail_get_header_stream(struct mail *mail, struct mailbox_header_lookup_ctx *headers, struct istream **stream_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_header_stream(mail, headers, stream_r); } int mail_get_stream(struct mail *mail, struct message_size *hdr_size, struct message_size *body_size, struct istream **stream_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_stream(mail, hdr_size, body_size, stream_r); } int mail_get_special(struct mail *mail, enum mail_fetch_field field, const char **value_r) { struct mail_private *p = (struct mail_private *)mail; return p->v.get_special(mail, field, value_r); } void mail_update_flags(struct mail *mail, enum modify_type modify_type, enum mail_flags flags) { struct mail_private *p = (struct mail_private *)mail; return p->v.update_flags(mail, modify_type, flags); } void mail_update_keywords(struct mail *mail, enum modify_type modify_type, struct mail_keywords *keywords) { struct mail_private *p = (struct mail_private *)mail; p->v.update_keywords(mail, modify_type, keywords); } void mail_expunge(struct mail *mail) { struct mail_private *p = (struct mail_private *)mail; p->v.expunge(mail); } void mail_set_expunged(struct mail *mail) { mail_storage_set_error(mail->box->storage, MAIL_ERROR_EXPUNGED, "Message was expunged"); mail->expunged = TRUE; }