diff --git a/crates/smtp/src/outbound/session.rs b/crates/smtp/src/outbound/session.rs index 7087a847..eb8c4420 100644 --- a/crates/smtp/src/outbound/session.rs +++ b/crates/smtp/src/outbound/session.rs @@ -63,7 +63,7 @@ impl Message { params: SessionParams<'_>, ) -> Status<(), Error> { // Obtain capabilities - let mut capabilities = match say_helo(&mut smtp_client, ¶ms).await { + let capabilities = match say_helo(&mut smtp_client, ¶ms).await { Ok(capabilities) => capabilities, Err(status) => { tracing::info!( @@ -93,7 +93,8 @@ impl Message { } // Refresh capabilities - capabilities = match say_helo(&mut smtp_client, ¶ms).await { + // Disabled as some SMTP servers deauthenticate after EHLO + /*capabilities = match say_helo(&mut smtp_client, ¶ms).await { Ok(capabilities) => capabilities, Err(status) => { tracing::info!( @@ -106,7 +107,7 @@ impl Message { quit(smtp_client).await; return status; } - }; + };*/ } // MAIL FROM diff --git a/crates/utils/src/lib.rs b/crates/utils/src/lib.rs index 10117e5c..03371ee8 100644 --- a/crates/utils/src/lib.rs +++ b/crates/utils/src/lib.rs @@ -58,6 +58,7 @@ impl UnwrapFailure for Option { match self { Some(result) => result, None => { + tracing::error!("{message}"); eprintln!("{message}"); std::process::exit(1); } @@ -70,6 +71,8 @@ impl UnwrapFailure for Result { match self { Ok(result) => result, Err(err) => { + tracing::error!("{message}: {err}"); + #[cfg(feature = "test_mode")] panic!("{message}: {err}"); @@ -84,6 +87,7 @@ impl UnwrapFailure for Result { } pub fn failed(message: &str) -> ! { + tracing::error!("{message}"); eprintln!("{message}"); std::process::exit(1); }