aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppStanza.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Replace some while loops over QDomElementsLinus Jahn2023-05-131-6/+6
|
* Stanza: Fix unhandled case in switch warningsLinus Jahn2023-01-011-0/+4
|
* StanzaError: Remove optional getter/settters for type/conditionLinus Jahn2022-12-291-80/+13
| | | | | | | The whole QXmppStanza::Error is now used optionally in QXmppStanza, so type and condition of the error don't need to be optionals as well. Part of #512.
* Stanza: Make error optionalLinus Jahn2022-12-291-4/+44
| | | | Closes #512.
* StanzaError: Add NoType and NoCondition for -1 valuesLinus Jahn2022-12-281-7/+6
| | | | | | | | 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.
* Rename Encryption to EncryptionMethod to avoid conflicts with namespaceLinus Jahn2022-09-291-3/+3
| | | | | There's QXmpp::Private::Encryption. This renames QXmpp::Encryption to QXmpp::EncryptionMethod to avoid conflicts.
* Reformat codeLinus Jahn2022-09-061-37/+48
|
* Stanza: Move E2eeMetadata into own header fileLinus Jahn2022-07-111-0/+1
|
* Add move constructors and move assignment operators everywhereLinus Jahn2022-06-181-17/+18
| | | | | This is so std::move() on implicitly-shared types actually moves the content and doesn't call the copy ctor/assignment operator.
* Adapt clang-formatLinus Jahn2022-06-171-1/+1
|
* Stanza: Refactor storage of optional e2ee metadataLinus Jahn2022-05-131-21/+17
|
* E2eeMetadata: Add enum and attribute for the used encryptionMelvin Keskin2022-04-061-0/+21
|
* Stanza::Error: Add optional overloads for Condition/TypeLinus Jahn2022-03-121-0/+53
| | | | | | Currently Condition(-1)/Type(-1) is used for an unset error. This should be deprecated and replaced by the new optional<Condition/Type> functions.
* Stanza: Use more QStringLiteral()Linus Jahn2022-03-121-23/+23
|
* Stanza_p.h: Move function definitions into Stanza.cppLinus Jahn2022-03-121-0/+148
| | | | | This way the function definition is shared and it avoids unused function warnings in QXmppStreamManagement.cpp.
* Stanza: Make E2eeMetadata optional to avoid allocationLinus Jahn2022-03-031-5/+23
| | | | | | | | | | | Avoids an allocation of the E2eeMetadataPrivate object when it's not used. It doesn't use optional<E2eeMetadata> directly because that wouldn't avoid the allocation and takes up 16 bytes instead of 8. This concept could be generalized and used elsewhere in the code (e.g. extended addresses in the stanza are unused 99% of the time).
* Add QXmppE2eeMetadata used by QXmppStanzaMelvin Keskin2022-03-031-0/+140
| | | | | | That class contains addtional data needed for end-to-end encryption purposes. 'senderKey' is moved from QXmppMessage to QXmppE2eeMetadata. 'sceTimestamp' is introduced.
* Convert copyright headers to REUSELinus Jahn2022-01-141-24/+5
|
* Update copyright years (2022 edition)Linus Jahn2022-01-091-1/+1
|
* Implement stanza parsing for Stanza Content EncryptionLinus Jahn2021-09-281-2/+2
|
* Make QXmppStanza inherit from QXmppNonzaLinus Jahn2021-08-261-11/+0
| | | | | QXmppNonzas are basic elements which can be sent over XMPP streams. QXmppStanza is a specialization of that (IQ, message or presence).
* doc: Fix many small doxygen warningsLinus Jahn2021-03-281-63/+71
|
* Update copyright headers to 2021Linus Jahn2021-02-191-1/+1
|
* QXmppStanza::Error: Use std::optional<> internallyLinus Jahn2020-07-121-64/+25
| | | | | | | | | This makes the variables for the error type and condition an std::optional<> as this makes the meaning clearer than hidden -1 values created by dubious casts. For now, the API is not changed, because we can't replace the getter easily. We could do something like type() and optionalType().
* Add \since tags for QXmpp 1.0 everywhereLinus Jahn2020-04-061-1/+4
|
* QXmppStanza::Error: Add 'by' attribute from RFC6120Linus Jahn2020-04-041-0/+29
| | | | | This adds parsing and serialization and unit tests for the by attribute for QXmppStanza::Errors. The protocol is defined in RFC6120.
* QXmppStanza::Error: Add redirection URI from RFC6120Linus Jahn2020-04-011-3/+52
| | | | | The error conditions <gone/> and <redirect/> can contain an XMPP URI to redirect to as defined in RFC6120.
* Expand QSL and QBLJonah Brüchert2020-03-291-35/+35
| | | | So they don't leak into the public API
* base: Convert to QStringLiteralJonah Brüchert2020-03-281-35/+35
| | | | | | Two new macros were added: * QBL (short alias for QByteArrayLiteral) * QSL (short alias for QStringLiteral)
* doc: Use XEP links everywhereLinus Jahn2020-02-111-2/+2
|
* Fix missing documentation for for QXmppStanza::ErrorLinus Jahn2020-02-041-7/+38
|
* Run clang-format also on all cpp filesLinus Jahn2020-02-031-28/+27
|
* clang-format: Enable regrouping and sorting of includesLinus Jahn2020-02-031-3/+3
|
* Replace manual xmlns writing by writeDefaultNamespace()Linus Jahn2020-01-291-5/+5
| | | | | | | This is the result of: sed -i 's/writeAttribute("xmlns", /writeDefaultNamespace(/g' \ $(find . -iname "*.cpp" -or -iname "*.h")
* Bump copyright year to 2020Linus Jahn2020-01-061-1/+1
|
* Replace Q_FOREACH (foreach) by C++11 ranged for-loopsLinus Jahn2019-10-231-2/+2
| | | | | | | Q_FOREACH is bad and will be deprecated in the future: https://www.kdab.com/goodbye-q_foreach/ This also disables Q_FOREACH by defining QT_NO_FOREACH.
* Add \since QXmpp 1.1 to all new methods and classesLinus Jahn2019-10-231-0/+10
| | | | Methods of new classes have no \since tag.
* Implement XEP-0363: HTTP File Upload: Error casesLinus Jahn2019-10-201-17/+92
| | | | | This extends the QXmppStanza::Error by the error cases defined in XEP-0363: HTTP File Upload in version 0.9.0.
* QXmppStanza::Error: Use d-pointer to maintain binary compat in futureLinus Jahn2019-10-201-30/+52
|
* Bump copyright year to 2019Jeremy Lainé2019-01-081-1/+1
|
* Fix spelling errorsBoris Pek2019-01-081-1/+1
|
* Implement XEP-0198: Stream Management (client only) (#99)Niels Ole Salscheider2017-02-121-95/+11
| | | | | | | | | | | | | | * Some features can be available with different namespaces (e.g. SM) * Provide static functions to convert between strings and stream errors Stream management will reuse this for <failed />. * [travis] test builds using clang * Implement XEP-0198: Stream Management (client only) * QXmppOutgoingClient: Move private methods to QXmppOutgoingClientPrivate
* clarify the fact QXmppConstants_p.h is not APIJeremy Lainé2016-09-081-1/+1
|
* clean up support for 'bad-auth' replies, see #36Jeremy Lainé2015-02-251-4/+0
|
* Handle `bad-auth` auth replies, closes #36.0xd34df00d2015-01-281-0/+4
|
* update project homepageJeremy Lainé2014-03-281-1/+1
|
* update project homepageJeremy Lainé2014-03-271-1/+1
|
* update copyright notice to 2008-2014Jeremy Lainé2014-03-261-1/+1
|
* fix documentation warningsJeremy Lainé2012-09-031-0/+2
|
* add extended addresses to QXmppMessage and QXmppPresenceJeremy Lainé2012-09-031-8/+5
|