Commit Graph

467 Commits

Author SHA1 Message Date
Damir Jelić
31ab200763 client: Only try to decrypt m.room.encrypted messages in the sync decryption. 2019-05-07 18:38:08 +02:00
Damir Jelić
7318690e2c daemon: Buffer the messages endpoint if there are undecryptable messages. 2019-05-07 18:37:32 +02:00
Damir Jelić
400c299187 daemon: Add Bearer to the auth header if we're overriding the token. 2019-05-07 18:36:05 +02:00
Damir Jelić
29a49ba120 Makefile: Fix the run-local target. 2019-05-07 18:35:24 +02:00
Damir Jelić
6b8758f2cb main: Remove cli commands for key export/import.
The functionality is now available over dbus.
2019-05-07 15:34:29 +02:00
Damir Jelić
cd5565b4b3 client: Remove unused encrypt function. 2019-05-07 15:00:51 +02:00
Damir Jelić
aa1143328f client: Remove unused asyncio events. 2019-05-07 14:57:53 +02:00
Damir Jelić
6988a1de95 daemon: The filter query parameter in a sync needs to be a str. 2019-05-07 14:52:01 +02:00
Damir Jelić
cf07cfdc16 client: Use the new AsyncClient functionality from nio for syncing. 2019-05-07 14:44:29 +02:00
Damir Jelić
c96bdea1d3 pantalaimon: Refactor out the daemon start logic into a separate file. 2019-05-07 10:42:40 +02:00
Damir Jelić
e961ff6035 ui: Create a glib class and simplify the shutdown logic. 2019-05-07 10:26:13 +02:00
Damir Jelić
57f3a00a78 client: Switch to the new confirm auth string function. 2019-05-07 09:33:12 +02:00
Damir Jelić
5ef5551977 client: Use the nio provided method to find a SAS object. 2019-05-03 16:09:06 +02:00
Damir Jelić
46ff19ea3c panctl: Remove unneeded DbusT class. 2019-05-03 14:12:33 +02:00
Damir Jelić
6dd47e7a53 pantalaimon: Rename accept_sas to confirm sas. 2019-05-03 14:01:01 +02:00
Damir Jelić
90ec4e2e96 daemon: Send some messages to the ui thread. 2019-05-03 13:48:28 +02:00
Damir Jelić
103a17998a panctl: Allow the user to confirm the short auth string. 2019-05-03 13:46:19 +02:00
Damir Jelić
1e04346bcd travis: Add dbus source headers to the build environment. 2019-05-02 16:33:12 +02:00
Damir Jelić
7f8d18d857 daemon: Handle json errors in the sync and messages methods.
A valid 200 response from the server doesn't necessarily mean that the
content will be valid json.

Handle decode errors and return the raw body if we're unable to decode.
2019-05-02 14:49:24 +02:00
Damir Jelić
a996d4acd3 daemon: Don't use the text method to get the content.
The content doesn't necessarily have to be unicode (e.g. for media
content) and the text() method tries to decode the body of the request.

Use read() instead, this way we get the raw bytes of the body, we also
set the content header manually.

This fixes #8.
2019-05-02 14:46:53 +02:00
Damir Jelić
d90eebf1e0 daemon: Remove redundant or clause. 2019-05-02 14:44:25 +02:00
Damir Jelić
e84bcea389 pantalaimon: Catch all aiohttp client connection errors. 2019-05-02 13:55:20 +02:00
Damir Jelić
f1fefb952c daemon: Buffer the sync response if there are decryption failures. 2019-05-02 13:30:31 +02:00
Damir Jelić
46aa303654 client: Clear the synced event when we start the loop. 2019-05-02 13:28:41 +02:00
Damir Jelić
ba28580aca client: Replace undecryptable megolm events with an error message. 2019-05-02 13:27:50 +02:00
Damir Jelić
db43c3efbd client: Request room keys if we're unable to decrypt a megolm event. 2019-05-02 12:09:49 +02:00
Damir Jelić
7d58da93f9 client: No need to mark to-device messages as sent anymore. 2019-04-30 18:15:39 +02:00
Damir Jelić
0972be29c1 client: Allow other event types to be decrypted. 2019-04-30 14:54:01 +02:00
Damir Jelić
7bb47092ff ui: Disable device updates for now. 2019-04-30 13:08:22 +02:00
Damir Jelić
da552973ff daemon: Overide the filter API endpoint. 2019-04-30 13:07:11 +02:00
Damir Jelić
90a87460e8 client: Use user lazy loading. 2019-04-29 16:56:50 +02:00
Damir Jelić
94e6058ef4 daemon: Handle connection errors when doing requests. 2019-04-29 16:53:31 +02:00
Damir Jelić
253424b8c3 daemon: Make the query parameters always editable in forward_request(). 2019-04-29 13:15:21 +02:00
Damir Jelić
3671660e64 daemon: Send out non-encrypted messages as well using pan's token. 2019-04-29 13:13:00 +02:00
Damir Jelić
17a20195c0 daemon: Use pan's token to perform client syncs.
The clients need to use pan's sync token so the transaction ids in the
sync response don't get lost since sending happens using pan's device
and token.
2019-04-29 12:58:59 +02:00
Damir Jelić
7a2ee980ff client: Handle key verification exceptions. 2019-04-29 09:49:42 +02:00
Damir Jelić
776f6e37d8 travis: Switch to the new olm lib location. 2019-04-28 21:21:57 +02:00
Damir Jelić
7aa7014431 client: Handle SAS key verification.
This adds the ability to receive and accept SAS key verification.
The verification process is accepted automatically for now.
2019-04-28 21:17:10 +02:00
Damir Jelić
3e67010278 client: Don't check for the room id until we know it's a valid event. 2019-04-28 21:16:14 +02:00
Damir Jelić
0a1008a127 client: Send out outgoing to-device messages. 2019-04-28 21:15:14 +02:00
Damir Jelić
2c218bfd04 client: Handle server disconnect exceptions. 2019-04-28 21:14:57 +02:00
Damir Jelić
5f124806d8 pantalaimon: Add a Cli dbus based client. 2019-04-22 21:28:15 +02:00
Damir Jelić
e43b8c750c ui: Expose key imports from the dbus API. 2019-04-18 16:56:53 +02:00
Damir Jelić
2bb6ac7196 daemon: Change the working dir to our homedir. 2019-04-18 15:53:25 +02:00
Damir Jelić
3c09dbc80a ui: Expose key exports on the dbus API. 2019-04-18 15:52:21 +02:00
Damir Jelić
8f57e42c2c ui: Change the name of the Users dbus class. 2019-04-18 14:12:31 +02:00
Damir Jelić
daacd340f9 ui: Allow devices to be unverified over the dbus API. 2019-04-18 14:01:57 +02:00
Damir Jelić
2ae5e181bc setup: Add janus to the dependencies. 2019-04-18 13:11:07 +02:00
Damir Jelić
09bd6ddbde ui: Change the log message to not mention dbus. 2019-04-18 13:10:51 +02:00
Damir Jelić
e32a73a011 daemon: Allow device verification over the dbus API. 2019-04-18 13:01:10 +02:00