aboutsummaryrefslogtreecommitdiff
path: root/src/base
Commit message (Collapse)AuthorAgeFilesLines
* StanzaError: Add NoType and NoCondition for -1 valuesLinus Jahn2022-12-282-7/+8
| | | | | | | | Previsously static_cast<QXmppStanza::Error::Condition>(-1) was used when no condition was set (or type). This adds real enum values with that integer value to avoid undefined behaviour. Fixes #495.
* Disable Qt keywords completelyLinus Jahn2022-12-264-24/+24
| | | | | | | | | | | | | | | 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.
* Move PubSubIq into QXmpp::Private namespaceLinus Jahn2022-12-262-46/+54
| | | | This way users won't use it accidentally.
* Make PubSubIq header privateLinus Jahn2022-12-262-2/+1
| | | | | | | Users should only need to use the PubSubManager. The PubSubIq does not need to have a stable API this way and this gives us more flexibility. Closes #509.
* Add checkIqType() function to IQsLinus Jahn2022-10-178-5/+29
| | | | This is required so they can be parsed just be specifying the type.
* Implement XEP-0444: Message Reactions (#492)Melvin Keskin2022-10-166-0/+223
| | | https://xmpp.org/extensions/xep-0444.html
* Implement XEP-0167: Jingle RTP Sessions SRTP negotiation (#487)Melvin Keskin2022-10-032-0/+361
|
* FileUpload/Download: Use result() getter instead of signal parameterLinus Jahn2022-10-021-0/+1
| | | | | | The signal parameter does not work with immediately finishing uploads/downloads (i.e. when an error happened while starting). The user can't handle the result in that case.
* Error: Add fromFileDevice()Linus Jahn2022-10-022-1/+16
|
* FutureUtils: Add visitForward() functionLinus Jahn2022-10-021-0/+15
|
* Implement XEP-0167: Jingle RTP Sessions error conditions (#485)Melvin Keskin2022-10-024-0/+74
|
* JingleIq: Move namespace constants into QXmppConstants (#484)Melvin Keskin2022-10-013-4/+9
|
* Implement XEP-0294: Jingle RTP Header Extensions Negotiation stanzasMelvin Keskin2022-10-014-1/+312
|
* JingleIq: Add functions for de-/serializing SDP parametersMelvin Keskin2022-10-011-15/+23
|
* Implement XEP-0167: Jingle RTP Sessions Informational Messages (#460)Melvin Keskin2022-10-012-15/+216
|
* Implement XEP-0448: Stateless File SharingJonah Brüchert2022-09-294-0/+45
| | | | | | | | | This adds a file sharing manager that is capable of using multiple back ends. Currently implemented are a normal HTTP File Upload backend and an encrypted HTTP File Upload. Jingle File Transfer could be implemented later. Co-authored-by: Linus Jahn <lnj@kaidan.im>
* JingleIq::Content: Specify implemented XEP in documentation of ↵Melvin Keskin2022-09-291-4/+4
| | | | 'descriptionSsrc' (#471)
* Implement XEP-0293: Jingle RTP Feedback Negotiation stanza parts (#455)Melvin Keskin2022-09-294-1/+550
|
* BitsOfBinaryDataList: Add QVector constructorLinus Jahn2022-09-291-0/+3
|
* Rename Encryption to EncryptionMethod to avoid conflicts with namespaceLinus Jahn2022-09-297-18/+18
| | | | | There's QXmpp::Private::Encryption. This renames QXmpp::Encryption to QXmpp::EncryptionMethod to avoid conflicts.
* FileShare: Add encrypted sourcesLinus Jahn2022-09-292-6/+34
| | | | Adds new attribute for encrypted sources and parsing.
* FileMetadata: Add fromFileInfo() creatorJonah Brüchert2022-09-292-1/+19
|
* QXmppError: Add fromNetworkReply() creatorJonah Brüchert2022-09-292-0/+12
|
* Allow adding multiple oob urls and a descriptionJonah Brüchert2022-09-284-9/+169
|
* FileMetadata: Allow multiple thumbnailsLinus Jahn2022-09-262-15/+17
| | | | The standard actually allows multiple thumbnails.
* Implement XEP-0167: Jingle RTP Sessions multiplexingMelvin Keskin2022-09-252-0/+36
|
* Implement XEP-0272: Multiparty Jingle (Muji) stanza extensions (#457)Melvin Keskin2022-09-256-0/+143
| | | | | Adds the presence extension and the extension of the Jingle IQ. https://xmpp.org/extensions/xep-0272.html
* FileShare: Fix documentation not generatedLinus Jahn2022-09-242-12/+14
|
* EncryptedFileSource: Move Cipher enum into QXmppGlobalLinus Jahn2022-09-243-19/+25
|
* EncryptedFileSource: Make public (#469)Jonah Brüchert2022-09-242-27/+61
| | | The sources possibly need to be saved by clients.
* Add multithreaded hashing functionsLinus Jahn2022-09-162-0/+578
|
* QXmppError: Add fromIoDevice()Linus Jahn2022-09-162-0/+18
|
* Implement XEP-0448: Encryption for stateless file sharing parsing (#463)Linus Jahn2022-09-165-0/+221
| | | | | https://xmpp.org/extensions/xep-0448.html Co-authored-by: Jonah Brüchert <jbb@kaidan.im>
* BitsOfBinaryData: Add fromByteArray() utility functionLinus Jahn2022-09-142-0/+25
| | | | It automatically hashes the data and creates a content ID.
* Make move ctor and move assign noexcept in rule of six macroLinus Jahn2022-09-141-4/+4
|
* Add extra class for HttpFileSource instead of using QUrlLinus Jahn2022-09-144-11/+110
| | | | | Before just QUrl was used, which was okay. This should make it better recognizable and it makes clear it is only used for HTTP urls.
* FileMetadata: Optimize includes and format codeLinus Jahn2022-09-132-6/+5
|
* Implement XEP-0447: Stateless file sharing: File sharing element (#448)Linus Jahn2022-09-136-0/+253
| | | | | | | | Implements parsing for the file sharing element from XEP-0447: Stateless files sharing version 0.2. https://xmpp.org/extensions/xep-0447.html Co-authored-by: Jonah Brüchert <jbb@kaidan.im>
* Global: Add comments for rule of six macrosMelvin Keskin2022-09-131-0/+4
|
* Fix rule of six macroMelvin Keskin2022-09-132-2/+2
|
* Add global Cancelled unit structLinus Jahn2022-09-131-0/+9
| | | | | The Cancelled struct from HttpUpload is going to be used in other places.
* Fix makeReadyFuture() void overloadLinus Jahn2022-09-131-1/+1
|
* FutureUtils: Use QtFuture::makeReadyFuture on Qt >= 6.1Linus Jahn2022-09-121-0/+4
|
* ByteStreamIq: Add missing documentationLinus Jahn2022-09-101-1/+28
| | | | | I hope the descriptions are okay. I haven't fully read and understood the XEP. I'm open for improvements.
* Add QXmppError holding a description and std::anyLinus Jahn2022-09-092-0/+126
|
* Add macros for defining all the different default constructorsJonah Brüchert2022-09-062-0/+16
|
* Add parsing of XEP-0446: File metadata elementJonah Brüchert2022-09-064-0/+346
| | | | | | This implements version 0.2.0 https://xmpp.org/extensions/xep-0446.html
* Implement XEP-0264: Jingle Content ThumbnailsLinus Jahn2022-09-064-0/+199
| | | | | | XEP-0264: Jingle Content Thumbnails version 0.4. https://xmpp.org/extensions/xep-0264.html
* Reformat codeLinus Jahn2022-09-0636-505/+922
|
* Implement XEP-0300: Use of Cryptographic Hash Functions in XMPPLinus Jahn2022-09-064-0/+301
| | | | | Parsing and serialization for XEP-0300 https://xmpp.org/extensions/xep-0300.html in version 1.0.