_  _    __    ___  __    ___  _____  _  _
 ( \( )  /__\  / __)(  )  / __)(  _  )( \( )
  )  (  /(__)\( (__  )(__( (__  )(_)(  )  (
 (_)\_)(__)(__)\___)(____)\___)(_____)(_)\_)

The History of Hacking  ·  May 31 – June 2, 2026  ·  Carolina Beach, NC

  • src/syncterm/wren_bind_sftp.c

    From Deucе@VERT to Git commit to main/sbbs/master on Tue Apr 28 19:37:46 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/415a9d1e69921973a171e09c
    Modified Files:
    src/syncterm/wren_bind_sftp.c
    Log Message:
    SyncTERM: stub Wren SFTP foreigns under WITHOUT_DEUCESSH

    WITHOUT_DEUCESSH drops the SSH transport (and therefore SFTP) but
    wren_bind.c's BINDINGS table and lookup_class still reference the
    SFTP allocators / finalizers / methods. Without DeuceSSH the body
    of wren_bind_sftp.c can't compile at all (sftp.h lives in src/ssh,
    which the makefile doesn't add to the include path in that config).

    Wrap the body in #ifndef WITHOUT_DEUCESSH and provide stubs in the
    #else branch. SFTP.available reports false (so well-behaved scripts
    skip the subsystem entirely); the rest of the SFTP class methods
    abort the calling fiber. Per-instance accessors are unreachable
    since instances can't be constructed in this build, but they still
    need symbols for BINDINGS to link.

    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

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