1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-11-05 08:05:58 +01:00
Commit graph

3585 commits

Author SHA1 Message Date
Florian Schmaus
7f0932a481 Reset the MUC self-presence collector on presence stanzas on join
To prevent timeouts when joining very large MUCs we now reset the
self-presence collector's timeout for every other (occupant) presence
we receive.

Fixes SMACK-859.
2019-03-04 23:01:52 +01:00
Florian Schmaus
f602de8771 Call shutdown() in connect() on exception
to clean up the state build up by connect().

Related to SMACK-855 there is the possiblitiy of a stray (writer)
thread if, for example, tlsHandled.checkifSuccessOrWaitorThrow() in
XMPPTCPConnection.connectInternal() throws. This commit should prevent
that.
2019-03-04 20:14:12 +01:00
Florian Schmaus
f4ebd530e6 Add note about module dependencies to JavaxResolver
Related to SMACK-856.
2019-03-02 14:47:28 +01:00
Florian Schmaus
78ee22c261 Revert "Do not set com.sun.jndi.dns.DnsContextFactory in JavaxResolver"
This reverts commit ac9641f091.

Reverted because now an NoInitialContextException is now thrown.

Related to SMACK-856.
2019-03-02 14:42:19 +01:00
Florian Schmaus
456d645e27 Use different version specifier for jxmpp and MiniDNS
Fixes SMACK-858.
2019-02-24 22:09:47 +01:00
Florian Schmaus
3bdc1d30b1 Correctly name provider INSTANCE fields
and make them 'final' where possible.
2019-02-23 23:59:17 +01:00
Florian Schmaus
5f7cfd04bd Add further unit test to StableUniqueStanzaIdTest 2019-02-23 23:59:17 +01:00
Florian Schmaus
5a2109e73f Move cast in extra line in ADD_ORIGIN_ID_INTERCEPTOR 2019-02-23 23:40:27 +01:00
Florian Schmaus
4da4558b29 Make origin-id interceptor static and rename it 2019-02-23 23:39:58 +01:00
Florian Schmaus
27749b2137 Remove unused filter in StableUniqueStanzaIdManager 2019-02-23 23:39:41 +01:00
Florian Schmaus
47f76952e3 Smack 4.3.3-SNAPSHOT 2019-02-22 10:57:48 +01:00
Florian Schmaus
a8044f723a Smack 4.3.2 2019-02-22 09:22:23 +01:00
Florian Schmaus
e9b514548b Filter error messages in DeliveryReceiptManager 2019-02-17 22:27:38 +01:00
Florian Schmaus
db8e37d75f Reduce scope of catched Exceptions in JavaxResolver 2019-02-17 22:27:38 +01:00
Florian Schmaus
eccaf58df1 Add Logger to JavaxResolver 2019-02-17 22:27:38 +01:00
Florian Schmaus
ac9641f091 Do not set com.sun.jndi.dns.DnsContextFactory in JavaxResolver
as this is not accessible in newer Java versions (at least 11).

Fixes SMACK-856.
2019-02-17 22:27:38 +01:00
Florian Schmaus
78dcaec75b Remove null checks for writer/reader fields in XMPPTCPConnection
as those are never null since
60f324eb1b (the previous commit).
2019-02-09 18:20:55 +01:00
Florian Schmaus
60f324eb1b Make writer/reader fields final in XMPPTCPConnection 2019-02-09 18:12:36 +01:00
Florian Schmaus
09bffb8dca Fail sync points on exception in XMPPTCPConnection 2019-02-09 18:12:03 +01:00
Florian Schmaus
5c8e830157 Log if not all reader/writer threads where terminated 2019-02-09 18:12:01 +01:00
Florian Schmaus
62cba0d96f XMPPTCPConnection: Ensure both writer/reader threads are terminated
This should fix SMACK-855.
2019-02-09 13:36:42 +01:00
Florian Schmaus
5273402b87 Use ranged versions for jXMPP and MiniDNS 2018-12-30 16:30:47 +01:00
Florian Schmaus
1a4ad7b8b5 Mark Local SOCKS5 Proxy thread as daemon thread
Fixes SMACK-849.
2018-12-27 14:42:48 +01:00
Florian Schmaus
4b21f003af Add MultiUserChat.leaveSync()
Fixes SMACK-848.
2018-12-26 21:39:25 +01:00
Florian Schmaus
b9c12d44c3 Use InetSocketAddress in log message in XMPPTCPConnection
The inetAddressAndPort String is redundant since
a2743549b8, because we now construct the
InetSocketAddress earlier and can hence use it in the log statement.
2018-12-21 12:09:03 +01:00
Florian Schmaus
a2743549b8 Make TCP socket connection attempt interruptable
by introducing SmackFuture.SocketFuture.

Fixes SMACK-847.
2018-12-21 12:03:49 +01:00
Florian Schmaus
d1c73eba8d Fix MamManager javadoc
of methods which have been renamed.
2018-12-20 17:00:00 +01:00
Florian Schmaus
48e3127172 Always wait for stream features after authentication
The purpose of the "maybeCompressFeaturesReceived" synchronization
point is to wait for the stream features after authentication. This is
not really reflected by its name and furthermore its
checkIfSuccessOrWait() method was only invoked if compression was
enabled, but we always want to wait for the stream features after
authentication. Hence move the call before the isCompressionEnabled()
check and one layer up in the call stack.

Fixes SMACK-846.
2018-12-20 16:52:44 +01:00
Florian Schmaus
f6da386dea Ensure that IQ response 'to' address and ID are set correctly
Fixes SMACK-845.
2018-12-14 17:18:53 +01:00
Florian Schmaus
5ddaa623da Check if unacknowledged stanzas queue is full before adding to it
to avoid an IllegalStateException.

Fixes SMACK-844.
2018-12-08 22:54:13 +01:00
Florian Schmaus
0c134db072 Add ConnectionConfiguration.setHostAddressByNameOrIp(CharSequence fqdnOrIp) 2018-12-04 15:59:11 +01:00
Tairs Rzajevs
0332fa54d1 Fix previous archive page requested incorrectly in MamManager
Previous page should be before the first message in the previous
result set, not the last.

Fixes SMACK-843.
2018-11-29 22:50:59 +01:00
Florian Schmaus
fa7297019d Add checkstyle rule for "Boolean.valueOf()" usages 2018-11-29 22:38:11 +01:00
Florian Schmaus
dbfc123e5e Use ParserUtils.parseXmlBoolean() where appropriate 2018-11-29 22:29:21 +01:00
Florian Schmaus
7ea7f9e2e9 Add ParserUtils.parseXmlBoolean(String) 2018-11-29 09:02:05 +01:00
Florian Schmaus
b675f49b3d
Merge pull request #287 from ge0rg/4.3
Partially fix boolean parser, 4.3 branch
2018-11-28 13:57:22 +01:00
Georg Lukas
b8bd10b056 RoomInfo: use proper boolean parser for muc#roominfo_subjectmod
XML allows both false/true and 0/1 syntax for booleans.

Signed-off-by: Georg Lukas <georg@op-co.de>
2018-11-28 11:11:52 +01:00
Georg Lukas
8b88f9cb20 Bookmarks: use proper boolean parser for autojoin
Some clients (read: Gajim) store boolean values as `0` and `1` instead
of `false` and `true`, which is legal for the XML boolean type.

Signed-off-by: Georg Lukas <georg@op-co.de>
2018-11-28 11:11:52 +01:00
Georg Lukas
229653af30 ParserUtils: fix boolean parser
How could this even happen?

Signed-off-by: Georg Lukas <georg@op-co.de>
2018-11-28 11:11:52 +01:00
asokolov
2900c5ae23 Move xml-not-well-formed (RFC 3920) condition handling to StreamError
Fixes SMACK-842.
2018-11-14 14:53:04 +01:00
Florian Schmaus
5f05da2f77 Smack 4.3.2-SNAPSHOT 2018-10-14 14:22:00 +02:00
Florian Schmaus
6a43481320 Smack 4.3.1 2018-10-14 12:53:11 +02:00
Florian Schmaus
cf22371d3e Catch IllegalArgumentException in XmlUtil clinit
Fixes SMACK-833.
2018-10-14 12:10:50 +02:00
Florian Schmaus
ec982f65e2 Fix IndexOutOfBoundsException in FormField.getFirstValue()
Fixes SMACK-838.
2018-10-14 12:07:51 +02:00
Florian Schmaus
89c9a41863 Bump MiniDNS to 0.3.3 2018-10-14 11:57:50 +02:00
Florian Schmaus
85731fbe3e
Merge pull request #275 from spslinger/fix-getPresence-ConcurrentModificationException
Fix getPresence ConcurrentModificationException
2018-10-11 14:11:02 +02:00
spslinger
1e21ab763c
Fix getPresence ConcurrentModificationException
Fix for SMACK-841

Since Smack 4.2.4, the getPresencesInternal method in the Roster class
can return a LruCache object, which is a LinkedHashMap with access
order. This means that any access using get or getOrDefault will be a
modification of the Map. If you loop over the keySet of the Map and
there are more than one, the second call to get will throw a
ConcurrentModificationException!

Since the keys are only used here to obtain the corresponding
values, the simplest solution is to just loop over the values instead.
2018-10-11 12:29:32 +02:00
Florian Schmaus
1aa35bc957 Merge branch '4.3' of github.com:Flowdalic/Smack into 4.3 2018-09-12 20:02:16 +02:00
Florian Schmaus
87fac888c6 Improve MultiUserChat's API to query hosted rooms
Return a Map instead of a List. This makes it possible to check for
the existence of MUC by looking up the MUC's address in the Map's key
set.
2018-09-12 19:56:46 +02:00
Florian Schmaus
77baaa99bc Do not warn on presence from bare MUC JID in MultiUserChat
as such presence messages became a thing in XMPP (e.g. for XEP-0153
avatars for MUC).
2018-09-10 21:00:49 +02:00