Commit Graph

3047 Commits

Author SHA1 Message Date
Florian Schmaus 013f4d630a Move duplicate code in AbstractXMPPConnection
from XMPP(TCP|BOSH)Connection.
2016-11-12 11:03:44 +01:00
Florian Schmaus 489a48bf86 Add TlsTest to smack-repl 2016-11-11 18:16:49 +01:00
Florian Schmaus 5bb0c8c223 Option to automatically rejoin MUC rooms after reconnection
Fixes SMACK-572.
2016-11-06 11:14:19 +01:00
Florian Schmaus 6cf3ad32f9 Remove unnecessary semicolon in StringUtils 2016-11-06 11:14:19 +01:00
Florian Schmaus 095b5c85a1 Also catch SmackException in Socks5BytestreamRequest
and use try/multi-catch.
2016-11-05 20:02:25 +01:00
Florian Schmaus 4f7324103c Throw instead of return in Socks5Client
Returning a boolean is not really expressive in such cases. For example,
if it returns 'false' then the callee has no information *what* went
wrong. Instead throw an SmackException with some more information.
2016-11-05 19:56:34 +01:00
Florian Schmaus 44d6a9d7c1 Improve logging of IoTProvisioningManager 2016-11-05 18:31:26 +01:00
Florian Schmaus 48a46e43ab Use bare JID when using FriendshipDeniedCache
As it only contains bare JIDs.
2016-11-05 18:26:44 +01:00
Florian Schmaus 32b4e74910 Improve exception message of Socks5 code 2016-11-05 18:24:07 +01:00
Fernando Ramirez e266b1acd8 Push Notifications (XEP-0357) implementation
Fixes SMACK-738
2016-11-01 08:46:59 +01:00
Florian Schmaus 1d3c48e6ce Add support for IoT Friend approvals
This adds supports for an experimental protocol flow where a pending
friend request's decission is later on deliverd to the requestor after
the owner made its decission.
2016-10-31 14:50:37 +01:00
Florian Schmaus 5a2326a856 Add convinient constructors for Message and Presence 2016-10-31 12:24:03 +01:00
Fernando Ramirez 9331a4c677 Order extensions in documentation/extensions/index.md 2016-10-31 11:56:23 +01:00
Dmitry Deshevoy 267fc431e5 Fix typo in TLSUtils 2016-10-31 10:50:34 +01:00
Florian Schmaus a1630d033e Add support for DNSSEC/DANE
This closes the cycle which started with a GSOC 2015 project under the
umbrella of the XSF adding DNSSEC/DANE support to MiniDNS.

Fixes SMACK-366.
2016-10-31 10:45:38 +01:00
Florian Schmaus 042fe3c72c Add XmppTools to the REPL 2016-10-26 21:56:09 +02:00
Florian Schmaus c379ae07d5 Initialize the Key Store
as otherwhise the following could happen:

WARNING: Connection XMPPTCPConnection[not-authenticated] (0) closed with error
java.security.KeyStoreException: Uninitialized keystore
	at java.security.KeyStore.aliases(KeyStore.java:1233)
	at sun.security.ssl.SunX509KeyManagerImpl.<init>(SunX509KeyManagerImpl.java:127)
	at sun.security.ssl.KeyManagerFactoryImpl$SunX509.engineInit(KeyManagerFactoryImpl.java:70)
	at javax.net.ssl.KeyManagerFactory.init(KeyManagerFactory.java:256)
	at org.jivesoftware.smack.tcp.XMPPTCPConnection.proceedTLSReceived(XMPPTCPConnection.java:739)
	at org.jivesoftware.smack.tcp.XMPPTCPConnection.access$1000(XMPPTCPConnection.java:146)
	at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1026)
	at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:960)
	at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:975)
	at java.lang.Thread.run(Thread.java:745)

org.jivesoftware.smack.SmackException: java.security.KeyStoreException: Uninitialized keystore
  org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1033)
  org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:960)
  org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:975)
  java.lang.Thread.run(Thread.java:745)
java.security.KeyStoreException: Uninitialized keystore
  java.security.KeyStore.aliases(KeyStore.java:1233)
  sun.security.ssl.SunX509KeyManagerImpl.<init>(SunX509KeyManagerImpl.java:127)
  sun.security.ssl.KeyManagerFactoryImpl$SunX509.engineInit(KeyManagerFactoryImpl.java:70)
  javax.net.ssl.KeyManagerFactory.init(KeyManagerFactory.java:256)
  org.jivesoftware.smack.tcp.XMPPTCPConnection.proceedTLSReceived(XMPPTCPConnection.java:739)
  org.jivesoftware.smack.tcp.XMPPTCPConnection.access$1000(XMPPTCPConnection.java:146)
  org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1026)
  org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:960)
  org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:975)
  java.lang.Thread.run(Thread.java:745)
2016-10-20 21:54:24 +02:00
Florian Schmaus 6e04a9d0ff Use 24h timestamp in debuggers. 2016-10-20 17:44:23 +02:00
Florian Schmaus fca2f59e08 Fix SCRAM-SHA1 mechanism creating invalid c-nonce
Because of the condition "c >= 32", Smack would possible return a
c-nonce containing ASCII whitespace characters (32d, 0x20), which are
not allowed in the c-nonce as per RFC 5802.

This commit applies the correct condition: "c > 32".

Fixes SMACK-735.
2016-10-20 17:00:52 +02:00
Florian Schmaus 98655e72aa Fix typo and add URL to Roster javadoc 2016-10-03 13:31:37 +02:00
Florian Schmaus 1f66f301ba Improve "Invalid affiliation" exception message 2016-10-03 13:12:05 +02:00
Florian Schmaus 810e7c8b78 Prevent GC of connection within pingServerIfNecessary() 2016-09-05 14:56:40 +02:00
Florian Schmaus 9a16f68433 Remove Socks5ProxyTest.shouldOnlyStartOneServerThread()
The unit test relied on Thread.activeCount() which made the whole test
unreliable.
2016-09-01 08:53:24 +02:00
Anno van Vliet 47a4856cae Filter Errors on Change subject listener.
A unauthorized user sents a update room subject message which is
rejected by the server. It responds with an error message which
is not picked up by the ChangeSubjectListener.
2016-08-31 22:30:42 +02:00
Andrey Prokopenko 2b83decc89 Handle success SASL messages containing equals sign
More strict conformance to RFC 6120 § 6.4.6, correctly handle
success SASL message which consists of a single equals sign.
Fixes SMACK-737.
2016-08-31 22:28:00 +02:00
Florian Schmaus 98bacb144d Rework blocking command code.
Mostly remove the helper utils. The server is required to present the
client with a consisent state of the block list and corresponding
modifications, so we should not end up with duplicate entires if we
don't check for them.

SMACK-731
2016-08-31 22:16:26 +02:00
Fernando Ramirez 9554c7be26 Add XEP-0191 - Blocking Command implementation
SMACK-731
2016-08-31 08:07:36 +02:00
Florian Schmaus 0679c89813 travis.yml: Add --stacktrace to 'gradle check' 2016-08-29 12:35:26 +02:00
Florian Schmaus e17ba85c2f Cleanup FileTransferNegotiatorTest 2016-08-26 10:58:00 +02:00
Florian Schmaus 0a96016727 Use generics in IoTControlManager 2016-08-09 17:47:09 +02:00
Florian Schmaus 88bf2528a2 Add RosterUtil.askForSubscriptionIfRequired(Roster, BareJid) 2016-08-09 17:47:09 +02:00
Florian Schmaus 0e72213760 Add ConnectionConfiguration.setXmppDomain(String)
for easier usage and so so that the examples actually work. :)

Also some javadoc improvements.
2016-08-09 17:47:09 +02:00
Florian Schmaus d37d26547c Improve MUC code and documentation
- use JID types
- make clases immutable
2016-08-03 19:12:57 +02:00
Florian Schmaus e04697d349 Improve Collector javadoc 2016-08-03 19:12:24 +02:00
Florian Schmaus f1e24e2273 Rework Roster's SubscribeListener
allow multiple of them to be installed, instead of at most one. Fixes
deadlock in LowLevelRosterIntegration test because
IoTProvisioningManager's SubscribeListener would not come up with a
decission.
2016-07-31 14:50:59 +02:00
Florian Schmaus 5b137616bb Fix NPE in IoTDiscoveryManager 2016-07-31 14:50:59 +02:00
Florian Schmaus 8810f17460 Allow empty username/passwords in integration test 2016-07-31 14:50:59 +02:00
Florian Schmaus c74d16f68a Merge pull request #86 from esl/ramabit.mam.doc
Add MAM documentation
2016-07-30 11:14:38 +02:00
Florian Schmaus 632acbe33f Smack 4.2.0-beta3-SNAPSHOT 2016-07-30 11:11:54 +02:00
Florian Schmaus 252f1b690c Smack 4.2.0-beta2 2016-07-30 11:00:06 +02:00
Florian Schmaus 00134c8f50 Smack 4.1.8
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQF8BAABCgBmBQJXnGezXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
 ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ5Nzc1MDU5RjNBMjFEQ0UxNkJFNEZCQUUy
 MjM5QTdFOEY1ODUyMDUyAAoJECI5p+j1hSBSo3EH/1usQTee7P4ABvL5iB2LtQtB
 B2tZdOpDWAyNass7+kP40MX544O2cFxS0NHW6vY+BJCvdn128iWJGYlFY0qLv6ON
 +cLYMs4zlBnI/o/V8siCMa/awUnUvBEe6lyHTZc2fLp9x1g/qx9GUZuOznk8CEC4
 aF6YBFbcL+uXj6Rx4mVCfBtPur+Nr64Pz2pm6T0kw0PdeFbFY9Bn9rnfPHhGl7vk
 4w7f6QJ/VsjmlQUK9s65tLoKdWlmnp7hY5fvdPeAc7jNfsIMPUMxk/JgloXrLPP3
 q0g6IKQe/40lWcyDn5doyhhncGxLcdHx4sUP+UM0MRlJyS924xCIhg2wxRkq2Ag=
 =Lfdm
 -----END PGP SIGNATURE-----

Merge tag '4.1.8'

Smack 4.1.8
2016-07-30 10:43:20 +02:00
Florian Schmaus a1bbefc9e3 Smack 4.1.9-SNAPSHOT 2016-07-30 10:39:38 +02:00
Florian Schmaus a87007fb77 Smack 4.1.8 2016-07-30 10:29:30 +02:00
ramabit 656914dcb0 add mam.md in index.md 2016-07-29 17:55:10 -03:00
ramabit 125f858b45 add mam documentation 2016-07-29 16:46:56 -03:00
Florian Schmaus 67cc513b2e Update releasedocs/README.html 2016-07-24 23:40:07 +02:00
Florian Schmaus 4d7e4b2ab1 Add Message(String, String) constructor
to make simply Smack examples work, e.g.

Message message = new Message("user@example.org", "Hi, how are you?");
2016-07-24 21:21:21 +02:00
Florian Schmaus aeb385a022 Apply refinements and fixes to the MAM code
SMACK-625.
2016-07-23 15:45:45 +02:00
Fernando Ramirez 189cac072b Implement Message Archive Management (MAM) XEP-0313
Fixes SMACK-625
2016-07-23 12:45:14 +02:00
Florian Schmaus b91978dcc4 Add (partial) support for IoT XEPs
That is XEP-0323, -0324, -0325, and -0347.

SMACK-727.
2016-07-21 08:51:11 +02:00