• src/syncterm/sftp_queue.c sftp_queue.hsrc/syncterm/CMakeLists.txt GNUm

    From Deucе@VERT to Git commit to main/sbbs/master on Fri Apr 24 14:19:28 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/34e95a593146eb172b549a20
    Added Files:
    src/syncterm/sftp_queue.c sftp_queue.h
    Modified Files:
    src/syncterm/CMakeLists.txt GNUmakefile sftp_browser.c ssh.c term.c
    Log Message:
    SyncTERM: SFTP transfer queue + status-bar indicators

    Adds a session-scoped upload/download queue sitting on the persistent
    SFTP channel. Two worker threads (one per direction) transfer jobs in
    4 KB chunks so the live terminal keeps getting CPU and the SFTP mutex
    is only held one round-trip at a time. Workers preserve mtime on both
    sides so a later browse shows [==].

    The browser's status chip now reports queue state ([\x18\x18]/[\x19\x19] active, [Q\x18]/[Q\x19] queued, [er]/[cx] terminal) and falls back to
    the size+mtime compare when no job exists. U/D enqueue upload/download
    from the session's configured ul/dl dirs; Del cancels.

    Status bar paints up/down arrows at cols 28/29, folded into the dirty
    hash so the bar only repaints on activity transitions.

    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net