Subj : src/syncterm/ssh.c syncterm.c syncterm.h term.c To : Git commit to main/sbbs/master From : Deuc¨ Date : Sat Apr 25 2026 04:38:43 https://gitlab.synchro.net/main/sbbs/-/commit/40c26005f34bd8aa7d6bda7f Modified Files: src/syncterm/ssh.c syncterm.c syncterm.h term.c Log Message: syncterm: cross-thread popup queue; wire SSH_MSG_DEBUG callback Add popup_queue_{post,drain}() to syncterm.c with declarations in syncterm.h. Background threads can post (title, body) pairs from any thread; doterm()'s main loop calls drain() at the top of each iteration and displays them via uifcmsg() on the UI thread. Same mechanism can serve any future cross-thread popup source (SFTP errors, global-request callbacks, etc.). Wire ssh_debug_cb for SSH_MSG_DEBUG (RFC 4253 11.3): logs every debug line to log_fp as "SSH display ..." or "SSH debug ..." and posts an always_display message to the popup queue when bbslist isn't suppressing popups. Skip dssh_unimplemented_cb for now -- the seq number it carries can't be correlated to anything actionable without a DSSH-side send-counter API. Co-Authored-By: Claude Opus 4.7 (1M context) --- þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net .