• src/sbbs3/userdat.c

    From rswindell@VERT to CVS commit on Wednesday, April 04, 2018 19:13:00
    src/sbbs3 userdat.c 1.195 1.196
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv26476

    Modified Files:
    userdat.c
    Log Message:
    Don't log "(null)" for the user name in filter_ip() when the user name is
    not known/available (e.g. certain types of SSH login failures).



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Sunday, June 10, 2018 08:56:00
    src/sbbs3 userdat.c 1.196 1.197
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv1823

    Modified Files:
    userdat.c
    Log Message:
    putmsgptrs() will now return FALSE if iniWriteFile() returns FALSE
    (out of disk space?).


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Sunday, July 08, 2018 03:51:00
    src/sbbs3 userdat.c 1.197 1.198
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv23404

    Modified Files:
    userdat.c
    Log Message:
    smb_getmsgidx_by_time() can now return positive integers on success.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Tuesday, July 24, 2018 05:36:00
    src/sbbs3 userdat.c 1.199 1.200
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv8419

    Modified Files:
    userdat.c
    Log Message:
    Speed-up getmsgptrs() (reads users/data/*.subs files) by only parsing
    each section (sub-code) once. Should cut the search/parse algorithm by 66% (since there's 3 keys/values we're searching for, per sub).



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Tuesday, July 24, 2018 07:03:00
    src/sbbs3 userdat.c 1.200 1.201
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv28882

    Modified Files:
    userdat.c
    Log Message:
    Fix major faux pas in previous commit - whoops.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Tuesday, July 24, 2018 08:39:00
    src/sbbs3 userdat.c 1.201 1.202
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv6954

    Modified Files:
    userdat.c
    Log Message:
    Small optimization here: don't read the last msg idx twice.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Thursday, July 26, 2018 06:21:00
    src/sbbs3 userdat.c 1.203 1.204
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv9468

    Modified Files:
    userdat.c
    Log Message:
    getuserdat() - if this function fails to open the user.dat file (e.g. it does not exist), set the user->number to 0 before returning as many callers of this function do not check the return value, just the value of user->number after
    it returns (ugh). This problem was discovered when running a fresh install, typing "1" at the Login prompt and immediately getting a "Time's Up" message and a disconnect - only happens when there's no data/user.dat file.

    getnodedat() - don't try to unlock the node.dab file unless the read() fails. When using the MSVC2017 CRTL, an unlock() of a region that was not previously locked is a blocking call causing major slowness in the MSVC2017 build.

    putmsgptrs() - cleans up obsolete sections in the data/user/*.subs files now. So if you go from say 10,000 sub-boards to 2,000, it won't have to load and search through the extra 8,000 invalid subs (once the file is re-written upon log-off). This requires an updated xpdev build (for iniAppendSectionWithKeys)

    fixmsgptrs() - if the msgbase index can't be opened or the last index record cannot be read (e.g. there isn't one), insure the msg-scan pointer value is
    set to 0 (not ~0).


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, October 06, 2018 22:39:00
    src/sbbs3 userdat.c 1.205 1.206
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv15050

    Modified Files:
    userdat.c
    Log Message:
    Sanitize the 'cfg' value read from *.subs (ignore garbage/unused bits).



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, November 09, 2018 03:11:00
    src/sbbs3 userdat.c 1.208 1.209
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv17961

    Modified Files:
    userdat.c
    Log Message:
    Use a .ini style that matches load/userprops.js in user_set_property()


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, November 09, 2018 03:18:00
    src/sbbs3 userdat.c 1.209 1.210
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv18743

    Modified Files:
    userdat.c
    Log Message:
    Use the same .ini style settings for user_set_time_property().


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, August 12, 2019 06:22:33
    src/sbbs3 userdat.c 1.214 1.215
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv23153

    Modified Files:
    userdat.c
    Log Message:
    delfiles() now takes a 3rd argument: keep, which is a number of files to retain (not delete) from the end of the sorted list of files (normally, 0).


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, August 14, 2019 00:16:48
    src/sbbs3 userdat.c 1.215 1.216
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv18882

    Modified Files:
    userdat.c
    Log Message:
    Allow user.dat fields: DLB (downloaded-bytes), ULB (uploaded-bytes), and CDT (credits) to use the full 4 gibibyte range of a 32-bit unsigned integer: max-out at 4,294,967,295 instead of 2,147,483,647.
    Since these values are stored as 10 characters, we could theoretically extend the range to 9,999,999,999 (credits/bytes) without changing the user.dat format but is a bigger change (moving to 64-bit integers everywhere these values are read or adjusted).


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, September 02, 2019 01:29:21
    src/sbbs3 userdat.c 1.219 1.220
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv23604

    Modified Files:
    userdat.c
    Log Message:
    putnodedat() needs to close the file upon parameter validation error if the closeit parameter is TRUE



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Sunday, August 16, 2020 00:47:36
    src/sbbs3 userdat.c 1.229 1.230
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv27150

    Modified Files:
    userdat.c
    Log Message:
    Recognize the "quiet" directory setting (no download notifications) for
    the JS User.downloaded_file() method (used by ecWeb's file download stuff). Thanks Coz.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob@VERT to Git commit to sbbs/master on Wednesday, October 21, 2020 03:24:09
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/1e9d5c2cc05ee318ab629bce
    Modified Files:
    src/sbbs3/userdat.c
    Log Message:
    Treat every login failure with no password available as unique

    When loginFailure() is called with NULL for the password argument, that indicates there was no password available (e.g. an aborted login attempt) - treat each of these as a unique (not duplicate) failed-login attempt. This'll trigger ban/filter thresholds sooner for clients that hammer servers and disconnect mid-login.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Monday, November 23, 2020 00:33:59
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/5168429f4fae5bfda1fa9976
    Modified Files:
    src/sbbs3/userdat.c
    Log Message:
    My first opportunity to use IS_ALPHANUMERIC ()instead of isalnum()

    and I blew it. Here's to learning new tricks.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to Main/master on Tuesday, November 24, 2020 06:12:10
    https://gitlab.synchro.net/main/sbbs/-/commit/0f76860d6b42af92589f6fa2
    Modified Files:
    src/sbbs3/userdat.c
    Log Message:
    Include the [F] (forced chat) flag for help in debugging forced-chat.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wednesday, December 02, 2020 08:09:17
    https://gitlab.synchro.net/main/sbbs/-/commit/3eaf57fe30820f5b0f232328
    Modified Files:
    src/sbbs3/userdat.c
    Log Message:
    C version of chk_ar() now supports the DOS keyword...

    The "DOS" ARS keyword was always evaluating to false, on all platforms, for the C version of chk_ar(), which is used for populating JS *_area objects and for the User.compare_ars() implementation.

    Unfortunately, the startup (sbbs.ini) "NO_DOS" option is not recognized here (yet), so it'll report true (e.g. for Win64 or Linux systems with DOSemu) even if/when the NO_DOS option is set.

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