Subj : src/sbbs3/main.cpp To : Git commit to main/sbbs/master From : Rob Swindell (on Debian Linux) Date : Fri Aug 14 2026 19:14:44 https://gitlab.synchro.net/main/sbbs/-/commit/903d316dda30b9278dbbf943 Modified Files: src/sbbs3/main.cpp Log Message: Terminal server: don't report a session teardown as an SSH error hangup() destroys the cryptlib session while input_thread sits between its ssh_mode test and its crypt_pop_channel_data() call, so the pop can fail on a handle that is already gone. The status is normally CRYPT_ERROR_PARAM1, which GCES logs at LOG_ERR: Node 11 SSH ERROR 'Bad argument, parameter 1' (-1) popping data Every clean SSH disconnect therefore produced a line that reads like a failure. Five days of terminal-server logs on Vertrauen held 355 of them, each immediately preceded by a teardown message (disconnecting client, passthru socket disconnected, passthru or output thread terminated) and none on a live session. The noise imitates the genuine mid-session drops tracked in #1225, which makes those logs harder to read. Detect the already-terminating session and log it at LOG_DEBUG instead. The node was being torn down either way, so only the severity changes; an error arriving while the session is still up is still reported through GCES. Co-Authored-By: Claude Opus 5 (1M context) --- SBBSecho 3.37-Linux * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705) .