diff options
author | Nicolas Werner <nicolas.werner@hotmail.de> | 2020-11-27 04:56:44 +0100 |
---|---|---|
committer | Nicolas Werner <nicolas.werner@hotmail.de> | 2020-11-30 01:54:53 +0100 |
commit | 2290ebcf7810e842c73180d6591b2eaa553aec4b (patch) | |
tree | 592ef998553088b4411605a99c7c556378e22583 /src/Olm.cpp | |
parent | Load sessions lazily from db (diff) | |
download | nheko-2290ebcf7810e842c73180d6591b2eaa553aec4b.tar.xz |
Remove outbound session storage
Diffstat (limited to 'src/Olm.cpp')
-rw-r--r-- | src/Olm.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/Olm.cpp b/src/Olm.cpp index 0f2d583f..88e67159 100644 --- a/src/Olm.cpp +++ b/src/Olm.cpp @@ -294,23 +294,23 @@ encrypt_group_message(const std::string &room_id, const std::string &device_id, // Always check before for existence. auto res = cache::getOutboundMegolmSession(room_id); - auto payload = olm::client()->encrypt_group_message(res.session, body.dump()); + auto payload = olm::client()->encrypt_group_message(res.session.get(), body.dump()); // Prepare the m.room.encrypted event. msg::Encrypted data; data.ciphertext = std::string((char *)payload.data(), payload.size()); data.sender_key = olm::client()->identity_keys().curve25519; - data.session_id = res.data.session_id; + data.session_id = mtx::crypto::session_id(res.session.get()); data.device_id = device_id; data.algorithm = MEGOLM_ALGO; data.relates_to = relation; data.r_relates_to = r_relation; - auto message_index = olm_outbound_group_session_message_index(res.session); - nhlog::crypto()->debug("next message_index {}", message_index); + res.data.message_index = olm_outbound_group_session_message_index(res.session.get()); + nhlog::crypto()->debug("next message_index {}", res.data.message_index); // We need to re-pickle the session after we send a message to save the new message_index. - cache::updateOutboundMegolmSession(room_id, message_index); + cache::updateOutboundMegolmSession(room_id, res.session); return data; } |