dovecot-2.2-pigeonhole: Adjusted to changes in Dovecot API regar...

pigeonhole at rename-it.nl pigeonhole at rename-it.nl
Mon Aug 20 10:13:47 EEST 2012


details:   http://hg.rename-it.nl/dovecot-2.2-pigeonhole/rev/02f24456eabf
changeset: 1655:02f24456eabf
user:      Stephan Bosch <stephan at rename-it.nl>
date:      Mon Aug 20 08:43:55 2012 +0200
description:
Adjusted to changes in Dovecot API regarding arrays and hash tables.
Also contains a few other small fixes by Timo.

diffstat:

 src/lib-sieve/cmd-redirect.c                               |   2 +-
 src/lib-sieve/edit-mail.c                                  |   2 +-
 src/lib-sieve/ext-envelope.c                               |  10 +-
 src/lib-sieve/plugins/body/ext-body-common.c               |   6 +-
 src/lib-sieve/plugins/editheader/ext-editheader-common.c   |   2 +-
 src/lib-sieve/plugins/enotify/ext-enotify-common.h         |   2 +-
 src/lib-sieve/plugins/environment/ext-environment-common.c |  13 +-
 src/lib-sieve/plugins/ihave/ext-ihave-binary.c             |   2 +-
 src/lib-sieve/plugins/ihave/ext-ihave-common.h             |   2 +-
 src/lib-sieve/plugins/ihave/tst-ihave.c                    |   2 +-
 src/lib-sieve/plugins/imap4flags/tag-flags.c               |   2 +-
 src/lib-sieve/plugins/include/ext-include-binary.c         |  34 +++-----
 src/lib-sieve/plugins/include/ext-include-common.c         |   2 +-
 src/lib-sieve/plugins/include/ext-include-common.h         |   2 +-
 src/lib-sieve/plugins/regex/mcht-regex.c                   |   2 +-
 src/lib-sieve/plugins/vacation/cmd-vacation.c              |   2 +-
 src/lib-sieve/plugins/variables/cmd-set.c                  |   2 +-
 src/lib-sieve/plugins/variables/ext-variables-common.c     |  29 +++----
 src/lib-sieve/plugins/variables/ext-variables-dump.c       |   2 +-
 src/lib-sieve/sieve-actions.c                              |   2 +-
 src/lib-sieve/sieve-ast.c                                  |   4 +-
 src/lib-sieve/sieve-binary-private.h                       |   8 +-
 src/lib-sieve/sieve-code-dumper.c                          |   2 +-
 src/lib-sieve/sieve-error.c                                |   2 +-
 src/lib-sieve/sieve-extensions.c                           |  51 ++++++-------
 src/lib-sieve/sieve-generator.c                            |   2 +-
 src/lib-sieve/sieve-generator.h                            |   2 +-
 src/lib-sieve/sieve-interpreter.c                          |   2 +-
 src/lib-sieve/sieve-match-types.c                          |   2 +-
 src/lib-sieve/sieve-message.c                              |   4 +-
 src/lib-sieve/sieve-result.c                               |  34 +++-----
 src/lib-sieve/sieve-stringlist.c                           |   2 +-
 src/lib-sieve/sieve-validator.c                            |  21 ++---
 src/managesieve/cmd-putscript.c                            |   3 +-
 src/managesieve/managesieve-capabilities.c                 |   2 +-
 src/managesieve/managesieve-commands.c                     |   2 +-
 src/testsuite/testsuite-log.c                              |   6 +-
 src/testsuite/testsuite-settings.c                         |  21 ++---
 src/testsuite/testsuite-smtp.c                             |   2 +-
 39 files changed, 131 insertions(+), 163 deletions(-)

diffs (truncated from 1084 to 300 lines):

diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/cmd-redirect.c
--- a/src/lib-sieve/cmd-redirect.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/cmd-redirect.c	Mon Aug 20 08:43:55 2012 +0200
@@ -338,7 +338,7 @@
 	/* Remove unwanted headers */
 	input = i_stream_create_header_filter
 		(input, HEADER_FILTER_EXCLUDE | HEADER_FILTER_NO_CR, hide_headers,
-			N_ELEMENTS(hide_headers), null_header_filter_callback, NULL);
+			N_ELEMENTS(hide_headers), *null_header_filter_callback, (void *)NULL);
 
 	T_BEGIN {
 		string_t *hdr = t_str_new(256);
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/edit-mail.c
--- a/src/lib-sieve/edit-mail.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/edit-mail.c	Mon Aug 20 08:43:55 2012 +0200
@@ -1224,7 +1224,7 @@
 	struct _header_index *header_idx;
 	struct _header_field_index *field_idx;
 	const char *const *headers;
-	ARRAY_DEFINE(header_values, const char *);
+	ARRAY(const char *) header_values;
 
 	if ( !edmail->modified || edmail->headers_head == NULL ) {
 		/* Unmodified */
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/ext-envelope.c
--- a/src/lib-sieve/ext-envelope.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/ext-envelope.c	Mon Aug 20 08:43:55 2012 +0200
@@ -183,7 +183,7 @@
 static const struct sieve_address *const *_from_part_get_addresses
 (const struct sieve_runtime_env *renv)
 {
-	ARRAY_DEFINE(envelope_values, const struct sieve_address *);
+	ARRAY(const struct sieve_address *) envelope_values;
 	const struct sieve_address *address =
 		sieve_message_get_sender_address(renv->msgctx);
 
@@ -202,7 +202,7 @@
 static const char *const *_from_part_get_values
 (const struct sieve_runtime_env *renv)
 {
-	ARRAY_DEFINE(envelope_values, const char *);
+	ARRAY(const char *) envelope_values;
 
 	t_array_init(&envelope_values, 2);
 
@@ -218,7 +218,7 @@
 static const struct sieve_address *const *_to_part_get_addresses
 (const struct sieve_runtime_env *renv)
 {
-	ARRAY_DEFINE(envelope_values, const struct sieve_address *);
+	ARRAY(const struct sieve_address *) envelope_values;
 	const struct sieve_address *address =
 		sieve_message_get_orig_recipient_address(renv->msgctx);
 
@@ -237,7 +237,7 @@
 static const char *const *_to_part_get_values
 (const struct sieve_runtime_env *renv)
 {
-	ARRAY_DEFINE(envelope_values, const char *);
+	ARRAY(const char *) envelope_values;
 
 	t_array_init(&envelope_values, 2);
 
@@ -253,7 +253,7 @@
 static const char *const *_auth_part_get_values
 (const struct sieve_runtime_env *renv)
 {
-	ARRAY_DEFINE(envelope_values, const char *);
+	ARRAY(const char *) envelope_values;
 
 	t_array_init(&envelope_values, 2);
 
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/body/ext-body-common.c
--- a/src/lib-sieve/plugins/body/ext-body-common.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/body/ext-body-common.c	Mon Aug 20 08:43:55 2012 +0200
@@ -43,8 +43,8 @@
 
 struct ext_body_message_context {
 	pool_t pool;
-	ARRAY_DEFINE(cached_body_parts, struct ext_body_part_cached);
-	ARRAY_DEFINE(return_body_parts, struct ext_body_part);
+	ARRAY(struct ext_body_part_cached) cached_body_parts;
+	ARRAY(struct ext_body_part) return_body_parts;
 	buffer_t *tmp_buffer;
 	buffer_t *raw_body;
 };
@@ -220,7 +220,7 @@
 	struct message_decoder_context *decoder;
 	struct message_block block, decoded;
 	struct message_part *parts, *prev_part = NULL;
-	ARRAY_DEFINE(part_index, struct message_part *);
+	ARRAY(struct message_part *) part_index;
 	struct istream *input;
 	unsigned int idx = 0;
 	bool save_body = FALSE, want_multipart, have_all;
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/editheader/ext-editheader-common.c
--- a/src/lib-sieve/plugins/editheader/ext-editheader-common.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/editheader/ext-editheader-common.c	Mon Aug 20 08:43:55 2012 +0200
@@ -29,7 +29,7 @@
 struct ext_editheader_config {
 	pool_t pool;
 
-	ARRAY_DEFINE(headers, struct ext_editheader_header);
+	ARRAY(struct ext_editheader_header) headers;
 
 	size_t max_header_size;
 };
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/enotify/ext-enotify-common.h
--- a/src/lib-sieve/plugins/enotify/ext-enotify-common.h	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/enotify/ext-enotify-common.h	Mon Aug 20 08:43:55 2012 +0200
@@ -22,7 +22,7 @@
 
 struct ext_enotify_context {
 	const struct sieve_extension *var_ext;
-	ARRAY_DEFINE(notify_methods, struct sieve_enotify_method);
+	ARRAY(struct sieve_enotify_method) notify_methods;
 };
 
 
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/environment/ext-environment-common.c
--- a/src/lib-sieve/plugins/environment/ext-environment-common.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/environment/ext-environment-common.c	Mon Aug 20 08:43:55 2012 +0200
@@ -10,7 +10,8 @@
 #include "ext-environment-common.h"
 
 struct ext_environment_context {
-	struct hash_table *environment_items;
+	HASH_TABLE(const char *,
+		   const struct sieve_environment_item *) environment_items;
 };
 
 /*
@@ -36,8 +37,7 @@
 (struct ext_environment_context *ectx,
 	const struct sieve_environment_item *item)
 {
-	hash_table_insert
-		(ectx->environment_items, (void *) item->name, (void *) item);
+	hash_table_insert(ectx->environment_items, item->name, item);
 }
 
 void sieve_ext_environment_item_register
@@ -61,8 +61,8 @@
 
 	unsigned int i;
 
-	ectx->environment_items = hash_table_create
-		(default_pool, default_pool, 0, str_hash, (hash_cmp_callback_t *)strcmp);
+	hash_table_create
+		(&ectx->environment_items, default_pool, 0, str_hash, strcmp);
 
 	for ( i = 0; i < core_env_items_count; i++ ) {
 		ext_environment_item_register(ectx, core_env_items[i]);
@@ -94,8 +94,7 @@
 	struct ext_environment_context *ectx =
 		(struct ext_environment_context *) ext->context;
 	const struct sieve_environment_item *item =
-		(const struct sieve_environment_item *)
-			hash_table_lookup(ectx->environment_items, name);
+		hash_table_lookup(ectx->environment_items, name);
 
 	if ( item == NULL )
 		return NULL;
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/ihave/ext-ihave-binary.c
--- a/src/lib-sieve/plugins/ihave/ext-ihave-binary.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/ihave/ext-ihave-binary.c	Mon Aug 20 08:43:55 2012 +0200
@@ -48,7 +48,7 @@
 	struct sieve_binary *binary;
 	struct sieve_binary_block *block;
 
-	ARRAY_DEFINE(missing_extensions, const char *);
+	ARRAY(const char *) missing_extensions;
 };
 
 static struct ext_ihave_binary_context *ext_ihave_binary_create_context
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/ihave/ext-ihave-common.h
--- a/src/lib-sieve/plugins/ihave/ext-ihave-common.h	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/ihave/ext-ihave-common.h	Mon Aug 20 08:43:55 2012 +0200
@@ -35,7 +35,7 @@
  */
 
 struct ext_ihave_ast_context {
-  ARRAY_DEFINE(missing_extensions, const char *);
+  ARRAY(const char *) missing_extensions;
 };
 
 struct ext_ihave_ast_context *ext_ihave_get_ast_context
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/ihave/tst-ihave.c
--- a/src/lib-sieve/plugins/ihave/tst-ihave.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/ihave/tst-ihave.c	Mon Aug 20 08:43:55 2012 +0200
@@ -51,7 +51,7 @@
 	struct sieve_ast_argument *stritem;
 	enum sieve_compile_flags cpflags = sieve_validator_compile_flags(valdtr);
 	bool no_global = ( (cpflags & SIEVE_COMPILE_FLAG_NOGLOBAL) != 0 );
-	ARRAY_DEFINE(capabilities, struct _capability);
+	ARRAY(struct _capability) capabilities;
 	struct _capability capability;
 	const struct _capability *caps;
 	unsigned int i, count;
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/imap4flags/tag-flags.c
--- a/src/lib-sieve/plugins/imap4flags/tag-flags.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/imap4flags/tag-flags.c	Mon Aug 20 08:43:55 2012 +0200
@@ -187,7 +187,7 @@
 /* Context data */
 
 struct seff_flags_context {
-	ARRAY_DEFINE(keywords, const char *);
+	ARRAY(const char *) keywords;
 	enum mail_flags flags;
 };
 
diff -r c5cebc7dbd6b -r 02f24456eabf src/lib-sieve/plugins/include/ext-include-binary.c
--- a/src/lib-sieve/plugins/include/ext-include-binary.c	Sun Aug 12 16:16:21 2012 +0200
+++ b/src/lib-sieve/plugins/include/ext-include-binary.c	Mon Aug 20 08:43:55 2012 +0200
@@ -53,8 +53,9 @@
 	struct sieve_binary *binary;
 	struct sieve_binary_block *dependency_block;
 
-	struct hash_table *included_scripts;
-	ARRAY_DEFINE(include_index, struct ext_include_script_info *);
+	HASH_TABLE(struct sieve_script *,
+		   struct ext_include_script_info *) included_scripts;
+	ARRAY(struct ext_include_script_info *) include_index;
 
 	struct sieve_variable_scope_binary *global_vars;
 
@@ -70,9 +71,8 @@
 		p_new(pool, struct ext_include_binary_context, 1);
 
 	ctx->binary = sbin;
-	ctx->included_scripts = hash_table_create(default_pool, pool, 0,
-		(hash_callback_t *) sieve_script_hash,
-		(hash_cmp_callback_t *) sieve_script_cmp);
+	hash_table_create(&ctx->included_scripts, pool, 0,
+		sieve_script_hash, sieve_script_cmp);
 	p_array_init(&ctx->include_index, pool, 128);
 
 	sieve_binary_extension_set(sbin, this_ext, &include_binary_ext, ctx);
@@ -137,8 +137,7 @@
 	/* Unreferenced on binary_free */
 	sieve_script_ref(script);
 
-	hash_table_insert
-		(binctx->included_scripts, (void *) script, (void *) incscript);
+	hash_table_insert(binctx->included_scripts, script, incscript);
 	array_append(&binctx->include_index, &incscript, 1);
 
 	return incscript;
@@ -148,7 +147,7 @@
 (struct ext_include_binary_context *binctx, struct sieve_script *script,
 	const struct ext_include_script_info **script_info_r)
 {
-	struct ext_include_script_info *incscript = (struct ext_include_script_info *)
+	struct ext_include_script_info *incscript =
 		hash_table_lookup(binctx->included_scripts, script);
 
 	if ( incscript == NULL )
@@ -175,8 +174,7 @@
 const struct ext_include_script_info *ext_include_binary_script_get
 (struct ext_include_binary_context *binctx, struct sieve_script *script)
 {
-	return (struct ext_include_script_info *)
-		hash_table_lookup(binctx->included_scripts, script);
+	return hash_table_lookup(binctx->included_scripts, script);
 }
 
 unsigned int ext_include_binary_script_get_count
@@ -360,16 +358,13 @@
 	struct ext_include_binary_context *binctx =
 		(struct ext_include_binary_context *) context;
 	struct hash_iterate_context *hctx;
-	void *key, *value;
+	struct sieve_script *script;
+	struct ext_include_script_info *incscript;
 
 	/* Release references to all included script objects */
 	hctx = hash_table_iterate_init(binctx->included_scripts);
-	while ( hash_table_iterate(hctx, &key, &value) ) {
-		struct ext_include_script_info *incscript =
-			(struct ext_include_script_info *) value;
-
+	while ( hash_table_iterate_t(hctx, binctx->included_scripts, &script, &incscript) )
 		sieve_script_unref(&incscript->script);
-	}
 	hash_table_iterate_deinit(&hctx);
 
 	hash_table_destroy(&binctx->included_scripts);
@@ -389,15 +384,14 @@
 	struct ext_include_binary_context *binctx =
 		ext_include_binary_get_context(ext, sbin);
 	struct hash_iterate_context *hctx;
-	void *key, *value;
+	struct sieve_script *script;
+	struct ext_include_script_info *incscript;
 
 	if ( !ext_include_variables_dump(denv, binctx->global_vars) )
 		return FALSE;
 
 	hctx = hash_table_iterate_init(binctx->included_scripts);
-	while ( hash_table_iterate(hctx, &key, &value) ) {


More information about the dovecot-cvs mailing list