From cb13a049b63e57791ac080074ce4d0dd3201782c Mon Sep 17 00:00:00 2001 From: Damien Regad Date: Fri, 8 Jan 2021 20:05:46 +0100 Subject: [PATCH] Allow S/MIME signature for all mail methods The original implementation only enabled S/MIME signature for PHPMAILER_METHOD_SMTP. Moving the call to PHPMailer::sign() out of the switch() statement, so it is also called when mail method is PHPMAILER_METHOD_SENDMAIL or PHPMAILER_METHOD_MAIL. Fixes #25764 --- core/email_api.php | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/core/email_api.php b/core/email_api.php index 33d68e16c8..0f52b4000c 100644 --- a/core/email_api.php +++ b/core/email_api.php @@ -1332,16 +1332,17 @@ 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; } + # S/MIME signature + $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' ) + ); + #apply DKIM settings if( config_get( 'email_dkim_enable' ) ) { $t_mail->DKIM_domain = config_get( 'email_dkim_domain' );