Following version and content of .conf file
----------------------------------------------------------------------------------------
root@ABCD:/CavE/download/delete_to_trash# dovecot --version
2.2.9
root@ABCD:/CavE/download/delete_to_trash# dovecot -n
# 2.2.9: /etc/dovecot/dovecot.conf
# OS: Linux 3.13.0-32-generic x86_64 Ubuntu 14.04.1 LTS
auth_mechanisms = plain login
log_path = /var/log/dovecot/dovecot.log
mail_location = maildir:~/Maildir:LAYOUT=fs
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Gesendete {
auto = subscribe
special_use = \Sent
}
mailbox Junk {
special_use = \Junk
}
mailbox Trash {
auto = subscribe
special_use = \Trash
}
prefix =
separator = /
}
passdb {
driver = pam
}
passdb {
driver = pam
}
protocols = imap pop3
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
user = root
}
ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/dovecot/private/dovecot.pem
userdb {
driver = passwd
}
userdb {
driver = passwd
}
----------------------------------------------------------------------------------------
I get the following output after doing make
root@ABCD:/CavE/download/delete_to_trash# make
cc \
-fPIC -shared -Wall \
-I/usr/include/dovecot \
-I/usr/include/dovecot/src \
-I/usr/include/dovecot/src/lib \
-I/usr/include/dovecot/src/lib-storage \
-I/usr/include/dovecot/src/lib-mail \
-I/usr/include/dovecot/src/lib-imap \
-I/usr/include/dovecot/src/lib-index \
-DHAVE_CONFIG_H \
deleted-to-trash-plugin.c -o lib_deleted_to_trash_plugin.so
In file included from deleted-to-trash-plugin.c:2:0:
deleted-to-trash-plugin.h:19:2: error: expected specifier-qualifier-list before 'ARRAY_DEFINE'
ARRAY_DEFINE(mail_id, unsigned int);
^
deleted-to-trash-plugin.c: In function 'get_users_inbox_namespace':
deleted-to-trash-plugin.c:19:21: error: 'NAMESPACE_FLAG_INBOX' undeclared (first use in this function)
if(curns->flags & NAMESPACE_FLAG_INBOX)
^
deleted-to-trash-plugin.c:19:21: note: each undeclared identifier is reported only once for each function it appears in
deleted-to-trash-plugin.c: In function 'search_deleted_id':
deleted-to-trash-plugin.c:40:14: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
if(last_copy.src_mailbox_name != NULL && strcmp(_mail->box->name, last_copy.src_mailbox_name) == 0)
^
deleted-to-trash-plugin.c:40:77: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
if(last_copy.src_mailbox_name != NULL && strcmp(_mail->box->name, last_copy.src_mailbox_name) == 0)
^
In file included from /usr/include/dovecot/module-context.h:4:0,
from /usr/include/dovecot/mail-storage-private.h:4,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:46:34: error: 'struct last_copy_info' has no member named 'mail_id'
mail_ids = array_get(&last_copy.mail_id, &count);
^
/usr/include/dovecot/array.h:44:12: note: in definition of macro 'ARRAY_TYPE_CAST_CONST'
(typeof(*(array)->v))
^
deleted-to-trash-plugin.c:46:14: note: in expansion of macro 'array_get'
mail_ids = array_get(&last_copy.mail_id, &count);
^
deleted-to-trash-plugin.c:46:34: error: 'struct last_copy_info' has no member named 'mail_id'
mail_ids = array_get(&last_copy.mail_id, &count);
^
/usr/include/dovecot/array.h:192:44: note: in definition of macro 'array_get'
ARRAY_TYPE_CAST_CONST(array)array_get_i(&(array)->arr, count)
^
deleted-to-trash-plugin.c:58:28: error: 'struct last_copy_info' has no member named 'mail_id'
if(array_count(&last_copy.mail_id) > 0)
^
/usr/include/dovecot/array.h:143:18: note: in definition of macro 'array_count'
array_count_i(&(array)->arr)
^
deleted-to-trash-plugin.c:60:25: error: 'struct last_copy_info' has no member named 'mail_id'
array_free(&last_copy.mail_id);
^
/usr/include/dovecot/array.h:111:17: note: in definition of macro 'array_free'
array_free_i(&(array)->arr)
^
deleted-to-trash-plugin.c:61:27: error: 'struct last_copy_info' has no member named 'mail_id'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
/usr/include/dovecot/array.h:103:19: note: in definition of macro 'array_create'
array_create_i(&(array)->arr, pool, element_size, init_count)
^
/usr/include/dovecot/array.h:38:2: note: in expansion of macro 'p_array_init'
p_array_init(array, default_pool, init_count)
^
deleted-to-trash-plugin.c:61:4: note: in expansion of macro 'i_array_init'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
deleted-to-trash-plugin.c:61:27: error: 'struct last_copy_info' has no member named 'mail_id'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
/usr/include/dovecot/array.h:103:38: note: in definition of macro 'array_create'
array_create_i(&(array)->arr, pool, element_size, init_count)
^
/usr/include/dovecot/array.h:38:2: note: in expansion of macro 'p_array_init'
p_array_init(array, default_pool, init_count)
^
deleted-to-trash-plugin.c:61:4: note: in expansion of macro 'i_array_init'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
deleted-to-trash-plugin.c:63:15: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
if(last_copy.src_mailbox_name != NULL)
^
In file included from /usr/include/dovecot/lib.h:29:0,
from deleted-to-trash-plugin.h:4,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:65:20: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
i_free(last_copy.src_mailbox_name);
^
/usr/include/dovecot/mempool.h:89:33: note: in definition of macro 'p_free'
(pool)->v->free(pool, mem); \
^
deleted-to-trash-plugin.c:65:4: note: in expansion of macro 'i_free'
i_free(last_copy.src_mailbox_name);
^
deleted-to-trash-plugin.c:65:20: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
i_free(last_copy.src_mailbox_name);
^
/usr/include/dovecot/mempool.h:90:12: note: in definition of macro 'p_free'
(mem) = NULL; \
^
deleted-to-trash-plugin.c:65:4: note: in expansion of macro 'i_free'
i_free(last_copy.src_mailbox_name);
^
deleted-to-trash-plugin.c:66:13: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
last_copy.src_mailbox_name = NULL;
^
deleted-to-trash-plugin.c: In function 'mailbox_open_or_create':
deleted-to-trash-plugin.c:79:43: error: 'MAILBOX_OPEN_FAST' undeclared (first use in this function)
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT | MAILBOX_OPEN_NO_INDEX_FILES);
^
deleted-to-trash-plugin.c:79:63: error: 'MAILBOX_OPEN_KEEP_RECENT' undeclared (first use in this function)
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT | MAILBOX_OPEN_NO_INDEX_FILES);
^
deleted-to-trash-plugin.c:79:90: error: 'MAILBOX_OPEN_NO_INDEX_FILES' undeclared (first use in this function)
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT | MAILBOX_OPEN_NO_INDEX_FILES);
^
deleted-to-trash-plugin.c:79:2: warning: passing argument 1 of 'mailbox_open' from incompatible pointer type [enabled by default]
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT | MAILBOX_OPEN_NO_INDEX_FILES);
^
In file included from /usr/include/dovecot/mail-storage-private.h:7:0,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
/usr/include/dovecot/mail-storage.h:479:5: note: expected 'struct mailbox *' but argument is of type 'struct mail_storage **'
int mailbox_open(struct mailbox *box);
^
deleted-to-trash-plugin.c:79:2: error: too many arguments to function 'mailbox_open'
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT | MAILBOX_OPEN_NO_INDEX_FILES);
^
In file included from /usr/include/dovecot/mail-storage-private.h:7:0,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
/usr/include/dovecot/mail-storage.h:479:5: note: declared here
int mailbox_open(struct mailbox *box);
^
deleted-to-trash-plugin.c:79:6: warning: assignment makes pointer from integer without a cast [enabled by default]
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT | MAILBOX_OPEN_NO_INDEX_FILES);
^
deleted-to-trash-plugin.c:86:4: warning: implicit declaration of function 'mail_storage_mailbox_create' [-Wimplicit-function-declaration]
if(mail_storage_mailbox_create(storage, name, FALSE) >= 0)
^
deleted-to-trash-plugin.c:89:5: warning: passing argument 1 of 'mailbox_open' from incompatible pointer type [enabled by default]
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT);
^
In file included from /usr/include/dovecot/mail-storage-private.h:7:0,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
/usr/include/dovecot/mail-storage.h:479:5: note: expected 'struct mailbox *' but argument is of type 'struct mail_storage **'
int mailbox_open(struct mailbox *box);
^
deleted-to-trash-plugin.c:89:5: error: too many arguments to function 'mailbox_open'
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT);
^
In file included from /usr/include/dovecot/mail-storage-private.h:7:0,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
/usr/include/dovecot/mail-storage.h:479:5: note: declared here
int mailbox_open(struct mailbox *box);
^
deleted-to-trash-plugin.c:89:9: warning: assignment makes pointer from integer without a cast [enabled by default]
box = mailbox_open(&storage, name, NULL, MAILBOX_OPEN_FAST | MAILBOX_OPEN_KEEP_RECENT);
^
deleted-to-trash-plugin.c: In function 'copy_deleted_mail_to_trash':
deleted-to-trash-plugin.c:104:52: error: 'struct mail_storage' has no member named 'ns'
ns = get_users_inbox_namespace(_mail->box->storage->ns->user);
^
deleted-to-trash-plugin.c:127:3: warning: implicit declaration of function 'mailbox_keywords_free' [-Wimplicit-function-declaration]
mailbox_keywords_free(trash_box, &keywords);
^
deleted-to-trash-plugin.c:140:3: warning: passing argument 1 of 'mailbox_close' from incompatible pointer type [enabled by default]
mailbox_close(&trash_box);
^
In file included from /usr/include/dovecot/mail-storage-private.h:7:0,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
/usr/include/dovecot/mail-storage.h:483:6: note: expected 'struct mailbox *' but argument is of type 'struct mailbox **'
void mailbox_close(struct mailbox *box);
^
deleted-to-trash-plugin.c: In function 'deleted_to_trash_mail_update_flags':
deleted-to-trash-plugin.c:178:53: error: 'struct mail_storage' has no member named 'ns'
ns = get_users_inbox_namespace(_mail->box->storage->ns->user);
^
deleted-to-trash-plugin.c:181:113: error: 'struct mail_storage' has no member named 'ns'
if(new_flags & MAIL_DELETED && !(strcmp(_mail->box->name, trashfolder_name) == 0 && strcmp(_mail->box->storage->ns->prefix, ns->prefix) == 0))
^
deleted-to-trash-plugin.c: In function 'deleted_to_trash_copy':
deleted-to-trash-plugin.c:229:112: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
i_info("from %s to %s, previous action from %s", mail->box->name, save_ctx->transaction->box->name, last_copy.src_mailbox_name);
^
deleted-to-trash-plugin.c:230:73: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
if(last_copy.transaction_context == save_ctx->transaction && last_copy.src_mailbox_name != NULL && strcmp(last_copy.src_mailbox_name, mail->box->name) == 0)
^
deleted-to-trash-plugin.c:230:118: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
if(last_copy.transaction_context == save_ctx->transaction && last_copy.src_mailbox_name != NULL && strcmp(last_copy.src_mailbox_name, mail->box->name) == 0)
^
In file included from /usr/include/dovecot/module-context.h:4:0,
from /usr/include/dovecot/mail-storage-private.h:4,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:232:27: error: 'struct last_copy_info' has no member named 'mail_id'
array_append(&last_copy.mail_id, &mail->uid, 1);
^
/usr/include/dovecot/array.h:152:19: note: in definition of macro 'array_append'
array_append_i(&(array)->arr + ARRAY_TYPE_CHECK(array, data), \
^
In file included from /usr/include/dovecot/lib.h:25:0,
from deleted-to-trash-plugin.h:4,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:232:27: error: 'struct last_copy_info' has no member named 'mail_id'
array_append(&last_copy.mail_id, &mail->uid, 1);
^
/usr/include/dovecot/macros.h:155:26: note: in definition of macro 'COMPILE_ERROR_IF_TRUE'
(sizeof(char[1 - 2 * !!(condition)]) - 1)
^
/usr/include/dovecot/array.h:48:2: note: in expansion of macro 'COMPILE_ERROR_IF_TYPES_NOT_COMPATIBLE'
COMPILE_ERROR_IF_TYPES_NOT_COMPATIBLE( \
^
/usr/include/dovecot/array.h:152:33: note: in expansion of macro 'ARRAY_TYPE_CHECK'
array_append_i(&(array)->arr + ARRAY_TYPE_CHECK(array, data), \
^
deleted-to-trash-plugin.c:232:4: note: in expansion of macro 'array_append'
array_append(&last_copy.mail_id, &mail->uid, 1);
^
In file included from /usr/include/dovecot/module-context.h:4:0,
from /usr/include/dovecot/mail-storage-private.h:4,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:233:42: error: 'struct last_copy_info' has no member named 'mail_id'
i_info("nr %i", array_count(&last_copy.mail_id));
^
/usr/include/dovecot/array.h:143:18: note: in definition of macro 'array_count'
array_count_i(&(array)->arr)
^
deleted-to-trash-plugin.c:238:29: error: 'struct last_copy_info' has no member named 'mail_id'
if(array_count(&last_copy.mail_id) > 0)
^
/usr/include/dovecot/array.h:143:18: note: in definition of macro 'array_count'
array_count_i(&(array)->arr)
^
deleted-to-trash-plugin.c:240:26: error: 'struct last_copy_info' has no member named 'mail_id'
array_free(&last_copy.mail_id);
^
/usr/include/dovecot/array.h:111:17: note: in definition of macro 'array_free'
array_free_i(&(array)->arr)
^
deleted-to-trash-plugin.c:241:28: error: 'struct last_copy_info' has no member named 'mail_id'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
/usr/include/dovecot/array.h:103:19: note: in definition of macro 'array_create'
array_create_i(&(array)->arr, pool, element_size, init_count)
^
/usr/include/dovecot/array.h:38:2: note: in expansion of macro 'p_array_init'
p_array_init(array, default_pool, init_count)
^
deleted-to-trash-plugin.c:241:5: note: in expansion of macro 'i_array_init'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
deleted-to-trash-plugin.c:241:28: error: 'struct last_copy_info' has no member named 'mail_id'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
/usr/include/dovecot/array.h:103:38: note: in definition of macro 'array_create'
array_create_i(&(array)->arr, pool, element_size, init_count)
^
/usr/include/dovecot/array.h:38:2: note: in expansion of macro 'p_array_init'
p_array_init(array, default_pool, init_count)
^
deleted-to-trash-plugin.c:241:5: note: in expansion of macro 'i_array_init'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
deleted-to-trash-plugin.c:246:28: error: 'struct last_copy_info' has no member named 'mail_id'
array_append(&last_copy.mail_id, &mail->uid, 1);
^
/usr/include/dovecot/array.h:152:19: note: in definition of macro 'array_append'
array_append_i(&(array)->arr + ARRAY_TYPE_CHECK(array, data), \
^
In file included from /usr/include/dovecot/lib.h:25:0,
from deleted-to-trash-plugin.h:4,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:246:28: error: 'struct last_copy_info' has no member named 'mail_id'
array_append(&last_copy.mail_id, &mail->uid, 1);
^
/usr/include/dovecot/macros.h:155:26: note: in definition of macro 'COMPILE_ERROR_IF_TRUE'
(sizeof(char[1 - 2 * !!(condition)]) - 1)
^
/usr/include/dovecot/array.h:48:2: note: in expansion of macro 'COMPILE_ERROR_IF_TYPES_NOT_COMPATIBLE'
COMPILE_ERROR_IF_TYPES_NOT_COMPATIBLE( \
^
/usr/include/dovecot/array.h:152:33: note: in expansion of macro 'ARRAY_TYPE_CHECK'
array_append_i(&(array)->arr + ARRAY_TYPE_CHECK(array, data), \
^
deleted-to-trash-plugin.c:246:5: note: in expansion of macro 'array_append'
array_append(&last_copy.mail_id, &mail->uid, 1);
^
deleted-to-trash-plugin.c:247:14: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
last_copy.src_mailbox_name = i_strdup(mail->box->name);
^
deleted-to-trash-plugin.c: In function 'deleted_to_trash_transaction_commit':
deleted-to-trash-plugin.c:267:2: warning: passing argument 2 of 'lbox->super.transaction_commit' from incompatible pointer type [enabled by default]
int ret = lbox->super.transaction_commit(t, uid_validity_r, first_saved_uid_r, last_saved_uid_r);
^
deleted-to-trash-plugin.c:267:2: note: expected 'struct mail_transaction_commit_changes *' but argument is of type 'uint32_t *'
deleted-to-trash-plugin.c:267:2: error: too many arguments to function 'lbox->super.transaction_commit'
deleted-to-trash-plugin.c: At top level:
deleted-to-trash-plugin.c:284:107: warning: 'enum mailbox_open_flags' declared inside parameter list [enabled by default]
deleted_to_trash_mailbox_open(struct mail_storage *storage, const char *name, struct istream *input, enum mailbox_open_flags flags)
^
deleted-to-trash-plugin.c:284:107: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default]
deleted-to-trash-plugin.c:284:126: error: parameter 4 ('flags') has incomplete type
deleted_to_trash_mailbox_open(struct mail_storage *storage, const char *name, struct istream *input, enum mailbox_open_flags flags)
^
deleted-to-trash-plugin.c: In function 'deleted_to_trash_mailbox_open':
deleted-to-trash-plugin.c:290:23: error: 'struct mail_storage_vfuncs' has no member named 'mailbox_open'
box = lstorage->super.mailbox_open(storage, name, input, flags);
^
deleted-to-trash-plugin.c:298:29: warning: assignment from incompatible pointer type [enabled by default]
box->v.transaction_commit = deleted_to_trash_transaction_commit;
^
deleted-to-trash-plugin.c: In function 'deleted_to_trash_mail_storage_created':
deleted-to-trash-plugin.c:327:12: error: 'struct mail_storage_vfuncs' has no member named 'mailbox_open'
storage->v.mailbox_open = deleted_to_trash_mailbox_open;
^
deleted-to-trash-plugin.c: In function 'deleted_to_trash_plugin_init':
deleted-to-trash-plugin.c:364:28: error: lvalue required as left operand of assignment
hook_mail_storage_created = deleted_to_trash_mail_storage_created;
^
deleted-to-trash-plugin.c:367:28: error: lvalue required as left operand of assignment
hook_mailbox_list_created = deleted_to_trash_mailbox_list_created;
^
In file included from /usr/include/dovecot/module-context.h:4:0,
from /usr/include/dovecot/mail-storage-private.h:4,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:370:25: error: 'struct last_copy_info' has no member named 'mail_id'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
/usr/include/dovecot/array.h:103:19: note: in definition of macro 'array_create'
array_create_i(&(array)->arr, pool, element_size, init_count)
^
/usr/include/dovecot/array.h:38:2: note: in expansion of macro 'p_array_init'
p_array_init(array, default_pool, init_count)
^
deleted-to-trash-plugin.c:370:2: note: in expansion of macro 'i_array_init'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
deleted-to-trash-plugin.c:370:25: error: 'struct last_copy_info' has no member named 'mail_id'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
/usr/include/dovecot/array.h:103:38: note: in definition of macro 'array_create'
array_create_i(&(array)->arr, pool, element_size, init_count)
^
/usr/include/dovecot/array.h:38:2: note: in expansion of macro 'p_array_init'
p_array_init(array, default_pool, init_count)
^
deleted-to-trash-plugin.c:370:2: note: in expansion of macro 'i_array_init'
i_array_init(&last_copy.mail_id, TRASH_LIST_INITSIZE);
^
deleted-to-trash-plugin.c:371:11: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
last_copy.src_mailbox_name = NULL;
^
deleted-to-trash-plugin.c: In function 'deleted_to_trash_plugin_deinit':
deleted-to-trash-plugin.c:377:28: error: lvalue required as left operand of assignment
hook_mail_storage_created = deleted_to_trash_next_hook_mail_storage_created;
^
deleted-to-trash-plugin.c:378:28: error: lvalue required as left operand of assignment
hook_mailbox_list_created = deleted_to_trash_next_hook_mailbox_list_created;
^
deleted-to-trash-plugin.c:380:14: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
if(last_copy.src_mailbox_name != NULL)
^
In file included from /usr/include/dovecot/lib.h:29:0,
from deleted-to-trash-plugin.h:4,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:382:19: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
i_free(last_copy.src_mailbox_name);
^
/usr/include/dovecot/mempool.h:89:33: note: in definition of macro 'p_free'
(pool)->v->free(pool, mem); \
^
deleted-to-trash-plugin.c:382:3: note: in expansion of macro 'i_free'
i_free(last_copy.src_mailbox_name);
^
deleted-to-trash-plugin.c:382:19: error: 'struct last_copy_info' has no member named 'src_mailbox_name'
i_free(last_copy.src_mailbox_name);
^
/usr/include/dovecot/mempool.h:90:12: note: in definition of macro 'p_free'
(mem) = NULL; \
^
deleted-to-trash-plugin.c:382:3: note: in expansion of macro 'i_free'
i_free(last_copy.src_mailbox_name);
^
In file included from /usr/include/dovecot/module-context.h:4:0,
from /usr/include/dovecot/mail-storage-private.h:4,
from deleted-to-trash-plugin.h:5,
from deleted-to-trash-plugin.c:2:
deleted-to-trash-plugin.c:384:23: error: 'struct last_copy_info' has no member named 'mail_id'
array_free(&last_copy.mail_id);
^
/usr/include/dovecot/array.h:111:17: note: in definition of macro 'array_free'
array_free_i(&(array)->arr)
^
make: *** [lib_deleted_to_trash_plugin.so] Fehler 1
----------------------------------------------------------------------------------------
First I thought that something with the path setting in the Makefile is wrong.
The only thing I've seen is than only the folder /usr/include/dovecot .exists - not the following subdirectories :
-I/usr/include/dovecot/src \
-I/usr/include/dovecot/src/lib \
-I/usr/include/dovecot/src/lib-storage \
-I/usr/include/dovecot/src/lib-mail \
-I/usr/include/dovecot/src/lib-imap \
-I/usr/include/dovecot/src/lib-index
Has anyone some suggestions for my problem?