Go to the documentation of this file.
10 #include <vodozemac.h>
12 #include <unordered_map>
32 std::optional<rust::Box<vodozemac::olm::Account>>
account;
42 std::string
pickle()
const;
60 std::string roomId, std::optional<MegOlmSessionRotateDesc> desc);
std::optional< rust::Box< vodozemac::olm::Account > > account
Definition: crypto-p.hpp:32
Definition: session.hpp:26
std::string RandomData
Definition: crypto-util.hpp:34
std::unordered_map< std::string, Session > knownSessions
Definition: crypto-p.hpp:35
Definition: location.hpp:10
std::int_fast64_t Timestamp
Definition: event.hpp:18
bool createInboundSession(std::string theirCurve25519IdentityKey, std::string message)
returns whether the session is successfully established
Definition: crypto.cpp:158
Definition: crypto-util.hpp:23
int numUnpublishedKeys
Definition: crypto-p.hpp:34
~CryptoPrivate()
Definition: crypto.cpp:46
bool unpickle(std::string data)
Definition: crypto.cpp:69
nlohmann::json json
Definition: jsonwrap.hpp:20
Definition: outbound-group-session.hpp:21
Definition: crypto-p.hpp:25
std::string pickle() const
Definition: crypto.cpp:63
std::unordered_map< std::string, OutboundGroupSession > outboundGroupSessions
Definition: crypto-p.hpp:38
bool createInboundGroupSession(KeyOfGroupSession k, std::string sessionKey, std::string ed25519Key)
Definition: crypto.cpp:376
std::string ed25519IdentityKey() const
Definition: crypto.cpp:258
bool reuseOrCreateOutboundGroupSession(RandomData random, Timestamp timeMs, std::string roomId, std::optional< MegOlmSessionRotateDesc > desc)
Definition: crypto.cpp:172
std::string curve25519IdentityKey() const
Definition: crypto.cpp:264
std::unordered_map< KeyOfGroupSession, InboundGroupSession > inboundGroupSessions
Definition: crypto-p.hpp:36
CryptoPrivate()
Definition: crypto.cpp:32
MaybeString decryptMegOlm(nlohmann::json eventJson)
Definition: crypto.cpp:137
bool valid
Definition: crypto-p.hpp:40
The tag to indicate that a constructor should use user-provided random data.
Definition: crypto-util.hpp:32
bool unpickleFromLibolm(std::string data)
Definition: crypto.cpp:80
MaybeString decryptOlm(nlohmann::json content)
Definition: crypto.cpp:91
std::vector< Session > SessionList
Definition: crypto-p.hpp:23
immer::map< std::string, int > uploadedOneTimeKeysCount
Definition: crypto-p.hpp:33