diff --git a/config_defaults_inc.php b/config_defaults_inc.php index 5b73c87c93..a0bb50fd66 100644 --- a/config_defaults_inc.php +++ b/config_defaults_inc.php @@ -756,6 +756,36 @@ */ $g_email_dkim_identity = 'noreply@example.com'; +/** + * Path to mail certification file + * + * @global string $g_email_smime_cert_file + */ +$g_email_smime_cert_file = ''; + +/** + * Path to mail private key file + * + * @see $g_email_smime_cert_file + * + * @global string $g_email_smime_key_file + */ +$g_email_smime_key_file = ''; + +/** + * mail private key pass + * + * @global string $g_email_smime_key_password + */ +$g_email_smime_key_password = ''; + +/** + * Path to mail extra certification file + * + * @global string $g_email_smime_extracerts_file + */ +$g_email_smime_extracerts_file = ''; + /** * It is recommended to use a cronjob or a scheduler task to send emails. The * cronjob should typically run every 5 minutes. If no cronjob is used,then @@ -4326,7 +4356,9 @@ 'impersonate_user_threshold', 'email_retry_in_days', 'neato_tool', 'dot_tool', 'ldap_server', 'ldap_root_dn', 'ldap_organization', 'ldap_protocol_version', 'ldap_network_timeout', 'ldap_follow_referrals', 'ldap_bind_dn', 'ldap_bind_passwd', - 'ldap_uid_field', 'ldap_realname_field', 'use_ldap_realname', 'use_ldap_email' + 'ldap_uid_field', 'ldap_realname_field', 'use_ldap_realname', 'use_ldap_email', + 'email_smime_cert_file', 'email_smime_key_file', 'email_smime_key_password', + 'email_smime_extracerts_file', ); /** diff --git a/core/email_api.php b/core/email_api.php index 26cda3c336..33d68e16c8 100644 --- a/core/email_api.php +++ b/core/email_api.php @@ -1332,6 +1332,13 @@ function email_send( EmailData $p_email_data ) { $t_mail->Port = config_get( 'smtp_port' ); + $t_mail->sign( + config_get_global( 'email_smime_cert_file' ), + config_get_global( 'email_smime_key_file' ), + config_get_global( 'email_smime_key_password' ), + config_get_global( 'email_smime_extracerts_file' ) + ); + break; }