vw_small

Hardened fork of Vaultwarden (https://github.com/dani-garcia/vaultwarden) with fewer features.
git clone https://git.philomathiclife.com/repos/vw_small
Log | Files | Refs | README

commit 250a2b340f4f0be0137d6311276eceb76ae7a6b1
parent b2fc0499f6630df15b4d9926d6bad003e18ec27a
Author: Daniel GarcĂ­a <dani-garcia@users.noreply.github.com>
Date:   Mon, 24 Dec 2018 00:27:12 +0100

Use new Errors in latest changes

Diffstat:
Msrc/api/core/accounts.rs | 2+-
Msrc/api/core/organizations.rs | 15+++------------
Msrc/mail.rs | 6+++---
3 files changed, 7 insertions(+), 16 deletions(-)

diff --git a/src/api/core/accounts.rs b/src/api/core/accounts.rs @@ -87,7 +87,7 @@ fn register(data: JsonUpcase<RegisterData>, conn: DbConn) -> EmptyResult { } } } else if CONFIG.signups_allowed { - err!("Account with this email already exists") + err!("Account with this email already exists") } else { err!("Registration not allowed") } diff --git a/src/api/core/organizations.rs b/src/api/core/organizations.rs @@ -446,22 +446,15 @@ fn send_invite(org_id: String, data: JsonUpcase<InviteData>, headers: AdminHeade new_user.save(&conn)?; - if CONFIG.mail.is_some() { + if let Some(ref mail_config) = CONFIG.mail { let org_name = match Organization::find_by_uuid(&org_id, &conn) { Some(org) => org.name, None => err!("Error looking up organization") }; let claims = generate_invite_claims(user.uuid.to_string(), user.email.clone(), org_id.clone(), Some(new_user.uuid.clone())); let invite_token = encode_jwt(&claims); - if let Some(ref mail_config) = CONFIG.mail { - if let Err(e) = mail::send_invite(&email, &org_id, &new_user.uuid, - &invite_token, &org_name, mail_config) { - err!(format!("There has been a problem sending the email: {}", e)) - } - } + mail::send_invite(&email, &org_id, &new_user.uuid, &invite_token, &org_name, mail_config)?; } - - new_user.save(&conn)?; } Ok(()) @@ -499,9 +492,7 @@ fn reinvite_user(org_id: String, user_org: String, _headers: AdminHeaders, conn: let claims = generate_invite_claims(user.uuid.to_string(), user.email.clone(), org_id.clone(), Some(user_org.uuid.clone())); let invite_token = encode_jwt(&claims); if let Some(ref mail_config) = CONFIG.mail { - if let Err(e) = mail::send_invite(&user.email, &org_id, &user_org.uuid, &invite_token, &org_name, mail_config) { - err!(format!("There has been a problem sending the email: {}", e)) - } + mail::send_invite(&user.email, &org_id, &user_org.uuid, &invite_token, &org_name, mail_config)?; } Ok(()) diff --git a/src/mail.rs b/src/mail.rs @@ -65,7 +65,7 @@ pub fn send_password_hint(address: &str, hint: Option<String>, config: &MailConf .and(Ok(())) } -pub fn send_invite(address: &str, org_id: &str, org_user_id: &str, token: &str, org_name: &str, config: &MailConfig) -> Result<(), String> { +pub fn send_invite(address: &str, org_id: &str, org_user_id: &str, token: &str, org_name: &str, config: &MailConfig) -> EmptyResult { let (subject, body) = { (format!("Join {}", &org_name), format!( @@ -85,10 +85,10 @@ pub fn send_invite(address: &str, org_id: &str, org_user_id: &str, token: &str, .header(("Content-Type", "text/html")) .body(body) .build() - .map_err(|e| e.to_string())?; + .map_err(|e| Error::new("Error building invite email", e.to_string()))?; mailer(config) .send(email.into()) - .map_err(|e| e.to_string()) + .map_err(|e| Error::new("Error sending invite email", e.to_string())) .and(Ok(())) } \ No newline at end of file