mail-log-plugin.c revision cc7f4868da79e61ef9af9dcb1ad7ddfe2e353e3d
273e421813f295d65aab512f508e8fb575d997d4gouldtj/* Copyright (C) 2007 Timo Sirainen */
273e421813f295d65aab512f508e8fb575d997d4gouldtj#define MAIL_LOG_DEFAULT_EVENTS MAIL_LOG_EVENT_MASK_ALL
0d76a37bca6836fb2b908569e54ca9792a9ff303buliabyakstatic const char *field_names[] = {
static const char *event_names[] = {
struct mail_log_settings {
struct mail_log_group_changes {
const char *data;
struct mail_log_transaction_context {
unsigned int changes;
static void (*mail_log_next_hook_mail_storage_created)
static void (*mail_log_next_hook_mailbox_list_created)
return event_names[i];
i_unreached();
return NULL;
static struct mail_log_group_changes *
unsigned int i, count;
for (i = 0; i < count; i++) {
return &group[i];
return group;
const char *data)
const char *mailbox_str;
unsigned int i, count;
t_push();
for (i = 0; i < count; i++) {
t_pop();
unsigned int i, count;
for (i = 0; i < count; i++)
const char *data)
const char *msgid;
t_push();
t_pop();
switch (modify_type) {
case MODIFY_ADD:
case MODIFY_REMOVE:
case MODIFY_REPLACE:
static struct mail *
return _mail;
const char *name;
t_push();
t_pop();
static struct mailbox *
return NULL;
return box;
const char *const *tmp;
if (field == 0)
return fields;
const char *const *tmp;
if (event == 0)
return events;
const char *str;
t_push();
t_pop();
void mail_log_plugin_init(void)
void mail_log_plugin_deinit(void)