From 082d9d396014d6fe1e6e075fdab1c39c046fa739 Mon Sep 17 00:00:00 2001 From: evgeny Date: Thu, 22 Oct 2026 23:02:42 +0200 Subject: [PATCH] Record STCP SIGPIPE regression and sanitizer validation --- doc/tasks.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/tasks.md b/doc/tasks.md index d1ebbbc7..31f2b241 100644 --- a/doc/tasks.md +++ b/doc/tasks.md @@ -20,8 +20,16 @@ Проверяются размер max_cwnd, переполнение суммы окон; ошибки [global] теперь отклоняют конфигурацию. Новый test_etcp_windows: 12 сценариев настоящих очередей/отправителя, сверка счётчиков и внедрение отказов. STCP-тест проверяет каждый байт двустороннего 1MiB трафика при окнах 8KiB и независимых тестовых командах. - ASAN/UBSan с detect_leaks=1: windows/session/transport/connect/stcp_traffic/NCD, 6/6; - результаты /tmp/etcp-asan-final-results.log, логи /tmp/etcp-asan-final-logs/. + ASAN/UBSan с detect_leaks=1: windows/session/transport/connect/stcp_traffic/SIGPIPE/NCD, 7/7; + результаты /tmp/etcp-asan-complete-results.log, логи /tmp/etcp-asan-complete-logs/. + +[+] **STCP: запись в закрытый TCP-сокет завершала библиотечный процесс SIGPIPE** — исправлено 22.10.2026: + В общем прогоне STCP traffic завершался сигналом 13 после передачи данных, при teardown; + воспроизведено первым же повтором ASAN. Оба send-пути STCP используют socket_send с MSG_NOSIGNAL + либо SO_NOSIGPIPE; обработчики сигналов процесса не меняются. Ошибка EPIPE обрабатывается штатным путём. + test_stcp_sigpipe проверяет raw/buffered send в дочерних процессах с SIGPIPE=SIG_DFL. + 20 повторов STCP traffic под ASAN/UBSan с detect_leaks=1 прошли без сигналов/ошибок/утечек; + логи /tmp/etcp-asan-traffic-fixed-*.log, детерминированная проверка включена в общий Linux-набор. [ ] **Аудит .h ETCP/STCP: оставшиеся расхождения контрактов** — проверено 22.10.2026: stcp.h: do_close уже очищает оба sc_stream и планирует free для allocated/free_on_close; комментарий утверждает обратное.