Commit Graph

2842 Commits

Author SHA1 Message Date
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
Florian Schmaus d1fe5c2933 Use loopback address for Socks5 unit tests
to prevent using an address that is not reachable for whatever reason.
2016-07-08 16:39:10 +02:00
Florian Schmaus 651f8cf7c0 Improve MucEnterConfiguration javadoc
by mentioning how to obtain a builder for it.
2016-07-08 11:18:20 +02:00
Florian Schmaus d3cc9d12a0 Implement flexible port selection in Socks5ClientTest 2016-07-08 08:07:37 +02:00
Florian Schmaus 17c9661283 Handle AlreadyLoggedInException in ReconnectionManager
Fixes SMACK-725.
2016-07-01 08:18:56 +02:00
Florian Schmaus d07ed60737 Add support for "Caps Optimizations"
Smack's previous entity caps implementation assumed that an entity lost
its entity caps feature as soon as a presence without caps from that
entity was received. But according to XEP-0115 § 8.4, this is a
perfectly normal optimization technique. We now reset the caps state
after an available presence becomes unavailable.

Also introduce PresenceEventListener, which is required for this
feature.

Also make Roster.preApprove() take a BareJid as argument.

Fixes SMACK-723.
2016-06-30 17:01:46 +02:00
Florian Schmaus 4248fbbb89 Use lowercase chars in integration testRunId 2016-06-29 08:08:13 +02:00
Florian Schmaus 73fcbc6b27 Do not re-use the Socket after connect() failed
Fixes SMACK-724.
2016-06-21 21:23:30 +02:00
Florian Schmaus f8c00533c7 build.gradle: Record branch in version string 2016-06-21 21:23:30 +02:00
Florian Schmaus ae6664479e Fix messaging.md
Thanks to Clinton Yeboah for reporting this
2016-06-21 10:06:47 +02:00
Florian Schmaus 30861fb7ce Add comment about dropping SM state on stream errors.
Related to SMACK-696.
2016-06-15 09:19:25 +02:00
Florian Schmaus 08c93da56a Delay notifyConnectionError in writer shutdown 2016-06-09 09:20:09 +02:00
Florian Schmaus 8deac592fb Finer logs in XMPPTCPConnection.shutdown() 2016-06-09 09:20:09 +02:00
Florian Schmaus 2d398b8dcf repl: cd into PROJECT_ROOT 2016-06-09 09:20:09 +02:00
Florian Schmaus 1241d32610 Fixes and small updates for integrationtest.md 2016-06-08 23:05:44 +02:00
Florian Schmaus 4c18814b12 sinttest: Throw exception if service is not set 2016-06-08 23:05:44 +02:00
Florian Schmaus 60b07b1d67 Make DiscoverInfoProvider namespace aware
Some servers respond to disco#info requests with

<iq id='npGtO-21' type='result' to='phone@xxx/MAXS' from='xxx'>
<query xmlns='http://jabber.org/protocol/disco#info'>
<identity type='pep' name='Prosody' category='pubsub'/>
<identity type='im' name='Prosody' category='server'/>
<feature var='urn:xmpp:blocking'/>
<feature var='urn:xmpp:carbons:2'/>
<feature var='urn:xmpp:carbons:1'/>
<feature var='vcard-temp'/>
<feature var='http://jabber.org/protocol/commands'/>
<feature var='urn:xmpp:mam:0'/>
<feature var='jabber:iq:private'/>
<feature var='http://jabber.org/protocol/pubsub#publish'/>
<feature var='http://jabber.org/protocol/disco#info'/>
<feature var='http://jabber.org/protocol/disco#items'/>
<feature var='urn:xmpp:ping'/>
<feature var='msgoffline'/>
<feature var='jabber:iq:roster'/>
<feature var='urn:xmpp:archive:auto'/>
<feature var='urn:xmpp:archive:manage'/>
<feature var='urn:xmpp:archive:pref'/>
<feature var='http://jabber.org/protocol/rsm'/>
<feature xmlns='urn:xmpp:archive'><optional><default/></optional></feature>
</query></iq>

Note the

<feature
xmlns='urn:xmpp:archive'><optional><default/></optional></feature>

which will cause the current parser implementation to parse it as
DiscoInfo Feature resulting in an Exception because some attributes are
missing.

This commit prevents this.
2016-06-03 10:59:10 +02:00
Florian Schmaus 3bd35ecb1a Do not fully qualify type in javadoc 2016-06-03 10:59:10 +02:00
Florian Schmaus 78cf3006ea Don't stamp outgoing stanza in ChatManager
Servers are required to stamp the 'from' stanza attribute anyways.
2016-06-03 10:59:10 +02:00
Florian Schmaus 2e2d147083 Fix typos in integrationtest.md documentation 2016-06-03 10:59:10 +02:00
Florian Schmaus ac5d9d56c6 Do not base64 twice in SASL X-OAUTH2
Fixes SMACK-722.
2016-06-01 13:10:11 +02:00
UltimateZero df0f805feb Use empty string nick on empty element tag
It will use an empty string in case of an empty element tag.
2016-05-31 08:10:31 +02:00
Florian Schmaus fefc8cf332 Log stanza in Roster PresencePacketListener 2016-05-25 22:58:35 +02:00
Florian Schmaus 86e11e69e8 Add Message.toString() providing a short description 2016-05-25 22:58:34 +02:00
Florian Schmaus 98ec77caee Use Message in FromMatchesFilterTest 2016-05-25 22:58:34 +02:00
Florian Schmaus 2bf6435881 Make Bind IQ constructor private 2016-05-25 22:58:34 +02:00
Florian Schmaus 03031dfb5d Add javadoc to SASLError 2016-05-22 22:55:28 +02:00
Florian Schmaus 90f52fcc3b Suppress 'unused' warning in XMPPTCPConnection 2016-05-22 22:50:49 +02:00
Florian Schmaus b7211d5d67 Report illegal Stream Management state
Fixes SMACK-721.
2016-05-22 12:02:12 +02:00
Florian Schmaus f4ce4b6e77 Add @see RFC for Presence's priority element 2016-05-21 12:44:13 +02:00
Florian Schmaus fa10a01831 Fix Presence.setPriority(int): Range is [-128,127]
Thanks to Guus der Kinderen for reporting this.
2016-05-21 12:44:13 +02:00
Florian Schmaus 4c63cfafd7 Rework support for Proxy connections
in order to improve support for Tor connections.

This makes it possible to establish a connection to an .onion domain by
manually setting host and port in the ConnectionConfiguration and
configuring a Socks5Proxy pointing to a Tor node.

Fixes SMACK-720.
2016-05-10 18:57:04 +02:00
Florian Schmaus 3251fe89e2 Fix ChatStateListener javadoc 2016-04-16 00:25:09 +02:00
Florian Schmaus fc3f5ef99e Only reset Roster on clean termination
As otherwise the Roster would be still unitialized after a SM resumption
if the connection was uncleanly terminated.

Thanks to Grigory Fedorov for reporting this.
2016-04-15 17:41:50 +02:00
Florian Schmaus b043d9f5b5 Smack 4.2.0-beta2-SNAPSHOT 2016-04-15 13:26:59 +02:00
Florian Schmaus 2f4168d3e7 Smack 4.2.0-beta1 2016-04-15 10:23:45 +02:00
Florian Schmaus 898912050e Fix missing @param in Roster 2016-04-15 10:23:44 +02:00
Florian Schmaus 9b250475ec Disable AccountManager over insecure connections
SMACK-644
2016-04-14 23:19:55 +02:00
Florian Schmaus 92968e1630 Use java-pinning-java7 for the integration tests
to avoid "Certificates does not conform to algorithm constraints" when
using certain cert chains (e.g CACert).
2016-04-14 22:59:22 +02:00
Florian Schmaus 0afbee55e0 Improve the Message Correction
add missing provider registration and improve a few bits here and there.

SMACK-714
2016-04-14 22:47:12 +02:00
ramabit ca58c65a26 Implement Last Message Correction (XEP-0308)
Fixes SMACK-714
2016-04-14 22:31:56 +02:00
Florian Schmaus b94b2586e2 Smack 4.1.7
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQF8BAABCgBmBQJXD/2lXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
 ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQxMzU3QjAxODY1QjI1MDNDMTg0NTNEMjA4
 Q0FDMkE5Njc4NTQ4RTM1AAoJEIysKpZ4VI41rggH/0DjBLpCfTSdjjKGFNChc+1V
 dW9PaPGFUiPuTt3T2NEa74jGYe4PsPpy5zDsJ8uYi2aq3LAiCQvfk+F5LXjRJFoa
 eftz0GtPvfP42oFg8wyDAebFtb0OtE7aJueSRkYGhA1+kzHBbJ9s6TxqDWcB0UWC
 puLh/DEWDFGX5njln+l10O7b10G0+bSrvece22eP0sQIv4hvZJoPQ5rOpCR1wibL
 ldp6wXI6C/b/oQS9MjHq9SV10S+5GykBqN/UzcFnwRVHLbasqnXeNFLGOnMtx0g9
 DmOolAYKGBN5m7m0rqEj9R+OyNgtefV8sCHE69iNAlpQhbmTqPd5rIhIXIII4U4=
 =yWKV
 -----END PGP SIGNATURE-----

Merge tag '4.1.7'

Smack 4.1.7
2016-04-14 22:30:34 +02:00
Florian Schmaus 145fa02a48 Smack 4.1.7 2016-04-14 22:18:36 +02:00
Florian Schmaus 58d9f4e749 Use Locale.US in XMPPError.Type ↔ String conversion
Fixes SMACK-719
2016-04-12 15:05:56 +02:00
Florian Schmaus 8235e8417d Use simple name in StanzaTypeFilter 2016-04-12 15:05:56 +02:00
Florian Schmaus a4fc39d95f Add Android jar to classpath 2016-04-12 14:52:38 +02:00
Florian Schmaus e1dfb53483 Check answer data in MiniDnsResolver
for the correct RR type.
2016-04-10 20:09:22 +02:00
Craig 189982a9ba Fixed documentation in PayloadItem.java and ItemsExtension.java
Made the formatting similar to that in Item.java
2016-04-08 22:54:18 +02:00
Florian Schmaus b59356c9bf Travis-CI: Use Gradle 2.12 2016-04-08 22:29:59 +02:00
Florian Schmaus f351919fa5 Switch to Ammonite REPL
It comes with working tab completion. \o/
2016-02-23 16:30:20 +01:00