• src/sbbs3/ftpsrvr.cpp web/root/qwk.ssjs

    From Rob Swindell (on Debian Linux)@1:103/705 to Git commit to main/sbbs/master on Monday, October 26, 2026 00:09:03
    https://gitlab.synchro.net/main/sbbs/-/commit/55cccc749c640d8754844454
    Modified Files:
    src/sbbs3/ftpsrvr.cpp web/root/qwk.ssjs
    Log Message:
    qwkjob: name queued-REP staging files by host and server

    A REP that cannot be imported at once is staged beside its final name
    in data/file/ and renamed into place, so the event thread's *.rep sweep
    never sees a half-written packet. data/file/ is shared by every BBS
    host, and FTP and Web socket numbers come from separate processes (and
    hosts), so a name built from the user and socket number alone could
    collide.

    Both servers now stage as <user#>.<host>.<srv><sock>.tmp with srv "ftp"
    or "web", the host being the name the server already uses for lock
    ownership, reduced to filename-safe characters. The name matches
    neither the *.rep sweep (Windows tests 8.3 short names too, so the web
    staging name no longer ends in .reptmp) nor the pack's
    <user#>.<host>.<pid>.tmp shape.

    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    --- SBBSecho 3.38-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)