Commit Graph

34 Commits

Author SHA1 Message Date
Paul Schaub ce5b5f88ef
Rebase on master 2018-06-09 14:29:18 +02:00
Paul Schaub 19a91794c6 Dont add EME hint to ratchet update messages 2018-06-09 14:00:03 +02:00
Paul Schaub 2d70b2301f Fix checkstyle issue 2018-06-09 13:59:36 +02:00
Paul Schaub 15083fa3b0 Stale devices: Consider date of deviceId publication 2018-06-09 13:59:36 +02:00
Paul Schaub 38d9d96d1f Use set instead of list for handling OmemoDevice 2018-06-09 13:59:36 +02:00
Paul Schaub 8751138e19 Add method to establish fresh session 2018-06-09 13:59:36 +02:00
Paul Schaub 4fd2300a2f Add decryption of MamQueryResults + Inttest 2018-06-09 13:59:36 +02:00
Paul Schaub ba0b81f750 Add method to decrypt OmemoElements from a MamQueryResult 2018-06-09 13:59:36 +02:00
Paul Schaub 2b71b20a3e Add method to manually decrypt OmemoElement 2018-06-09 13:59:36 +02:00
Paul Schaub 1cbc112c88 Remove unused code, rafactor 2018-06-09 13:59:36 +02:00
Paul Schaub f3403571a7 Rewrite integration tests 2018-06-09 13:59:36 +02:00
Paul Schaub c287345ce7 Fix fetchDeviceList bug, async listeners 2018-06-09 13:59:36 +02:00
Paul Schaub a10bab80cb Fix deviceList listener and subscribe to lists 2018-06-09 13:59:36 +02:00
Paul Schaub daf9ef94cd Delete old classes, fix javadoc errors 2018-06-09 13:59:36 +02:00
Paul Schaub 50f8a4f1fe Reimplement encryption, solve compiler errors 2018-06-09 13:59:36 +02:00
Paul Schaub 7bff6e7d99 Fix some issues and delete old code. 2018-06-09 13:59:36 +02:00
Paul Schaub 2db7717abc Temp commit 2018-06-09 13:59:01 +02:00
Paul Schaub b0acf0bcc3 Temp commit 2018-06-09 13:57:51 +02:00
Paul Schaub 85171ee71b Temp commit 2018-06-09 13:53:04 +02:00
vanitasvitae 9a779ff8aa Refactoring 2018-06-09 13:53:04 +02:00
vanitasvitae 36dae1ece4 Move trust management from OmemoStore to TrustCallback
Refactor various method names to more precisely reflect
what happens

Introduce CachingOmemoStore, SignalCachingOmemoStore,
which can be either used standalone as ephemeral OmemoStore
implementations, or as wrappers around other implementations
to add a cache layer for reduced storage access.

Get rid of "isFreshInstallation". Keys are now - given
that they don't exist - generated on startup.

Bump libsignal-protocol-java to 2.6.2

Prevent offline access to some functions which require
authenticated connection

Create more advanced unit tests and integration tests

Add async initialization function for OmemoManager

Remove session handling from smack-omemo.
This is now handled - in case of smack-omemo-signal -
solely by libsignal-protocol-java
2018-06-09 13:53:04 +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
Paul Schaub e200f2ddf8
Add OMEMO to EME 2018-04-15 13:39:27 +02:00
Florian Schmaus a9ca1a0989 Enable ModifierOrder checkstyle check
Fixes SMACK-812
2018-03-29 12:35:11 +02:00
Florian Schmaus 9e11b68144 Add comment style checkstyle rule requiring a space 2017-11-20 08:53:19 +01: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 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 3a79566f1c OmemoManager: Fix typo s/defaulDeviceId/defaultDeviceId/ 2017-07-03 11:07:26 +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
vanitasvitae 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