Florian Schmaus
d6a90942a4
Unify Bouncy Castle versions: Add bouncyCastleVersion variable
2019-04-02 15:58:34 +02:00
Florian Schmaus
be10a6e850
Return Set instead of HashSet in UndecidedOmemoIdentityException
2019-02-18 11:39:49 +01:00
Florian Schmaus
8df69bd3ce
Use XmlEnvironment in parsing/provider subsystem
2019-02-15 23:21:30 +01:00
Florian Schmaus
d06f533bb9
Drop OSGi support
2019-02-05 13:48:24 +01:00
Florian Schmaus
083dac8b83
Rework exceptions in the parsing / provider subsystem
2019-02-05 13:18:03 +01:00
Florian Schmaus
fee3ed81ca
Introduce XmlEnvironment
2019-02-05 13:18:03 +01:00
a25890cfcc
Set message type to 'chat' for OMEMO messages
2018-11-24 15:49:12 +01:00
Florian Schmaus
0adcf889bf
Merge pull request #278 from vanitasvitae/omemoFileBasedStoreUrlEncode
...
Use new BareJidEncoder class in FileBasedOmemoStore
2018-11-08 07:38:43 +01:00
9302b08854
Use new BareJidEncoder class in FileBasedOmemoStore
2018-11-07 18:17:25 +01:00
Florian Schmaus
b7ea226c56
Bump "Error Prone" to 2.3.2
...
and gradle-errorprone-plugin to 0.6.
2018-10-31 16:06:31 +01:00
410c652074
Add integration test and fix checkstyle issues
2018-10-10 14:48:22 +02:00
378aa4b262
Business logic for handling read-only devices
2018-10-10 14:07:23 +02:00
afb432dcee
Add store methods for message counters
2018-10-10 14:07:23 +02:00
Florian Schmaus
8702e57f96
Merge pull request #264 from vanitasvitae/emptyBundle
...
Do not allow OMEMO bundles without prekeys
2018-09-16 21:30:06 +02:00
2cf23892f6
Fail on parsing OMEMO bundle with missing prekeys
2018-09-16 17:40:59 +02:00
d50bb1df1d
OMEMO: properly handle item-not-found in refreshRepublishDeviceList.
...
Fixes SMACK-830
2018-09-02 16:23:42 +02:00
Florian Schmaus
4d4f92ba86
Rename PEP to Pep
2018-08-15 20:15:57 +02:00
Florian Schmaus
a00aa726fe
Introduce CloseableUtil
2018-08-15 17:25:22 +02:00
59f85f2f8d
Bump bcprov-jdk15on to 1.60
2018-07-09 10:59:19 +02:00
e79f364e1d
Only ignore our own stale devices
2018-06-22 14:03:09 +02:00
Florian Schmaus
6e9fb17f8f
Make CorruptedOmemoKeyException not swallow exceptions
2018-06-20 11:51:46 +02:00
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
9161ba9e7d
Improve MamManager API
2018-06-12 08:53:18 +02:00
Florian Schmaus
e8923b9d16
Enable trailing whitespace checkstyle check
...
for all source code regions, including javadoc.
2018-05-09 23:26:39 +02:00
Florian Schmaus
5ab2903c32
Change Element.toXml() to toXml(String enclosingNamespace)
2018-04-27 10:05:25 +02:00
Florian Schmaus
31244ae982
Make PubSub elements namespace aware
...
Also fixes SMACK-814.
2018-04-23 20:36:41 +02:00
Florian Schmaus
74f14484e6
Smack 4.2.4
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlrTPy5fFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFI5aAf/Rb6Y+hqxiHRbsmww74rt7HfgQnOjOjz3bPhgbVH2emzBHzxsU2pBBY87
iTfCXjXA3qQ9FzluBchLrd9EciDEXq1A/ZblYnR+kch1DK7wvVipTPWIzOHt6ahD
q7vfS9EmmFBCRjNM4tW8zwaajWWeJAWimXoZFxuy/n+2FORnx0x5NrnIHwYvyUtf
nY432BOiCg7l6J9sgfcoYDgP0Ot4SkdfUIgGOYonv0lzKW8HkU/OZZwEMbFhlCHU
s0inbU5ldDDP7xXIinDqHVSKpRlSIkaOJ0zbAQLjFz8h2fCnqDGhpnNbun8Xb7l2
agsATloOl91tlUV5D+qRWjzkx7pDxA==
=YqLS
-----END PGP SIGNATURE-----
Merge tag '4.2.4'
Smack 4.2.4
2018-04-15 14:48:22 +02:00
e200f2ddf8
Add OMEMO to EME
2018-04-15 13:39:27 +02:00
Florian Schmaus
2efec89050
Rename XMPPError to StanzaError
...
Fixes SMACK-769.
2018-04-07 22:59:25 +02:00
Florian Schmaus
6a42d5baff
Rework FileUtils
2018-04-06 10:25:06 +02:00
Florian Schmaus
a9ca1a0989
Enable ModifierOrder checkstyle check
...
Fixes SMACK-812
2018-03-29 12:35:11 +02:00
Florian Schmaus
b5209f4701
Enable RedundantModifier checkstyle check
2018-03-28 14:02:21 +02:00
Florian Schmaus
81002c4fbd
Merge branch '4.2'
2017-11-22 08:37:47 +01:00
Florian Schmaus
9e11b68144
Add comment style checkstyle rule requiring a space
2017-11-20 08:53:19 +01:00
Florian Schmaus
384c285fbc
Merge branch '4.2'
2017-10-14 14:56:36 +02:00
Florian Schmaus
c70a1921db
Use Async.go() in OMEMO PEPListener
...
to avoid a deadlock, since the PEP listener is synchronous.
2017-09-29 16:32:32 +02:00
Florian Schmaus
58181bab08
OMEMO: Unspaghetti PEP listener code
...
While I like Spaghetti, I don't like them in my code.
4 insertions, 24 deletions, *kaboom*. :)
2017-09-29 16:32:32 +02:00
Florian Schmaus
43abd52d76
Smack 4.2.1
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlmR75tfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFLeXggAjdgj7YVUe22NtamnROBj1c3PaWwgSY0gEjcyDPsOz5qeqNUdQLHbmt2j
XQQpYZWKg1/1uoQHlsixaFKbGVctKRk72aNEodRfd1osta11WTOwZKEb8nI411Tt
7M0Fhf430WZY6nioZiZIorsmid57fftJ2EMPlmjEDp2FD0AVGAXkEhCneGaPtt9Q
hbWbepIy9tApeIH+QgmFLBmPLnFCaSg+X6NUden3Z21bUz5vH8pmcbeUVfsNB7kW
nkkDuNwKHPFLgjuhcq7D+KAKRwNU7n8WEuHseRzM7bMCEB+S/rZok5KPXe/tV4v+
YZKN2e+2yh4j5l4FT/fCzELfWcvrgA==
=MV3G
-----END PGP SIGNATURE-----
Merge tag '4.2.1'
Smack 4.2.1
2017-08-14 21:01:36 +02:00
Florian Schmaus
772e45da92
Introduce NotAPubSubNodeException
...
Fixes SMACK-759.
2017-08-14 20:23:35 +02:00
Florian Schmaus
2050b2f8b9
Remove OmemoManager.resourceSupportsOmemo()
...
since there is currently no way to determine if a full JID supports
OMEMO.
2017-07-23 10:58:55 +02:00
Florian Schmaus
7b5eecb821
Use AbstractConnectionListener in OmemoManager
...
and manually inline the setConnectionListener() method.
2017-07-23 10:58:55 +02:00
Florian Schmaus
2e61e0a4d3
Use Async.go() in OmemoManager's connection listener
...
to prevent a timeout exception since those are executed synchronously.
2017-07-23 10:58:55 +02:00
Florian Schmaus
57e19d1a4f
Use Async.go() in OmemoCarbonCopyListener
...
to prevent a timeout exception since carbon copy listeners are
executed synchronously.
2017-07-23 10:58:55 +02:00
419f6a336e
Correct method name to getUndecidedDevices
2017-07-14 16:09:37 +02:00
Florian Schmaus
e87c463927
Merge pull request #147 from vanitasvitae/fixMUC
...
Fix OMEMO MUC receiving
2017-07-03 11:48:03 +02:00
Florian Schmaus
3a79566f1c
OmemoManager: Fix typo s/defaulDeviceId/defaultDeviceId/
2017-07-03 11:07:26 +02:00
248e76ff46
Fix receiving OMEMO MUC messages
...
The method OmemoManager.getSender() was faulty and returned null for MUC
occupants, which lead to NPEs when receiving MUC messages with OMEMO.
2017-06-30 14:30:19 +02:00
Florian Schmaus
2b11074950
Merge branch '4.2'
2017-06-17 15:55:38 +02:00
Florian Schmaus
08e897113d
Add CustomImportOrder checkstyle rule
...
And matching ImportOrder settings for Eclipse in
resources/eclipse/smack.importorder
2017-06-14 17:12:43 +02:00
28f3130cf9
Add Use of Cryptographic Hashfunctions (XEP-300)
...
Also move bouncycastle dep from smack-omemo to
smack-experimental.
2017-06-03 00:33:56 +02:00
e86700b040
Add OMEMO support
...
This commit adds the modules smack-omemo and smack-omemo-signal.
smack-omemo is licensed under the Apache license like the rest of the smack project.
smack-omemo-signal on the other hand is licensed under the GPLv3.
Due to the fact, that smack-omemo is not of much use without smack-omemo-signal,
the OMEMO feature can currently only be used by GPLv3 compatible software.
This may change in the future, when a more permissively licensed module becomes available.
Fixes SMACK-743.
2017-06-02 13:40:10 +02:00