Sébastien Helleu
72dce52901
core, plugins: replace "%p" by "%lx" in calls to sscanf
2025-05-15 20:12:12 +02:00
Sébastien Helleu
de7150c65b
Revert "core, plugins: replace "%lx" by "%p" in calls to sscanf"
...
This reverts commit e64ab3c675 .
This was causing incorrect conversion of strings "0x..." to pointers on systems
like Solaris/ILLUMOS.
And as a side effect, buffers were sometimes empty in weechat relay clients
like glowing-bear.
2025-05-15 20:10:32 +02:00
Sébastien Helleu
999262cbf2
core: add version 4.6.3
2025-05-11 11:47:01 +02:00
Sébastien Helleu
7b674c2618
core: add extra checks in function eval_string_range_chars
...
This is done in addition to changes made in commit
d475c16671 to fix the buffer overflow, caused by
the call to function utf8_next_char.
2025-05-11 10:26:17 +02:00
Sébastien Helleu
1efa9d6b08
core: reactivate CMake tests in root build directory (issue #1462 )
...
This fixes the command `ctest` executed in the root build directory.
It was removed by accident in commit 68d87f2b80 .
2025-05-11 10:15:08 +02:00
Sébastien Helleu
1fe23d9233
core: add API functions utf8_next_char, utf8_char_size and util_version_number in upgrade guidelines
2025-05-11 07:54:55 +02:00
Sébastien Helleu
5cfee46b59
tests/fuzz: add fuzz testing on evaluation functions (issue #1462 )
2025-05-10 21:21:35 +02:00
Sébastien Helleu
75195d32da
tests/fuzz: fix fuzz testing on function secure_derive_key (issue #1462 )
2025-05-10 21:21:33 +02:00
Sébastien Helleu
d475c16671
core: fix buffer overflow in function utf8_next_char and return NULL for empty string
...
Now the function utf8_next_char with an empty string returns NULL instead of
the next char, which is most of the time after an allocated buffer.
And the function utf8_char_size with an empty string now returns 0 instead of
1.
This indirectly fixes a buffer overflow in function eval_string_range_chars
when the input string is empty (for example when doing `/eval -n ${chars:}`).
2025-05-10 20:53:04 +02:00
Sébastien Helleu
6ecd9e66bf
core: fix buffer overflow in function eval_string_base_encode
2025-05-10 15:28:41 +02:00
Sébastien Helleu
9d37159a6b
core: use dynamic string in function string_replace_with_callback
2025-05-10 15:26:12 +02:00
Sébastien Helleu
aa54d3653c
core: fix buffer overflow in function eval_syntax_highlight_colorize
2025-05-10 15:26:09 +02:00
Sébastien Helleu
b32f8662bc
doc/dev: split components for tests: tests/fuzz and tests/unit
2025-05-09 08:15:28 +02:00
Sébastien Helleu
f9520b971e
tests/fuzz: add fuzz testing on secured data functions (issue #1462 )
2025-05-09 08:15:28 +02:00
Sébastien Helleu
776b908431
tests/fuzz: remove unnecessary malloc
2025-05-08 20:54:38 +02:00
Sébastien Helleu
58a4dc757d
doc/dev: add missing test files
2025-05-08 20:49:04 +02:00
Sébastien Helleu
229259b8c2
tests: add fuzz testing on some core util functions (issue #1462 )
2025-05-08 20:43:24 +02:00
Sébastien Helleu
1d808a1f1c
core: fix buffer overflow in function util_parse_time
2025-05-08 19:09:18 +02:00
Sébastien Helleu
2bc290b6ed
core: fix integer overflow and return "unsigned long" in function util_version_number
2025-05-08 18:45:39 +02:00
Sébastien Helleu
f6cace609c
core: fix memory leak in function util_parse_delay
2025-05-08 18:12:11 +02:00
Sébastien Helleu
1da89711a7
tests/fuzz: increase code covered by string tests
2025-05-08 17:04:23 +02:00
Sébastien Helleu
675c3279ac
tests/fuzz: initialize gettext before UTF-8 tests
2025-05-08 17:02:37 +02:00
Sébastien Helleu
7341d670b3
tests: add build script for OSS-Fuzz (issue #1462 )
2025-05-07 21:38:37 +02:00
Sébastien Helleu
38bf51ccfb
tests: convert fuzzing sources to C++
2025-05-07 21:15:51 +02:00
Sébastien Helleu
d74fc99fe1
core: write configuration files on disk only if there are changes ( closes #2250 )
2025-05-07 20:44:54 +02:00
Sébastien Helleu
51d24fd2da
api: add function file_compare (issue #2250 )
2025-05-07 20:44:48 +02:00
Sébastien Helleu
9a661aecd0
tests: move fuzzing dict to core directory
2025-05-07 13:21:47 +02:00
Sébastien Helleu
85f565f6c1
core: add appropriate compiler/linker options for code coverage with clang
2025-05-07 13:20:44 +02:00
Sébastien Helleu
7cae4b276d
tests: remove useless variable rc
2025-05-06 07:13:38 +02:00
Sébastien Helleu
8e390939f9
core: fix typo in ChangeLog
2025-05-06 07:59:49 +02:00
Sébastien Helleu
ca6035f754
core: fix integer overflow in base32 encoding/decoding
2025-05-05 20:43:21 +02:00
Sébastien Helleu
5b4820ab06
core: fix integer overflow with decimal numbers in calculation of expression
2025-05-05 20:25:41 +02:00
Sébastien Helleu
68d87f2b80
tests: add fuzz testing on core functions (issue #1462 )
...
This commit introduces fuzz testing, for now on core functions, with 4 new
targets that are built on demand with CMake option `ENABLE_FUZZ` (build of
these tests is disabled by default):
- weechat_core_calc_fuzzer
- weechat_core_crypto_fuzzer
- weechat_core_string_fuzzer
- weechat_core_utf8_fuzzer
2025-05-05 19:12:00 +02:00
Sébastien Helleu
ceb6a007ff
core: add missing empty line
2025-05-05 13:18:35 +02:00
Sébastien Helleu
59b06c96de
doc/dev: add missing tests directories and sources
2025-05-05 13:18:35 +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
Nils Görs
e15b369aa7
core: update German translations
2025-05-05 09:28:15 +02:00
Sébastien Helleu
9f4cbe599b
ci: add variable JOBS in script build_test.sh
2025-05-04 20:45:29 +02:00
Sébastien Helleu
8b6480272a
ci: replace variable BUILDARGS by command line arguments
2025-05-04 20:19:54 +02:00
Sébastien Helleu
84c526ac20
ci: use script build_test.sh in macOS CI
2025-05-04 16:15:25 +02:00
Sébastien Helleu
f08b6beeda
ci: add variable "RUN_TESTS" in script build_test.sh
...
When set to "0", the tests are not executed after the build.
2025-05-04 16:15:21 +02:00
Sébastien Helleu
4116f62dd8
ci: split jobs config on multiple lines
2025-05-04 16:10:05 +02:00
Sébastien Helleu
5b62cb6451
buflist: add variables ${number_zero} and ${number_zero2} (zero-padded buffer number)
2025-05-04 09:28:03 +02:00
Sébastien Helleu
36be7ac1ff
doc: update header in custom styles for asciidoctor
2025-04-26 14:56:35 +02:00
Sébastien Helleu
ac04215164
core: move copyright/license header at the top of the cmake file
2025-04-26 14:55:02 +02:00
Sébastien Helleu
4d130d6b06
doc: move copyright/license headers at the top of the asciidoctor attributes files
2025-04-26 14:54:26 +02:00
Sébastien Helleu
44197397ef
tests: remove obsolete coding charset in Python scripts
2025-04-26 14:52:39 +02:00
Sébastien Helleu
b2a5d5995b
doc: move copyright/license headers at the top of the files
2025-04-26 14:10:48 +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
a008e8a423
core: move some copyrights and licenses from REUSE config into the files
2025-04-25 18:16:02 +02:00