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

3207 commits

Author SHA1 Message Date
Florian Schmaus
4292659f22 Use StringUtils in SpoilerElement 2018-02-22 09:03:09 +01:00
Florian Schmaus
81f599425a Make SDM a field in SpoilerManager 2018-02-22 09:02:28 +01:00
ce19ea4114 Add support for XEP-0382: Spoiler Messages
Fixes SMACK-795.
2018-02-22 08:51:54 +01:00
a729a7c43b Add support for XEP-0394: Message Markup
Fixes SMACK-794.
2018-02-21 20:49:01 +01:00
b3b76b9ff4 Add support for XEP-0359: Stable and Unique Stanza IDs
Fixes SMACK-798
2018-02-21 20:43:56 +01:00
Florian Schmaus
ec4be1963a Deprecate legacy disco-publish API of ServiceDiscoveryManager 2018-02-21 20:43:56 +01:00
Florian Schmaus
41f5cf8435 Remove unused LOGGER from ServiceDiscoveryManager 2018-02-21 20:21:10 +01:00
Florian Schmaus
79cb639f93 Improve PubSubIntegrationTest.simplePubSubNodeTest()
by setting the node's deliverPayloads to 'false'.
2018-02-21 20:09:11 +01:00
Florian Schmaus
98708d67a2 Make ServiceDiscoveryManager.findService() consider all services
with the same matching feature announced.

Consider for example PubSub where usually the service itself announces
the PubSub feature as part of PEP, and where an additional PubSub
component exists. The old logic will just lookup the first matching
service with a PubSub feature announcement and check if for a matching
identiy. If we look for a real PubSub service, but stumble first over
user's service with PEP, then findService() will return 'null' although
there would have been a valid PubSub service.

Fixes SMACK-805.
2018-02-21 20:09:11 +01:00
Florian Schmaus
64f41364f9
Merge pull request #207 from vanitasvitae/descriptions
Add missing package-info.java descriptions.
2018-02-21 20:08:39 +01:00
9f47daa7ad
Add missing package-info descriptions. 2018-02-21 16:47:11 +01:00
Florian Schmaus
245a3b3851 Use the correct ad-hoc action in ServiceAdministrationManager
Fixes SMACK-804. Thanks to Holger Weiß for his help with the issue.

Smack would always use the 'next' action only 'execute' (which is
always allowed) and 'complete' where candidates.

Example XMPP trace:

SENT: <iq to='salem.geekplace.eu' id='f0JiQ-45' type='set'><command xmlns='http://jabber.org/protocol/commands' node='http://jabber.org/protocol/admin#add-user' action='execute'></command></iq><r xmlns='urn:xmpp:sm:3'/>

RECV: <iq xml:lang='en' to='sinttest-admin@salem.geekplace.eu/one-phx8g' from='salem.geekplace.eu' type='result' id='f0JiQ-45'>
<command status='executing' sessionid='2018-02-21T14:48:13.508812Z' node='http://jabber.org/protocol/admin#add-user' xmlns='http://jabber.org/protocol/commands'>
<actions execute='complete'>
  <complete/>
</actions>
<x type='form' xmlns='jabberdata'>
<title>Add User</title>
<field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field>
<field var='accountjid' type='jid-single' label='Jabber ID'><required/></field>
<field var='password' type='text-private' label='Password'><required/></field>
<field var='password-verify' type='text-private' label='Password Verification'><required/></field>
</x>
</command>
</iq>

SENT:
<iq to='salem.geekplace.eu' id='f0JiQ-49' type='set'>
<command xmlns='http://jabber.org/protocol/commands' node='http://jabber.org/protocol/admin#add-user' sessionid='2018-02-21T14:48:13.508812Z' action='next'>
<x xmlns='jabberdata' type='submit'>
<field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field>
<field var='accountjid' type='jid-single'><value>smack-inttest-one-phx8g@salem.geekplace.eu</value></field>
<field var='password' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field>
<field var='password-verify' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field>
</x>
</command>
</iq>

RECV:
<iq xml:lang='en' to='sinttest-admin@salem.geekplace.eu/one-phx8g' from='salem.geekplace.eu' type='error' id='f0JiQ-49'>
<command action='next' sessionid='2018-02-21T14:48:13.508812Z' node='http://jabber.org/protocol/admin#add-user' xmlns='http://jabber.org/protocol/commands'>
<x type='submit' xmlns='jabberdata'>
<field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field>
<field var='accountjid' type='jid-single'><value>smack-inttest-one-phx8g@salem.geekplace.eu</value></field>
<field var='password' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field>
<field var='password-verify' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field>
</x>
</command>
<error code='400' type='modify'><bad-request xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/><text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>Unexpected action</text>
</error>
</iq>
2018-02-21 16:34:03 +01:00
Florian Schmaus
20b97eb241 Add javadoc to Provider 2018-02-21 10:37:25 +01:00
ec95bd4422 Prevent race condition in ecaps test (#206)
Properly synchronize EntityCapsTest.testPreventDiscoInfo()
2018-02-20 15:52:04 +01:00
Florian Schmaus
e38f80b3cb Improve ConsistentColor API
- Rename Context to ConsistentColorSettings
- Add convenience RGBFrom(CharSequence) method
- Remove _angle in code

SMACK-800.
2018-02-10 21:15:00 +01:00
e0af3db189 Add support for XEP-0392: Consistent Color Generation
Fixes SMACK-800.
2018-02-10 21:09:07 +01:00
Killer
8e3d3a7d14 Fix copy and paste issue in processing.md 2018-02-10 20:32:36 +01:00
Florian Schmaus
278c15d52d Deprecate some chat2 ChatManager APIs
because their functional interfaces clashes. This helps to prepare
Smack for Java 8 where such a construct results in a compile time error.
2018-02-10 12:10:19 +01:00
Florian Schmaus
6dfc20ee5e Rename "Packet (Reader|Writer)" to just Reader or Writer 2018-02-09 10:26:42 +01:00
Florian Schmaus
dfe5c5c09f Smack 4.2.4-SNAPSHOT 2018-02-07 21:44:59 +01:00
Florian Schmaus
1de9d3dee0 Smack 4.2.3 2018-02-07 21:19:01 +01:00
Florian Schmaus
dfaee56415
Merge pull request #197 from vanitasvitae/fixMucDoc
Fix typo in MUC documentation example
2018-02-06 11:10:43 +01:00
4ca2f84d41
Fix typo in example 2018-01-23 16:31:43 +01:00
Florian Schmaus
77c0865326
Merge pull request #196 from cl90/4.2
Bugfix in SOCKS5 authentication
2018-01-19 13:21:55 +01:00
lohse
93683389e3 Bugfix in SOCKS5 authentication
Read password bytes from the correct field.
Fixes SMACK-796, introduced with 4c64643
2018-01-19 12:53:57 +01:00
dave-stanley
ae46f653fd Fix for extra quote in workgroup IQs
At some point IQChildElementXmlStringBuilder was modified to add the
closing quote around the namespace. this was not reflected in these
element extensions
2018-01-18 08:14:02 +01:00
Florian Schmaus
34373e8710 Enable javadoc 'html' doclint
Also make all 'test' tasks depend on the 'javadoc' task.

Fixes SMACK-650.
2017-12-25 14:08:18 +01:00
Florian Schmaus
89c97bb46c Enable javadoc 'syntax' doclint
Addresses SMACK-650 but does not yet fix it completely.
2017-12-25 12:09:46 +01:00
Florian Schmaus
e5e5fca7c1
Merge pull request #191 from vanitasvitae/fixJavadoc
Fix javadoc issues in some packages
2017-12-24 14:46:02 +01:00
Florian Schmaus
2d102e2dd5
Merge pull request #190 from vanitasvitae/retainAPI
Retain old API
2017-12-24 14:44:13 +01:00
52398b535f
Fix javadoc issues in some packages 2017-12-23 20:21:19 +01:00
e1acf0cfd2
Retain smack-jingle-old API 2017-12-19 15:06:55 +01:00
2288825b1c
Retain smack-core API 2017-12-19 15:06:40 +01:00
cb18056613 Fix minor codestyle issues 2017-12-17 11:03:46 +01:00
Florian Schmaus
200f90ffdc Add IpAddressUtilTest 2017-12-16 12:40:17 +01:00
Florian Schmaus
517fc6e0f2 Add assert to IpAddressUtil.isIPv4LiteralAddress(String) 2017-12-16 12:37:11 +01:00
Florian Schmaus
5147f6e915 Fix IPAddressUtil.isIPv4LiteralAddress(String)
Fixes SMACK-791
2017-12-16 12:36:02 +01:00
Florian Schmaus
63dd9953fc Improve HTTP File Upload SlotProvider 2017-12-10 15:29:57 +01:00
Florian Schmaus
3a7c20ce54 Add more HTTP File Upload SlotProvider tests 2017-12-10 14:23:11 +01:00
Florian Schmaus
0a0066c806 Fix XEP-0363 HTTP File Upload elements
Smack still expected the URLs as element text and not as value of an
'url' attribute.

Fixes SMACK-790.
2017-12-10 14:22:57 +01:00
Florian Schmaus
36a278eeca Add javadoc to HTTP File Upload API 2017-12-09 10:35:32 +01:00
Florian Schmaus
e1615ee7d3 Eliminate stray 'g' in experimental.providers 2017-12-07 17:55:18 +01:00
Florian Schmaus
9863b9c458 Use ResolverResult.getResolutionUnsuccessfulException() in MiniDnsResolver 2017-12-05 20:53:05 +01:00
Florian Schmaus
a25971d02b Add AffiliationsExtensionTest 2017-12-05 20:50:34 +01:00
Florian Schmaus
ca1852f6e0 Fix AffiliationsExtension.toXml()
Fixes SMACK-789.
2017-12-05 20:50:34 +01:00
Florian Schmaus
47940ba5ad Fix NPE in DNSResolver.lookupSRVRecords0
in case hostAddresses was null, the isEmpty() check before the log()
invocation would throw an NPE. Thanks to Ingo Bauersachs for reporting
this.

Fixes SMACK-788.
2017-12-05 20:50:34 +01:00
Florian Schmaus
be4aacc71d Smack 4.2.3-SNAPSHOT 2017-11-25 17:59:07 +01:00
Florian Schmaus
0fcacf3d9a Smack 4.2.2 2017-11-25 17:44:45 +01:00
Florian Schmaus
2edbc64957 Refactor reconnection callbacks into an extra class
Fixes SMACK-775
2017-11-25 16:30:18 +01:00
Florian Schmaus
d804d4ed6d Do not abort if we could not get a KeyManagerFactory
using the default algorithm. Instead continue with 'null' as value of
the KeyManager[] array (kms). This makes the SSLContext.init() methods
to search the default security providers for implementations, which is
also OK.

This change is needed because it appears that on Android
KeyManagerFactory.getDefaultAlgorithm returns 'SunX509', which
subsequently results in

W/AbstractXMPPConnection: Connection XMPPTCPConnection[not-authenticated] (0) closed with error
  java.security.NoSuchAlgorithmException: KeyManagerFactory SunX509 implementation not found
      at org.apache.harmony.security.fortress.Engine.notFound(Engine.java:190)
      at org.apache.harmony.security.fortress.Engine.getInstance(Engine.java:139)
      at javax.net.ssl.KeyManagerFactory.getInstance(KeyManagerFactory.java:77)
      at org.jivesoftware.smack.tcp.XMPPTCPConnection.proceedTLSReceived(XMPPTCPConnection.java:747)
      at org.jivesoftware.smack.tcp.XMPPTCPConnection.access$1200(XMPPTCPConnection.java:149)
      at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1053)
      at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:980)
      at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:996)
      at java.lang.Thread.run(Thread.java:818)

Note that this is possibly because the Secuurity Provider was
not (yet) intialized.
2017-11-23 08:21:55 +01:00