• src/sbbs3/getstats.c

    From Rob Swindell@VERT to Git commit to Main/master on Mon Nov 23 14:03:07 2020
    https://gitlab.synchro.net/main/sbbs/-/commit/1d8e2cc427c4da99e44fd861
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Fix the sbbs.h dependency unintentionally left after c_dep_refactor

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wed Mar 23 21:07:26 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/da2177b75997fcb7b00b0bf7
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Add TODO comment about dsts.dab not tracking > 4GB up/downloads

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Tue Mar 29 20:18:45 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/f609ac6ce9e3cbe09dd500fd
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Use fnopen() in fopen_dstats() to get open auto-retries

    iniFileOpen() does not perform retries and there can be contention for the ctrl/dsts.ini file.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Sat Oct 21 19:47:30 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/dc4d9eb9f723cdf5cbdd1915
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Don't log an error if there's no dsts.ini or dsts.dab file

    In a fresh install, neither of these files would exist, and that's normal,
    so getstats() should just return true in that case (with the stats struct zeroed-out).

    Fixes error during login to a new install reported by Zoltán Gábor on Facebook.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Wed Sep 18 14:32:21 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/5518bddb66f26e915b44d911
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Fix return value of fclose_dstats - not currently checked anywhere

    fclose() returns 0 on success.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Wed Sep 18 14:32:21 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/49027a4c86062a4fd6d2588b
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Fix comment header for putstats() - copy/pasted from getstats()

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thu Sep 19 23:10:01 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/289577c6948e58ae0ee49fbc
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    In debug builds only, backup dsts.ini file when opening for write

    Hopefully help to determine cause of issue #791 (when is the apparent corruption of this file occurring?)

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thu Sep 19 23:10:01 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/c8cfd95ba7e06f45c62eb03e
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Non-functional changes

    iniWriteFile() returns bool, not int.

    Removed inapplicable function comment.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sat Sep 21 13:08:41 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/f4d4eaad66b52f5cf3309c44
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    fread_dstats() will now return false upon file read failure

    The file position should always be at the EOF after reading the contents.

    This should help detect (log errors) upon potential cause of issue #791.

    - use a little easier to read .ini style
    - add a NULL argument check to local function write_dstats()
    return false rather than deref the NULL pointer

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sat Sep 21 13:08:41 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/cd049a4e9354a5505d5455ff
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Don't update/rewrite dsts.ini when iniReadFile returns NULL

    Even if the empty, iniReadFile() should return an empty list (not NULL),
    NULL indicates a file read (or unlikely malloc failure) - so don't write back what we read and return false (result) instead.

    Part of likely work-around of issue #791: it's better to not increment stats upon a file read error than to reset them all to zero.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Sun Nov 3 03:55:14 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/aa1b62266da07a18b3850b0c
    Modified Files:
    src/sbbs3/getstats.c
    Log Message:
    Don't backup the dsts.ini file when saving changes, not needed any more

    Root-caused this problem to read() failures which are now caught and logged rather than zeroing out the statistics fields.

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