]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
mail-crypt: Use master_service_settings_get_or_fatal()
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Thu, 5 Jan 2023 09:32:03 +0000 (11:32 +0200)
committerTimo Sirainen <timo.sirainen@open-xchange.com>
Mon, 20 Nov 2023 12:11:41 +0000 (14:11 +0200)
src/plugins/mail-crypt/fs-crypt-settings.c
src/plugins/mail-crypt/fs-crypt-settings.h
src/plugins/mail-crypt/mail-crypt-pluginenv.c

index 2b7293f4b0d5de42032b9dced0ba19a937af999c..dffc3cf7fcfbc8884b0e5f59c0c7362f7bf2534a 100644 (file)
@@ -28,5 +28,6 @@ const struct setting_parser_info fs_crypt_setting_parser_info = {
        .defaults = &fs_crypt_default_settings,
 
        .struct_size = sizeof(struct fs_crypt_settings),
+       .pool_offset1 = 1 + offsetof(struct fs_crypt_settings, pool),
        .dependencies = fs_crypt_setting_dependencies
 };
index df1a7b19add1d8fa7c3e5752dac89805815d997f..e1aa94b1606bfe770f774b373204c461aeb8f1aa 100644 (file)
@@ -2,6 +2,7 @@
 #define FS_CRYPT_SETTINGS_H
 
 struct fs_crypt_settings {
+       pool_t pool;
        ARRAY(const char *) plugin_envs;
 };
 
index 08203a815797f84281393c26fa02eee3b9f1d93e..be814b59d532746175ef46f309a9dd16666efb4e 100644 (file)
@@ -23,11 +23,12 @@ fs_crypt_load_settings(void)
        i_zero(&input);
        input.roots = set_roots;
        input.service = "fs-crypt";
+       input.disable_check_settings = TRUE;
        if (master_service_settings_read(master_service, &input,
                                         &output, &error) < 0)
                i_fatal("%s", error);
 
-       return master_service_settings_get_root_set(master_service,
+       return master_service_settings_get_or_fatal(NULL,
                                &fs_crypt_setting_parser_info);
 }
 
@@ -103,5 +104,6 @@ int mail_crypt_global_keys_load_pluginenv(const char *set_prefix,
 
        if (ret != 0)
                mail_crypt_global_keys_free(global_keys_r);
+       master_service_settings_free(set);
        return ret;
 }