summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-07-27Fix Doxygen warningsTobias Markmann
This fixes Doxygen warnings about missing parameter documentation or documentation of non-existing parameters. Test-Information: Ran ./scons doc=1 without warnings with Doxygen 1.8.11. Change-Id: I360d042e5c80f418e7574a26fa1283a82fc504d4
2016-04-01Modernize code to use C++11 nullptr using clang-tidyTobias Markmann
Run 'clang-tidy -fix -checks=modernize-use-nullptr' on all source code files on OS X. This does not modernize platform specific code on Linux and Windows Test-Information: Code builds and unit tests pass on OS X 10.11.4. Change-Id: Ic43ffeb1b76c1a933a55af03db3c54977f5f60dd
2016-03-31Convert tabs to 4 spaces for all source filesTobias Markmann
Removed trailing spaces and whitespace on empty lines in the process. Changed CheckTabs.py tool to disallow hard tabs in source files. Test-Information: Manually checked 30 random files that the conversion worked as expected. Change-Id: I874f99d617bd3d2bb55f02d58f22f58f9b094480
2015-10-16Mark removed contacts as unavailable in SwiftTobias Markmann
When removing a contact, a XMPP client will not receive an explicit unavailable presence stanza for the contact from the server. Because of that Swift used to show removed contacts still with their old presence in the Chats tab or the chat view. With this patch, the PresenceOracle will flush all known presence of a contact as soon as the JID is removed from the roster. An unavailable presence will stored under the removed bare JID and is emitted via the PresenceOracle::onPresenceChange signal. Test-Information: Added a unit test verifying this behavior. Tested the behavior with two scenarios: a) Account A and B adding each other and accepting the subscription request. Starting a chat between A and B. After removing B in A's account, B used to be shown as available in the chat view and the Chats tab. With this patch B is shown as unavailable. b) Account A and B adding each other and accepting the subscription request. A removing B, and B removing A. After A adds B again, B used to be shown with the old presence even before B accepted the subscription request. This behavior is also fixed with this patch, not showing B as online until B accepted the subscription request. Change-Id: Iba97d3bedd0ac962ea00b25a0d2ed6106ed55a55
2015-07-20Do not reallocate FileTransferManager on connect of Clientswift-3.0beta2Tobias Markmann
Now Client allocates a FileTransferManager in its ctor and frees it in its dtor, like all the other resources of the Client class. This fixes an ASAN crash in the use case where you do a file transfer, go offline and online again and try to start another file transfer. Test-Information: Tested that the mentioned use case does not crash anymore, that file transfers still work, and that FileTransferTest still passes. Change-Id: Iddbcd8522af7df528bdc2b030fe616ad3f0c4701
2015-02-11Support domain names in S5B proxy <streamhost> tags.Tobias Markmann
S5BProxyManager now resolves DNS names of proxy entries discovered via service discovery. Test-Information: Tested against a XMPP installation that uses domain names in proxy entires. Change-Id: I728243333ec6e62e86f088f2a7b6e222c629757b
2015-02-09Fix memory leaks reported by LSANTobias Markmann
Qt models are not owned by their widgets. They must be deleted manually or a parent has to be specified for them which will take care of deletion. The same goes for delegates and their views. Test-Information: Tested with Clang's leak sanitizer (part of address sanitizer). The leak reports for the respective lines are gone with this fix. Change-Id: Ia7407cb20ae9e4ccc2e1cf48c88877c2f87352e1
2014-12-15Update Copyright in SwiftenKevin Smith
Change-Id: I94ab4bbb68c603fe872abeb8090575de042f5cb4
2013-08-27PubSub implementation & Sluift refactoring.Remko Tronçon
Change-Id: I04ff7111b73565c00bff6db183451774a633344f
2013-05-11File Transfer refactoring.Remko Tronçon
Allocate S5B server lazily. Forward forts lazily. Various state machine fixes. Temporarily disabling S5B proxy support. Change-Id: I3145e85a99b15a7e457306bbfbe9c0eb570191e4
2013-04-27Removing third-party hash implementations.Remko Tronçon
Using library/platform implementation instead. Change-Id: I2457c2dad80e6fdda023a7f31c3906ff10fe09ed
2013-03-27Adding support for Blocking Command (XEP-0191) to Swift(-en).Tobias Markmann
Change-Id: I7c92518dc389474d520d4cf96f96a11459f73d26 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2012-09-08Support whiteboarding.Mateusz Piekos
License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2012-04-23Make sure setting disco info after reconnect does not immediately send presence.Remko Tronçon
Resolves: #976
2011-09-25File transfer changes.Remko Tronçon
- Introduce 'experimental' flag to conditionally compile FT. - Use LibMiniUPNPC and NATPMP CPPDEFINES only locally in the classes that need them. - Extract abstract interface from NAT traversal classes - Avoid unit test warnings
2011-09-25Google Summer of Code 2011 Project: Adding support for Jingle File Transfers ↵Tobias Markmann
(XEP-0234), Jingle SOCKS5 Bytestreams Transport Method (XEP-0260), Jingle In-Band Bytestreams Transport Method (XEP-0261) and SOCKS5 Bytestreams (XEP-0065). License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2011-05-18Introduce safe containers for storing passwords.Remko Tronçon
2011-04-30Replace #icnlude "" by #include <> in Swiften.Remko Tronçon
2011-04-22Fixed segfault when passing NULL storages to Client.Remko Tronçon
2011-04-18Added XEP-0237 Roster Versioning support.Remko Tronçon
Resolves: #803 Release-Notes: Added support for XEP-0237 Roster Versioning
2011-02-24Added Sluift client test script and the necessary infrastructure.Remko Tronçon
2011-02-14Removed Swift::String.Remko Tronçon
2011-02-02Removing unused parameter from Client constructor.Remko Tronçon
2010-12-12Refactored own nickname handling.Remko Tronçon
2010-11-16Pass NetworkFactories as an explicit dependency into client.Remko Tronçon
2010-11-07Refactoring certificates & certificate checking.Remko Tronçon
2010-11-06Use EntityCapsProvider in Swiften.Remko Tronçon
2010-11-03Added ClientDiscoManager.Remko Tronçon
2010-11-03Refactoring Presence & MUC handling.Remko Tronçon
2010-10-27Remove MainEventLoop singleton.Remko Tronçon
The event loop now needs to be explicitly passed to clients using it.
2010-10-24Moving more from Swift to Client.Remko Tronçon
2010-10-24Created Storages interface.Remko Tronçon
2010-10-24Moved MUCRegistry into client.Remko Tronçon
2010-10-24Moved PresenceSender to client.Remko Tronçon
2010-10-24Creating abstract XMPPRoster base class.Remko Tronçon
2010-10-10Moved presenceOracle inside Client.Remko Tronçon
2010-10-10Moved XMPP roster & controller from Swift to Client.Remko Tronçon
2010-10-10Move SoftwareVersion responder from Swift to Client.Remko Tronçon
2010-10-10Separate CoreClient out of Client.Remko Tronçon
2010-10-10Client refactoring.Remko Tronçon
Removing inheritance from StanzaChannel to trim down the public API.
2010-10-07Fix crashes on disconnect during connect.Remko Tronçon
Resolves: #588
2010-10-04Implement getBoundJID() (as getJID())Remko Tronçon
Resolves: #582
2010-10-01Reuse server-generated resources.Kevin Smith
Once a new method has been implemented in Client, this will re-use a server-generated resource for re-connections within the same Swift session. This provides a stable resource for the session, preventing MUC ghosts and similar artifacts due to server or network failures, without disclosing additional information like hostnames in the resource. Resolves: #563
2010-09-12Remove IQRouter from client inheritance list.Remko Tronçon
2010-09-05Clear VCardUpdateManager's cache upon login.Remko Tronçon
Resolves: #554
2010-08-29Added stanza acking support to client.Remko Tronçon
2010-05-27Cleaning up code paths for rapid disconnect/reconnect.Kevin Smith
This includes a fix in OpensSSLContext that stops assert failures when more data is received on a connection after a write has failed. It's worth investigating why this happens, stopping it doing so, and re-instate the assert. Resolves: #402
2010-05-24Make connector shared to avoid a crash on login.Remko Tronçon
Resolves: #346
2010-04-08Added copyrights to Swiften.Kevin Smith
2010-03-30Adding manual hosts to SendMessageKevin Smith