• src/sbbs3/logfile.cpp main.cpp

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Wed May 6 19:41:53 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/7f4942380db1ab3a679d0c98
    Modified Files:
    src/sbbs3/logfile.cpp main.cpp
    Log Message:
    main,logfile: suppress nodefile_mutex inter-procedural FPs (CIDs 515594, 515595, 515596, 543172)

    Same root cause as the getnode.cpp CIDs already mitigated by the
    nodefile_mutex refactoring (mutex is now confined entirely to getnodedat/putnodedat, both of which lock+unlock atomically). The
    flagged sites in daily_maint, logoffstats, sbbs_t::errormsg, and the
    sbbs_t destructor never touch nodefile_mutex directly — Coverity is propagating phantom lock state through the helper-function call chain.

    CID 515594: smb_open_sub SLEEP in daily_maint
    CID 515595: errormsg LOCK in logoffstats
    CID 515596: errormsg LOCK at logfile.cpp function end
    CID 543172: js_cleanup SLEEP in sbbs_t destructor

    Annotate each site with a SUPPRESS pointing at the invariant.

    Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

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