Commit Graph

3609 Commits

Author SHA1 Message Date
Florian Schmaus 48627bd0fe
Merge pull request #253 from vanitasvitae/norEmpty
requireNotNullOrEmpty: Obey the rules of grammar
2018-07-28 12:57:49 +02:00
Florian Schmaus c4c15c3e0a
Merge pull request #250 from vanitasvitae/fixEmeAdding
Fix ClassCastException in hasProtocol method
2018-07-21 14:24:15 +02:00
Paul Schaub 74bebc13e6
requireNotNullOrEmpty -> requireNotNullNorEmpty 2018-07-17 15:10:39 +02:00
Florian Schmaus cf2b3ef634
Merge pull request #252 from vanitasvitae/requireNonNullOrEmpty
Add Objects.requireNonNullOrEmpty
2018-07-17 11:59:06 +02:00
Paul Schaub 4afe573a68
Add Objects.requireNonNullOrEmpty 2018-07-17 11:39:51 +02:00
Paul Schaub 59f85f2f8d
Bump bcprov-jdk15on to 1.60 2018-07-09 10:59:19 +02:00
Paul Schaub 29e2a633d8
Fix ClassCastException in hasProtocol method 2018-07-04 16:26:52 +02:00
Florian Schmaus 0ffc29aa67
Merge pull request #249 from vanitasvitae/checkHint
Avoid adding multiple storage hints to a message
2018-07-04 14:19:06 +02:00
Paul Schaub 2347c2a025
Avoid adding multiple processing hints to a message 2018-07-04 11:55:58 +02:00
Paul Schaub 4ee034bf40
Add utility method to get temp directory 2018-07-03 10:39:54 +02:00
Florian Schmaus 8011ba96bb
Merge pull request #244 from vanitasvitae/EmeImprovements
Add EME convenience methods
2018-07-03 09:52:39 +02:00
Florian Schmaus 78a5f5089a
Merge pull request #248 from mhariri/fix_bosh_msg_ns
Fix missing body namespace in BOSH messages
2018-07-02 23:02:20 +02:00
Mohsen Hariri 33221c57f9 Fix missing body namespace in BOSH messages
The body's "jabber:client" namespace was missing
in BOSH messages.
2018-07-02 17:20:03 +02:00
Florian Schmaus ce4f3352a2 Merge branch '4.3' 2018-06-23 17:18:17 +02:00
Florian Schmaus d76d8a9b3f
Merge pull request #245 from vanitasvitae/fixStaleDevices
Only ignore our own stale devices
2018-06-22 15:05:58 +02:00
Paul Schaub e79f364e1d
Only ignore our own stale devices 2018-06-22 14:03:09 +02:00
Florian Schmaus c73219b797 Add (To|From)TypeFilter.(FROM|TO)_ANY_JID
to filter all stanzas which have a valid jid set as to/from.
2018-06-20 22:17:11 +02:00
Florian Schmaus 61be4d768d Add javadoc describing the XMPPErrorException class 2018-06-20 22:17:11 +02:00
Florian Schmaus 23bb5c5625 Add XMPPErrorException.getStanzaError()
Also deprecate getXMPPError and let StanzaError implement
ExtensionElement.
2018-06-20 22:17:11 +02:00
Paul Schaub b66cc4c5b5
Add EME convenience methods 2018-06-20 13:59:08 +02:00
Florian Schmaus 6e9fb17f8f Make CorruptedOmemoKeyException not swallow exceptions 2018-06-20 11:51:46 +02:00
Florian Schmaus ac347fc598 Smack 4.4.0-alpha2-SNAPSHOT 2018-06-17 15:00:44 +02:00
Florian Schmaus c750e1675b Smack 4.4.0-alpha1 2018-06-17 14:30:03 +02:00
Florian Schmaus 4108b9a83e Enable uploadArchives for smack-omemo* projects 2018-06-17 14:30:03 +02:00
Florian Schmaus c83f6ec9c8 Merge branch '4.3' 2018-06-17 14:10:52 +02:00
Florian Schmaus 651ee7b85e Smack 4.3.0-rc2-SNAPSHOT 2018-06-17 14:10:12 +02:00
Florian Schmaus 21f0be58df Smack 4.3.0-rc1 2018-06-17 13:49:29 +02:00
Florian Schmaus 9e18ba2327 Remove deprecated methods in XMPPConnection 2018-06-14 10:00:37 +02:00
Florian Schmaus 9f786fc70d Remove deprecated methods in MamManager 2018-06-14 10:00:24 +02:00
Florian Schmaus 8841c4aed2 Remove deprecated method sin SDM and AdHocCommandManager
These methods are related to functionality which is no longer existend
in XEP-0030.
2018-06-14 09:59:46 +02:00
Florian Schmaus 84ef4047a7 Remove depreacted methods in MultiUserChat 2018-06-14 09:58:52 +02:00
Florian Schmaus 153473c76f
Merge pull request #177 from vanitasvitae/storerework
Rework support for XEP-0384: OMEMO Encryption
2018-06-13 12:53:57 +02:00
Paul Schaub 1f731f6318
Rework support for XEP-0384: OMEMO Encryption
Changes:

    Rework integration tests
    New structure of base integration test classes
    bump dependency on signal-protocol-java from 2.4.0 to 2.6.2
    Introduced CachingOmemoStore implementations
    Use CachingOmemoStore classes in integration tests
    Removed OmemoSession classes (replaced with more logical OmemoRatchet classes)
    Consequently also removed load/storeOmemoSession methods from OmemoStore
    Removed some clutter from KeyUtil classes
    Moved trust decision related code from OmemoStore to TrustCallback
    Require authenticated connection for many functions
    Add async initialization function in OmemoStore
    Refactor omemo test package (/java/org/jivesoftware/smack/omemo -> /java/org/jivesoftware/smackx)
    Remove OmemoStore method isFreshInstallation() as well as defaultDeviceId related stuff
    FileBasedOmemoStore: Add cleaner methods to store/load base data types (Using tryWithResource, only for future releases, once Android API gets bumped)
    Attempt to make OmemoManager thread safe
    new logic for getInstanceFor() deviceId determination
    OmemoManagers encrypt methods now don't throw exceptions when encryption for some devices fails. Instead message gets encrypted when possible and more information about failures gets returned alongside the message itself
    Added OmemoMessage class for that purpose
    Reworked entire OmemoService class
    Use safer logic for creating trust-ignoring messages (like ratchet-update messages)
    Restructure elements/provider in order to prepare for OMEMO namespace bumps
    Remove OmemoManager.regenerate() methods in favor of getInstanceFor(connection, randomDeviceId)
    Removed some unnecessary configuration options
    Prepare for support of more AES message key types
    Simplify session creation
    Where possible, avoid side effects in methods
    Add UntrustedOmemoIdentityException
    Add TrustState enum
    More improved tests
2018-06-13 12:29:16 +02:00
Florian Schmaus 37b5260cdd Fix DNSUtil.setDaneProvider()
Fixes SMACK-820.
2018-06-12 19:06:18 +02:00
Florian Schmaus f290197f6a Merge branch '4.3' 2018-06-12 15:49:43 +02:00
Florian Schmaus 1edc00b334 Merge remote-tracking branch 'ignite/master' 2018-06-12 15:49:00 +02:00
Florian Schmaus 9e865fe6ab Merge remote-tracking branch 'ignite/4.3' into 4.3 2018-06-12 13:41:43 +02:00
Florian Schmaus 6ba9218c77 Introduce myRoomJid EntityFullJid in MultiUserChat 2018-06-12 12:16:56 +02:00
Florian Schmaus 021ebf8ab3
Merge pull request #242 from igniterealtime/4.3_MUC-leave-without-nickname
fix: Prevent attempt to construct invalid address
2018-06-12 11:05:27 +02:00
Guus der Kinderen 03a267a925 fix: Prevent attempt to construct invalid address
When no join was properly registered, a nickname will not be defined.
In that case, attempting to construct the from address for the 'leave'
presence stanza will result in:

java.lang.IllegalArgumentException: The Resourcepart must not be null

This commit prevents that, by verifying that the nickname is non-null,
before sending that stanza.
2018-06-12 10:09:55 +02:00
Florian Schmaus 9161ba9e7d Improve MamManager API 2018-06-12 08:53:18 +02:00
Florian Schmaus d958b42eff Add StanzaCollector.getCollectedStanzasAfterCancelled() 2018-06-11 22:08:15 +02:00
Florian Schmaus 1dec29617e Fix StanzaCollector's Exception message: s/Packet/Stanza/ 2018-06-11 22:08:15 +02:00
Florian Schmaus 77707737df Make StanzaCollector's cancelled field volatile 2018-06-11 22:08:15 +02:00
Florian Schmaus c792be9267 Add StringUtils.requireNullOrNotEmpty() 2018-06-07 17:55:00 +02:00
Florian Schmaus 414d730962 Optimize XmlStringBuilder.element() for the empty element case
For example RSM (XEP-0059) gives <before/> a different semantic as
<before>UID</before>.
2018-06-07 17:15:16 +02:00
Florian Schmaus a3cf1ab0ca Fix MamManager.isSupported(): Use archive address 2018-06-06 08:45:13 +02:00
Florian Schmaus 5ae164f670 Add Forwarded.extractMessagesFrom(Collection<Forwarded>) 2018-06-06 08:39:09 +02:00
Florian Schmaus f2ea3e0d5b Add XmlUnitUtils.assertXmlSimilar() 2018-06-03 21:19:38 +02:00
Florian Schmaus 8aa7029b38 Add DataForm.addFields() 2018-06-03 21:19:04 +02:00