summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-09-29Fix uninitialised class membersTobias Markmann
Initialised previously uninitialised class members. Changed some raw pointers to std::unique_ptr for clearer and automatically initialised code. Test-Information: Builds on macOS 10.12 and unit tests pass in ASAN-enabled build. Change-Id: I7900fe6131119c228ca92c79c0ee8125137f2e48
2016-07-01Implement Message Carbons in Swift and Swift/ControllersTobias Markmann
If the server supports message carbons, Swift will try to enable it. Carbon copied messages will open a chat window in the background if no chat window exists for the conversation. Test-Information: Tested with a XMPP server Swift and a mobile Android client all supporting message carbons. Tested direct messages and MUC PM messages. All working as expected. Added unit tests for message carbons of sent messages and message carbons of received messages. All unit tests pass on OS X 10.11.5 Change-Id: I8d5b5d9975651a2353909dea976f58e4bf12e014
2016-04-05Migrate to Boost.Signals2 from Boost.SignalsTobias Markmann
Boost.Signals was deprecated and is not improved further. This patch removes Boost.Signals from 3rdParty and adds Boost.Signals2 and its dependencies. Also removed the Qt signals compatibility file Swiften/Base/boost_bsignals.h. Test-Information: Build and ran unit tests on OS X 10.11.4. Confirmed successful login using Swift client. Change-Id: Ie6e3b2d15aac2462cda95401582f5287a479fb54
2016-04-04Modernize code to use C++11 shared_ptr instead of Boost'sTobias Markmann
This change was done by applying the following 'gsed' replacement calls to all source files: 's/\#include <boost\/shared_ptr\.hpp>/\#include <memory>/g' 's/\#include <boost\/enable_shared_from_this\.hpp>/\#include <memory>/g' 's/\#include <boost\/smart_ptr\/make_shared\.hpp>/\#include <memory>/g' 's/\#include <boost\/make_shared\.hpp>/\#include <memory>/g' 's/\#include <boost\/weak_ptr\.hpp>/\#include <memory>/g' 's/boost::make_shared/std::make_shared/g' 's/boost::dynamic_pointer_cast/std::dynamic_pointer_cast/g' 's/boost::shared_ptr/std::shared_ptr/g' 's/boost::weak_ptr/std::weak_ptr/g' 's/boost::enable_shared_from_this/std::enable_shared_from_this/g' The remaining issues have been fixed manually. Test-Information: Code builds on OS X 10.11.4 and unit tests pass. Change-Id: Ia7ae34eab869fb9ad6387a1348426b71ae4acd5f
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
2016-03-30Apply consistent #include grouping and sorting styleTobias Markmann
Changed "" style includes to <> style. Test-Information: Build with Clang 3.9.0 and ran all tests on OS X 10.11.4. Change-Id: Ic05e53f2e5dba39cc1307b116fc5f17b62ab9eb8
2016-03-08Remove superfluous implementation filesTobias Markmann
Test-Information: Builds on OS X 10.11.3. Change-Id: I3177f158c959944c89a028ac0c4cc79a45ed1ac3
2015-06-08Add missing SWIFTEN_API annotations to public Swiften APITobias Markmann
Test-Information: Tested build on Windows 8 with VS 2014 and ran unit tests. Change-Id: I3d8096df4801be6901f22564e36eecba0e7310c4
2015-03-28Change IQ handling to allow non-final IQ handlers/respondersTobias Markmann
Previously all IQ handlers were final. The IQ handles were processed in last-added-first order and if the IQ payload matched the handler payload, the IQ would only be passed to that handler. This conflicts with our IBBReceiveSession. When running multiple concurrent file-transfers using multiple IBBReceiveSessions there are multiple IQ handlers for IBB content; one for every transfer. This commit allows a Responder to be set as non-final. In this case unhandled IQs will not be responded with an error but returned to the IQRouter so it can pass it to the next possible IQ handler. Test-Information: Tested with ConcurrentFileTransferTest with runs multiple IBB transfers in parallel. Change-Id: I8237e234cbe5c110deaa8c3d6ba303b65fd53d00
2014-12-15Update Copyright in SwiftenKevin Smith
Change-Id: I94ab4bbb68c603fe872abeb8090575de042f5cb4
2013-09-08Add missing make_shared include.Remko Tronçon
Change-Id: If81b3735a9924a4281694e985acadf859a8e9998
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-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-10-12Missing includeKevin Smith
2012-09-17Support for building swiften as a DLLRemko Tronçon
Added missing SWIFTEN_API declarations. Changed test infrastructure to extend path before running tests.
2012-07-14Initial DLL support for Swiften.Remko Tronçon
All applications succesfully link against Swiften.dll.
2012-05-07Added convenience method for responding with a custom error payload.Remko Tronçon
2012-05-05Compilation fixes.Remko Tronçon
2012-04-23Work around incorrect roster responses from ejabberd.Remko Tronçon
Resolves: #1072
2012-03-20boost::shared_ptr<?>(new ?(...)) -> boost::make_shared<?>(...) ↵Tobias Markmann
transformation where possible. License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2012-02-14Adding documentation to GenericRequestKevin Smith
2011-10-01Fixed cppcheck warnings.Remko Tronçon
2011-09-29Allow to set 'from' on Request & IBB classes.Remko Tronçon
2011-09-20Added ClientBlockListManager.Remko Tronçon
2011-09-18Do not overwrite from attribute in component modeJan Kaluza
License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2011-08-28Merge branch 'swift-1.x'Remko Tronçon
* swift-1.x: Remove relaxation of not checking JIDs if the IQRouter's JID isn't set. Fixed Request::isAccountJID(). Check sender on incoming IQ responses.
2011-08-28Remove relaxation of not checking JIDs if the IQRouter's JID isn't set.Remko Tronçon
2011-08-28Fixed Request::isAccountJID().Remko Tronçon
2011-08-28Check sender on incoming IQ responses.Remko Tronçon
Release-Notes: Fixed a bug whereby the sender of an iq wasn't being checked before matching it to a request.
2011-08-26Merge branch 'swift-1.x'Remko Tronçon
* swift-1.x: Don't consider Get and Set requests as Response results.
2011-08-26Don't consider Get and Set requests as Response results.Remko Tronçon
Release-Notes: Fixed a problem where we would treat incoming queries with IDs clashing with pending requests as errors.
2011-05-02Add a generic erase() algorithm.Remko Tronçon
2011-05-02Replace header include guards by pragma once.Remko Tronçon
2011-04-30Replace #icnlude "" by #include <> in Swiften.Remko Tronçon
2011-04-18Cleaned up includes.swift-2.0alphaRemko Tronçon
2011-03-01Some more Sluift enhancements.Remko Tronçon
2011-02-24Added Sluift client test script and the necessary infrastructure.Remko Tronçon
2011-02-24Added initial version of Sluift.Remko Tronçon
2011-02-14Removed Swift::String.Remko Tronçon
2011-01-21Code cleanup.Remko Tronçon
2010-12-27Disconnect signals in IQRouter.Remko Tronçon
2010-12-26Fixed crash when searching for users.Remko Tronçon
Resolves: #730
2010-12-04Document custom requests & responders, and components.Remko Tronçon
2010-11-28Change error from optional to shared_ptr in GenericRequestRemko Tronçon
Resolves: #692
2010-11-15Fix compilation on OS XKevin Smith
2010-11-13Added missing receiver parameter to IBR requests.Remko Tronçon
2010-11-10Added InBandRegistration classes.Remko Tronçon
2010-11-03Give later IQ handlers precedence over older IQ handlers.Remko Tronçon
2010-11-03Added JIDDiscoInfoResponder + Added "to" parameter to responder callback.Remko Tronçon