fix: set backward verification when observing vc-contact-confirm or vg-member-added (#5930)

Documentation comment says forward and backward verification is set,
but the code was not doing it.
`vc-contact-confirm` and `vg-member-added` messages
indicate that other device finished securejoin protocol
so we know Bob has our key marked as verified.
This commit is contained in:
link2xt
2024-08-30 19:51:26 +00:00
committed by GitHub
parent 2dd85afdc2
commit d344cc3bdd
2 changed files with 20 additions and 1 deletions

View File

@@ -637,6 +637,10 @@ pub(crate) async fn observe_securejoin_on_other_device(
return Ok(HandshakeMessage::Ignore);
};
peerstate.set_verified(key.clone(), fingerprint, addr)?;
if matches!(step, "vg-member-added" | "vc-contact-confirm") {
peerstate.backward_verified_key_id =
Some(context.get_config_i64(Config::KeyId).await?).filter(|&id| id > 0);
}
peerstate.prefer_encrypt = EncryptPreference::Mutual;
peerstate.save_to_db(&context.sql).await?;