Commit graph

395 commits

Author SHA1 Message Date
fiaxh
421f43dd8b Add support for OMEMO call encryption 2021-04-29 16:13:25 +02:00
fiaxh
5d85b6cdb0 Handle non-existant call support 2021-04-29 16:13:25 +02:00
Marvin W
3880628de4
Video optimizations 2021-04-29 15:53:59 +02:00
fiaxh
328c3cf37f Fix bad syntax in gnutls vapi, add libsrtp2 dependency to CI builds 2021-04-12 22:22:39 +02:00
Marvin W
2bee82f0b6
ICE: Require libnice 0.1.15 or newer 2021-04-12 18:05:55 +02:00
Marvin W
d19a01d5f2
Handle DTLS edge-cases 2021-04-12 18:05:08 +02:00
Marvin W
fe160d94ba
Handle broken VAPI in older vala 2021-04-11 16:28:59 +02:00
Translations
e32b49b68f Update translations 2021-04-11 15:59:37 +02:00
Marvin W
4edab3c8d6
Fix custom vapi integration 2021-04-11 15:13:22 +02:00
Marvin W
e9ff660537
Fix usage of old libnice versions 2021-04-11 15:13:22 +02:00
fiaxh
dfffa08ec1 Fix warnings 2021-04-11 14:42:59 +02:00
Marvin W
6ebdec1d78
GStreamer compat 2021-04-11 12:31:03 +02:00
fiaxh
5e11986838 Fix dtls pull_timeout_function, fix cyclic references 2021-04-09 22:23:56 +02:00
Marvin W
fbc10c2023 DTLS-SRTP: Wait for setup finish and handle setup=passive 2021-04-09 22:23:53 +02:00
fiaxh
8d1c6c29be Display+store call encryption info 2021-04-09 22:23:13 +02:00
fiaxh
4ce2bd8cd2 Set omemo+openpgp database properties to be the same as main db 2021-04-07 21:31:47 +02:00
fiaxh
3454201e5a Use outgoing JMI if contact has supporting device 2021-04-01 12:03:04 +02:00
Marvin W
c5ab4fed87
Fix bug in legacy SRTP decryption 2021-04-01 11:51:35 +02:00
Marvin W
c5cb43350a
Remove unnecessary debug code 2021-04-01 11:51:12 +02:00
Marvin W
5e58f29883
Migrate to libsrtp2 2021-03-29 13:20:12 +02:00
Marvin W
9520a81b81
Don't reuse PTs for different media types 2021-03-29 13:14:37 +02:00
Marvin W
fd21eafe26
Fix cyclic reference in DTLS 2021-03-29 13:14:10 +02:00
Marvin W
fc3263d49e
Fix device manager usage for GStreamer 1.16 2021-03-26 15:18:04 +01:00
fiaxh
ec35f95e13 Add initial support for DTLS-SRTP 2021-03-25 14:45:54 +01:00
Marvin W
4b230808b9
Move SRTP implementation into crypto library for reuse 2021-03-23 20:04:28 +01:00
Marvin W
97ab7de7ab
Mark ICE component as ready even without the event 2021-03-23 15:11:00 +01:00
Marvin W
b01f6f9ef7
Resample audio data for common 48k sample rate 2021-03-23 15:11:00 +01:00
Marvin W
c8a37c0246
Make foundation a string 2021-03-23 15:11:00 +01:00
Marvin W
b393d41601
Add support for SRTP 2021-03-23 15:11:00 +01:00
Marvin W
cde1e38f5d
RTP: Backport gst_caps_copy_nth from GStreamer 1.16 2021-03-21 15:43:54 +01:00
Marvin W
ef2e3c774c Add RTP implementation as plugin 2021-03-21 12:41:38 +01:00
Marvin W
d703b7c09d Add libnice-based ICE-UDP implementation as plugin 2021-03-21 12:41:27 +01:00
hrxi
148cf48d2b Add libnice and listen for direct connections in Jingle SOCKS5 (#608)
Add libnice as a plugin. If it is present, use libnice to enumerate
local IP addresses and listen on them to support direct connections for
Jingle SOCKS5.

Tested with Conversations and Gajim.

Created the nice.vapi file using
```
vapigen --library nice --pkg gio-2.0 --metadatadir metadata /usr/share/gir-1.0/Nice-0.1.gir
```
2021-03-19 22:06:02 +01:00
Marvin W
64237a83a4
CMake: Make STATIC explict where needed 2021-03-06 10:25:56 -06:00
Translations
ea678bb8d8 Update translations 2021-03-04 09:38:26 -06:00
fiaxh
ad031ee333 Remove unnecessary Soup dependency from OMEMO plugin
fixes #983
2021-01-28 14:02:24 +01:00
Translations
fc18e781a5 Update translations + DOAP 2021-01-11 20:37:24 +01:00
fiaxh
cc01374d3c Use advertized/server/live time for sorting instead of arrival time
fixes #310
2020-12-04 19:11:27 +01:00
fiaxh
f31e96d6bb Improve contact description in OMEMO warnings
fixes #947
2020-12-04 17:16:09 +01:00
fiaxh
881b9eec9d Improve entity identity getter 2020-11-20 15:21:18 +01:00
fiaxh
d0488401ce Use WeakMap for message caching 2020-11-14 17:05:46 +01:00
Translations
7726c0b75b Update translations 2020-11-12 18:28:56 +01:00
Translations
b2c7e9dfff Make some strings translatable, update translations 2020-11-10 14:04:57 +01:00
Translations
6218b759bf Update translations 2020-11-04 18:12:01 +01:00
Kim Alvefur
0b145c69e9
Swedish translations (#936)
* Swedish translations

* Translate OMEMO strings to Swedish
2020-11-04 13:26:34 +01:00
fiaxh
2e0357877c Fix some compiler warnings 2020-10-27 16:05:30 +01:00
Translations
d42918b0ab Update translations 2020-10-07 20:52:53 +02:00
Marvin W
1956f63179
Set key size for omemo http file transfers to 256 bits
Fixes #909
2020-09-15 20:32:09 +02:00
Marvin W
cd5b639a82
Send OMEMO-encrypted messages and files using 12 byte IV 2020-09-14 22:04:06 +02:00
Translations
1534aa3a5e Update translations 2020-09-10 20:18:18 +02:00
fiaxh
3563232df0 OMEMO: Don't trigger "Not encrypted to this device" warning for messages w/o payload 2020-09-10 19:35:05 +02:00
fiaxh
49bcbdaa51 Fix initial file encryption displaying
fixes #831
2020-09-07 15:14:29 +02:00
Translations
ff9a9a0d66 Update translations 2020-08-01 23:02:44 +02:00
fiaxh
e159fd2492 Only query entity caps when we need them 2020-07-16 23:31:19 +02:00
Marvin W
af98b8ea0f
Fix rare 1 byte buffer over-read 2020-06-28 11:53:43 +02:00
fiaxh
886a519d85 Don't offer encryption in MUC PMs 2020-06-23 15:54:12 +02:00
fiaxh
0beb592c5a Use sqlite UPSERT 2020-06-10 23:40:00 +02:00
fiaxh
b72ea08d03 Show unencryptable/untrusted OMEMO warnings also in MUCs
fixes #857
2020-06-05 01:28:42 +02:00
Translations
82ce2426c1 Update translations 2020-05-17 20:07:48 +02:00
Translations
c6cf90a923 Update translations 2020-05-16 19:14:54 +02:00
fiaxh
51a2372869 Add file upload preview
fixes #756
2020-04-22 15:44:12 +02:00
fiaxh
7c4260eed7 Remove features from service discovery module when detaching module from stream
fixes #179
fixes #812
2020-04-21 16:25:21 +02:00
Marvin W
fbd70ceaac
Bump libsignal-protocol-c version to 2.3.3 2020-04-13 19:56:45 +02:00
Translations
5b9199e7d4 Update translations 2020-04-12 22:35:42 +02:00
Translations
d3e58291e7 Update translations 2020-04-11 00:28:51 +02:00
fiaxh
5b2683dfa5 Last message correction fixes 2020-04-06 15:33:43 +02:00
fiaxh
871ff33ac7 Add support for last message correction 2020-04-03 22:49:59 +02:00
fiaxh
1016529c36 Visually mark OMEMO messages from a trusted device as trusted 2020-03-29 20:24:39 +02:00
fiaxh
c029da49bc Warn about undecrypted and untrusted messages 2020-03-29 20:24:38 +02:00
mbeko
5a98d2919b Change UI messages for more clarity 2020-03-24 22:19:38 +01:00
Alexander Krotov
b9125b7e3e Enable secure_delete PRAGMA on SQLite databases (#370)
It is especially important for OMEMO database, as it stores *ephemeral* keys
2020-02-21 20:49:36 +01:00
Translations
29bcba2580 Update translations 2020-02-16 16:56:12 +01:00
fiaxh
7d699a2ed2 Rename zh_Hans -> zh_CN and zh_Hant -> zh_TW
fixes #524
2020-01-29 00:38:12 +01:00
Translations
74dc1c1739 Update translations 2020-01-29 00:38:07 +01:00
Marvin W
4a9c05ea37
Enabling display of more compiler warnings and fix some of them
Most of these are caused by various issues is the Vala compiler,
but it doesn't hurt to display them and report them upstream.
2020-01-21 21:55:08 +01:00
Marvin W
55b148a0f7
Use system provided libsignal-protocol-c by default
You can still compile in tree by using --with-libsignal-in-tree flag
2020-01-21 21:55:08 +01:00
Marvin W
41f9827166
Improve log messages for OMEMO sending issues 2020-01-15 23:45:00 +01:00
Marvin W
3cfe0d60f6
Initialize GCrypt on libsignal setup 2020-01-15 19:31:47 +01:00
Marvin W
b2af8c5112
Fix various typing issues in signal bindings 2020-01-09 13:39:36 +01:00
Marvin W
8cca049e5c
Fix file receival in groupchat pmsx 2020-01-09 13:21:54 +01:00
Marvin W
4a3cef89fd
Don't allow newlines in URLs, also clean up on http file transfer detection 2019-12-26 15:46:58 +01:00
Translations
2d8a1374ad Update translations 2019-12-24 23:31:17 +01:00
Marvin W
a0a956ee08
Properly check Jids everywhere 2019-12-23 16:58:53 +01:00
Marvin W
6257e9705c
OMEMO: Improve handling of newly added devices 2019-12-23 16:49:56 +01:00
Translations
013786a120 Update translations 2019-12-19 15:26:54 +01:00
fiaxh
c3532bdf31 Refactor MAM catchup. Fetch from latest to earliest message. 2019-12-18 20:35:04 +01:00
Marvin W
bd45fdf1e1
Add version and adjust some cmake 2019-12-18 00:51:49 +01:00
Translations
11c18cdf72 Update translations 2019-12-16 21:23:18 +01:00
fiaxh
21c01dcdcb Omemo contact details dialog: Only show inactive keys Expander if there are any 2019-12-13 20:55:39 +01:00
Wiktor Kwapisiewicz
687ec1a159 Add support for HTTP Upload headers
Some services use Authorization header [0] to pass upload credential
data. This avoids the token being exposed in server logs and is allowed
by XEP-0363 since version 0.5.0.

This change adds support for headers allowed in XEP-0363: Authorization,
Expires and Cookie.

[0]: https://xmpp.org/extensions/xep-0363.html#request
2019-11-19 21:24:28 +01:00
Translations
65feaece87 Update translations 2019-11-14 01:56:13 +01:00
Wiktor Kwapisiewicz
0acbe4855d Fix reporting failed HTTP upload
Status code can't be less than 200 and greater than or equal 300 at the same
time. Using || instead of && marks all uploads that do not have 2xx status code
as "failed".
2019-11-04 15:15:28 +01:00
fiaxh
247a368150 OMEMO: Don't set publish options, configure only bundle node instead 2019-11-04 15:11:36 +01:00
Marvin W
388cc56674
Fix OMEMO file transfer GCM tag 2019-10-28 22:38:54 +01:00
fiaxh
0082d376af Fix accept/reject new OMEMO key buttons in current Adwaita theme versions 2019-10-28 01:28:40 +01:00
fiaxh
26e970a4d4 Colapse inactive keys in OMEMO keys dialog 2019-10-22 01:23:43 +02:00
fiaxh
c032ab00ec Don't send delivery recipts or chat states for own messages
fixes #631
2019-10-22 01:23:08 +02:00
Marvin W
394862dbd3
Fix wrong size being reported for OMEMO encrypted HTTP file transfers
Fixes #630
2019-10-18 21:10:19 +02:00
fiaxh
8e6db8859c Plugins: Set UI texts in code instead of .ui files to fix translations
Co-authored-by: srgcdev <srg.dev@posteo.net>
2019-10-10 00:21:45 +02:00
fiaxh
7adb0e82fb Fix pubsub item listener notifying 2019-10-02 19:09:29 +02:00
fiaxh
74c29d4df1 Add Bookmarks2 implementation, introduce bookmarks interfaces 2019-09-29 01:53:59 +02:00
Marvin W
f746ce74ce
Fix compilation with older gcrypt 2019-09-17 00:36:25 +02:00
Marvin W
9daf18f031
Fix warnings and compilation with older valac 2019-09-16 23:57:48 +02:00
Marvin W
392cb472ab
Add support for JET-OMEMO 2019-09-16 23:31:11 +02:00
Marvin W
e899668213
Add JET support 2019-09-16 23:31:11 +02:00
Marvin W
87d64524c8
Add basic crypto-vala 2019-09-16 23:31:11 +02:00
Maxime “pep” Buquet
2a70a4e83f Make TestCase protected for newer vala
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-09-11 15:35:46 +02:00
fiaxh
bd7fde99af fixup Fix some warnings 2019-09-10 19:36:11 +02:00
hrxi
d5d305193c Fix some warnings
Instances of `RegexError` are just asserted as `assert_not_reached` as
they cannot really fail except for allocation failure if the given regex
is valid.
2019-09-10 19:36:11 +02:00
Translations
f0c2ce0047 Update translations 2019-08-28 14:29:55 +02:00
fiaxh
d02f7b6a3a Fix runtime critical 2019-08-26 17:20:10 +02:00
fiaxh
0521afa3d8 Fix specified size for encrypted file uploads 2019-08-21 22:37:52 +02:00
fiaxh
3ad2891eb8 Set OMEMO devicelist + bundle node access model to public 2019-08-09 13:44:39 +02:00
fiaxh
08a5088c16 Rework encryption enabling logic + UI 2019-08-02 19:20:04 +02:00
Henrik Ullman
432074ff1b Fix Manage Key dialog string for verified keys (#588) 2019-07-28 16:42:54 +02:00
fiaxh
f0abb8aaf9 Refactor file receive/send interfaces and UI 2019-07-18 02:03:42 +02:00
fiaxh
6c480b862e OMEMO: Add debug logs for incoming bundles 2019-07-08 18:46:30 +02:00
fiaxh
06db4d0aa6 OMEMO: Rename variables, refactor can_encrypt 2019-07-08 18:46:30 +02:00
fiaxh
a7aa5130f8 OMEMO code cleanup: Move TrustLevel out of Database 2019-07-08 18:46:30 +02:00
fiaxh
837de4063d OMEMO: Move files to fitting subdirectory 2019-07-08 18:46:30 +02:00
Translations
701175fcd3 Update translations 2019-07-04 16:54:05 +02:00
hrxi
c245f7e34a Fix a couple of typos and double imports 2019-06-01 17:13:33 +02:00
fiaxh
11d4f3e999 signal-protocol: Fix incorrect free()
fixes #562
2019-05-26 20:20:09 +02:00
fiaxh
03f25e1f87 Remove Message.stanza field 2019-05-26 20:20:09 +02:00
Translations
26a8538e97 Update translations 2019-03-16 14:43:48 +01:00
fiaxh
6f6e4b97cb Use glib log functions 2019-03-15 22:01:34 +01:00
fiaxh
a493269791 Fix OMEMO new device notifications appearing in wrong context 2019-03-14 23:00:27 +01:00
fiaxh
952ac95484 Use regex literals, fixes some compiler warnings 2019-03-14 17:39:31 +01:00
fiaxh
94eea332b1 Wait for account to be persisted before creating omemo_db.identity entry
fixes #128
2019-03-14 17:39:31 +01:00
fiaxh
161e4c1986 Add non-CSD alternative for more windows 2019-03-14 17:39:31 +01:00
Marvin W
cc7b0aa7bd
Move GCM tag into per-device-encrypted area to be compatible with current OMEMO version, fixes #514 2019-03-07 20:17:56 +01:00
fiaxh
78ec625dbe Check for eme tag before adding fallback text for empty-body OMEMO messages 2019-02-20 01:48:07 +01:00
Thibaut Girka
b97aa9b44b Add fallback text when a known to be OMEMO-encrypted message failed to decrypt 2019-02-17 17:18:34 +01:00
Translations
e55fb9cca5 Update Translations 2019-02-14 21:13:42 +01:00
fiaxh
736522737f Make file read/write async 2019-02-14 00:04:01 +01:00
Marvin W
4a8d628924
Do not use signal_protocol_internal.h 2019-02-12 15:27:58 -06:00
Marvin W
8e14ac6d71
Rewrite OMEMO crypt buffer logic to fix #474 2019-01-16 23:02:23 +01:00
fiaxh
8b08d874fa Fix OMEMO decryption if MUC real_jid is not known (because sender is offline)
fixes #490
2019-01-09 00:59:28 +01:00
Marvin W
cdd4c0b854
Find libqrencode using cmake/pkg-config logic 2019-01-02 15:36:41 +01:00
Marvin W
7012023d59
Bump libsignal-protocol-c dependency to 2.3.2 2019-01-02 13:27:11 +01:00
Translations
4c8f4bef66 Update Translations
Arabic: ButterflyOfFire
Basque: beriain
Chinese (Simplified): Sak94664
Dutch: flevop, Nathan Follens
Flemish: Nathan Follens
French: Sioul
Galician: Xosé M
German: H A, ssantos
Luxembourgish: Dennis Fink
Norwegian Bokmål: Allan Nordhøy
Romanian: Licaon Kter
Spanish: sergio
2018-12-31 16:51:15 +01:00
fiaxh
446e86d4ad Check FileTransfer's mime_type for null (unknown) when handeling it
fixes #479
2018-12-31 16:49:22 +01:00
fiaxh
680d28360c Check content_length for null before parsing in http HEAD message response
fixes #468
2018-11-29 16:30:20 +01:00
fiaxh
7c1d580e17 Fix aesgcm http file up/download bugs 2018-11-27 18:28:28 +01:00
fiaxh
141db9e40a Implement aesgcm encrypted file upload 2018-11-27 15:02:18 +01:00
fiaxh
01360a73ae FileProvider for aesgcm links
Co-authored-by: Thibaut Girka <thib@sitedethib.com>
2018-11-27 03:41:31 +01:00
fiaxh
2208ff9799 Restructure (http) file provider flow: Separate download&get_info, download in provider, move XmppStreamModule into xmpp-vala 2018-11-27 03:38:42 +01:00
Tim Henkes
7497f1f17b Allow 12 for the size of the IV 2018-11-20 08:07:28 -06:00
Rahix
9e5f30487a Add a white border around QR-codes
Signed-off-by: Rahix <rahix@rahix.de>
2018-11-16 11:24:17 -06:00
Translations
45236d07bc Update translations 2018-11-14 21:31:47 +01:00