aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2021-12-24Prune empty/ish call*event.cpp filesAlexey Rusakov
2021-12-24Cache deviceslist to binary when possibleTobias Fella
2021-12-24Fix reading unencrypted imagesTobias Fella
2021-12-22Another improvementTobias Fella
2021-12-22Apply suggestions from code reviewTobias Fella
Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>
2021-12-22StateEventBase: force type to unknown if stateKey is not in JSONAlexey Rusakov
2021-12-22Simplify the code around EventFactory<>Alexey Rusakov
The former code assumed that EventFactory<> is just a class-level shell for a bunch of functions and a static data member that only exists to allow specialisations to occur for the whole group together. On top of that, setupFactory() and registerEventType() strived to protect this group from double registration coming from static variables in an anonymous namespace produced by REGISTER_EVENT_TYPE. The whole thing is now de-static-ed: resolving the factory now relies on class-static Event/RoomEvent/StateEventBase::factory variables instead of factory_t type aliases; and REGISTER_EVENT_TYPE produces non-static inline variables instead, obviating the need of registerEventType/setupFactory kludge.
2021-12-21Don't chain RoomEvent to Event factory any moreAlexey Rusakov
Objects derived from Event are not room events (in the spec sense) and never occur in the same arrays as room events; therefore this chaining has always been superfluous.
2021-12-17RoomMemberEvent: fix an off-by-one errorAlexey Rusakov
Also: extended quotest to cover member renames, not just user profile renames.
2021-12-10Remove data from database when leaving roomTobias Fella
2021-12-10Apply suggestions from code reviewTobias Fella
Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>
2021-12-10Apply suggestions from code reviewTobias Fella
Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>
2021-12-10Use individual databases for each connectionTobias Fella
2021-12-10ifdef more thingsTobias Fella
2021-12-09Rename databaseTobias Fella
2021-12-09Ifdef all the thingsTobias Fella
2021-12-09Update lib/connection.cppTobias Fella
Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>
2021-12-08Update logging categoriesTobias Fella
2021-12-08Store encryptedevent in decrypted roomeventsTobias Fella
2021-12-07Maintain list of undecrypted events to speed up decryption of oldTobias Fella
messages
2021-12-07Remove default constructorTobias Fella
2021-12-07snake_case table namesTobias Fella
2021-12-07FixesTobias Fella
2021-12-07id -> matrixIdTobias Fella
2021-12-07Rename "crypto" -> "e2ee"Tobias Fella
2021-12-07Port E2EE to database instead of JSON filesTobias Fella
2021-12-03Cleanup; drop an unused RoomAliasesEvent constructorAlexey Rusakov
Also, RoomAliasesEvent is to be completely gone after 0.7.
2021-12-02Cleanup on Sonar issuesAlexey Rusakov
2021-12-02Improve function_traits<>; split out from util.*Alexey Rusakov
Quotient::function_traits<> did not support member functions in a proper way (i.e. the way std::invoke_result<> treats them, with the function's owning class represented as the first parameter). Now that I gained the skill and understanding in function_traits<> somewhat wicked machinery, I could properly support member functions. Overloads and generic lambdas are not supported but maybe we'll get to those one day.
2021-12-02visit(Event, ...) -> switchOnType()Alexey Rusakov
It has not much to do with the Visitor design pattern; also, std::visit() has different conventions on the order of parameters.
2021-12-01Apply suggestions from code reviewTobias Fella
Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>
2021-12-01More improvementsTobias Fella
2021-12-01Apply even more suggestionsTobias Fella
2021-12-01Apply more suggestionsTobias Fella
2021-12-01Apply suggestions from code reviewTobias Fella
Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>
2021-12-01Use UnorderedMap instead of std::mapTobias Fella
2021-12-01Fix compilationCarl Schwan
2021-12-01Add function to decrypt notificationsTobias Fella
2021-12-01Move non-cache data to a non-cache locationTobias Fella
2021-12-01Save olm account on shutdownTobias Fella
2021-12-01Various improvements and fixesTobias Fella
2021-12-01Try decrypting existing messages when a new key is addedTobias Fella
2021-12-01Add mxc protocol to the networkaccessmanagerTobias Fella
2021-12-01Handle encrypted file download through existing APITobias Fella
2021-12-01Implement download and decryption of encrypted filesTobias Fella
2021-12-01Store pickling key in qtkeychain and pickle encryptedTobias Fella
2021-12-01Various fixesTobias Fella
2021-12-01Don't crash when ToDeviceEvent decryption failsTobias Fella
2021-12-01Implement (meg)olm key caching, megolm decrypting, EncryptedEventTobias Fella
decryption, handling of encrypted redactions and replies
2021-12-01Don't die on broken olm accountCarl Schwan