Sébastien Helleu
436bbeceff
tests: increase buffer size for injection of fake IRC message
2026-06-07 08:47:36 +02:00
Sébastien Helleu
1211510ded
irc: limit size of data received from the server to prevent memory exhaustion
...
A malicious or compromised IRC server could send data with no end-of-line
(or a flood of "005" messages), making WeeChat accumulate it in a buffer
that grew without limit, until all memory was exhausted.
The unterminated received message and the accumulated "005" (ISUPPORT)
data are now bounded by IRC_SERVER_RECV_MSG_MAX_LENGTH and
IRC_SERVER_ISUPPORT_MAX_LENGTH: extra data is ignored once the limit is
reached.
2026-06-01 21:53:03 +02:00
Sébastien Helleu
f53e7fb9ef
core, plugins: fix typos in comments on functions, use imperative
2026-03-23 20:45:36 +01:00
Sébastien Helleu
106fe6ca7c
core: update copyright dates
2026-03-08 10:37:15 +01:00
Sébastien Helleu
9b4fd66de7
irc: ignore self join if the channel is already joined ( closes #2291 )
...
There is an issue with some IRC servers that may send a JOIN with self nick
once already on the channel, this results in a clear of the nicklist on the
second JOIN received.
This fix silently ignores the second self JOIN if the channel is already
joined (with at least one nick).
2025-12-14 14:29:47 +01:00
Sébastien Helleu
b8048b1666
irc: fix reset of color when multiple modes are set with command /mode
2025-11-22 12:31:37 +01:00
Sébastien Helleu
e33ed57b47
irc: fix colors in MODE message (issue #2286 )
2025-11-22 10:32:44 +01:00
Sébastien Helleu
790ce13843
tests: add colors in username for tests of messages 367 and 728
2025-11-22 10:32:44 +01:00
Sébastien Helleu
d23a7a6105
irc: fix colors in ban mask (message 367) and quiet mask (message 728) ( closes #2286 )
2025-11-22 10:02:47 +01:00
Sébastien Helleu
07ef353b1b
irc: remove temporary servers and option irc.look.temporary_servers
2025-11-01 09:15:54 +01:00
Sébastien Helleu
72b2242135
irc: send SASL username with mechanism EXTERNAL ( closes #2270 )
...
The SASL username is sent if set, otherwise "+" is still sent.
2025-10-12 16:11:33 +02:00
Sébastien Helleu
b066f713d7
tests: fix memory leak in tests on SASL PLAIN authentication mechanism
2025-10-12 16:07:52 +02:00
Sébastien Helleu
a1cbe63a42
tests: move CMake file, main C++/headers for tests and scripts to unit directory
2025-05-05 13:18:34 +02:00
Sébastien Helleu
683fa2f585
irc: add support of strikethrough color attribute (using half bright) ( closes #2248 )
...
As ncurses doesn't support strikethrough, the text is rendered as half
bright (WeeChat color: "dim").
2025-04-26 14:10:43 +02:00
Sébastien Helleu
2475f20cb7
all: move description of C files below the copyright and license
2025-03-31 11:47:49 +02:00
Sébastien Helleu
3a6ac9ee76
all: add SPDX license tag
2025-03-31 07:49:26 +02:00
Sébastien Helleu
d8987a1678
all: replace Copyright lines by SPDX copyright tag
2025-03-30 14:47:12 +02:00
Sébastien Helleu
547e2b934e
core: update copyright dates
2025-02-01 23:13:18 +01:00
Sébastien Helleu
6534919868
irc: decode IRC color codes only when displaying messages
...
Before parsing IRC messages, they were almost all changed to convert IRC color
codes to WeeChat color codes, which caused some bugs when storing data like
account and real names (stored with WeeChat color codes instead of IRC colors).
Now the messages are parsed as-is, then the colors are converted only when
strings are displayed in a buffer by `weechat_printf()`.
2024-09-22 23:05:16 +02:00
Sébastien Helleu
02847246b2
core, plugins, tests: fix octal notation in strings
2024-09-19 08:34:18 +02:00
Sébastien Helleu
1cf65df089
tests: add tests on missing supported IRC messages
2024-09-15 21:47:43 +02:00
Sébastien Helleu
01103cb02a
irc: do not strip trailing spaces from incoming IRC messages
2024-09-15 21:47:32 +02:00
Sébastien Helleu
6908eec160
tests: replace POINTERS_EQUAL by STRCMP_EQUAL in string comparisons with NULL
2024-09-14 10:26:42 +02:00
Sébastien Helleu
3253500d15
irc: add option irc.look.notice_nicks_disable_notify
2024-09-02 19:55:27 +02:00
Sébastien Helleu
cadd04693a
irc: add support of message 569 (whois, connecting from) ( closes #2162 )
2024-07-22 10:39:03 +02:00
Sébastien Helleu
1c04f9419c
tests: fix comment on test of IRC message 344
2024-07-22 10:38:13 +02:00
Sébastien Helleu
740aa49271
irc: rename parameter -re to -raw in command /list ( closes #2124 )
2024-06-16 09:15:03 +02:00
Sébastien Helleu
3835351226
tests: add placeholder for tests on function irc_list_export
2024-06-09 23:51:00 +02:00
Sébastien Helleu
7cf45707ea
tests: add test on info "irc_buffer" with a valid server and a non-existing channel
2024-06-02 23:08:03 +02:00
Sébastien Helleu
7684d5a3d1
tests: add test of IRC message split with newline but no server
2024-05-25 19:48:41 +02:00
Sébastien Helleu
878c0a5d66
irc: allow range in commands /unban and /unquiet ( closes #2113 )
2024-05-13 23:05:39 +02:00
Sébastien Helleu
5991278637
irc: rename function irc_server_buffer_set_input_multiline to irc_server_set_buffer_input_multiline
2024-05-09 15:55:31 +02:00
Sébastien Helleu
4adb64284b
buffer: add property input_get_any_user_data in buffer (issue #2066 )
...
This allows buffers to get any user input, including commands, that are sent to
the buffer callback instead of being executed on the buffer.
2024-04-07 13:18:13 +02:00
Sébastien Helleu
40bfded594
irc: fix display of reply for CTCP request received on a channel when capability echo-message is enabled
2024-04-06 22:44:04 +02:00
Sébastien Helleu
2c3c9a3ee7
tests: rename variable "i" to "echo_message"
2024-04-06 18:29:42 +02:00
Sébastien Helleu
74729ce677
irc: display CTCP reply to a nick in server buffer instead of channel
...
When a CTCP request is received on a channel, WeeChat replies to the nick and
it is now displayed in the server buffer instead of the channel, as the target
is a nick and not a channel.
2024-04-06 16:42:15 +02:00
Sébastien Helleu
d81170b010
tests: add extra tests on received IRC CTCP messages
2024-04-06 16:37:40 +02:00
Sébastien Helleu
965beb37de
core: fix print of pointer values
2024-04-01 21:08:52 +02:00
Sébastien Helleu
24c4029c96
core: remove "wee-" prefix from source files in src/core and src/core/hook
2024-03-12 21:27:37 +01:00
Sébastien Helleu
90c87e7553
irc: add missing tags on self action messages when capability echo-message is enabled ( closes #2074 )
2024-02-16 20:58:31 +01:00
Sébastien Helleu
162bcb2622
irc: don't strip monospace color code 0x11 from incoming messages ( closes #2073 )
2024-02-16 19:22:28 +01:00
Sébastien Helleu
0cfc61a17e
irc: add server option "autojoin_delay" ( closes #862 )
...
The server option "autojoin_delay" adds a delay before autojoin.
The server option "command_delay" is now used to add a delay before the
execution of the command.
On upgrade from an old version, the option "command_delay" is copied to
"autojoin_delay" (in old versions, "command_delay" was applied after the
execution of command and before the autojoin).
2024-02-11 09:12:57 +01:00
Sébastien Helleu
f126255d6a
core: add support of base64url in encode/decode functions (issue #2066 )
2024-02-01 21:39:21 +01:00
Sébastien Helleu
fe52f7c78c
tests: remove extra empty line
2024-01-22 13:58:33 +01:00
Sébastien Helleu
06b4e46977
irc: fix random date displayed when a received message contains tags but no "time" ( closes #2064 )
2024-01-22 13:18:25 +01:00
Sébastien Helleu
05fdb2929f
tests: add missing format string in calls to snprintf
2024-01-21 09:17:11 +01:00
Sébastien Helleu
869fba9f74
irc: add tests on info functions (issue #2059 )
2024-01-12 17:58:36 +01:00
Sébastien Helleu
57a206287a
irc: fix display of self messages in case of message split failure
...
When the message sends inconsistent max lengths in message 005, the split of
self message fails and causes a display issue: the channel name is displayed
with the message:
nick | #channel :this is a test
instead of:
nick | this is a test
2024-01-05 21:36:58 +01:00
Sébastien Helleu
4a1e5e7eaa
irc: remove function irc_protocol_parse_time, use API function weechat_util_parse_time (issue #649 )
2024-01-05 19:28:47 +01:00
Sébastien Helleu
eecb2a997e
core: update copyright dates
2024-01-01 22:29:58 +01:00