From ba2e4994fd227d07e490b0b52efba233b752b396 Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan.bosch@open-xchange.com> Date: Tue, 27 Aug 2024 19:57:12 +0200 Subject: [PATCH] testsuite: testsuite-settings - Drop old settings infrastructure --- src/testsuite/testsuite-settings.c | 90 ++++++------------------------ src/testsuite/testsuite-settings.h | 1 - src/testsuite/testsuite.c | 1 - 3 files changed, 16 insertions(+), 76 deletions(-) diff --git a/src/testsuite/testsuite-settings.c b/src/testsuite/testsuite-settings.c index a1b6b5c6c..025b4dbdb 100644 --- a/src/testsuite/testsuite-settings.c +++ b/src/testsuite/testsuite-settings.c @@ -2,9 +2,6 @@ */ #include "lib.h" -#include "hash.h" -#include "imem.h" -#include "strfuncs.h" #include "settings.h" #include "mail-user.h" @@ -16,49 +13,21 @@ #include "testsuite-mailstore.h" #include "testsuite-settings.h" -struct testsuite_setting { - char *identifier; - char *value; -}; - -static HASH_TABLE(const char *, struct testsuite_setting *) settings; - static const char * testsuite_setting_get(struct sieve_instance *svinst, void *context, const char *identifier); void testsuite_settings_init(void) { - hash_table_create(&settings, default_pool, 0, str_hash, strcmp); - sieve_tool_set_setting_callback(sieve_tool, testsuite_setting_get, NULL); } -void testsuite_settings_deinit(void) -{ - struct hash_iterate_context *itx = - hash_table_iterate_init(settings); - const char *key; - struct testsuite_setting *setting; - - while (hash_table_iterate(itx, settings, &key, &setting)) { - i_free(setting->identifier); - i_free(setting->value); - i_free(setting); - } - - hash_table_iterate_deinit(&itx); - - hash_table_destroy(&settings); -} - static const char * testsuite_setting_get(struct sieve_instance *svinst, void *context ATTR_UNUSED, const char *identifier) { const struct sieve_settings *svset = svinst->set; - struct testsuite_setting *setting; struct mail_user *user; if (strcmp(identifier, "sieve_max_script_size") == 0) @@ -78,10 +47,6 @@ testsuite_setting_get(struct sieve_instance *svinst, void *context ATTR_UNUSED, else if (strcmp(identifier, "sieve_user_email") == 0) return svset->user_email; - setting = hash_table_lookup(settings, identifier); - if (setting != NULL) - return setting->value; - user = testsuite_mailstore_get_user(); if (user == NULL) return NULL; @@ -92,51 +57,28 @@ void testsuite_setting_set(const char *identifier, const char *value) { struct sieve_instance *svinst = testsuite_sieve_instance; - if (svinst != NULL) { - struct settings_root *set_root; - - set_root = settings_root_find(svinst->event); - settings_root_override_remove(set_root, identifier, - SETTINGS_OVERRIDE_TYPE_CODE); - settings_root_override(set_root, identifier, value, - SETTINGS_OVERRIDE_TYPE_CODE); - } - - struct testsuite_setting *setting = - hash_table_lookup(settings, identifier); - - if (setting != NULL) { - i_free(setting->value); - setting->value = i_strdup(value); - } else { - setting = i_new(struct testsuite_setting, 1); - setting->identifier = i_strdup(identifier); - setting->value = i_strdup(value); - - hash_table_insert(settings, identifier, setting); - } + if (svinst == NULL) + return; + + struct settings_root *set_root; + + set_root = settings_root_find(svinst->event); + settings_root_override_remove(set_root, identifier, + SETTINGS_OVERRIDE_TYPE_CODE); + settings_root_override(set_root, identifier, value, + SETTINGS_OVERRIDE_TYPE_CODE); } void testsuite_setting_unset(const char *identifier) { struct sieve_instance *svinst = testsuite_sieve_instance; - if (svinst != NULL) { - struct settings_root *set_root; - - set_root = settings_root_find(svinst->event); - settings_root_override_remove(set_root, identifier, - SETTINGS_OVERRIDE_TYPE_CODE); - } - - struct testsuite_setting *setting = - hash_table_lookup(settings, identifier); + if (svinst == NULL) + return; - if (setting != NULL) { - i_free(setting->identifier); - i_free(setting->value); - i_free(setting); + struct settings_root *set_root; - hash_table_remove(settings, identifier); - } + set_root = settings_root_find(svinst->event); + settings_root_override_remove(set_root, identifier, + SETTINGS_OVERRIDE_TYPE_CODE); } diff --git a/src/testsuite/testsuite-settings.h b/src/testsuite/testsuite-settings.h index b84e62095..1a205ce6b 100644 --- a/src/testsuite/testsuite-settings.h +++ b/src/testsuite/testsuite-settings.h @@ -4,7 +4,6 @@ #include "sieve-common.h" void testsuite_settings_init(void); -void testsuite_settings_deinit(void); void testsuite_setting_set(const char *identifier, const char *value); void testsuite_setting_unset(const char *identifier); diff --git a/src/testsuite/testsuite.c b/src/testsuite/testsuite.c index d556297ee..5e3ad78ec 100644 --- a/src/testsuite/testsuite.c +++ b/src/testsuite/testsuite.c @@ -309,7 +309,6 @@ int main(int argc, char **argv) /* De-initialize testsuite */ testsuite_deinit(); - testsuite_settings_deinit(); sieve_tool_deinit(&sieve_tool); -- GitLab