Mercurial > dovecot > core-2.2
annotate src/plugins/quota/quota-plugin.h @ 23017:c1d36f2575c7 default tip
lib-imap: Fix "Don't accept strings with NULs" cherry-pick
author | Timo Sirainen <timo.sirainen@open-xchange.com> |
---|---|
date | Thu, 29 Aug 2019 09:55:25 +0300 |
parents | c92414173290 |
children |
rev | line source |
---|---|
6410
e4eb71ae8e96
Changed .h ifdef/defines to use <NAME>_H format.
Timo Sirainen <tss@iki.fi>
parents:
5448
diff
changeset
|
1 #ifndef QUOTA_PLUGIN_H |
e4eb71ae8e96
Changed .h ifdef/defines to use <NAME>_H format.
Timo Sirainen <tss@iki.fi>
parents:
5448
diff
changeset
|
2 #define QUOTA_PLUGIN_H |
3738
732b62dc1976
Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
3 |
9004
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
4 #include "module-context.h" |
10860 | 5 #include "mail-user.h" |
9004
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
6 |
10412
a9eda7672869
lib-storage: Plugin hook API changed to support per-user plugins within a process.
Timo Sirainen <tss@iki.fi>
parents:
9129
diff
changeset
|
7 struct module; |
10860 | 8 struct mailbox; |
11945
c92414173290
quota: Use mailbox_list_created hook to override list methods.
Timo Sirainen <tss@iki.fi>
parents:
11488
diff
changeset
|
9 struct mailbox_list; |
11488
4b20e692c606
lib-storage: Plugin API changed to run plugin functions in correct order.
Timo Sirainen <tss@iki.fi>
parents:
10860
diff
changeset
|
10 struct mail; |
10412
a9eda7672869
lib-storage: Plugin hook API changed to support per-user plugins within a process.
Timo Sirainen <tss@iki.fi>
parents:
9129
diff
changeset
|
11 |
9004
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
12 #define QUOTA_USER_CONTEXT(obj) \ |
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
13 MODULE_CONTEXT(obj, quota_user_module) |
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
14 |
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
15 struct quota_user { |
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
16 union mail_user_module_context module_ctx; |
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
17 |
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
18 struct quota *quota; |
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
19 }; |
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
20 |
3738
732b62dc1976
Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
21 struct mail_storage; |
732b62dc1976
Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
22 |
9004
a5555606846b
Fixed plugins to work with config rewrite.
Timo Sirainen <tss@iki.fi>
parents:
8082
diff
changeset
|
23 extern MODULE_CONTEXT_DEFINE(quota_user_module, &mail_user_module_register); |
3738
732b62dc1976
Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
24 |
8082
db66611fd195
Added struct mail_user and fixed the code to support multiple users per process.
Timo Sirainen <tss@iki.fi>
parents:
6410
diff
changeset
|
25 void quota_mail_user_created(struct mail_user *user); |
11945
c92414173290
quota: Use mailbox_list_created hook to override list methods.
Timo Sirainen <tss@iki.fi>
parents:
11488
diff
changeset
|
26 void quota_mailbox_list_created(struct mailbox_list *list); |
9129
f9c07af22f91
Implemented support for per-namespace quotas. Can be used with public namespaces.
Timo Sirainen <tss@iki.fi>
parents:
9004
diff
changeset
|
27 void quota_mail_namespaces_created(struct mail_namespace *namespaces); |
10515
8e9e67a94e16
plugins: Simplified code by using mailbox_allocated hook.
Timo Sirainen <tss@iki.fi>
parents:
10484
diff
changeset
|
28 void quota_mailbox_allocated(struct mailbox *box); |
11488
4b20e692c606
lib-storage: Plugin API changed to run plugin functions in correct order.
Timo Sirainen <tss@iki.fi>
parents:
10860
diff
changeset
|
29 void quota_mail_allocated(struct mail *mail); |
3738
732b62dc1976
Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
30 |
10412
a9eda7672869
lib-storage: Plugin hook API changed to support per-user plugins within a process.
Timo Sirainen <tss@iki.fi>
parents:
9129
diff
changeset
|
31 void quota_plugin_init(struct module *module); |
3738
732b62dc1976
Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
32 void quota_plugin_deinit(void); |
732b62dc1976
Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
33 |
732b62dc1976
Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
34 #endif |