Age | Commit message (Collapse) | Author |
|
Template classes cannot have SWIFTEN_API annotations as with annotation
code for instantiations of the template are expected to be in the DLL
which cannot be guaranteed for any user type. With the complete
implementation in available in the header it is not needed because
3rdParty Swiften users can instantiate an implementation as needed.
This also conditionally includes SQLiteHistoryStorage.h conditionally
in MemoryStorages.cpp, as otherwise the linker will expect an
implementation of SQLiteHistoryStorage in the DLL. However, it is only
built into the DLL if experimental features are turned on.
Test-Information:
Tested with experimental=on/off and swiften_dll=on/off.
Change-Id: Ieec85675c167ec34cffd4745ac854a5949fb2037
|
|
Test-Information:
Send a file from one Swift to another. Previously the progress bar did
not update in the receiving client. Now it does.
Change-Id: Ie710a4c1cfc389d6fcfb93de96250a80787883d3
|
|
Some servers have very restrictive TLS stacks that respond badly
to a bug in the SChannel TLS implementation, meaning that TLS
has to be limited to 1.0.
Add ClientOptions.tlsOptions. This is a method of passing options into
the TLS stack. It's currently
only used for the TLS 1.0 workaround in SChannel, but we might reasonably
expose other options in the future, such as limiting cypher suites.
Disables use of SSLv3 for SChannel
Also updates the coding style in SchannelContext a bit.
Test-Information:
Compiles on both OS X and Windows(SChannel). OS X doesn't show the new
option. Windows shows it, and remembers it between logins. Not tested
against a server requiring 1.0 only, but a previous hack with the
same approach was tested.
Change-Id: I1e7854d43811fd173f21f98d4dc3915fc7a4b322
|
|
Test-Information:
Tested build on Windows 8 with VS 2014 and ran unit tests.
Change-Id: I3d8096df4801be6901f22564e36eecba0e7310c4
|
|
Use scoped_connection to prevent missing disconnection from signals.
Stop and free S5BServer when stopping SOCKS5BytestreamServerManager.
Test-Information:
Tried sending a file to myself multiple times and it did not crash.
Change-Id: If32075d8e9c243cab254776b924248227520e030
|
|
Test-Information:
Verified that SCons still runs on OS X.
Change-Id: I7e9b97f90ee5581a691a959b6f2c999d93e0be53
|
|
Change-Id: Ieeb9636b40bfd43b9b79dede71eefc288e6014d2
|
|
released early
This patch also disconnects possible slots on stop() from the signals.
Test-Infromation:
This fixes a crash that occured during testing with
ConcurrentFileTransferTest.
Change-Id: I2b443f40ac3359c8142fcffc084647312b9a1e76
|
|
This also adds missing resets pointers to NULL after they are deleted.
Test-Information:
FileTransferTest crashed in some scenarios before; now it always runs
successful.
Change-Id: Ic63fd51eeb46e708221a04dc912e8bf2f1d4f9fb
|
|
running
Add a check on whether we have a running SOCKS5 bytestream server
before trying to access it to close unneeded S5B connections to it
after we decided on a candidate to use.
Test-Information:
Without this FileTransferTest crashes in the configuration that does
not allow direct or assisted S5B connections. This patch fixes this
issue.
Change-Id: Ifcf59f82755b9620e7f5fa5841e45815a41ac442
|
|
This patchs adds management of the SOCKS5 bytestream server and port
forwarding setup to Swiften. The first file-transfer, regardless of
incoming or outgoing transfer, will start and initialize the S5B server
and if configured try to set up port forwarding. The last file-transfer
to finish will will close the server and remove the port forwarding.
Test-Information:
Tested with upcoming ConcurrentFileTransferTest.cpp and running multiple
S5B file-transfers in parallel.
Change-Id: Idd09d3d0ef9498fc9435b0aee81f2b1061783342
|
|
This modifies the feature detection in the ChatController to try to use
the common features of all available resources feature detection if no
full JID has been bound to the chat yet.
Test-Information:
Tested with two Swift instances. Tested
a) the initial chat start case and,
b) the offline/online.
In case a) Swift used to initally show a yellow warning about no support
for message receipts. This warning is gone now.
In case b), after a user gone offline and online again in a running chat,
Swift used to show a warning about missing support for message receipts.
This warning is gone now.
Change-Id: I7a769fde8d14847b180503aeaa58280c572d81b3
|
|
To enable native Android logging you need to pass
"-DSWIFT_ANDROID_LOGGING" to the "cxxflags" and "-llog" to the
"linkflags".
Test-Information:
Tested on OS X 10.9.5, with NDK API level 14 on an emulated Android 4.0
ARM instance.
Tested that if enabled, Swift log messages appear in the Android
system log via "adb logcat" instead of appearing on stdout.
Change-Id: If89c870f0b664a5e65ccc1fa8a244826d2875ec1
|
|
Removed dead debugging code and unnecessary includes as well.
Test-Information:
Tested with Swiften/QA/ClientTest, adjusted to have a manual hostname
set in the ClientOptions.
Tested on OS X 10.9.5, with NDK API level 14 on an emulated Android 4.0
ARM instance.
Without this patch the connector timed out during name lookup trying
to resolve the IP set in the ClientOptions::manualHostname. With this
patch it skips lookup and connects successfully.
Tested and verified unchanged behavior with this patch and without the
manual address override set.
Change-Id: I737327b2e66c9da78a1963e754bcf201b7d40626
|
|
Test-Information:
Compiles without the warning, unit tests pass.
Change-Id: I31bce47e4d6595b4ef405a87b56cf71db004e6a0
|
|
IncomingJingleFileTransfer::terminate already sets the finshed state
for the file-transfer.
Test-Information:
Verified in the logs that onFinished signal is only called once.
Change-Id: Ib2084e1487ded2a921f61b237cd036e1ae4cf992
|
|
Test-Information:
The FileTransfer::onFinished was not called when the file transfer finished.
Verified with log output that it is called correctly now.
Change-Id: I05f2a749ca3f0aece08cae9503a212cf0327f98a
|
|
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
|
|
Test-Information:
Builds.
Change-Id: Ica4b1bca4ff71f103ee5ebad707bc0f95595ad37
|
|
Test-Information:
Unit tests pass.
Change-Id: I793fb65fd2e760daddab0142abc33d4aa5b4fce5
|
|
This fix lets HTTPConnectProxiedConnection buffer response data in
pieces until the end of the HTTP header is reached. Only then it will
try to parse the HTTP header.
This is *not* the HTTP chunked transfer encoding.
Test-Information:
Adjusted one test to respond in pieces and added a new test case that
verifies that response data is buffered.
Change-Id: Icfb987bdf2fc5771401a8a9c6979fa9ad1eebdca
|
|
License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
Test-Information:
Test for ChatStateSerializer passes.
Change-Id: I871490a647ee54631cad025fc71f900cc0fa9770
|
|
This patch adds HTTPTrafficFilter and integrates it into
HTTPConnectProxiedConnection. This allows the HTTP CONNECT proxy
initialization process to be customized.
Test-Information:
Added a unit test that verifies the new functionality.
Change-Id: I0b93c319fb205487b8be65717276cd0dd38851a3
|
|
FullPayloadSerializerCollection
Test-Information:
Builds and unit tests run through.
Change-Id: I0dac62cdef56ec4780388f25d24ca0818b900dad
|
|
Test-Information:
Unit tests still pass. Carbons serializers are tested directly without
FullPayloadSerializerCollection.
Change-Id: Ic0f961094daf09836326660859b41d86141e70b9
|
|
Test-Information:
Builds.
Change-Id: I1d8a942a2063c6bc0f7322161a33c0413a6899a3
|
|
In addition this patch adds an element, a parser and a serializer for
the <thread/> element from XMPP IM.
Test-Information:
Implemented unit tests pass as expected.
Change-Id: I0a14c778c2c0bf65f4b405c9878c741449bfe142
|
|
Change-Id: I25328f60e211387f5d3fbcd6de155b7b8956c0f9
License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
|
|
Classes to support XEP-0141 data forms layout. This includes <page/>,
<section/>, <reportedref/> and <text/> elements. The form
parser and serializer classes have also been updated to handle these new
elements, with added CPPUnit tests.
Test-information:
Tested using updated CPPUnit tests to check the parsing and serializing of
new elements. All tests complete successfully.
Change-Id: Ibeab22d2834512d06c7f656acd1ef24eea39d650
|
|
If Scons is configured to run system unit tests, it will run
FileTransferTest and test for working IBB transfer, direct S5B transfer
and proxied S5B transfer.
Test-Information:
Tested ./scons test=all is working on Linux and OS X.
Change-Id: Id70c9e1e9db9c897d9bfc7dd03b874afe5262207
|
|
SOCKS5BytestreamProxiesManager will try to stop its ProxyFinder if it
exists in its dtor.
Test-Information:
Running the FileTransferTest crashed before. Now it successfully runs
through on Linux.
Change-Id: I1e95694a5d32728123ddb436274901e4d8643974
|
|
Test-Information:
Tried to connect to BOSH service setting the boshPath to "http-bind"
while "/http-bind" would have been correct.
Change-Id: Ifc9bb574361c9eaa3baeffc2938d06a257275f2a
|
|
Test-Information:
Builds.
Change-Id: Ib5f1b4e9de814ab46723487e4d15974f0f5bd658
|
|
FileTransferTests tests file-transfer interoperability with Swiften
itself. It can test all combinations of FileTransferOptions or a specific
combination when given.
Test-Information:
Inspected XML logs to ensure it does what it is supposed to do.
Change-Id: I06215b60419dd23b367d01a2f038245a6c977720
|
|
Test-Information:
Tested interoperability with Swiften using FileTransferTest.
Change-Id: Ic13a68a91cad199be0bfc8852ff43c25c7085f12
|
|
verification.
Test-Information:
Tested with FileTransferTest (coming with future commit) and inspected
the logs.
Change-Id: Idd2739e15ab944e8486065cb2a3bc559ce9053d1
|
|
Test-Information:
Verified with home router that supports UPnP that the forwards are removed
on stop.
Change-Id: Ie2a8fd56828cc01e456d40ff4e5500d3387c7afe
|
|
by supplied FileTransferOptions.
Test-Information:
Automatically tested all FileTransferOption combinations and verified
it generates only allowed candidates.
Change-Id: I0b3ce983a3f230a4c2c3940f5d928fd74d6012b6
|
|
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
|
|
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
|
|
Test-Information:
Unit tests run successful on OS X 10.9.5
Change-Id: I9df0c798723f79df85cfc7301aed0a7ad6309904
|
|
The data race is on the events_ member in DummyEventLoop.
A BoostIOServerThread can post events to the DummyEventLoop and thereby
access its events_ data member while the test's main code processes
events of the loop.
To prevent access to the DummyEventLoop by the BoostIOServiceThread
after the DummyEventLoop is deleted, the BoostIOServiceThread is
deleted before the DummyEventLoop.
Process remaining events in BoostConnectionTest::tearDown like we do in
BoostConnectionServerTest::tearDown.
Test-Information:
Run multiple times on NetworkTest as TSAN enabled build on Linux.
Without the patch it reports a data race for the events_ deque member.
Change-Id: I3c85535338fc0ce0263dbfc3534aceb1dd09c137
|
|
Test-Information:
Run on ClientTest as TSAN enabled build on Linux. Without the patch
it reports a data race for the stopRequested member.
Change-Id: I98373966c45d4c6e247f69fa8850278d885556f7
|
|
Test-Information:
All tests still succeed on OS X and Linux.
Change-Id: I2c02252b646b539b960cad18b6f88807afd84d32
|
|
Change-Id: Icfa2a22aa3c443d2a400a3466bf523a8c91ba85a
|
|
transport method element, parser and serializer.
Test-Information:
Adjusted parser and serializer tests to cover this feature.
Change-Id: I660ef8d292a0fe09f80c042bc6df417b0e7525b1
|
|
Test-Information:
Verified using Port Map.app tool and router supporting UPnP.
Change-Id: I8d43a812f136979a70ef4dc62ff45448c6603b8b
|
|
Test-Information:
Unit tests run successfully.
Change-Id: I5df196c8bc642eeff4997558c3c56c6fa03bef16
|
|
Update SendFile.cpp to recent Jingle file-transfer changes and clean
up old code.
Test-Information:
Verified that a file-transfer between SendFile and ReceiveFile
examples works.
Change-Id: I342cfa2f4949ffcc1e227e6ebdd10de84e5d6a8a
|
|
libnatpmp has a high (over 2 minutes) timeout for discovery of NAT-PMP
support. This leads to a bad user experience when there is no NAT-PMP
support in the network.
Test-Information:
Tested this in an university network where neither UPnP nor NAT-PMP is
available. File-transfers waited more than 2 minutes for an answer of
a NAT-PMP device before starting the file-transfer.
Change-Id: I3ceaac7f89c982ffa683ee367d5ea3c3d4a2c5ca
|