| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | FileEncryption: EncryptionDevice: Implement atEnd() | Linus Jahn | 2022-09-29 | 2 | -0/+6 |
| | | | | | Required for using in QNetworkAccessManager::put(). | ||||
| * | Add file encryption functions and Encryption/DecryptionDevice | Linus Jahn | 2022-09-24 | 2 | -0/+353 |
| | | | | | | The devices allow it to encrypt or decrypt data on the fly when reading or writing data. | ||||
| * | Add shared QcaInitializer | Linus Jahn | 2022-09-24 | 2 | -0/+61 |
| | | | | | Can be used by OMEMO manager and other parts of the code using QCA. | ||||
| * | Export TlsManager to make it available in tests | Linus Jahn | 2022-09-13 | 1 | -1/+1 |
| | | |||||
| * | Add global Cancelled unit struct | Linus Jahn | 2022-09-13 | 2 | -6/+3 |
| | | | | | | The Cancelled struct from HttpUpload is going to be used in other places. | ||||
| * | HttpUploadManager: Avoid UB if UploadRequestManager does not exist | Linus Jahn | 2022-09-10 | 1 | -0/+7 |
| | | |||||
| * | CallStream: Avoid unnecessary copies by using std::move() | Linus Jahn | 2022-09-10 | 1 | -6/+6 |
| | | |||||
| * | CallStream: Add missing documentation | Linus Jahn | 2022-09-10 | 1 | -0/+24 |
| | | | | | Fixes #430. | ||||
| * | Add HttpUploadManager for requesting slots and uploading files | Linus Jahn | 2022-09-09 | 2 | -0/+467 |
| | | |||||
| * | Remove empty handleStanza() implementations | Linus Jahn | 2022-09-06 | 6 | -28/+1 |
| | | |||||
| * | Reformat code | Linus Jahn | 2022-09-06 | 21 | -201/+362 |
| | | |||||
| * | RegistrationManager: Replace QScopedPointer with unique_ptr | Linus Jahn | 2022-09-02 | 2 | -4/+2 |
| | | | | | | The <memory> header is already included and there are no reasons to use something different than non-Qt C++ projects use. | ||||
| * | Replace raw pointers with unique_ptr | Linus Jahn | 2022-09-02 | 25 | -101/+46 |
| | | | | | safer, simpler | ||||
| * | CarbonManagerV2: Mention messageReceived() can also be used | Linus Jahn | 2022-08-17 | 1 | -1/+2 |
| | | | | | | Unhandled messages from the message pipeline are passed to the messageReceived() signal of the QXmppClient. | ||||
| * | CarbonManagerV2: Add ctor/dtor to allow later binary-compatible changes | Linus Jahn | 2022-08-17 | 2 | -0/+6 |
| | | | | | | | Explicitly adds contructor and destructor, so we can later implement other features (like adding a d-ptr) without affecting binary compatibility. | ||||
| * | Don't use `using Manager =` to avoid doxygen errors | Linus Jahn | 2022-08-15 | 1 | -6/+5 |
| | | | | | | Doxygen doesn't understand that the Manager alias here and in the OMEMO manager are different and so generated a lot of warnings. | ||||
| * | CarbonManager: Add warning about e2ee and CarbonManagerV2 | Linus Jahn | 2022-08-14 | 1 | -0/+2 |
| | | |||||
| * | Message: Add isCarbonForwarded attribute | Linus Jahn | 2022-08-14 | 2 | -0/+4 |
| | | | | | | It's now also possible to see which messages were carbon forwarded when using the CarbonManagerV2. | ||||
| * | Add new message carbons manager | Linus Jahn | 2022-08-14 | 2 | -0/+191 |
| | | | | | | | | | | | | | The new manager automatically enabled carbons and the user doesn't need to do anything. Messages are injected into the message pipeline of the client instead of using a signal. This makes it possible to decrypt the messages in the next step or do any other possible post-processing on the message. Adapting the old manager was not possible because that would mean major behaviour change that could potentially lead to clients processing message twice. | ||||
| * | Split up OMEMO into extra module | Linus Jahn | 2022-08-13 | 11 | -6284/+0 |
| | | |||||
| * | Implement XEP-0384: OMEMO Encryption v0.8 | Melvin Keskin | 2022-08-13 | 13 | -0/+6288 |
| | | | | | | | | | | | | | | | | This implements XEP-0384 in version v0.8 with a manager and storage classes to be user-implemented for persistant storage. The license of the code is LGPL-2.1-or-later as usual. However since libomemo-c (libsignal-protocol-c) is GPL-3.0, the built binary is always licensed under GPL-3.0. Having our code LGPL licensed will make it avoids relicensing in the future in case we port it to an LGPL compatible omemo library. Closes #133. Co-authored-by: Linus Jahn <lnj@kaidan.im> | ||||
| * | Client: e2ee: Check IQ response is valid before decrypting | Linus Jahn | 2022-08-08 | 1 | -3/+15 |
| | | | | | This way the extensions don't need to check that. | ||||
| * | Stanza: Move E2eeMetadata into own header file | Linus Jahn | 2022-07-11 | 3 | -0/+3 |
| | | |||||
| * | AtmManager: Send trust messages only to endpoints with authenticated keys | Melvin Keskin | 2022-06-18 | 1 | -1/+5 |
| | | |||||
| * | Move SecurityPolicy, TrustLevel intro extra headers | Linus Jahn | 2022-06-18 | 11 | -96/+161 |
| | | | | | | This avoids the need to include the whole TrustStorage in files like SendStanzaParams.h. | ||||
| * | SendStanzaParams: Add accepted trust levels | Melvin Keskin | 2022-06-18 | 2 | -0/+34 |
| | | |||||
| * | Add move constructors and move assignment operators everywhere | Linus Jahn | 2022-06-18 | 2 | -0/+6 |
| | | | | | | This is so std::move() on implicitly-shared types actually moves the content and doesn't call the copy ctor/assignment operator. | ||||
| * | Adapt clang-format | Linus Jahn | 2022-06-17 | 2 | -3/+3 |
| | | |||||
| * | Fix typos in documentation and tests | Melvin Keskin | 2022-06-14 | 2 | -3/+3 |
| | | |||||
| * | Client: injectIq: Fix missing ID on error reply | Linus Jahn | 2022-06-07 | 1 | -0/+1 |
| | | |||||
| * | Remove PubSubEventManager (in favour of EventHandler) | Linus Jahn | 2022-05-28 | 6 | -40/+25 |
| | | |||||
| * | Apply 'clang-format' (#429) | Melvin Keskin | 2022-05-28 | 4 | -5/+5 |
| | | |||||
| * | QXmppCallStream: use new GStreamer method | Boris Pek | 2022-05-28 | 1 | -0/+4 |
| | | | | | instead of deprecated one when build with GStreamer >= 1.20.0 | ||||
| * | SendStanzaParams: Fix typo in setter name | Linus Jahn | 2022-05-24 | 2 | -2/+2 |
| | | |||||
| * | Client: Add SendStanzaParams parameter to send functions | Linus Jahn | 2022-05-22 | 3 | -19/+27 |
| | | | | | It can already be used by E2eeExtension. | ||||
| * | Add SendStanzaParams for passing additional parameters | Linus Jahn | 2022-05-22 | 2 | -0/+83 |
| | | | | | For now only contains a list of JIDs the stanza should be encrypted for. | ||||
| * | E2eeExtension: Rename EncryptMessageResult to MessageEncryptResult | Linus Jahn | 2022-05-20 | 3 | -8/+6 |
| | | |||||
| * | Make E2eeExtension a QXmppExtension | Linus Jahn | 2022-05-20 | 1 | -1/+2 |
| | | |||||
| * | MessageReceiptHandler: Implement MessageHandler | Linus Jahn | 2022-05-20 | 2 | -13/+9 |
| | | |||||
| * | Add MessageHandler interface | Linus Jahn | 2022-05-20 | 6 | -1/+98 |
| | | |||||
| * | PubSubEventManager: Inherit from EventHandler | Linus Jahn | 2022-05-20 | 2 | -7/+4 |
| | | | | | | EventManager now provides the interface from EventHandler, inherits from ClientExtension and provides a utility pubSub() getter. | ||||
| * | Add PubSubEventHandler based on QXmppExtension | Linus Jahn | 2022-05-20 | 2 | -0/+39 |
| | | |||||
| * | ClientExtension: Inherit from Extension | Linus Jahn | 2022-05-20 | 1 | -1/+2 |
| | | |||||
| * | Client: injectIq: Send error IQ on unhandled IQs | Linus Jahn | 2022-05-20 | 1 | -1/+19 |
| | | |||||
| * | ClientExtension: Add injectIq() function | Linus Jahn | 2022-05-20 | 4 | -0/+29 |
| | | |||||
| * | Client: Don't pass encrypted stanzas to old managers | Linus Jahn | 2022-05-20 | 2 | -1/+9 |
| | | | | | | | Old managers means managers only using the old handleStanza() overload. Such managers are likely not handling the encrypted contents correctly (e.g. sending unencrypted replies and thereby leaking information). | ||||
| * | Client: Refactor: Use new 'StanzaPipeline' | Linus Jahn | 2022-05-20 | 1 | -10/+18 |
| | | | | | | This is going to become useful when the other pipelines (messages, IQs) will follow. | ||||
| * | Client: Add reply() picking the encryption based on the received stanza | Linus Jahn | 2022-05-20 | 2 | -0/+20 |
| | | | | | | Currently does not support multiple encryptions, so the implementation is rather simple. | ||||
| * | ClientExtension: Add handleStanza() overload with e2ee metdata | Linus Jahn | 2022-05-18 | 3 | -9/+43 |
| | | | | | | | | | | For handling end-to-end-encrypted stanzas it is important to know whether and which encryption was used. This is especially important for replying to IQ stanzas (with the correct encryption). Currently the e2eeMetadata parameter is unused (always nullopt). This is going to change in the following commits. | ||||
| * | TrustManager: Fix warning | Melvin Keskin | 2022-05-09 | 1 | -1/+1 |
| | | |||||
