From 39a5f2dbe8554c7cdea1b594c4a41d37597fc430 Mon Sep 17 00:00:00 2001 From: Stefan Melmuk Date: Fri, 31 Mar 2023 07:29:12 +0200 Subject: [PATCH] clear kdf memory and parallelism with pbkdf2 when changing back from argon2id to PBKDF2 the unused parameters should be set to 0. also fix small bug in _register --- src/api/core/accounts.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/api/core/accounts.rs b/src/api/core/accounts.rs index 3e1185ad..b8e2c79a 100644 --- a/src/api/core/accounts.rs +++ b/src/api/core/accounts.rs @@ -169,8 +169,8 @@ pub async fn _register(data: JsonUpcase, mut conn: DbConn) -> Json user.client_kdf_iter = client_kdf_iter; } - user.client_kdf_parallelism = data.KdfMemory; - user.client_kdf_memory = data.KdfParallelism; + user.client_kdf_memory = data.KdfMemory; + user.client_kdf_parallelism = data.KdfParallelism; user.set_password(&data.MasterPasswordHash, Some(data.Key), true, None); user.password_hint = password_hint; @@ -389,6 +389,9 @@ async fn post_kdf(data: JsonUpcase, headers: Headers, mut conn: D } else { err!("Argon2 parallelism parameter is required.") } + } else { + user.client_kdf_memory = None; + user.client_kdf_parallelism = None; } user.client_kdf_iter = data.KdfIterations; user.client_kdf_type = data.Kdf;