Commit graph

2661 commits

Author SHA1 Message Date
Daniel Gultsch
01267c79f2 temporarily renamed new encryption method to 'Multi-End' until a better name has been found 2015-08-01 23:36:59 +02:00
Daniel Gultsch
ea389eddce use content-type in http slot request and stick with during upload 2015-08-01 22:37:17 +02:00
Daniel Gultsch
07620a373b fixed calculated file size in http slot request 2015-08-01 22:23:58 +02:00
Andreas Straub
a6f3c1013e Let UNTRUSTED/UNDECIDED keys become INACTIVE 2015-08-01 18:30:11 +02:00
Daniel Gultsch
90fdcfea2d enable axolotl encryption for jingle supported file transfers 2015-08-01 01:19:16 +02:00
Andreas Straub
a0ebc42e34 Provide process function for key transport message 2015-07-31 23:28:09 +02:00
Andreas Straub
3e998eb126 Refactor axolotl message processing workflow
XmppAxolotlMessage is now entirely responsible for handling encryption
and decryption of messages, only leveraging XmppAxolotlSession as a
packing/unpacking primitive for payload keys.

Removed pseudo-dead session generation code step from prepareMessage
function, as sessions have been created by invoking the
TrustKeysActivity for a while now.

Added prepareKeyTransportMessage function, which creates a message with
no payload. The key that is packed into the header keyElements can then
be used for other purposes (e.g. encrypted file transfer).
2015-07-31 21:31:45 +02:00
Andreas Straub
284647fdc8 Reformat code 2015-07-31 21:31:45 +02:00
Andreas Straub
29f556b42f Change to new wire protocol version 2015-07-31 21:31:45 +02:00
Daniel Gultsch
1eb9bea77b added missing carbon column message table create statement
fixes #1310
2015-07-31 13:08:35 +02:00
Daniel Gultsch
5a9885f484 improved 'next encryption' selection 2015-07-31 00:52:46 +02:00
Daniel Gultsch
01416b229d removed expert setting to 'force encryption'. merged certifcate and encryption settings into same category 2015-07-31 00:51:30 +02:00
Andreas Straub
43c21f4f5b Fix session logic: enforce same type of encryption 2015-07-30 19:18:09 +02:00
Daniel Gultsch
3e3be06a0e fixed some colors in message adapter 2015-07-30 12:40:50 +02:00
Daniel Gultsch
2aa2e7863e use gcm for file encryption over http 2015-07-29 23:45:37 +02:00
Andreas Straub
27925c8b2e Reset lock color for non-axolotl messages 2015-07-29 20:25:14 +02:00
Andreas Straub
74e2bd17ab Highlight selected message's fingerprint in list 2015-07-29 20:21:37 +02:00
Andreas Straub
c8b51eb54f Rerender message bubbles on encryption change 2015-07-29 20:10:21 +02:00
Andreas Straub
edc8715a0a Tag carbon messages in parser, adapt session logic
Messages sent from another device of the own account are now explicitly
tagged as carboned message. The session detection logic now uses this
tag to find "session borders".
2015-07-29 16:41:58 +02:00
Andreas Straub
d3e45a0993 Fix NPE: consider unknown keys UNDECIDED 2015-07-29 02:59:41 +02:00
Andreas Straub
8cc54f4ff9 Color plaintext messages in encrypted sessions red
Plaintext messages that were received while in an encrypted session are
now colored red. We define "in an encrypted session" if a) the last
message sent by our own device before the message under consideration
(or any message received between then and now) was encrypted AND b) the
next message will be sent encrypted or the next message sent after the
one under consideration was sent encrypted
2015-07-29 02:59:41 +02:00
Andreas Straub
dd2da64a4c Improve trust toggle responsiveness
Removed unnecessary UI refreshes, explicitly update UI where needed.
2015-07-29 02:59:41 +02:00
Andreas Straub
0b661a698d Refactor out inner classes, cache trust store
Moves SQLiteAxolotlStore and XmppAxolotlSession into proper classes.

IdentityKeys trust statuses are now cached in an LruCache to prevent
hammering the database when rendering the UI.
2015-07-29 02:59:26 +02:00
Daniel Gultsch
643b12f4ad add new received message bubble drawable 2015-07-29 02:01:28 +02:00
Daniel Gultsch
9d60a94790 show http downloaded images in notification 2015-07-29 01:57:08 +02:00
Daniel Gultsch
7aca0d9813 removed recursion in message.getMerged*() 2015-07-28 23:00:30 +02:00
Daniel Gultsch
95a6b31999 changed logging. (work around logcat null pointer 2015-07-28 22:26:29 +02:00
Daniel Gultsch
e3addfe6d7 log reason for message failure 2015-07-28 14:44:11 +02:00
Daniel Gultsch
653bd970ee linked XEPs in README 2015-07-28 14:04:07 +02:00
Daniel Gultsch
64118131a0 set time on resend to current time
fixes #1298
fixes #919
2015-07-28 12:54:54 +02:00
Daniel Gultsch
5e5b5f33b8 rewrote dns fallback 2015-07-24 19:06:47 +02:00
Daniel Gultsch
fd21584476 call refreshUi directly 2015-07-24 14:43:13 +02:00
Daniel Gultsch
395008ec3b switch/case can't deal with null pointers 2015-07-23 14:02:25 +02:00
Daniel Gultsch
30b223e263 show warning when trying to highlight users that have left the conference 2015-07-22 15:57:17 +02:00
Daniel Gultsch
ffb0b332c5 treat private, non-anonymous mucs like 1:1 chats notification wise 2015-07-22 15:31:00 +02:00
Andreas Straub
7fdf4d3d20 Always build own device session automatically 2015-07-22 15:03:52 +02:00
Daniel Gultsch
04625e379a add no-store to chat states 2015-07-22 14:17:02 +02:00
Daniel Gultsch
36e280f612 use type=chat more often to go along with new, simple carbon and mam rules
* change chat states to type=chat and chat markers to type=chat
* use same type as requesting stanza for delivery receipts (which should make them type=chat most of the time)
2015-07-22 14:15:00 +02:00
Daniel Gultsch
591692a5cc use 'interactive mode' when starting downloads from the context menu 2015-07-22 12:15:09 +02:00
Andreas Straub
bba094def4 Hide regenerate keys button
Can re-enable it via Config.java setting
2015-07-22 01:00:20 +02:00
Andreas Straub
296317d0ab Disable trust toggle completely for INACTIVE keys 2015-07-22 00:53:54 +02:00
Daniel Gultsch
8abc37f1e7 made image file format configurable by Config.java 2015-07-21 23:49:35 +02:00
Daniel Gultsch
b0c957eee7 bump to version 1.5.2 2015-07-21 19:45:50 +02:00
Daniel Gultsch
eee5f69026 fixed npe in error message handling 2015-07-21 19:45:41 +02:00
Daniel Gultsch
bb4c394783 bump to version 1.5.2 2015-07-21 19:44:54 +02:00
Daniel Gultsch
b1d1f03878 fixed npe in error message handling 2015-07-21 19:44:25 +02:00
Daniel Gultsch
ba52b246e5 decreased saturation of received message bubbles by 25 units 2015-07-21 18:29:24 +02:00
Andreas Straub
8036902538 Add INACTIVE state for removed keys
We introduce a new trust state: INACTIVE. This state is intended for
old keys that have been removed.

When a TRUSTED device is removed from the PEP devicelist, it's status
will be set to INACTIVE. INACTIVE keys are shown in the UI as greyed
out, non-interactible key rows. Messages are not encrypted for INACTIVE
devices.

When an INACTIVE device reappears in PEP, or a message is received from
an INACTIVE device, it is set back to trusted.
2015-07-21 14:24:59 +02:00
Andreas Straub
352ca99799 Fill own device sessions into SessionMap 2015-07-21 14:24:59 +02:00
Daniel Gultsch
aaadbf1dd7 allow for private messages being started from muc details in anonymous mucs 2015-07-21 13:15:59 +02:00