about summary refs log tree commit diff stats
path: root/src/omemo
Commit message (Collapse)AuthorAgeFilesLines
* Correctly handle malformed OMEMO messagesPaul Fariello2019-05-231-4/+8
| | | | Fix #1101
* OMEMO: Initialize result in omemo_automatic_startMichael Vetter2019-04-291-1/+1
| | | | | | | | | 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.
* Handle missing real jid in OMEMO encrypted MUCPaul Fariello2019-04-171-3/+7
| | | | | | | This should never happens since we should ensure MUC is Non-Anonymous before enabling OMEMO. But we should neither segfault if this happens.
* Add OMEMO policyPaul Fariello2019-04-172-16/+69
| | | | | | | | | | | | There is 3 policy: - manual: OMEMO session are only started manually - automatic: OMEMO session are only started if they have been started manually before - always: OMEMO session are always started unless they have been ended manually before Closes #1040 and fixes #1052
* Don't persist OMEMO {signed,}prekey cleaning on disconnectPaul Fariello2019-04-141-10/+0
| | | | | We should not remove signed prekey and prekey from persistent storage when cleaning OMEMO store on disconnect.
* Handle malformed OMEMO identity.txtPaul Fariello2019-04-141-7/+34
| | | | | If OMEMO identity.txt is malformed just abort loading. User should be able to call `/omemo gen` again.
* Don't unload OMEMO cryto on disconnect if OMEMO wasn't loadedPaul Fariello2019-04-141-0/+4
| | | | | | | If OMEMO wasn't loaded, removing key would create empty identity.txt file. Then at load time it would segfault profanity. Another commit should fix load of malformed identity.txt.
* Fix issue with first encrypted messagePaul Fariello2019-04-101-1/+5
| | | | | | | | When decrypting first message with prekey, libsignal wants to remove used prekey from storage. Return value on success should be 0. We used to return number of deleted keys. Thus libsignal was considering we failed to remove the key and we were ignoring plaintext.
* Try to start sessions with every jid in rosterPaul Fariello2019-04-102-0/+18
|
* Automatically starts OMEMO if one identity is trustedPaul Fariello2019-04-102-6/+24
|
* Rework trusted fingerprint storagePaul Fariello2019-04-104-29/+90
| | | | | Stop using "jid:device_id" keys. And move long term storage to its own file: trust.txt.
* Wait for discovery end to publish omemo devicelist and bundlePaul Fariello2019-04-102-7/+15
| | | | Add sv_ev_connection_features_received for that purpose
* Prefix static function with _Paul Fariello2019-04-101-41/+41
|
* Ensure pre keys are generated if missing from long term storagePaul Fariello2019-04-101-24/+51
|
* Permanently store pre keysPaul Fariello2019-04-103-22/+119
|
* Handle bundle publication error on publish-optionsPaul Fariello2019-04-101-2/+2
| | | | | We try to reconfigure node and publish again. If it fails again then we give up.
* Ensure signal context is built on connectionPaul Fariello2019-04-101-20/+23
| | | | | We can't keep it between two connection because signal context is specific to a given account.
* Don't use glib 2.58 funcPaul Fariello2019-04-101-3/+1
|
* Add fingerprint autocompletionPaul Fariello2019-04-102-1/+23
|
* Use /omemo fingerprint to show contact fingerprintsPaul Fariello2019-04-102-27/+46
| | | | Don't print fingerprints when they are received
* Add support for disconnect in OMEMOPaul Fariello2019-04-103-27/+91
|
* Handle absent muc memberPaul Fariello2019-04-101-0/+4
|
* Log and print outgoing encrypted messagePaul Fariello2019-04-102-39/+35
|
* Add support for sending encrypted message in MUCPaul Fariello2019-04-102-41/+88
|
* Cosmetics rename variable barejid into roomjidPaul Fariello2019-04-102-3/+3
|
* Allow to start OMEMO in MUCPaul Fariello2019-04-102-0/+14
|
* Add MUC message decryptionPaul Fariello2019-04-102-15/+45
|
* Fix prekey handling after first usePaul Fariello2019-04-101-8/+7
| | | | libsignal will remove prekey on its own.
* device_list iq should be from barejid or nonePaul Fariello2019-04-101-5/+8
| | | | | | | Ensure we request device_list and remove non conforming handling of responses. Move initialisation of iq_handlers before call to sv_ev_login_account_success
* Add logs about crypto generationPaul Fariello2019-04-101-0/+4
|
* Log device_id on startupPaul Fariello2019-04-101-0/+2
|
* Don't rely on account name being jidPaul Fariello2019-04-101-2/+2
|
* Add hints about trust command when printing fingerprintsPaul Fariello2019-04-101-1/+11
|
* Avoid using xmpp_jid_barePaul Fariello2019-04-101-27/+20
|
* Add OMEMO untrust commandPaul Fariello2019-04-102-0/+23
|
* Allow to trust own device idPaul Fariello2019-04-101-0/+9
|
* Add trust commandPaul Fariello2019-04-102-40/+208
|
* Don't trust unknown identity keysPaul Fariello2019-04-104-55/+105
| | | | | Also add long terme storage of known identity keys. If a key is stored it means it is trusted.
* Add support for libsignal-protocol-c 2.3.2Paul Fariello2019-04-102-0/+25
|
* Add OMEMO fingerprint commandPaul Fariello2019-04-102-0/+54
|
* Add OMEMO session long term storagePaul Fariello2019-04-103-30/+95
|
* Replace used prekey in bundlePaul Fariello2019-04-101-1/+16
|
* Start new session upon prekey receptionPaul Fariello2019-04-101-0/+1
|
* Randomly choose a prekey on session buildPaul Fariello2019-04-102-9/+28
|
* Check received gcm tagPaul Fariello2019-04-103-7/+18
|
* Follow xep by putting gcm tag on encrypted keyPaul Fariello2019-04-103-13/+23
|
* Get rid of libsodiumPaul Fariello2019-04-103-33/+72
|
* Add log on OMEMO session startPaul Fariello2019-04-101-0/+2
|
* Use profanity logs for OMEMO logsPaul Fariello2019-04-101-1/+15
|
* Add support for encrypted carbonPaul Fariello2019-04-103-36/+309
| | | | Fix {signed,}_pre_key store