Commit Graph

213 Commits

Author SHA1 Message Date
Michael Vetter
16174727f4 Guard against arg being NULL in cmd_funcs
This should actually never happen because we have the mechanism that
checks the commands. But let's do it in case we break something in that
mechanism and to make clang happy.

Fixes clangs: 'Argument with 'nonnull' attribute passed null'
2019-07-22 13:47:52 +02:00
Michael Vetter
04988ab4ba Fix segfault in /cmd exec
Test for correct number of arguments before using argument.
2019-07-12 10:36:17 +02:00
Michael Vetter
ae1e60a9f9 Add option to set all window related time formats
Implements feature requested at: https://github.com/profanity-im/profanity/issues/632

So instead of:

/time console set <format>
/time chat set <format>
/time muc set <format>
/time mucconfig set <format>
/time private set <format>
/time xml set <format>

As a short cut the user can do:

/time all set <format>

Excluding statusbar and lastactivity settings since they are not for main windows, but used slightly differently.
2019-06-17 14:23:33 +02:00
Michael Vetter
9516324248 Refactor cmd_omemo_start
Some code was duplicated/similar.
The parts about using a chatwin while being started from another window
(recipient provided) and being a chatwin were the same.

Like this it should be easier to read and less code.
2019-06-07 21:14:53 +02:00
Michael Vetter
2eb2bf3508 Print omemo start related msgs into correct window
Print them in the window of the contact. Not just the current window.
Fix https://github.com/profanity-im/profanity/issues/1093
2019-06-07 21:14:44 +02:00
Michael Vetter
bee7846ea0 Merge pull request #1121 from profanity-im/feature/notify-plugin-fail
Improve plugin load/install failure message
2019-06-07 12:17:56 +02:00
Michael Vetter
cc697de051 Improve plugin load/install failure message
In case Python or C plugins are disabled install/load failed silently.
Notify the user that we can't load them because profanity was built
without support for plugins.
2019-06-07 11:30:46 +02:00
Michael Vetter
4e972f8aef Check for sane argument in autoconnect set
Check that user doesnt do `/autoconnect set   `.
Which would result in: `Account '(null)' does not exist`.
2019-06-05 14:41:09 +02:00
Michael Vetter
53ef209272 Check if valid account before setting autoconnect
Fixes https://github.com/profanity-im/profanity/issues/1112
2019-06-05 14:19:41 +02:00
William Wennerström
e07a06d1a2 Force UI update before generating OMEMO crypto materials 2019-05-21 22:32:06 +02:00
Michael Vetter
f082563bf2 Add occupants char
`/occupants char` now sets a character that is displayed before the nick
in MUCs. Similar like `/roster char` is displaying a char for the roster.

Regards #690
2019-05-02 17:01:55 +02:00
Michael Vetter
125ca2f0d2 Add occupants wrap option
Wrapping for the occupants panel like already exists for the roster
panel. See `/occupants wrap on`.

Regards https://github.com/boothj5/profanity/issues/690
2019-04-24 09:49:14 +02:00
Michael Vetter
028839e35a Put occupants update into own function 2019-04-23 14:13:08 +02:00
Michael Vetter
566022786d Add occupants header char
`/occupants header char` now sets a character that is displayed before
the role (moderator, visitor..) in a room. Similar to `/roster header
char` is displaying a char for the roster.

Regards https://github.com/boothj5/profanity/issues/690
2019-04-23 14:13:03 +02:00
Michael Vetter
62c23233f7 Allow setting occupants indent outside of MUC
And when not connected.
2019-04-20 20:35:37 +02:00
Michael Vetter
0c248a0b16 Add /occupants indent command
Roster has a `/roster contact indent` option.
Now we have the same for occupants. So contacts in roster and in MUC can
have configurable indentation.

Regards https://github.com/boothj5/profanity/issues/690
2019-04-18 20:53:02 +02:00
Paul Fariello
5f015e32b2 Add OMEMO policy
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
2019-04-17 14:03:14 +02:00
Michael Vetter
9574127177 Merge pull request #1066 from paulfariello/hotfix/OMEMO-ensure-muc-is-nonanonymous
Ensure MUC is Non-Anonymous before starting OMEMO
2019-04-17 13:58:45 +02:00
Paul Fariello
8c71a74afe Ensure MUC is Non-Anonymous before starting OMEMO
Store MUC anonymous type in mucwin for that purpose.

Fixes #1065
2019-04-17 13:56:27 +02:00
Paul Fariello
fc8dc328a4 Alert about long OMEMO cryptographic generation
Fixes #1055
2019-04-17 09:55:16 +02:00
Paul Fariello
f75e1d7a7b Support contact name in /omemo fingerprint command 2019-04-10 17:24:56 +02:00
Paul Fariello
277e8dc901 Add /omemo char command 2019-04-10 17:24:56 +02:00
Paul Fariello
0bc660400b Automatically starts OMEMO if one identity is trusted 2019-04-10 17:24:56 +02:00
Paul Fariello
e7be3a605b Add OMEMO in prefs command 2019-04-10 17:23:46 +02:00
Paul Fariello
898302243e Add clear_device_list command 2019-04-10 17:23:46 +02:00
Paul Fariello
4a1c3c8c1e Show all device fingerprint for current account 2019-04-10 17:12:31 +02:00
Paul Fariello
ba9679a706 Print fingerprint after trust and untrust command 2019-04-10 17:12:31 +02:00
Paul Fariello
3d8f47a724 Use /omemo fingerprint to show contact fingerprints
Don't print fingerprints when they are received
2019-04-10 17:12:31 +02:00
Paul Fariello
306706bd2e Add OMEMO log command 2019-04-10 17:12:31 +02:00
Paul Fariello
bc541cb8ac Add OMEMO end command 2019-04-10 17:12:31 +02:00
Paul Fariello
70109953ec Revert "Ensure room isn't anonymous"
This reverts commit 733e1a24c7e08dde6aa2c15ec4528220aa360845.
2019-04-10 17:12:31 +02:00
Paul Fariello
9044e3732c Ensure room isn't anonymous 2019-04-10 17:12:31 +02:00
Paul Fariello
031e906035 Cosmetics rename variable barejid into roomjid 2019-04-10 17:12:31 +02:00
Paul Fariello
cf528383bd Allow to start OMEMO in MUC 2019-04-10 17:12:31 +02:00
Paul Fariello
21f247d0eb Handle window type MUC in OMEMO start command 2019-04-10 17:12:31 +02:00
Paul Fariello
5d90199a41 Avoid opening win if crypto materials are missing 2019-04-10 17:12:31 +02:00
Paul Fariello
89ece4f235 Add UI feedback for OMEMO gen command 2019-04-10 17:12:31 +02:00
Paul Fariello
2622c2d21a Add OMEMO untrust command 2019-04-10 17:12:31 +02:00
Paul Fariello
dbf96dcfc6 Allow to trust own device id 2019-04-10 17:12:31 +02:00
Paul Fariello
063a5d1c52 Add trust command 2019-04-10 17:12:31 +02:00
Paul Fariello
b3be504e84 Add OMEMO fingerprint command 2019-04-10 16:31:45 +02:00
Paul Fariello
2718183d27 Enable start of OMEMO in existing chat win 2019-04-10 16:31:45 +02:00
Paul Fariello
605e06411c Get rid of libsodium 2019-04-10 16:31:45 +02:00
Paul Fariello
0fb27dc496 Add OMEMO message encryption and decryption 2019-04-10 16:03:50 +02:00
Paul Fariello
f9216fddb1 Add signal store backend and OMEMO start command 2019-04-10 16:03:50 +02:00
Paul Fariello
79bb5016c2 Ensure not to generate omemo crypto twice 2019-04-10 16:03:50 +02:00
Paul Fariello
d8d7a5348c Ensure OMEMO isn't started before starting OTR 2019-04-10 16:03:50 +02:00
Paul Fariello
2602cbf785 Move OMEMO initialization to profanity intialization
Also store identity keys into account
2019-04-10 15:37:22 +02:00
Paul Fariello
4a5b672f95 Link against libsignal-protocol-c 2019-04-08 11:50:12 +02:00
Paul Fariello
aa9dcf7b3a Avoid use after free on default account
Fix 1046
2019-04-08 11:20:14 +02:00