aboutsummaryrefslogtreecommitdiff
path: root/src/client/QXmppClient.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix build with clang: usage of auto in template argumentLinus Jahn2023-02-011-1/+1
|
* E2eeExtension: Return encrypted stanzas as Message/Iq instead of XMLLinus Jahn2023-01-311-66/+72
| | | | Part of #513.
* Client: Rename send/sendUnencrypted to sendSensitive/sendLinus Jahn2023-01-281-5/+5
|
* Introduce QXmppTask & QXmppPromiseLinus Jahn2023-01-031-42/+33
| | | | | | Closes #502. Co-authored-by: Jonah BrĂ¼chert <jbb@kaidan.im>
* Replace QXmpp::SendError with QXmppError everywhereLinus Jahn2022-12-301-6/+6
| | | | Part of #501.
* Stream: Add IQ response sender checkLinus Jahn2022-12-281-4/+7
| | | | | | | Verifies that the sender of the response is correct, so no evil entity can inject responses. Fixes #510.
* Disable Qt keywords completelyLinus Jahn2022-12-261-8/+8
| | | | | | | | | | | | | | | Previously we had the policy that no qt keywords were allowed in headers that may be included by users. However since there was no automatic test verifying that in some places keywords were still used. This now disables qt keywords completely, also in tests and examples. Qt keywords are in general no good or really good idea as they even conflict with the standard library (`emit` at least). In some cases in the examples I just removed the slot tag if the functions didn't need to be slots (anymore). Closes #503.
* Implement XEP-0444: Message Reactions (#492)Melvin Keskin2022-10-161-0/+2
| | | https://xmpp.org/extensions/xep-0444.html
* Reformat codeLinus Jahn2022-09-061-16/+25
|
* Replace raw pointers with unique_ptrLinus Jahn2022-09-021-7/+1
| | | | safer, simpler
* Client: e2ee: Check IQ response is valid before decryptingLinus Jahn2022-08-081-3/+15
| | | | This way the extensions don't need to check that.
* Stanza: Move E2eeMetadata into own header fileLinus Jahn2022-07-111-0/+1
|
* Adapt clang-formatLinus Jahn2022-06-171-2/+2
|
* Client: injectIq: Fix missing ID on error replyLinus Jahn2022-06-071-0/+1
|
* Apply 'clang-format' (#429)Melvin Keskin2022-05-281-2/+2
|
* Client: Add SendStanzaParams parameter to send functionsLinus Jahn2022-05-221-11/+15
| | | | It can already be used by E2eeExtension.
* E2eeExtension: Rename EncryptMessageResult to MessageEncryptResultLinus Jahn2022-05-201-3/+3
|
* Add MessageHandler interfaceLinus Jahn2022-05-201-1/+42
|
* Client: injectIq: Send error IQ on unhandled IQsLinus Jahn2022-05-201-1/+19
|
* ClientExtension: Add injectIq() functionLinus Jahn2022-05-201-0/+5
|
* Client: Don't pass encrypted stanzas to old managersLinus Jahn2022-05-201-1/+6
| | | | | | 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 Jahn2022-05-201-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 stanzaLinus Jahn2022-05-201-0/+19
| | | | | Currently does not support multiple encryptions, so the implementation is rather simple.
* ClientExtension: Add handleStanza() overload with e2ee metdataLinus Jahn2022-05-181-1/+2
| | | | | | | | | 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.
* Fix possibly detaching containersLinus Jahn2022-03-131-1/+1
|
* QXmppPacket: Use QFutureInterface directly without shared_ptrLinus Jahn2022-03-031-23/+22
|
* Client: Forward E2eeExtension result types to use them directlyLinus Jahn2022-02-021-5/+8
| | | | Just saves the `QXmppE2eeExtension::` everywhere.
* Client: Use 'QXmppE2eeExtension::EncryptMessageResult'Melvin Keskin2022-02-021-2/+2
|
* Client: Fix 'send()' doesn't forward result from stream when using e2eeMelvin Keskin2022-02-021-3/+5
|
* Client: Fix comma placement in function documentationMelvin Keskin2022-02-021-4/+4
|
* Run 'clang-format' on all filesMelvin Keskin2022-01-151-25/+24
|
* Convert copyright headers to REUSELinus Jahn2022-01-141-22/+3
|
* Update copyright years (2022 edition)Linus Jahn2022-01-091-1/+1
|
* QXmppClient: Add encryption hooksLinus Jahn2021-09-281-3/+157
|
* Client: Require moving the packets/iqs for sendingLinus Jahn2021-09-281-6/+6
|
* Refactor packet sending: Add SendSuccess/SendErrorLinus Jahn2021-09-031-24/+4
|
* Make it possible to send QXmppNonzas over streamsLinus Jahn2021-08-261-2/+1
|
* QXmppClient: Add addNewExtension<T>()Linus Jahn2021-07-231-0/+10
|
* More template magic for QFuturesLinus Jahn2021-07-051-1/+1
|
* Add QXmppClient::sendGenericIq() just returning Success/StanzaErrorLinus Jahn2021-07-051-0/+38
|
* Add reporting of IQ responses with QFuturesLinus Jahn2021-06-271-0/+21
|
* QXmppClient: Add send() function with QFutureLinus Jahn2021-06-271-0/+42
|
* QXmppClient: Reset Stream Management package cache on JID changesLinus Jahn2021-03-111-1/+7
| | | | | | | | | | | | | | | The stream management mechanisms cache sent packages until the client receives an acknowledgement from the server. When the connection gets lost, the client resends all packages from the last connection that have not been acknowledged. And here comes the problem: When connecting with a different JID, the client still resends all packages from the last connection. Packages that were never intended to be sent from another account / to another server. This commit fixes this behaviour by resetting the package cache, when the JID changes.
* Update copyright headers to 2021Linus Jahn2021-02-191-1/+1
|
* QXmppClient: Advertise stream management stateLinus Jahn2021-01-091-0/+18
|
* QXmppClient: Remove static disco feature for attentionLinus Jahn2020-04-071-2/+0
| | | | | | The QXmppAttentionManager can be used to handle attention messages. Clients not using the manager (or their own) won't continue to send the attention feature.
* Add \since tags for QXmpp 1.0 everywhereLinus Jahn2020-04-061-2/+8
|
* QXmppClient: Add new service discovery featuresLinus Jahn2020-04-061-0/+18
|
* QXmppDiscoveryManager: Move static features into QXmppClientPrivateLinus Jahn2020-04-061-0/+22
|
* doc: Use XEP links everywhereLinus Jahn2020-02-111-7/+9
|