diff --git a/src/lib-sieve-tool/sieve-tool.c b/src/lib-sieve-tool/sieve-tool.c index 286a68e1f96b73d41b6537f8fd5535834a7b0139..37be1cc446d35efab92a3c0f50b4a9762696d24c 100644 --- a/src/lib-sieve-tool/sieve-tool.c +++ b/src/lib-sieve-tool/sieve-tool.c @@ -68,12 +68,14 @@ struct sieve_tool *sieve_tool; */ static const char * -sieve_tool_sieve_get_setting(void *context, const char *identifier) +sieve_tool_sieve_get_setting(struct sieve_instance *svinst, void *context, + const char *identifier) { struct sieve_tool *tool = (struct sieve_tool *)context; if (tool->setting_callback != NULL) { - return tool->setting_callback(tool->setting_callback_context, + return tool->setting_callback(svinst, + tool->setting_callback_context, identifier); } @@ -83,7 +85,9 @@ sieve_tool_sieve_get_setting(void *context, const char *identifier) return mail_user_plugin_getenv(tool->mail_user_dovecot, identifier); } -static const char *sieve_tool_sieve_get_homedir(void *context) +static const char * +sieve_tool_sieve_get_homedir(struct sieve_instance *svinst ATTR_UNUSED, + void *context) { struct sieve_tool *tool = (struct sieve_tool *)context; diff --git a/src/lib-sieve-tool/sieve-tool.h b/src/lib-sieve-tool/sieve-tool.h index 49241ea4ff9316f8830b1d0a5060e675d60e35d9..bf2f9655781e2948efc826367fe0a4718ba9c1a0 100644 --- a/src/lib-sieve-tool/sieve-tool.h +++ b/src/lib-sieve-tool/sieve-tool.h @@ -8,7 +8,8 @@ */ typedef const char * -(*sieve_tool_setting_callback_t)(void *context, const char *identifier); +(*sieve_tool_setting_callback_t)(struct sieve_instance *svinst, + void *context, const char *identifier); /* * Global variables diff --git a/src/lib-sieve/sieve-settings.old.h b/src/lib-sieve/sieve-settings.old.h index 371e9676a2df4650ba26b7df702154813c699884..a5457ec93f8bb1bc162e15bd2edd39e7c17e2ec2 100644 --- a/src/lib-sieve/sieve-settings.old.h +++ b/src/lib-sieve/sieve-settings.old.h @@ -15,7 +15,7 @@ sieve_setting_get(struct sieve_instance *svinst, const char *identifier) if (callbacks == NULL || callbacks->get_setting == NULL) return NULL; - return callbacks->get_setting(svinst->context, identifier); + return callbacks->get_setting(svinst, svinst->context, identifier); } bool sieve_setting_get_uint_value(struct sieve_instance *svinst, @@ -51,7 +51,7 @@ sieve_environment_get_homedir(struct sieve_instance *svinst) if (callbacks == NULL || callbacks->get_homedir == NULL) return NULL; - return callbacks->get_homedir(svinst->context); + return callbacks->get_homedir(svinst, svinst->context); } #endif diff --git a/src/lib-sieve/sieve-types.h b/src/lib-sieve/sieve-types.h index 7bc21d7a4b5098a59a49a9acd9ed368cd167a8d9..bb1cb85711f95361c0786d483b9edd2b67be2549 100644 --- a/src/lib-sieve/sieve-types.h +++ b/src/lib-sieve/sieve-types.h @@ -77,8 +77,11 @@ struct sieve_environment { */ struct sieve_callbacks { - const char *(*get_homedir)(void *context); - const char *(*get_setting)(void *context, const char *identifier); + const char * + (*get_homedir)(struct sieve_instance *svinst, void *context); + const char * + (*get_setting)(struct sieve_instance *svinst, void *context, + const char *identifier); }; /* diff --git a/src/managesieve/managesieve-capabilities.c b/src/managesieve/managesieve-capabilities.c index cc70e521a364062a8969df87f820da36c5d58b66..8558e1981d2a768a167788f9ff0ad7bd5851d373 100644 --- a/src/managesieve/managesieve-capabilities.c +++ b/src/managesieve/managesieve-capabilities.c @@ -43,7 +43,9 @@ plugin_settings_get(const struct plugin_settings *set, const char *identifier) * Sieve environment */ -static const char *sieve_get_setting(void *context, const char *identifier) +static const char * +sieve_get_setting(struct sieve_instance *svinst ATTR_UNUSED, void *context, + const char *identifier) { const struct plugin_settings *set = context; diff --git a/src/managesieve/managesieve-client.c b/src/managesieve/managesieve-client.c index 8676a8b51a1cdae89c980cafd8d999247cbfef8f..72594610810ce5ab510841948618a62a2f626314 100644 --- a/src/managesieve/managesieve-client.c +++ b/src/managesieve/managesieve-client.c @@ -35,7 +35,8 @@ struct client *managesieve_clients = NULL; unsigned int managesieve_client_count = 0; static const char * -managesieve_sieve_get_setting(void *context, const char *identifier) +managesieve_sieve_get_setting(struct sieve_instance *svinst ATTR_UNUSED, + void *context, const char *identifier) { struct mail_user *mail_user = (struct mail_user *) context; diff --git a/src/plugins/doveadm-sieve/doveadm-sieve-cmd.c b/src/plugins/doveadm-sieve/doveadm-sieve-cmd.c index 7d98d1e02a52faf55125212950c203e90b67632d..53127b90b72be9cbc0b5a5791c73cbfa85593d7e 100644 --- a/src/plugins/doveadm-sieve/doveadm-sieve-cmd.c +++ b/src/plugins/doveadm-sieve/doveadm-sieve-cmd.c @@ -62,7 +62,8 @@ void doveadm_sieve_cmd_failed_storage(struct doveadm_sieve_cmd_context *ctx, } static const char * -doveadm_sieve_cmd_get_setting(void *context, const char *identifier) +doveadm_sieve_cmd_get_setting(struct sieve_instance *svinst ATTR_UNUSED, + void *context, const char *identifier) { struct doveadm_sieve_cmd_context *ctx = (struct doveadm_sieve_cmd_context *)context; diff --git a/src/plugins/doveadm-sieve/doveadm-sieve-sync.c b/src/plugins/doveadm-sieve/doveadm-sieve-sync.c index 2bf277a7f1092661f23dcaa83f9976a55fa361a7..2b1cae32fc0767b078ac9406cfdd60a460d8dd37 100644 --- a/src/plugins/doveadm-sieve/doveadm-sieve-sync.c +++ b/src/plugins/doveadm-sieve/doveadm-sieve-sync.c @@ -45,7 +45,8 @@ static MODULE_CONTEXT_DEFINE_INIT(sieve_user_module, &mail_user_module_register); static const char * -mail_sieve_get_setting(void *context, const char *identifier) +mail_sieve_get_setting(struct sieve_instance *svinst ATTR_UNUSED, void *context, + const char *identifier) { struct mail_user *mail_user = context; diff --git a/src/plugins/imap-filter-sieve/imap-filter-sieve.c b/src/plugins/imap-filter-sieve/imap-filter-sieve.c index eb2c9caa04c5172d8cdf47f3707ac8ff8a0a0b8b..cc3cb51ab11936c2fe4d85d3966b7c483d58de95 100644 --- a/src/plugins/imap-filter-sieve/imap-filter-sieve.c +++ b/src/plugins/imap-filter-sieve/imap-filter-sieve.c @@ -59,7 +59,8 @@ static MODULE_CONTEXT_DEFINE_INIT(imap_filter_sieve_user_module, */ static const char * -imap_filter_sieve_get_setting(void *context, const char *identifier) +imap_filter_sieve_get_setting(struct sieve_instance *svinst ATTR_UNUSED, + void *context, const char *identifier) { struct imap_filter_sieve_user *ifsuser = context; struct mail_user *user = ifsuser->client->user; diff --git a/src/plugins/imapsieve/imap-sieve.c b/src/plugins/imapsieve/imap-sieve.c index 8bb20c33cafe120cda24e601f7f4272e5c5b50e3..da669675cc8365a97f13305c61c3e83b9b827842 100644 --- a/src/plugins/imapsieve/imap-sieve.c +++ b/src/plugins/imapsieve/imap-sieve.c @@ -48,7 +48,8 @@ struct imap_sieve { }; static const char * -mail_sieve_get_setting(void *context, const char *identifier) +mail_sieve_get_setting(struct sieve_instance *svinst ATTR_UNUSED, void *context, + const char *identifier) { struct imap_sieve *isieve = context; struct mail_user *user = isieve->client->user; diff --git a/src/plugins/lda-sieve/lda-sieve-plugin.c b/src/plugins/lda-sieve/lda-sieve-plugin.c index 804d5baaf21b8d53fa6a68271a4873a1876126e7..0868badee643f54b4d1c5970eb16289dc86c21e3 100644 --- a/src/plugins/lda-sieve/lda-sieve-plugin.c +++ b/src/plugins/lda-sieve/lda-sieve-plugin.c @@ -45,7 +45,8 @@ static deliver_mail_func_t *next_deliver_mail; */ static const char * -lda_sieve_get_setting(void *context, const char *identifier) +lda_sieve_get_setting(struct sieve_instance *svinst ATTR_UNUSED, void *context, + const char *identifier) { struct mail_deliver_context *mdctx = (struct mail_deliver_context *)context; diff --git a/src/testsuite/testsuite-settings.c b/src/testsuite/testsuite-settings.c index 5f2625f10729822ad290f31dfeb6e07eddcecc8a..51d7d3eeb7b9cf32c09861f8d3d87667c7cb1852 100644 --- a/src/testsuite/testsuite-settings.c +++ b/src/testsuite/testsuite-settings.c @@ -20,7 +20,9 @@ struct testsuite_setting { static HASH_TABLE(const char *, struct testsuite_setting *) settings; -static const char *testsuite_setting_get(void *context, const char *identifier); +static const char * +testsuite_setting_get(struct sieve_instance *svinst, void *context, + const char *identifier); void testsuite_settings_init(void) { @@ -49,7 +51,8 @@ void testsuite_settings_deinit(void) } static const char * -testsuite_setting_get(void *context ATTR_UNUSED, const char *identifier) +testsuite_setting_get(struct sieve_instance *svinst ATTR_UNUSED, + void *context ATTR_UNUSED, const char *identifier) { struct testsuite_setting *setting; struct mail_user *user;