diff options
Diffstat (limited to 'src/lib.rs')
-rw-r--r-- | src/lib.rs | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -7,7 +7,7 @@ use std::{ use anyhow::Context; use db::Db; use futures::Future; -use lettre::message::Mailbox; +use lettre::{message::Mailbox, transport::smtp::authentication::Credentials}; use mailer::Mailer; use push::PushClient; use rocket::{ @@ -71,6 +71,8 @@ struct Config { mail_from: Mailbox, mail_host: Option<String>, mail_port: Option<u16>, + mail_user: Option<String>, + mail_password: Option<String>, #[serde(default)] mail_starttls: bool, @@ -253,6 +255,10 @@ pub async fn build( config.mail_host.as_deref().unwrap_or("localhost"), config.mail_port.unwrap_or(25), config.mail_starttls, + match (config.mail_user.clone(), config.mail_password.clone()) { + (Some(user), Some(pw)) => Some(Credentials::new(user, pw)), + _ => None, + }, config.location.clone(), ) .context("setting up mail notifications")?, |