BBS: TELESC.NET.BR Assunto: src/ssh/test/test_thread_errors.csrc/ssh/TODO.md ssh-conn.c ssh-intern De: Deuc¨ Data: Fri, 27 Mar 2026 20:57:48 -0700 ----------------------------------------------------------- https://gitlab.synchro.net/main/sbbs/-/commit/e06d0205caf91969f69f94f9 Added Files: src/ssh/test/test_thread_errors.c Modified Files: src/ssh/TODO.md ssh-conn.c ssh-internal.h ssh-trans.c ssh.c src/ssh/test/CMakeLists.txt dssh_test_ossl.c dssh_test_ossl.h Log Message: Check all C11 threading return values via dssh_thrd_check wrapper (items 85, 86) 133 unchecked mtx_lock/mtx_unlock/cnd_wait/cnd_timedwait/cnd_broadcast/ cnd_signal calls across ssh-conn.c (113), ssh-trans.c (10), and ssh.c (13) now go through dssh_thrd_check(), which calls set_terminate() on failure. Library code ignores the return; the wrapper handles termination internally. set_terminate() checks returns to skip blocks whose lock was not acquired (best-effort wakeup, no recursion since terminate is set first). Test injection uses a separate countdown (dssh_test_thrd_fail_after) from the OpenSSL countdown. 6 new injection wrappers, 6 new tests (48 CTest entries across 8 algo variants). Demux thread excluded from countdown. Co-Authored-By: Claude Opus 4.6 (1M context)n --- mSynchronetn hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net ----------------------------------------------------------- [Voltar]