https://gitlab.synchro.net/main/sbbs/-/commit/376833125e840f4a0a19b2ee
Modified Files:
src/doors/syncscumm/PROVENANCE.md build.sh src/doors/syncscumm/msvc/Directory.Build.props src/doors/syncscumm/scummvm/base/main.cpp src/doors/syncscumm/scummvm/gui/browser.cpp
Log Message:
syncscumm: compile out the ScummVM launcher and file browser
A game that failed to launch dropped to the ScummVM launcher, from which
a remote BBS user could reach Add Game -> the filesystem browser and
read or write arbitrary host files -- a serious hole for a door. The
launcher is also reachable from the F5 Global Main Menu's "Return to
Launcher".
Compile both out, gated on a new SYNCSCUMM_NO_LAUNCHER define (set by build.sh's DEFINES on the *nix build and by msvc/Directory.Build.props on
the Win32 build):
- base/main.cpp: launcherDialog() returns without selecting a game, so
scummvm_main() proceeds to a clean exit instead of ever presenting
the launcher (Add Game, options, path pickers).
- gui/browser.cpp: BrowserDialog::runModal() returns "cancelled"
without browsing -- a belt-and-suspenders guarantee that no dialog
can expose the host filesystem.
A door user can now never reach the launcher, nor browse/read/write
arbitrary host files. PROVENANCE.md records the two new modified upstream files.
Co-Authored-By: Claude Opus 4.8 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net