https://gitlab.synchro.net/main/sbbs/-/commit/36581ce0202a02c9de0891f8
Modified Files:
src/sbbs3/xtrn_sec.cpp
Log Message:
Don't re-credit today's downloads on DOOR.SYS door exit
Line 30 of DOOR.SYS ("Daily Download K Total") is read back as an
adjustment: whatever the door leaves there is added to the user's downloaded-byte total and charged against their credits. That was
correct while we wrote the line as 0, which we did from 2000 until
c16dfedf4c (arcade-38-task, 2025-06-11) began writing the real running
total there.
Since then, a door that merely preserves the line makes us re-add the
day's downloads and re-charge the credits on every exit. OpenDoors
does exactly that: it rewrites the whole drop file on exit and passes
this field through untouched.
This is latent rather than actively biting anyone: the read-back only
happens for a door with the per-program "Modify User Data" option
enabled, which is off by default and effectively never turned on.
Credit only the increase over the value we handed the door, so an
unchanged line is worth nothing. A door reporting its own count
against a zero total, which is the case the original logic was written
for, still works. Negative and implausibly large values are now
ignored rather than applied.
Co-Authored-By: Claude Opus 5 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net