dovecot-2.2-pigeonhole: lib-sieve: variables extension: Added as...
pigeonhole at rename-it.nl
pigeonhole at rename-it.nl
Mon Aug 17 21:51:41 UTC 2015
details: http://hg.rename-it.nl/dovecot-2.2-pigeonhole/rev/652aec3e8440
changeset: 2088:652aec3e8440
user: Stephan Bosch <stephan at rename-it.nl>
date: Mon Aug 17 23:51:35 2015 +0200
description:
lib-sieve: variables extension: Added asserts to extension API to make sure variables extension instance gets passed as argument.
diffstat:
src/lib-sieve/plugins/variables/ext-variables-common.c | 13 ++++++++++---
src/lib-sieve/plugins/variables/ext-variables-dump.c | 6 ++++--
src/lib-sieve/plugins/variables/ext-variables-namespaces.c | 1 +
src/lib-sieve/plugins/variables/ext-variables-operands.c | 3 +++
4 files changed, 18 insertions(+), 5 deletions(-)
diffs (80 lines):
diff -r c07900b0d045 -r 652aec3e8440 src/lib-sieve/plugins/variables/ext-variables-common.c
--- a/src/lib-sieve/plugins/variables/ext-variables-common.c Mon Aug 17 23:41:05 2015 +0200
+++ b/src/lib-sieve/plugins/variables/ext-variables-common.c Mon Aug 17 23:51:35 2015 +0200
@@ -608,8 +608,10 @@
struct ext_variables_validator_context *ext_variables_validator_context_get
(const struct sieve_extension *this_ext, struct sieve_validator *valdtr)
{
- struct ext_variables_validator_context *ctx =
- (struct ext_variables_validator_context *)
+ struct ext_variables_validator_context *ctx;
+
+ i_assert( sieve_extension_is(this_ext, variables_extension) );
+ ctx = (struct ext_variables_validator_context *)
sieve_validator_extension_get_context(valdtr, this_ext);
if ( ctx == NULL ) {
@@ -768,8 +770,13 @@
ext_variables_interpreter_context_get
(const struct sieve_extension *this_ext, struct sieve_interpreter *interp)
{
- return (struct ext_variables_interpreter_context *)
+ struct ext_variables_interpreter_context *ctx;
+
+ i_assert( sieve_extension_is(this_ext, variables_extension) );
+ ctx = (struct ext_variables_interpreter_context *)
sieve_interpreter_extension_get_context(interp, this_ext);
+
+ return ctx;
}
struct sieve_variable_storage *sieve_ext_variables_runtime_get_storage
diff -r c07900b0d045 -r 652aec3e8440 src/lib-sieve/plugins/variables/ext-variables-dump.c
--- a/src/lib-sieve/plugins/variables/ext-variables-dump.c Mon Aug 17 23:41:05 2015 +0200
+++ b/src/lib-sieve/plugins/variables/ext-variables-dump.c Mon Aug 17 23:51:35 2015 +0200
@@ -49,10 +49,12 @@
(const struct sieve_extension *this_ext, const struct sieve_dumptime_env *denv)
{
struct sieve_code_dumper *dumper = denv->cdumper;
- struct ext_variables_dump_context *dctx = sieve_dump_extension_get_context
- (dumper, this_ext);
+ struct ext_variables_dump_context *dctx;
pool_t pool;
+ i_assert( sieve_extension_is(this_ext, variables_extension) );
+ dctx = sieve_dump_extension_get_context(dumper, this_ext);
+
if ( dctx == NULL ) {
/* Create dumper context */
pool = sieve_code_dumper_pool(dumper);
diff -r c07900b0d045 -r 652aec3e8440 src/lib-sieve/plugins/variables/ext-variables-namespaces.c
--- a/src/lib-sieve/plugins/variables/ext-variables-namespaces.c Mon Aug 17 23:41:05 2015 +0200
+++ b/src/lib-sieve/plugins/variables/ext-variables-namespaces.c Mon Aug 17 23:51:35 2015 +0200
@@ -182,6 +182,7 @@
const struct sieve_extension *ext,
const struct sieve_variables_namespace_def *nspc_def)
{
+ i_assert( sieve_extension_is(var_ext, variables_extension) );
sieve_operand_emit(sblock, var_ext, &namespace_variable_operand);
sieve_opr_object_emit(sblock, ext, &nspc_def->obj_def);
}
diff -r c07900b0d045 -r 652aec3e8440 src/lib-sieve/plugins/variables/ext-variables-operands.c
--- a/src/lib-sieve/plugins/variables/ext-variables-operands.c Mon Aug 17 23:41:05 2015 +0200
+++ b/src/lib-sieve/plugins/variables/ext-variables-operands.c Mon Aug 17 23:51:35 2015 +0200
@@ -52,6 +52,8 @@
(struct sieve_binary_block *sblock, const struct sieve_extension *var_ext,
struct sieve_variable *var)
{
+ i_assert( sieve_extension_is(var_ext, variables_extension) );
+
if ( var->ext == NULL ) {
/* Default variable storage */
(void) sieve_operand_emit(sblock, var_ext, &variable_operand);
@@ -222,6 +224,7 @@
(struct sieve_binary_block *sblock, const struct sieve_extension *var_ext,
unsigned int index)
{
+ i_assert( sieve_extension_is(var_ext, variables_extension) );
(void) sieve_operand_emit(sblock, var_ext, &match_value_operand);
(void) sieve_binary_emit_unsigned(sblock, index);
}
More information about the dovecot-cvs
mailing list