Expose the functions for decrypting with prekey and SignalMessage

Java has different API points for this and having distinct functions
to call simplifies things on the FFI side.
This commit is contained in:
Jack Lloyd 2020-08-18 19:56:13 -04:00
parent ec7a132f63
commit 6dac966d71
2 changed files with 8 additions and 5 deletions

View File

@ -42,7 +42,10 @@ pub use {
SenderChainKey, SenderKeyName, SenderKeyRecord, SenderKeyState, SenderMessageKey,
},
session::*,
session_cipher::{message_decrypt, message_encrypt, remote_registration_id, session_version},
session_cipher::{
message_decrypt, message_decrypt_prekey, message_decrypt_signal, message_encrypt,
remote_registration_id, session_version,
},
state::{PreKeyBundle, PreKeyRecord, SessionRecord, SessionState, SignedPreKeyRecord},
storage::{
Direction, IdentityKeyStore, InMemIdentityKeyStore, InMemPreKeyStore, InMemSenderKeyStore,

View File

@ -107,9 +107,9 @@ pub fn message_decrypt<R: Rng + CryptoRng>(
) -> Result<Vec<u8>> {
match ciphertext {
CiphertextMessage::SignalMessage(m) => {
decrypt_message(m, remote_address, session_store, identity_store, csprng)
message_decrypt_signal(m, remote_address, session_store, identity_store, csprng)
}
CiphertextMessage::PreKeySignalMessage(m) => decrypt_with_prekey(
CiphertextMessage::PreKeySignalMessage(m) => message_decrypt_prekey(
m,
remote_address,
session_store,
@ -124,7 +124,7 @@ pub fn message_decrypt<R: Rng + CryptoRng>(
}
}
fn decrypt_with_prekey<R: Rng + CryptoRng>(
pub fn message_decrypt_prekey<R: Rng + CryptoRng>(
ciphertext: &PreKeySignalMessage,
remote_address: &ProtocolAddress,
session_store: &mut dyn SessionStore,
@ -158,7 +158,7 @@ fn decrypt_with_prekey<R: Rng + CryptoRng>(
Ok(ptext)
}
fn decrypt_message<R: Rng + CryptoRng>(
pub fn message_decrypt_signal<R: Rng + CryptoRng>(
ciphertext: &SignalMessage,
remote_address: &ProtocolAddress,
session_store: &mut dyn SessionStore,