aboutsummaryrefslogtreecommitdiff
path: root/src/base
Commit message (Collapse)AuthorAgeFilesLines
...
* Revert "Implement MIX-PAM XEP-0405: Roster IQ extension"Linus Jahn2019-10-212-93/+6
| | | | | | | | | | This reverts commit 740a085ef7ac707e2cc2217edf02e296c3f7692e. There were talks on the standards mailing list that the XEP will be changed and a private PEP node is used for distributing joined channels. Also no server (that I am aware of) supports the MIX roster extension, so I think it is the best we remove before the next release, so we do not have problems with deprecations and ABI compatibility.
* Implement XEP-0363: HTTP File Upload: Error casesLinus Jahn2019-10-202-17/+102
| | | | | 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-202-34/+58
|
* QXmppMessage: Add back QDateTime include to keep source compatibility (#221)JBB2019-10-201-0/+3
| | | Introduced by 98f2fd04b0a95840584320858ff54cd5caff8f70 (#213).
* Refactor & clean up QXmppMessageLinus Jahn2019-10-194-312/+270
| | | | | | | | | | | | | | | This simplifies parsing and fixes a possible bug: The bug case looks like this: - We have one element we want to parse (e,g, "attachment" with namespace xyz) - There is another element called "attachment" in the stanza and it's located before the other element. - QXmppMessage tries to parse the attachment element using firstChildElement("attachment") and checks the namespace - The namespace (of the first) element doesn't match - The actual "attachment" element is not parsed This also fixes the "constructor does not initialize these fields: […]" warnings for QXmppMessagePrivate.
* Use QSharedData for QXmppHttpUploadIq private classesLinus Jahn2019-10-152-15/+26
|
* Use QSharedData for QXmppMixIqPrivateLinus Jahn2019-10-152-9/+25
|
* Use QSharedData for QXmppMixItem private classesLinus Jahn2019-10-152-5/+29
|
* Use QSharedData for QXmppRosterIqPrivate and ItemPrivateLinus Jahn2019-10-152-14/+16
|
* Add deprecation system similiar to Qt'sLinus Jahn2019-10-141-0/+10
| | | | | | | | | | | | This adds the QXMPP_DISABLE_DEPRECATED_BEFORE option and a QXMPP_DEPRECATED_SINCE(major, minor) macro. They work like their Qt equivalent: - QXMPP_DISABLE_DEPRECATED_BEFORE defines the version number of source compatibility to be kept with. By default this is the major version (e.g. QXmpp 1.0.0) - QXMPP_DEPRECATED_SINCE(major, minor) returns true, if functions that got deprecated at this version should still be included.
* Modernize codebase using clang-tidyJonah Brüchert2019-09-0841-212/+212
| | | | | | | | Using the following checks: * modernize-use-nullptr * modernize-use-override * modernize-use-using * modernize-use-bool-literals
* Implement XEP-0334: Message Processing HintsLinus Jahn2019-09-084-0/+74
| | | | | | | | | | This implements parsing and serialization of XEP-0334: Message Processing Hints in version 0.3.0. https://xmpp.org/extensions/xep-0334.html Co-authored-by: Juan Aragon <jaaragont@gmail.com> Co-authored-by: Sam Truscott <sam@wumpus.co.uk>
* Implement XEP-0380: Explicit Message EncryptionLinus Jahn2019-09-064-1/+145
| | | | | | | This adds parsing and serialization for XEP-0380: Explicit Message Encryption in version 0.3.0. https://xmpp.org/extensions/xep-0380.html
* Add register stream featureMelvin Keskin2019-09-064-0/+23
| | | | | | | This adds parsing, serialization and a test for the 'register' stream feature of XEP-0077: In-Band Registration. Co-authored-by: Linus Jahn <lnj@kaidan.im>
* Implement XEP-0367: Message AttachingLinus Jahn2019-09-064-7/+45
| | | | | This adds parsing and serialization for XEP-0367: Message Attaching in version 0.3.0.
* Port deprecated qSort invocations to std::sortJonah Brüchert2019-09-033-7/+7
|
* Implement XEP-0363: HTTP File Upload: Request/Slot IQsLinus Jahn2019-05-044-0/+354
| | | | | This implements the IQs for requesting and receiving upload slots as defined by XEP-0363: HTTP File Upload in version 0.9.0.
* Update implementation of XEP-0369 (v0.14.2) and XEP-0405 (v0.4.0)Linus Jahn2019-05-043-8/+8
| | | | | The changes in the XEP only affected parts we haven't implemented yet, so updating was rather easy.
* Implement XEP-0382: Spoiler messages (v0.2.0)Linus Jahn2019-05-044-0/+73
| | | | This adds parsing and serialization of spoilers in the QXmppMessage class.
* Implement MIX-CORE XEP-0369: Info/Participant node itemsLinus Jahn2019-05-042-0/+313
| | | | | | | | | This implements the pubsub items for the MIX participants and info node as defined by XEP-0369: Mediated Information eXchange (MIX) in version 0.14.2. https://xmpp.org/extensions/xep-0369.html#participants-node https://xmpp.org/extensions/xep-0369.html#info-node
* Implement MIX-PAM XEP-0405: Roster IQ extensionLinus Jahn2019-05-012-6/+93
| | | | | | | | This adds the MIX extensions for roster queries as defined in XEP-0405: Mediated Information eXchange (MIX): Participant Server Requirements in version 0.4.0. https://xmpp.org/extensions/xep-0405.html#mix-roster-capability-sharing
* Implement MIX-PAM XEP-0405: Presence extensionLinus Jahn2019-05-014-1/+58
| | | | | | | | This implements the new presence extension defined by XEP-0405: Mediated Information eXchange (MIX): Participant Server Requirements in version 0.4.0. https://xmpp.org/extensions/xep-0405.html#usecase-user-presence-receive
* Implement MIX-CORE XEP-0396: Message extensionLinus Jahn2019-05-012-0/+52
| | | | | | | This implements the new message extension specified by XEP-0369: Mediated Information eXchange (MIX) in version 0.14.2. https://xmpp.org/extensions/xep-0369.html#usecase-user-message
* roster iq: Make use of d-pointerLinus Jahn2019-05-012-35/+77
|
* mix iq: Use d-pointer to remain binary compatibilityLinus Jahn2019-01-272-33/+53
|
* Implement XEP-0369/XEP-0405 (MIX): IQ queriesLinus Jahn2019-01-204-0/+291
| | | | | | This implements all used IQ queries of XEP-0369: Mediated Information eXchange (MIX) (v0.14.1) and XEP-0405: Mediated Information eXchange (MIX): Participant Server Requirements (v0.3.1), including unit tests.
* [sasl] order mechanisms to prefer the most secureJeremy Lainé2019-01-181-2/+2
| | | | | | | | | | | | | | | | | | The previous logic was: - use the preferred SASL mechanism if available - otherwise use the first supported mechanism offered by the server However RFC 6120, section 6.3.3 states: "The initiating entity MUST maintain its own preference order independent of the preference order of the receiving entity." The new logic is: - order our supported mechanisms from most secure to least secure - if the user sets QXmppConfiguration::saslMechanism, put it first - use the best mechanism supported by the server
* [sasl] add support for SCRAM-SHA-1 and SCRAM-SHA-256Jeremy Lainé2019-01-172-2/+139
|
* Bump copyright year to 2019Jeremy Lainé2019-01-0883-83/+83
|
* Fix spelling errorsBoris Pek2019-01-087-8/+8
|
* Implement XEP-0319: Last User Interaction in PresenceLinus Jahn2019-01-044-14/+47
|
* Implement XEP-0308: Last Message CorrectionLinus Jahn2018-12-304-0/+42
|
* Add partial support of XEP-0066: Out of Band DataLinus Jahn2018-12-194-0/+36
| | | | | Today this is most important for attaching URLs generated by XEP-0363: HTTP File Upload for a very basic form of media/file sharing.
* Implement XEP-0352: Client State IndicationLinus Jahn2018-10-294-1/+27
| | | | | This commit is based on a pull request by fbeutel (GitHub) (see #87) and was rebased and slightly modified by me.
* Fix spelling errorBoris Pek2018-10-081-1/+1
|
* Add missed variables initialization in constructors of few classes.Boris Pek2018-09-183-2/+10
|
* QXmppElement: add self-assignment check to 'operator='.Boris Pek2018-09-181-4/+7
|
* [socks] fix a compiler warning on MSVCJeremy Lainé2018-09-181-1/+1
|
* support XEP-0237 Roster VersioningZam2018-08-172-4/+33
|
* Merge pull request #131 from olesalscheider/cmakeNiels Ole Salscheider2018-06-2311-2237/+12
|\ | | | | Add CMake build system, drop Qt4 support
| * Generate QXmppGlobal from the build systemNiels Ole Salscheider2017-09-042-48/+11
| |
| * Drop support for Qt 4Niels Ole Salscheider2017-09-048-2087/+1
| |
| * Initial CMake build systemNiels Ole Salscheider2017-09-041-102/+0
| |
* | Fix encoding / decoding of CSRC count in RTP packetsJeremy Lainé2018-02-281-2/+2
|/
* Set Stream Management to disabled when the socket becomes readyNiels Ole Salscheider2017-04-291-0/+1
| | | | This is important for reconnects.
* Add QXmppMamManager (XEP-0313)Niels Ole Salscheider2017-04-295-0/+288
|
* Implement XEP-0198: Stream Management (client only) (#99)Niels Ole Salscheider2017-02-1218-107/+891
| | | | | | | | | | | | | | * 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
* [constants] fix incorrect reference to QXmppTransferManagerJeremy Lainé2016-09-081-2/+2
|
* clarify the fact QXmppConstants_p.h is not APIJeremy Lainé2016-09-0828-27/+38
|
* Merge pull request #88 from fbeutel/carbonsfbeutel2016-09-044-1/+45
| | | * Implemented XEP-0280: Message Carbons