]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-ssl-iostream: Add ssl_client_key_password setting
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Fri, 16 Feb 2024 05:25:46 +0000 (07:25 +0200)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Wed, 12 Feb 2025 10:34:12 +0000 (12:34 +0200)
src/lib-ssl-iostream/ssl-settings.c
src/lib-ssl-iostream/ssl-settings.h

index 3436f857a065dca22f7776471b560f0613b0c783..0fd7c89ca529fdb7df22b519f1df784dbe7dd707 100644 (file)
@@ -18,6 +18,7 @@ static const struct setting_define ssl_setting_defines[] = {
        DEF(STR, ssl_client_ca_dir),
        DEF(FILE, ssl_client_cert_file),
        DEF(FILE, ssl_client_key_file),
+       DEF(STR, ssl_client_key_password),
 
        DEF(STR, ssl_cipher_list),
        DEF(STR, ssl_cipher_suites),
@@ -36,6 +37,7 @@ const struct ssl_settings ssl_default_settings = {
        .ssl_client_ca_dir = "",
        .ssl_client_cert_file = "",
        .ssl_client_key_file = "",
+       .ssl_client_key_password = "",
 
        .ssl_cipher_list = "ALL:!kRSA:!SRP:!kDHd:!DSS:!aNULL:!eNULL:!EXPORT:!DES:!3DES:!MD5:!PSK:!RC4:!ADH:!LOW@STRENGTH",
        .ssl_cipher_suites = "", /* Use TLS library provided value */
@@ -195,6 +197,7 @@ void ssl_client_settings_to_iostream_set(
                          set->pool, &set->cert.cert);
        settings_file_get(ssl_set->ssl_client_key_file,
                          set->pool, &set->cert.key);
+       set->cert.key_password = ssl_set->ssl_client_key_password;
        set->verify_remote_cert = ssl_set->ssl_client_require_valid_cert;
        set->allow_invalid_cert = !set->verify_remote_cert;
        /* client-side CRL checking not supported currently */
index 1c8b66092e271ae37283d576946a2631c7d03006..22024887824fbfa00415e497d408377396c54c57 100644 (file)
@@ -10,6 +10,7 @@ struct ssl_settings {
        const char *ssl_client_ca_dir;
        const char *ssl_client_cert_file;
        const char *ssl_client_key_file;
+       const char *ssl_client_key_password;
 
        const char *ssl_cipher_list;
        const char *ssl_cipher_suites;