TapTap
729f3ef8e1
fix(protocol): atomic client-msg flag, sanitize peer messages, flush before terminal, serialization probe
2026-09-23 23:56:31 +02:00
TapTap
cb2979fdf1
feat(protocol): client-message channel and rsync partial exit 23 (2.30.0)
2026-09-23 20:33:27 +02:00
TapTap
ba1c7a369f
fix(server,log): non-socket shutdown fallback, drop redundant delay cleanup, unlock logging I/O
2026-09-13 02:13:22 +02:00
TapTap
c8f5d80fcb
fix(log): serialize message emission; clear log_fp before close; use logger
2026-09-13 01:44:59 +02:00
TapTap
87585e9881
perf(protocol): skip string debug escaping when proto debug is off
...
output_escape() was called on every send_str/receive_str even when
LOG_DEBUG_PROTO logging was disabled, allocating and scanning the whole
payload for a line that log_debug_message() then discarded. Add a
log_debug_enabled(flag) gate mirroring log_debug_message()'s own filter and
check it before escaping. Redacted (secret) strings still log the same
<redacted> marker; no observable log output changes.
2026-09-12 16:54:43 +02:00
TapTap
cf0d10fccb
Merge remote-tracking branch 'origin/feat/rsync-info' into dev
2026-09-05 02:25:36 +02:00
TapTap
47d1cbdae8
Merge remote-tracking branch 'origin/feat/rsync-debug' into dev
...
# Conflicts:
# RSYNC_COMPAT.md
# src/client/client_cli.c
# src/client/usage.c
# src/shared/log.h
# src/shared/protocol.c
2026-09-04 17:21:48 +02:00
TapTap
b59139589d
Merge remote-tracking branch 'origin/feat/rsync-stderr-mode' into dev
...
# Conflicts:
# RSYNC_COMPAT.md
# src/shared/log.c
# src/shared/log.h
# tests/test_client_cli.c
2026-09-04 17:20:36 +02:00
TapTap
605f79a450
fix: make rsync info none override verbose
CI / lint (pull_request) Successful in 12s
CI / sanitizers (address) (pull_request) Successful in 36s
CI / sanitizers (undefined) (pull_request) Successful in 36s
CI / fuzz-build (pull_request) Successful in 16s
CI / coverage (pull_request) Successful in 32s
CI / build-and-test (pull_request) Successful in 1m16s
CI / valgrind (pull_request) Successful in 33s
2026-09-03 22:44:44 +02:00
TapTap
066c7ed1af
fix: address 8-bit output re-review findings
CI / lint (pull_request) Successful in 10s
CI / sanitizers (address) (pull_request) Successful in 37s
CI / sanitizers (undefined) (pull_request) Successful in 37s
CI / fuzz-build (pull_request) Successful in 14s
CI / coverage (pull_request) Successful in 31s
CI / build-and-test (pull_request) Successful in 1m15s
CI / valgrind (pull_request) Successful in 33s
2026-09-03 22:40:30 +02:00
TapTap
5c7d82b79c
feat: add rsync debug flags
CI / lint (pull_request) Successful in 12s
CI / sanitizers (address) (pull_request) Successful in 38s
CI / sanitizers (undefined) (pull_request) Successful in 36s
CI / fuzz-build (pull_request) Successful in 15s
CI / coverage (pull_request) Successful in 31s
CI / build-and-test (pull_request) Successful in 1m15s
CI / valgrind (pull_request) Successful in 33s
2026-09-03 16:18:46 +02:00
TapTap
4872d425a3
feat: add rsync info flags
CI / lint (pull_request) Successful in 12s
CI / sanitizers (address) (pull_request) Successful in 38s
CI / sanitizers (undefined) (pull_request) Successful in 37s
CI / fuzz-build (pull_request) Successful in 15s
CI / coverage (pull_request) Successful in 32s
CI / build-and-test (pull_request) Successful in 1m16s
CI / valgrind (pull_request) Successful in 33s
2026-09-03 16:13:56 +02:00
TapTap
60eb7f11fe
feat: add rsync stderr output modes
CI / lint (pull_request) Successful in 11s
CI / sanitizers (address) (pull_request) Successful in 38s
CI / sanitizers (undefined) (pull_request) Successful in 38s
CI / fuzz-build (pull_request) Successful in 15s
CI / coverage (pull_request) Successful in 31s
CI / build-and-test (pull_request) Successful in 1m15s
CI / valgrind (pull_request) Successful in 33s
2026-09-03 16:07:51 +02:00
TapTap
eb4e9fba1f
feat: add 8-bit output option
CI / lint (pull_request) Successful in 11s
CI / sanitizers (address) (pull_request) Successful in 37s
CI / sanitizers (undefined) (pull_request) Successful in 36s
CI / fuzz-build (pull_request) Successful in 16s
CI / coverage (pull_request) Successful in 33s
CI / build-and-test (pull_request) Successful in 1m15s
CI / valgrind (pull_request) Successful in 33s
2026-09-03 16:03:19 +02:00
TapTap
6d82967c68
refactor: standardize error reporting on the log module
...
- Add log_perror() helper (context + strerror(errno)) to the log module
- Replace all bare perror() calls with log_perror() so errors are routed
through the unified logger (stderr sink + optional --log-file sink)
- Convert fprintf(stderr, "Error:/Warning: ...") in client code to
log_message(); raw fprintf kept only for progress/stats output
2026-08-30 14:06:48 +02:00
TapTap
679e389ba6
Fix va_list cleanup in logger
CI / lint (pull_request) Failing after 25s
CI / build-and-test (pull_request) Has been skipped
CI / sanitizers (address) (pull_request) Has been skipped
CI / sanitizers (undefined) (pull_request) Has been skipped
CI / fuzz-build (pull_request) Has been skipped
CI / coverage (pull_request) Has been skipped
CI / valgrind (pull_request) Has been skipped
2026-08-11 21:12:00 +02:00
TapTap
09fca8d931
start of human refactoring
2026-08-11 20:26:15 +02:00
TapTap
05a74770ca
fix: address PR #200 review issues
...
CI / lint (pull_request) Successful in 22s
CI / sanitizers (address) (pull_request) Successful in 37s
CI / sanitizers (undefined) (pull_request) Successful in 36s
CI / fuzz-build (pull_request) Successful in 13s
CI / coverage (pull_request) Successful in 31s
CI / build-and-test (pull_request) Successful in 1m15s
CI / valgrind (pull_request) Successful in 33s
- Restore PROTOCOL_VERSION to a forward-compatible 2.1.0 and document wire format
- Add NULL guard to config_delete
- Add pipeline cancellation flag and cancellation-aware queue helper
- Join running threads before destroying pipeline contexts on creation failure
- Fix NULL dereference and memory leaks in manifest/chunk handling
- Fix TLS/TCP socket fd leak on connect error paths
- Add compression-level range validation (1-22)
- Close previous log file before opening a new one
- Use getline for unbounded pattern-file lines
- Fix thread-unsafe localtime() and add log level bounds check
- Fix file_load_data to clean up data on read size mismatch
- Add hard ceiling to decompression buffer growth
- Fix mkdir_r bounds check and restore glob comments
- Add send_str NULL guard and mutex-protect bandwidth limiter
- Update AGENTS.md for per-thread io_ssl contract
2026-08-02 09:34:54 +02:00
TapTap
e68e33c0c5
Apply PR #143 content on top of latest main
2026-07-29 18:18:07 +02:00
TapTap
d3dca6c2a5
Revert "Merge pull request 'Merge all 5 batch PRs: security, CLI features, protocol, performance, tests/docs' ( #143 ) from merge-all-v2 into main"
...
CI / lint (pull_request) Successful in 9s
CI / sanitizers (address) (pull_request) Successful in 15s
CI / sanitizers (undefined) (pull_request) Successful in 15s
CI / coverage (pull_request) Successful in 11s
CI / fuzz-build (pull_request) Successful in 13s
CI / valgrind (pull_request) Successful in 13s
CI / build-and-test (pull_request) Successful in 54s
This reverts commit 29f4f8cde6 , reversing
changes made to c6bf7bb84e .
2026-07-29 18:10:01 +02:00
TapTap
415adf2077
Merge all 5 PRs: security, CLI features, protocol, performance, tests/docs
CI / lint (pull_request) Failing after 11s
CI / build-and-test (pull_request) Has been skipped
CI / sanitizers (address) (pull_request) Has been skipped
CI / sanitizers (undefined) (pull_request) Has been skipped
CI / fuzz-build (pull_request) Has been skipped
CI / coverage (pull_request) Has been skipped
CI / valgrind (pull_request) Has been skipped
2026-07-21 18:01:02 +02:00
TapTap
081973c904
fix: security hardening (#112-#118)
2026-07-21 16:42:57 +02:00
TapTap
e6e8679bfc
Revert "Merge pull request 'Fix logic/correctness bugs ( #73 , #68 , #67 , #66 , #59 , #58 , #54 , #48 , #53 )' ( #82 ) from fix/logic-correctness into main"
...
This reverts commit 28d076fc28 , reversing
changes made to df0f52ce39 .
2026-07-20 19:36:09 +02:00
TapTap
4383caa3bb
fix: logic/correctness bugs — issues #73 , #68 , #67 , #66 , #59 , #58 , #54 , #48 , #53
CI / lint (pull_request) Failing after 7s
CI / build-and-test (pull_request) Has been skipped
CI / sanitizers (address) (pull_request) Has been skipped
CI / sanitizers (undefined) (pull_request) Has been skipped
CI / fuzz-build (pull_request) Has been skipped
CI / coverage (pull_request) Has been skipped
CI / valgrind (pull_request) Has been skipped
2026-07-20 19:04:35 +02:00
TapTap
23b1d6660c
fix: reformat codebase and fix const-correctness for CI lint
...
CI / lint (push) Failing after 16s
CI / build-and-test (push) Has been skipped
CI / sanitizers (address) (push) Has been skipped
CI / sanitizers (thread) (push) Has been skipped
CI / lint (pull_request) Failing after 44s
CI / build-and-test (pull_request) Has been skipped
CI / sanitizers (address) (pull_request) Has been skipped
CI / sanitizers (thread) (pull_request) Has been skipped
- Reformat all C/H files to match .clang-format (LLVM style)
- Fix 26 cppcheck const-correctness warnings (constParameterPointer,
constVariablePointer, constVariable)
- Update function declarations in headers to match const parameters
2026-07-19 15:57:31 +02:00
TapTap
a96d48f0ed
feat: default log level to WARNING, add -v/--verbose flag
2026-07-06 20:26:20 +02:00
TapTap
372c559ef2
fix: SSH transport - log to stderr, use-after-free, systemd scope conflict
2026-07-06 20:15:36 +02:00
Theo Tappe
1e5eeb704f
First Commit
2026-06-10 16:58:35 +02:00