William Wennerström
73f313b921
Refactor OMEMO download into AESGCMDownload tool
2020-11-16 21:58:09 +01:00
William Wennerström
4711fc62a3
Run make format on rebase
2020-11-16 21:58:09 +01:00
William Wennerström
f4ab1ca9e7
Move file encryption function to public header
2020-11-16 21:58:08 +01:00
William Wennerström
fc6136ddf0
Remove unused #define's and move URL scheme define to omemo/crypto.h
2020-11-16 21:58:08 +01:00
William Wennerström
d5b1dc0eb6
Move setup for AESGCM to omemo/crypto
2020-11-16 21:58:08 +01:00
William Wennerström
3370418d71
Initial /sendfile OMEMO encryption
2020-11-16 21:58:07 +01:00
Michael Vetter
35aecd425f
Declare counter var inside loop
...
We require c99/gnu99 anyways.
2020-11-09 11:33:33 +01:00
Philipp Klaus Krause
6a276e74e3
Since the string from strerror should never be modified, use const.
2020-10-14 09:52:26 +02:00
William Wennerström
3b37893aa3
Free errors after they have been printed
2020-07-10 14:50:29 +02:00
Michael Vetter
a2726b6a7d
Apply coding style
2020-07-07 14:18:57 +02:00
Michael Vetter
a4cadf78fa
Revert "Apply coding style"
...
This reverts commit 9b55f2dec0
.
Sorting the includes creates some problems.
2020-07-07 13:53:30 +02:00
Michael Vetter
9b55f2dec0
Apply coding style
...
Regards https://github.com/profanity-im/profanity/issues/1396
2020-07-07 09:43:28 +02:00
Michael Vetter
d2c3aa566b
Merge branch 'master' of github.com:profanity-im/profanity
2020-07-04 17:41:56 +02:00
Michael Vetter
193282a4fc
Merge pull request #1387 from DebXWoody/bugfix/1332-omemo
...
Request Device and Key, when OMEMO is in use
2020-07-04 17:41:20 +02:00
Michael Vetter
bf170d6c91
Merge branch 'omemofix'
2020-07-04 17:38:44 +02:00
DebXWoody
54667c022f
Messages are not shown in ChatSecure
...
In 0.9.x we fixed an issue, because OMEMO devices should be defined in "item"
with id "current". This should work, but it won't work if there is no "current".
If there is no "current" we will just use the first item.
Issue #1384
2020-07-04 17:38:30 +02:00
Michael Vetter
e5ac12afa6
Remove prefs_free_string()
...
It just does a free.
Related to b580b9ef11
2020-07-02 11:34:12 +02:00
Michael Vetter
1224aa414e
Use files_get_account_data_path instead of duplicate code
...
We often had a use case where we want the account specific data dir.
Let's create a function for this instead of doing it by hand each time.
2020-07-01 10:05:45 +02:00
DebXWoody
3232451448
Request Device and Key, when OMEMO is in use
...
Profanity requests the device list and keys for contacts, also when the user
hasn't generated the OMEMO key. If the user has no OMEMO key, there is no need
to request OMEMO information.
Issue: #1332
2020-06-04 19:57:07 +02:00
Michael Vetter
de8975c008
Add and use connection_get_barejid()
...
Instead of connection_get_fulljid() and then creating a Jid from it.
2020-05-25 13:04:19 +02:00
Michael Vetter
2a952cb4c5
Expand omemo error message
2020-02-21 10:30:09 +01:00
Michael Vetter
0089fbcf0a
omemo: switch to 12 byte IV
...
We decrypt both 12 and 16 bytes.
And send 12 instead of 16 bytes now.
Close https://github.com/profanity-im/profanity/issues/1272
2020-02-17 14:04:24 +01:00
Michael Vetter
11b6e1bfa0
xep-0308: enable corrections for outgoing encrypted messages
2020-02-12 08:54:12 +01:00
Paul Fariello
a52e3ea1d8
Add context to autocomplete_with_func and use it for omemo trust command
...
Fix #1068
2020-01-31 10:07:08 +01:00
Paul Fariello
8d1202efbd
Add support for 12 bytes IV
...
16 bytes IV should be used. Some clients can't use it so we should also
support decrypting 12 bytes IV.
Fix #1253
2020-01-20 14:41:18 +01:00
Paul Fariello
84506cbaeb
Use OMEMO for offline MUC members ( #1242 )
2020-01-20 14:28:13 +01:00
Michael Vetter
be13e98fe7
Update my Copyright to 2020
2020-01-03 19:52:31 +01:00
Michael Vetter
46fd7150e5
Add vim modeline
2019-11-13 12:11:05 +01:00
Michael Vetter
ab60a61fb9
omemo: use lower case to log info
2019-08-23 10:18:20 +02:00
Michael Vetter
976c2ec524
Fix typo in OMEMO materials log
2019-08-23 10:14:04 +02:00
Michael Vetter
1b2e71faac
Fix memleak in save_identity()
...
I don't see a reason for strdupping here.
2019-07-23 08:34:46 +02:00
Michael Vetter
a9db705faa
Fix potential leak in omemo_untrust()
2019-07-23 08:34:46 +02:00
Michael Vetter
fade378fee
Dont use not needed strdup() in save_identity()
...
I don't see a reason for strdupping here.
2019-07-23 08:34:46 +02:00
Michael Vetter
e540ccd50e
Remove dead assignments
2019-07-22 14:27:14 +02:00
Paul Fariello
c22df13d95
Dirty fix libgcrypt memleak
2019-07-11 14:25:42 +02:00
Paul Fariello
b7144d82fe
Enable secure memory in gcrypt initialisation
2019-07-11 11:01:07 +02:00
Paul Fariello
b110da9a92
Fix various OMEMO memleaks
2019-07-10 17:32:23 +02:00
Michael Vetter
0410802753
Free omemo_ctx.device_list_handler
2019-07-04 10:47:50 +02:00
Michael Vetter
d0047c8376
Dont initialize omemo autocompleter twice
...
We already do this in omemo_init() no need to do it again in
omemo_on_connect().
2019-07-04 10:38:24 +02:00
Michael Vetter
199162b11a
Add omemo_close function
...
We call omemo_init() when starting profanity and should have an
omemo_close() at exit.
For now we free the fingerprint autocompleter in there.
Fixes valgrind:
```
==13226== 24 bytes in 1 blocks are definitely lost in loss record 2,855
of 6,958
==13226== at 0x483677F: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==13226== by 0x48AD39: autocomplete_new (autocomplete.c:57)
==13226== by 0x4AB89F: omemo_init (omemo.c:127)
==13226== by 0x42C283: _init (profanity.c:206)
==13226== by 0x42BFF3: prof_run (profanity.c:98)
==13226== by 0x4B25E6: main (main.c:172)
```
Regards https://github.com/profanity-im/profanity/issues/1131
2019-07-04 10:30:56 +02:00
Paul Fariello
f081766913
Mark messages received from a session as trusted
2019-06-25 18:43:15 +02:00
Paul Fariello
44d16e9141
Add prof_message_t to wrap all message attributes
...
Probably missing copy of body to plain in carbon and privmessage.
Only covers the incoming message path because goal is OMEMO decryption
of untrusted message.
Cover some of the log functions but not all.
2019-06-20 14:30:42 +02:00
Paul Fariello
a650ecc67d
Add trusted state after OMEMO decryption
...
Use it to print message on red background if not trusted.
2019-06-20 14:29:55 +02:00
Paul Fariello
2604786cb6
Decrypt all incoming OMEMO msg
...
Trust all key as long as it's for reading. This code isn't multithread
safe.
2019-06-20 14:29:55 +02:00
Michael Vetter
29e2d16e14
Free contacts in omemo_start_sessions()
2019-06-19 23:18:45 +02:00
Michael Vetter
0d698d4898
Free OMEMO session store upon disconnect
2019-06-19 23:15:24 +02:00
Michael Vetter
e4b007c9da
Add copyright to omemo code
2019-06-17 10:47:56 +02:00
Paul Fariello
5731a7c472
Remove OMEMO session when untrusting a fingerprint
...
We have to store known_devices in a long term fashion otherwise we might
not be able to delete session if it is remove from device list server
side.
2019-06-07 23:43:40 +02:00
Paul Fariello
04cd1b4409
Correctly handle malformed OMEMO messages
...
Fix #1101
2019-05-23 13:12:02 +02:00
Michael Vetter
722cb5fdc3
OMEMO: Initialize result in omemo_automatic_start
...
This is actually not needed because result will always be set.
hartmann had problems building profanity on OpenBSD and he proposed this
patch.
Let's use it to make the compiler happy there.
2019-04-29 11:32:22 +02:00