Sébastien Helleu
8b1b06a407
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 22:08:39 +02:00
Sébastien Helleu
ec03437f9e
irc: fix tag in message with list of names when joining a channel
...
The message with list of nicks on the channel has now tag irc_353 instead of
irc_366.
2026-05-23 13:22:33 +02:00
Sébastien Helleu
b8bef1c3e1
irc: fix display of CTCP query sent multiple times to the same user when capability echo-message is enabled ( closes #2309 )
2026-03-27 18:32:31 +01: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
953ede1200
irc: add tags "irc_cap" and "log3" in client capability request and SASL not supported messages
2025-11-22 16:00:32 +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
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
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
d9ba00223b
irc: request and perform SASL authentication when the server advertises SASL support with message "CAP NEW" ( closes #2277 )
...
The SASL authentication is done only if not already authenticated with SASL.
2025-10-03 10:26:04 +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
45c8bab9b8
irc: display nick changes and quit messages when option irc.look.ignore_tag_messages is enabled ( closes #2241 )
2025-03-28 12:08:40 +01:00
Sébastien Helleu
547e2b934e
core: update copyright dates
2025-02-01 23:13:18 +01:00
Sébastien Helleu
45509e1cd1
irc: replace calls to malloc by weechat_asprintf
2024-12-21 15:12:33 +01:00
Josh Soref
7fb77aabfa
spelling: wildcard
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2024-09-28 21:22:56 +02: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
01103cb02a
irc: do not strip trailing spaces from incoming IRC messages
2024-09-15 21:47:32 +02:00
Sébastien Helleu
143f694fe2
core, plugins: add missing parentheses when dereferencing a pointer with an array index
2024-09-05 20:57:29 +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
9ece7b4d8c
core, plugins: fix typo in comments
2024-07-22 11:49:26 +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
827a056790
irc: remove redefinition of bar item "input_prompt"
...
The new buffer property "input_prompt" is used instead.
2024-05-11 14:05:52 +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
7af01a56ca
plugins: remove check of NULL pointers before calling weechat_string_dyn_free() (issue #865 )
2024-04-26 08:53:22 +02:00
Sébastien Helleu
9a5a1fb300
plugins: remove check of NULL pointers before calling weechat_string_free_split() (issue #865 )
2024-04-26 08:53:22 +02:00
Sébastien Helleu
529a22e342
plugins: remove check of NULL pointers before calling weechat_unhook() (issue #865 )
2024-04-26 08:41:44 +02:00
Sébastien Helleu
2bbf289635
irc: remove check of NULL pointers before calling free() (issue #865 )
2024-04-25 20:59:24 +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
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
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
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
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
Sébastien Helleu
9fb3d3f14c
core: store microseconds in buffer lines ( closes #649 )
2023-12-26 19:44:37 +01:00
Sébastien Helleu
fa0b320178
core: fix style
2023-12-14 23:11:35 +01:00
Sébastien Helleu
b3422b96c0
irc: add option irc.look.display_host_wallops
2023-12-10 21:13:00 +01:00
Sébastien Helleu
22fcb91e8b
irc: display messages 730/731 even if command /notify was not used ( closes #2049 )
2023-11-29 18:14:37 +01:00
Sébastien Helleu
f7b7e3975a
irc: add server option "anti_flood", remove server options "anti_flood_prio_{high|low}" (issue #1039 )
...
The new option is set in milliseconds.
2023-11-29 09:49:27 +01:00
Sébastien Helleu
515d4241ad
irc: fix target buffer of IRC message 337 (whois reply: "is hiding their idle time")
2023-11-07 21:50:12 +01:00
Sébastien Helleu
6d69cde186
core, plugins: set error to NULL before calling strtol()
...
This is not strictly necessary, just in case the function strtol() doesn't
update the pointer.
2023-11-01 09:53:38 +01:00
Sébastien Helleu
21759171d2
irc: add tags "nick_xxx" and "host_xxx" in all messages, including self and server messages
2023-10-30 08:23:20 +01:00
Sébastien Helleu
a88b8f7ed2
irc: revert compute of nick colors to case sensitive way, deprecate again IRC nick color infos (issue #194 , issue #2032 )
2023-10-19 23:38:28 +02:00
Sébastien Helleu
9bc9df47d7
irc: add option irc.look.ignore_tag_messages ( closes #989 )
2023-10-15 18:45:11 +02:00
Sébastien Helleu
3898449dc2
irc: add structure with context sent as unique parameter to IRC protocol callbacks (issue #989 )
2023-10-15 18:40:01 +02:00
Sébastien Helleu
f72fb3be4b
irc: display "owner" for +q and "admin" for +a in output of /names ( closes #2020 , issue #97 )
2023-09-22 23:21:22 +02:00