• src/sbbs3/userdat.c userdat.h

    From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sunday, December 01, 2024 15:58:21
    https://gitlab.synchro.net/main/sbbs/-/commit/44710259f11cc8837d1735f5
    Modified Files:
    src/sbbs3/userdat.c userdat.h
    Log Message:
    Unify the int return values of userdat.c functions

    These functions now return a common set of non-zero error values (where appropriate), defined in userdat.h

    Don't return errno.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Tuesday, April 13, 2021 22:57:34
    https://gitlab.synchro.net/main/sbbs/-/commit/7db3b623bd115c096f4a261d
    Modified Files:
    src/sbbs3/userdat.c userdat.h
    Log Message:
    Refactor putuserrec()

    This started with a Coverity issue (CID 33230) which got me looking at this function and wondering: why is str2 being NUL-terminated here? Why is the length of str2 to be calculated on successive lines? What is with this (long)((long)((long)((long)) typecast?

    This was some of the oldest code in Synchronet (along with a lot of the other functions in this file). I tried to keep as much intact as possible while still improving the logic and readability.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (in GitKraken)@VERT to Git commit to main/sbbs/master on Sunday, February 19, 2023 15:26:00
    https://gitlab.synchro.net/main/sbbs/-/commit/dd38606e246a2a4e2179d407
    Modified Files:
    src/sbbs3/userdat.c userdat.h
    Log Message:
    find_login_id() will now return 0 if login ID is an invalid user number

    If login by number is supported and a client attempts login with an invalid usernumber, don't log an error, e.g.
    mail 3264 SMTPS [46.148.x.x] !ERROR -2 getting data on user (6123)

    But rather treat it as an invalid login attempt.

    Also change lastuser() and total_users() to return int instead of uint. 2 billion users should be plenty.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows)@VERT to Git commit to main/sbbs/master on Wednesday, August 09, 2023 18:28:43
    https://gitlab.synchro.net/main/sbbs/-/commit/efdbc232d655709c4b3551dc
    Modified Files:
    src/sbbs3/userdat.c userdat.h
    Log Message:
    Add some helper functions for modifying node records in node.dab, atomically

    These should probably be moved (along with other node functions in this file) to nodedat.* some day.

    ---
    þ 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 Monday, November 03, 2025 20:19:41
    https://gitlab.synchro.net/main/sbbs/-/commit/cffd380eed5827ccf109521d
    Modified Files:
    src/sbbs3/userdat.c userdat.h
    Log Message:
    Add xtrn_is_running() function

    Helpful for easy determination if the specified external program is running (for a node) or not.

    ---
    þ 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 Wednesday, December 17, 2025 21:37:22
    https://gitlab.synchro.net/main/sbbs/-/commit/48922a15c6cb43b450835340
    Modified Files:
    src/sbbs3/userdat.c userdat.h
    Log Message:
    logoutuserdat() uses new function fputuserdat() to reduce open/lock/r/w ops

    Reduces from 4 to 1 the open/lock/read/write/close operatons of the userbase (user.tab) file upon user log-off.

    There's more places in sbbs where we do a lot of putuser* calls that could be (now) optimized in a similar fashion, but logoutuserdat() is called often (especially by the web, ftp, mail and services servers), so this one was obvious place to reduce contention on the userbase file.

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