• src/sbbs3/userdat.c userdat.h

    From Rob Swindell (in GitKraken)@VERT to Git commit to main/sbbs/master on Sun Feb 19 15:26:00 2023
    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 Wed Aug 9 18:28:43 2023
    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@VERT to Git commit to sbbs/master on Sat Nov 21 15:44:43 2020
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/00c56b2ae95be5f939ebad68
    Modified Files:
    src/sbbs3/userdat.c userdat.h
    Log Message:
    Use a more-liberal username matching algorithm

    - Ignore all non-trailing non-alphanumeric characters when comparing a string against a user's name. Previously, spaces and dots and underscores were mostly-treated as equivalent and white-space was sometimes compressed for comparison purposes (if the user name contained both spaces and dots). This updated algo helps to insure that deliberate or accidental name collisions cannot be created but also aids usability (e.g. users can make some minor cosmetic adjustments to their user name and still be considered the "same user" for most comparison purposes).
    - Terminate the comparison string at an '@' (ignore everything after). This resolves the FAQ of why users can't login with "username@domain" and aides some other username/address matching algorithms (e.g. in the mailserver). '@'s are illegal characters for usernames already.

    Expose the new algorithm via new function matchusername().
    Use the algorithm in matchuser() and lookup_user().

    Unrelated: don't lower-case the 'localuser' part of email addresses in usermailaddr() - cosmetic only.

    ---
    þ 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 Sun Dec 1 15:58:21 2024
    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