/* Copyright (c) 2002-2018 Dovecot authors, see the included COPYING file */
#include "lib.h"
#include "ioloop.h"
#include "buffer.h"
#include "hash.h"
#include "hex-binary.h"
#include "crc32.h"
#include "sha1.h"
#include "hostpid.h"
#include "mail-cache.h"
#include "mail-storage-private.h"
#include "message-part-data.h"
#include <time.h>
struct mailbox_header_lookup_ctx *wanted_headers)
{
T_BEGIN {
} T_END;
return mail;
}
{
}
{
}
{
}
{
}
{
bool ret;
T_BEGIN {
} T_END;
return ret;
}
enum mail_fetch_field fields,
struct mailbox_header_lookup_ctx *headers)
{
}
{
}
{
return p->v.get_modseq(mail);
}
{
return p->v.get_pvt_modseq(mail);
}
{
return p->v.get_keywords(mail);
}
{
return p->v.get_keyword_indexes(mail);
}
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
const char **value_r)
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
const char **value_r)
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
const char *const **value_r)
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
const char *const **value_r)
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
struct mailbox_header_lookup_ctx *headers,
{
int ret;
T_BEGIN {
} T_END;
return ret;
}
{
"Mail field not cached");
}
{
"mail stream", stream_r);
}
struct message_size *body_size,
{
int ret;
return -1;
}
T_BEGIN {
p->get_stream_reason = reason;
p->get_stream_reason = "";
} T_END;
return ret;
}
{
}
struct message_size *hdr_size,
{
int ret;
return -1;
}
T_BEGIN {
p->get_stream_reason = reason;
p->get_stream_reason = "";
} T_END;
return ret;
}
{
int ret;
return -1;
}
T_BEGIN {
} T_END;
return ret;
}
unsigned int *lines_r)
{
bool binary;
int ret;
T_BEGIN {
} T_END;
return ret;
}
const char **value_r)
{
return -1;
return 0;
}
{
}
enum mail_flags flags)
{
}
struct mail_keywords *keywords)
{
}
{
}
{
}
{
if (p->v.update_pop3_uidl != NULL)
}
{
T_BEGIN {
} T_END;
}
{
p->autoexpunged = TRUE;
p->autoexpunged = FALSE;
}
{
"Message was expunged");
}
{
T_BEGIN {
} T_END;
}
enum mail_fetch_field field,
const char *reason)
{
}
{
/* not 128bit hex. use a hash of it instead. */
buffer_set_used_size(&buf, 0);
#if SHA1_RESULTLEN < GUID_128_SIZE
#endif
}
}
static bool
const struct message_part_attachment_settings *set)
{
return TRUE;
}
return FALSE;
}
{
}
{
const char *const keyword_has_attachment[] = {
NULL,
};
const char *const keyword_has_no_attachment[] = {
};
};
/* walk all parts and see if there is an attachment */
"mail_get_parts() failed: %s",
return;
if (mail_set->mail_debug) {
i_debug("Failed to add attachment keywords: mailbox_keyword_create(%s) failed: %s",
}
} else {
/* make sure only one of the keywords gets set */
}
if (kw_has_not != NULL)
}