1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-28 13:56:37 +02:00
Commit Graph

6422 Commits

Author SHA1 Message Date
Trygve Aaberge 1e2a8c4682 core: Don't collapse consecutive newlines in bar content
This allows blank lines to be displayed in the input bar when you input
multiple consecutive newlines.

Relates to #1498
2020-05-10 10:07:53 +02:00
Trygve Aaberge 867e07aa18 core: properly display newlines in input for all buffers
Supporting multiple lines in the input bar is useful even for buffers
without input_multiline set, because it enables you to compose multiple
lines at once, even if it is sent as multiple messages. It is
particularly useful when you paste multiple lines and want to edit some
of it before you send the message.
2020-05-10 00:10:38 +02:00
Simmo Saan 517c4c2903 irc: fix realname delimiter color in WHO/WHOX response 2020-05-09 19:31:34 +02:00
Sébastien Helleu f987e445ec core: properly display newlines in input when multiline is enabled in buffer (issue #984, issue #1063) 2020-05-09 18:23:33 +02:00
Trygve Aaberge 63714855d3 core: add an option for multiline input in a buffer (closes #984)
This allows the input callback function for a buffer to receive multiple
lines at once, instead of the message being split on newline before
being sent to the callback. It adds a new flag, input_multiline, to
control this. This flag defaults to 0 which is the current behavior.
2020-05-09 18:07:36 +02:00
Sébastien Helleu 3505324096 api: use buffer pointer in argument "modifier_data" sent to weechat_print modifier callback (closes #42) 2020-05-09 10:08:18 +02:00
Sébastien Helleu 4c050b343d irc: reuse a buffer with wrong type "channel" when a private message is received (closes #869) 2020-05-08 13:27:20 +02:00
Sébastien Helleu 88bef0b1b1 core: rename functions hook_completion_{get_string|list_add} to completion_{get_string|list_add}
Old functions are kept for compatibility reasons.
2020-05-08 10:51:30 +02:00
Sébastien Helleu b7765ed960 trigger: fix truncated trigger command with commands /trigger input|output|recreate 2020-05-07 08:19:31 +02:00
Sébastien Helleu b1c3a29ac7 core: add include comparison operators in evaluation of expressions
New comparison operators:

- "==*": is matching mask, case sensitive (wildcard "*" is allowed)
- "!!*": is NOT matching mask, case sensitive (wildcard "*" is allowed)
- "==-": is included, case sensitive
- "!!-": is NOT included, case sensitive
- "=-": is included, case insensitive
- "!-": is NOT included, case insensitive
2020-05-05 20:43:45 +02:00
Sébastien Helleu dff1bf6f0f exec: return NULL immediately if the task id is invalid 2020-05-03 16:33:02 +02:00
Sébastien Helleu 5438f62f74 exec: fix use of same task id for different tasks (closes #1491) 2020-05-03 16:07:11 +02:00
Sébastien Helleu 7699c0b757 relay: add "compression" in response to handshake command (weechat protocol)
The value can be "zlib" (default in relay) or "off".
2020-05-02 12:45:47 +02:00
Sébastien Helleu 5b4d690ed7 relay: fix slow send of data to clients when SSL is enabled 2020-05-01 18:52:08 +02:00
Quentin Glidic f697a5b295 fifo: Open the fifo for writing too
That will make it survive, avoiding the need to reopen it.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2020-04-28 16:37:39 +02:00
Sébastien Helleu b6cc42cbf7 relay: add command "completion" in weechat relay protocol (closes #1484) 2020-04-28 11:15:30 +02:00
Sébastien Helleu f2507a68a7 core: remove obsolete comment
The completion context can be "GUI_COMPLETION_NULL" if there's no base word
found (for example empty input).
2020-04-28 10:53:49 +02:00
Sébastien Helleu d1a427b67f api: return integer in function gui_completion_search (issue #1484) 2020-04-28 10:46:49 +02:00
Sébastien Helleu 2bd8e91b54 api: add hdata "completion_word" (issue #1484) 2020-04-27 22:18:03 +02:00
Sébastien Helleu d3020976d5 api: add functions completion_new, completion_search and completion_free (issue #1484) 2020-04-27 22:15:42 +02:00
Sébastien Helleu 0f1cee08bf relay: fix error message for an invalid buffer received in a command (weechat protocol) 2020-04-26 23:41:31 +02:00
Sébastien Helleu 33ea747040 core: add default key alt-shift-N to toggle nicklist bar 2020-04-24 22:45:07 +02:00
Sébastien Helleu 0abd0292da buflist: add default key alt-shift-B to toggle buflist 2020-04-24 22:44:13 +02:00
Sébastien Helleu 916c22a3d0 buflist: add options enable/disable/toggle in command /buflist 2020-04-24 22:39:44 +02:00
Sébastien Helleu 6e18f31cb2 core: translate log message when the signal SIGHUP is received 2020-04-21 22:39:51 +02:00
Sébastien Helleu 100440c8a1 core: restore signal "signal_sighup", and if eaten do not reload configuration 2020-04-21 22:34:42 +02:00
Tom Fitzhenry de1e61f7cd core: reload config on SIGHUP
fixes https://github.com/weechat/weechat/issues/1476
2020-04-22 01:25:08 +10:00
Sébastien Helleu 60b75f4677 tests: add tests on functions relay_auth_password_hash_algo_search and relay_auth_generate_nonce 2020-04-20 07:16:08 +02:00
Sébastien Helleu 0b994d718d core: add command line option "--stdout" in weechat-headless binary (closes #1475, closes #1477) 2020-04-19 11:28:39 +02:00
Tom Fitzhenry 18a837c55b core: log to stdout, if headless
Fixes https://github.com/weechat/weechat/issues/1475 .
2020-04-19 11:05:22 +02:00
Sébastien Helleu 0d126c44dd trigger: do not hide values of options with /set command in cmd_pass trigger 2020-04-18 15:38:45 +02:00
Sébastien Helleu e130ee7358 core: make GnuTLS a required dependency 2020-04-18 11:34:59 +02:00
Sébastien Helleu 80693dcea9 relay: move variable nonce in relay client structure 2020-04-18 09:30:51 +02:00
Sébastien Helleu 95b2d686a2 relay: allow only one handshake in weechat protocol 2020-04-18 00:33:15 +02:00
Sébastien Helleu 970c99961c relay: immediately close connection if the handshake failed (weechat protocol) 2020-04-18 00:08:11 +02:00
Sébastien Helleu 95c908e83c relay: rename configuration options and keywords in handshake command (weechat protocol)
Configuration options renamed:

* relay.network.auth_password -> relay.network.password_hash_algo
* relay.network.hash_iterations -> relay.network.password_hash_iterations

Handshake command options renamed:

* password -> password_hash_algo

Handshake reply keys renamed:

* auth_password -> password_hash_algo
* hash_iterations -> password_hash_iterations
2020-04-17 23:34:27 +02:00
Sébastien Helleu 853a91d870 doc: replace "safest" by "most secure" (relay protocol) 2020-04-17 21:21:25 +02:00
Sébastien Helleu 4cc557f421 relay: fix "id" sent in response to handshake command (weechat protocol) 2020-04-16 10:27:37 +02:00
Sébastien Helleu 8560b09dad relay: add missing gcrypt lib in CMake and autotools files
This fixes build on Cygwin.
2020-04-15 22:50:27 +02:00
Sébastien Helleu 9fa3609c85 relay: add command "handshake" in weechat relay protocol and nonce to prevent replay attacks (closes #1474)
This introduces a new command called "handshake" in the weechat relay protocol.
It should be sent by the client before the "init" command, to negotiate the way
to authenticate with a password.

3 new options are added:

* relay.network.auth_password
* relay.network.hash_iterations
* relay.network.nonce_size
2020-04-14 21:38:12 +02:00
Sébastien Helleu ccd45e4921 relay: update message displayed when the client is connected/authenticated 2020-04-12 20:24:39 +02:00
Sébastien Helleu b947512c9a relay: add option relay.network.auth_timeout 2020-04-12 19:36:12 +02:00
Sébastien Helleu fb6fc22c74 relay: add a function to send outqueue to the client 2020-04-12 19:25:21 +02:00
Sébastien Helleu 9f55f90bbf relay: update default colors for client status
Colors changed:

* relay.color.status_active: lightblue -> green
* relay.color.status_auth_failed: lightred -> lightmagenta
* relay.color.status_connecting: yellow -> white
* relay.color.status_waiting_auth: brown -> yellow

The color relay.color.status_disconnected remains lightred by default.
2020-04-12 18:02:27 +02:00
Sébastien Helleu 7ddc815726 relay: actually use the client status "waiting_auth" in irc and weechat protocols (closes #1358)
Now the status "waiting_auth" is used and displayed in the relay buffer.

When a client connects, there are now 2 messages (except for irc protocol if
there's no password required):

relay: new client on port 9000: 1/weechat/1.2.3.4 (waiting auth)
relay: client 1/weechat/1.2.3.4 authenticated

If the authentication fails, the messages are:

relay: new client on port 9000: 1/weechat/1.2.3.4 (waiting auth)
=!= relay: authentication failed with client 1/weechat/1.2.3.4
2020-04-12 17:46:46 +02:00
Sébastien Helleu 07505bb53c relay: add comments in truct t_relay_weechat_data 2020-04-12 15:35:03 +02:00
Sébastien Helleu 8bdd540df7 trigger: evaluate arguments of command when the trigger is created (closes #1472) 2020-04-12 09:30:56 +02:00
Sébastien Helleu 007fd03bc8 tests: add tests on calc functions
Functions tested:

- calc_operator_precedence
- calc_pop_value
- calc_list_free_cb
- calc_operation
- calc_operation_stacks
2020-04-08 21:38:51 +02:00
Sébastien Helleu d78ac827e9 core: fix memory leak in calculation of expression on FreeBSD (closes #1469)
The memory leak was caused by a bug in function setlocale on FreeBSD:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243195

The fix is the following:

* Remove the calls to setlocale when formatting the result.
* The function snprintf is still called, and then is now locale dependent,
  for example in French the decimal separator is a comma instead of a dot.
* A new function calc_sanitize_decimal_number is introduced to "sanitize" a
  decimal number: keep only the decimal separator (replace it by a dot) and
  remove any other separator found.

Unit tests are added on these functions:

* calc_sanitize_decimal_number
* calc_format_result
2020-04-07 21:37:48 +02:00
Sébastien Helleu e998417f5c core: fix resize of a bar when its size is 0 (automatic) (closes #1470) 2020-04-07 19:00:33 +02:00