Commit Graph

257 Commits

Author SHA1 Message Date
Daniel Gultsch
7fd25abea2 code cleanup in AxolotlService.fetchDeviceIds() 2018-04-12 08:55:50 +02:00
Daniel Gultsch
aff2b33e27 load currently open conversation faster 2018-04-11 18:07:40 +02:00
Daniel Gultsch
bda95bc571 make error message for 'not encrypted for this device' 2018-04-04 18:21:22 +02:00
Daniel Gultsch
85caaf084b create dedicated exception for not encrypted for this device 2018-04-04 09:11:53 +02:00
Daniel Gultsch
a6539be52b introduced tri state omemo setting (off by default, on by default, always) 2018-03-27 15:35:53 +02:00
Daniel Gultsch
dccd3f1c8e figure out fallbacks with omemo source id 2018-03-22 13:26:35 +01:00
Daniel Gultsch
64f040b631 offer a more convienient way to disable omemo from trust keys dialog 2018-03-15 13:37:08 +01:00
Daniel Gultsch
1accf9d961 migrate to xmpp-addr 2018-03-07 22:30:36 +01:00
Daniel Gultsch
78fd19195d finished 'Set Status Message' dialog 2018-03-07 22:30:36 +01:00
Daniel Gultsch
6b55f05e27 don't send messages in callback 2018-03-07 22:30:35 +01:00
Daniel Gultsch
bf6b54a7aa get rid of OTR 2018-03-07 22:30:34 +01:00
Daniel Gultsch
de0272fd1a integrate trust manager into conversations 2018-03-07 22:30:33 +01:00
Daniel Gultsch
bcd00bb517 discover file extension in original filename from pgp 2018-01-29 01:40:02 +01:00
Daniel Gultsch
a33984acc5 encrypt muc PM only to actual recipient 2018-01-27 20:55:43 +01:00
Daniel Gultsch
be70eb5650 improvements for self messages
* fix omemo in group chats w/o participants
* don't create two axolotl messages when messaging self
* fix read marker for self messages
2018-01-27 10:45:05 +01:00
Daniel Gultsch
3e111e7f58 allow axolotl header to be empty in empty mucs 2018-01-27 09:15:47 +01:00
Daniel Gultsch
eee5d885ba make chat markers opportunistic in private mucs 2018-01-22 23:21:24 +01:00
Daniel Gultsch
6009b8ebf0 disable offline messages. postpone prekey handling until after mam catchup 2018-01-19 18:17:13 +01:00
Daniel Gultsch
036dd82698 properly handle key transport messages. use prekeyparsing only when that attribute is set 2018-01-18 20:58:55 +01:00
Daniel Gultsch
127557df56 show pep as available if omemo_all_access has been installed on server 2017-12-18 13:47:53 +01:00
Daniel Gultsch
e0ec6ad8b6 fixed omemo device list not getting annouced on empty list 2017-12-18 13:18:58 +01:00
Daniel Gultsch
782b8fb744 fixup for pep omemo notification dedup 2017-12-13 20:28:30 +01:00
Daniel Gultsch
328c6dea0f fixed workaround that allowed us to expire devices 2017-12-07 14:47:21 +01:00
Daniel Gultsch
97821f0633 possible fix for retry loop on pgp key annoucement 2017-12-05 19:16:53 +01:00
Daniel Gultsch
75b4926025 fixed publish-options migration 2017-12-01 18:54:39 +01:00
Daniel Gultsch
8696cf2235 PgpService: feed result intent back into decryption 2017-11-22 13:36:10 +01:00
Daniel Gultsch
013822fe82 excute db read and writes on different threads 2017-11-16 15:53:03 +01:00
Daniel Gultsch
57c11d42d5 create a new axolotl service when the account jid changes 2017-08-10 22:34:03 +02:00
Daniel Gultsch
0da2f1ed3f prevent users from editing their account jid after successful login 2017-08-10 22:34:03 +02:00
Daniel Gultsch
768eadde36 use random string generator instead of BigInteger in DigestMd5 2017-08-01 12:27:26 +02:00
Daniel Gultsch
e11277c70f use base64 instead of base36 when creating random strings 2017-07-30 11:39:47 +02:00
Daniel Gultsch
f5da4791ad avoid unnecessary roster sync in OMEMO code. fixed startup performance regression 2017-07-29 13:50:32 +02:00
Daniel Gultsch
837c212931 refresh omemo activity after failing to fetch keys due to lack of ids 2017-07-28 18:37:07 +02:00
Daniel Gultsch
d6e51288c3 Merge pull request #2564 from yushijinhun/fix-decryption-blocked
Give up PGP decryption when intent is cancelled
2017-07-25 09:20:51 +02:00
yushijinhun
48147b7fd1
Give up PGP decryption when intent is cancelled
When receiving a PGP message which is not encrypted with YOUR key,
OpenKeychain shows a dialog, which tells you the private key to decrypt
the message is unavailable. However, Conversations won't give up
decrypting the message. So whether the subsequent messages are
decryptable or not, the decryption is blocked at the current message.
The commit fixes the bug in this way: Give up the current message when
the decryption intent is cancelled, so that subsequent messages can be
handled.
2017-07-25 15:09:18 +08:00
Daniel Gultsch
432598f896 Merge branch 'bugfixes' 2017-07-23 07:53:09 +02:00
Daniel Gultsch
c8bd5bc1f5 made OF selfSigned() workaround only available >=kitkat
this undos 8a729061d5. as it turns out 4.1
and 4.0 only break when checking if a cert is self signed.
2017-07-23 07:47:39 +02:00
Daniel Gultsch
85dc0c284d made omemo always available but in public mucs 2017-07-18 12:51:15 +02:00
Daniel Gultsch
da87eac48e provide upgrade path for accounts with publish-options 2017-07-18 12:51:15 +02:00
Daniel Gultsch
9a57673130 use publish-options instead of always pushing node configuration 2017-07-18 12:51:15 +02:00
Daniel Gultsch
8d6b2074cb let hasPendingFetches() return true when fetching device ids 2017-07-18 12:51:15 +02:00
Daniel Gultsch
7a2856ac86 fetch required device ids on demand 2017-07-18 12:51:15 +02:00
Daniel Gultsch
f7258d16e1 explicitly fetch device ids before building sessions in single mode conversation 2017-07-18 12:51:15 +02:00
Daniel Gultsch
25e993693f change access model of omemo pep nodes after every publish 2017-07-18 12:51:15 +02:00
Daniel Gultsch
6c95897f09 fetch device ids for muc members w/o known devices 2017-07-18 12:51:15 +02:00
Daniel Gultsch
8a729061d5 use CN-workaround for pre-kitkat 2017-07-17 23:13:55 +02:00
Daniel Gultsch
217335703c fix regression introduces with OF fix. properly fall back to common name 2017-07-17 21:11:15 +02:00
Daniel Gultsch
8afe7efc2c workaround for OpenFire: check CN first in self signed certs
The self signed certificates created by OpenFire (Not sure if other
certs are affected as well) will crash the Java/Android TLS stack when
accessing getSubjectAlternativeNames() on the the peer certificate.

This usually goes unnoticed in other applications since the
DefaultHostnameVerifier checkes the CN first. That however is a
violation of RFC6125 section 6.4.4 which requires us to check for the
existence of SAN first.

This commit adds a work around where in self signed certificates we
check for the CN first as well. (Avoiding the call to
getSubjectAlternativeNames())
2017-07-16 11:05:25 +02:00
Daniel Gultsch
cbce73c301 fixed fingerprint trust (was messed up after library upgrade) 2017-06-25 18:18:13 +02:00
Daniel Gultsch
2ed71df01a also check for hostname in in certs if hostname is from trusted source 2017-06-21 23:40:01 +02:00