https://gitlab.synchro.net/main/sbbs/-/commit/6708bf23c477b7b9f02dae61
Modified Files:
src/sbbs3/chksmb.c
Log Message:
chksmb: report data blocks whose reference count doesn't match
The data block check only counted free records in the allocation file
and flagged active messages whose blocks were marked free. A block used
by two messages but allocated once (cross-linked), or allocated with no
message using it (leaked), went unreported; a cross-link surfaced only
when the overwritten text happened to break a translation header.
chksmb now counts, for every data block, the headers still allocated
(deleted or not) that use it, and compares that with the block's
reference count in the allocation file. Mismatches are reported per
block and as "Data Block Reference Mismatches" in the summary, and the
base is reported as having errors.
Co-Authored-By: Claude Opus 5.5 <
noreply@anthropic.com>
---
■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net