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]