Commit graph

4062 commits

Author SHA1 Message Date
mathieui
b40de0bcbe omemo: fix some errors / feedback in trust setting 2019-12-27 18:58:48 +01:00
mathieui
07447a465a omemo: fix the type of the supported tab tyoes 2019-12-27 18:58:48 +01:00
03499a2d2c omemo: handle MissingBundleException when it comes from EncryptionPrepareException
We're not supposed to see MissingBundleException directly as it's
handled by slixmpp-omemo. Slixmpp-omemo will give us all the remaining
exceptions via EncryptionPrepareException when it doesn't know what to
do anymore.

Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:58:48 +01:00
0e27485c36 Remove exception catchall in omemo plugin as it's now handled in plugin_e2ee
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:58:48 +01:00
cd3f2a197b omemo: Remove unused variable in encrypt method
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:58:48 +01:00
mathieui
c85c8f6c77 omemo: add supported_tab_types and trust_states into the omemo plugin 2019-12-27 18:58:48 +01:00
mathieui
25dae11eb3 omemo: add supported_tab_types and trust_states plugin attributes
- supported tab types is a list of tabs this plugin should be active in
 (only chattabs)
- trust_states is a dict[str → set] containing only two keys: accepted
 and rejected, whose values are the internal plugin states that should
 allow encryption and the ones that should not
2019-12-27 18:58:48 +01:00
4586765793 omemo: session_start is now async
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:58:48 +01:00
mathieui
1dd713b857 omemo: add a wrapper around _encrypt() to handle user feedback
(yes, another one)
2019-12-27 18:58:48 +01:00
mathieui
b1e913d772 omemo: fix indentation of one line 2019-12-27 18:58:48 +01:00
mathieui
e94ee52c10 omemo: add missing typing import 2019-12-27 18:58:47 +01:00
mathieui
97d29bc1cd Fix potential race condition when encrypting
(do not try to rely on the current tab)
2019-12-27 18:57:33 +01:00
0c86e9a52f omemo: Edit and move TODO comment for NoEligibleDevicesException
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:57:33 +01:00
mathieui
5a1a2e6c18 Add a "passthrough" parameter for calls through the safetymetaclass
So errors don’t get caught
2019-12-27 18:57:33 +01:00
33a1519a39 omemo: Catch IqError and IqTimeout and display generic message for now
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:57:33 +01:00
cbe96a6f77 omemo: Skip devices on MissingBundleException. Encrypt to the rest
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:57:33 +01:00
687f360797 omemo: ensure whitelist includes encryption tag in the correct format
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:57:33 +01:00
83e8305554 omemo: use @to instead of @from for message recipients
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:57:33 +01:00
ec846f222e omemo: decode decrypted body
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:57:33 +01:00
50833050c7 omemo: handle async encryption methods
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:57:33 +01:00
7609a56e48 omemo: handle StaticConversationTab as well
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:57:31 +01:00
fa3c96a602 omemo: Ensure session_start is published
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
1be00f5e20 omemo: put OMEMO data into a folder specific to the account
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
95a9858717 omemo: the container tag for OMEMO is 'encrypted' not 'payload'
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
c8f88658b4 omemo: adapt to new E2EE API
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
42fa792aa5 omemo: Add omemo_enable and omemo_disable commands
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
d30c39c6a9 omemo: add docstring on the plugin
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
f13587a386 omemo: remove unused imports and reorder them
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
4ab6e64437 omemo: Add omemo status in the tab infobar
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
2c720c9d9b omemo: remove unused commands
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
43a97d6430 omemo: change /omemo description
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
c9091dfac8 omemo: consistent returns
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
87c0ff6364 omemo: remove useless log
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
5fb819d1ed omemo: Use DATA_HOME instead of CACHE_HOME
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
e8450bcf51 omemo: Add dummy sending command for testing purposes
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
bab9d1625b omemo: catch xep_0384.MissingOwnKey exception
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
fdf9b74056 omemo: don't deconstruct the result from the decrypt call
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
2348f3705c omemo: Update plugin to using poezio.xdg
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
lumi
2ff48b7adf Expand the status command, make decryption work, put a hack into the core so I can handle messages without bodies. 2019-12-27 18:56:27 +01:00
ebbdbc2cbd OMEMO plugin: first draft
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27 18:56:27 +01:00
mathieui
d7d4e30eec Merge branch 'fix-plugin-names' into 'master'
Plugins: use import_module for module in poezio_plugins

See merge request poezio/poezio!52
2019-12-27 18:49:26 +01:00
mathieui
6a7f5326da
Plugins: use import_module for module in poezio_plugins
And do not rely on the "module name" to index the plugins, use the
intended plugin name instead.
2019-12-27 16:58:20 +01:00
12a9528d62
WIP: Allow blocking commands in ConversationTab
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-22 19:27:08 +01:00
4d7a19da81 Merge branch 'safejid-foo' into 'master'
Safejid foo

See merge request poezio/poezio!50
2019-11-21 03:01:37 +01:00
f157a46bd6
core/commands: Move import order to please linter
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-11-21 02:50:07 +01:00
647655152f
Remove safeJID call in destroy_room
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-11-21 02:49:04 +01:00
louiz’
d65ad614b3 Replace the %date% output with Year-Month-Day
Instead of some locale-specific format
2019-11-19 14:38:51 +01:00
louiz’
47765d0d40
Merge pull request #6 from poezio/pull-request-template
Create a pull request template
2019-11-03 18:38:08 +01:00
louiz’
3e8ce77048
Create a pull request template
To redirect people on gitlab.
2019-11-03 16:35:48 +01:00
mathieui
33ef0331e9
Add testing for python 3.7
since python:3 is now 3.8
2019-10-27 20:05:00 +01:00