Age | Commit message (Collapse) | Author |
|
Swiften handles roster push event notifications, but those were
not passed to Sluift, so a Sluift client, when querying events,
would not be aware if an XMPP server roster pushes.
This patch adds extra events types to Sluift so that method
for_each_event reports roster pushes notifications.
Test-information:
Used sluift client to retrieve all items after adding, removing and
updating roster items, and now Sluift clients can see these events.
Change-Id: Ide5597bf2b39e3cc20014c66ba9153c551eec670
|
|
Connect should not be called twice on clients or compoments without
disconnecting first. While this worked in some cases, mixing connect
options, specifically first trying without, and then with a bosh_url,
would lead to asserts being triggered.
The connect logic now checks whether there's already a connection in
progress or established, and raises a Lua exception early if there is.
Test-Information:
Tested on macOS 10.13
Connected components and clients with invalid and valid hosts, and with
valid and invalid bosh_urls, all with and without disconnecting in
between attempts. No asserts were triggered, and appropriate Lua
exceptions were thrown.
Change-Id: I6b91b57945844bce7fce0073e5d0fe199ab815d5
|
|
There are many connection options that Sluift enables (bosh_url, tls,
etc..) but only host/port were understood by connect(), the rest
were meant to be set by using set_options().
This can be sometimes annoying, so to make things uniform, now
connect() should accept the same options settable in set_options()
Test-information:
Run test to check you can pass values to connect() rather than
set_options() and things worked.
Change-Id: Ic79aa5c6b232ddc2ffcfc3c14aa6f31233242314
|
|
Swiften handles blocklist event notifications, but those were
not passed to Sluift, so a Sluift client, when querying events,
would not be aware if an XMPP server pushes block/unblock.
This patch adds an extra event type to Sluift so that method
for_each_event reports block/unblock notifications, in addition
to a new API 'get_block_list' to retrieve the blocklist from
the server.
Test-information:
Used Sluift client to retrieve blocklist and it is as expected.
Also used client to retrieve all items after adding, removing and
removing all items in the blocklist, and Sluift clients can now
see these events.
Change-Id: I0b76289ebd9e63505ff8a99cd9c0aa0e93af0c22
|
|
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
|
|
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
|
|
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
|
|
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
|
|
This avoids Sluift indefinitely waiting if the server does not
respond
Test-Information:
Before the patch, a sluift client would wait indefinitely if
a buggy XMPP server does not respond.
With this patch, sluift clients now timeout and through an
exception after SLUIFT_TIMEOUT when the server does not respond.
Change-Id: I9d36f53a8f4d5b3d594cef68c42de38fd5a1c296
|
|
Change-Id: I19f8ae342e028a6a7b4b13758f2e8c170a1db80c
|
|
Change-Id: Ib8af01c04c866e198c04d35236dea4da464c9116
|
|
Change-Id: Ie4629a10a26c3c628a67fff1bd634f07a698a948
|
|
Iterators over specific events (e.g. get_next_message) would discard
other events arriving in the meantime. This no longer is the case.
Change-Id: I615295695f7104eff7c4c9a642aa57f7c78a08c9
|
|
Use regular table values on the sluift table.
Enable enabling tracing on a client after the fact.
Change-Id: Iaa2bea61bdadf0b8dec4951654c402b7133c1151
|
|
Change-Id: Ia19e0a3763005df7fb7db6b57841d6559f74ef46
|
|
Change-Id: I0bf798200e5e74e682eeab688f3ae79e49c73ed2
|
|
Provide a mechanism to allow setting both the port and hostname for a
Sluift client connection.
By default Sluift leave port to -1 to use the port discovered by SRV
lookups, with 5222 as a fallback. With this change, the port is now
manually configurable as well.
Change-Id: Idef5457e95127cfa86181b462d9ef42aa4f096ff
|
|
- Convenience iterators to PubSub and PubSubNode.
- Retrieving X most recent items
- Retrieving a single item
- Fixed GeoLocation serializer
Change-Id: Ib4ecde225fb274b21163fcc9b52e19b0d3431860
|
|
Change-Id: I04ff7111b73565c00bff6db183451774a633344f
|