From c8e847e3ed15b6647249bf6b7bc40cdb9d679def Mon Sep 17 00:00:00 2001 From: mdecimus Date: Mon, 25 Nov 2024 18:54:46 +1300 Subject: [PATCH] Fix account alias owner leak on autodiscover --- crates/jmap/src/api/autoconfig.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/crates/jmap/src/api/autoconfig.rs b/crates/jmap/src/api/autoconfig.rs index dcda1736..72c5a31c 100644 --- a/crates/jmap/src/api/autoconfig.rs +++ b/crates/jmap/src/api/autoconfig.rs @@ -209,7 +209,13 @@ impl Autoconfig for Server { .query(QueryBy::Id(id), false) .await { - account_name = principal.take_str(PrincipalField::Name).unwrap_or_default(); + if principal + .get_str_array(PrincipalField::Emails) + .and_then(|emails| emails.first()) + .map_or(false, |email| email.eq_ignore_ascii_case(emailaddress)) + { + account_name = principal.take_str(PrincipalField::Name).unwrap_or_default(); + } } }