Record STCP SIGPIPE regression and sanitizer validation

This commit is contained in:
evgeny committed 2026-10-22 23:02:42 +02:00
1 parent 05a5b6c2a7
commit 082d9d3960
1 file changed
+10 -2
+10 -2
View File
@@ -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; комментарий утверждает обратное.