• src/sbbs3/str.cpp

    From Rob Swindell@VERT to Git commit to main/sbbs/master on Sun Apr 4 15:13:58 2021
    https://gitlab.synchro.net/main/sbbs/-/commit/1e1f08debc3aa9ed420cad99
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    strcpy -> SAFECOPY

    CID 33568

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sun Apr 4 15:13:58 2021
    https://gitlab.synchro.net/main/sbbs/-/commit/03760e03ace9ac78c807b199
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    read_ar is no longer a ptr, it's an array

    CID 319112

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sun Apr 4 15:27:36 2021
    https://gitlab.synchro.net/main/sbbs/-/commit/79e20c8d13e5c3ae1b735e05
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    This strcpy() needs to remain as was (caught be GCC).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wed Mar 2 13:25:51 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/cd20a33c68e84dedb13b1cf5
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Fix CID 33261 Argument cannot be negative

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thu Mar 3 16:45:56 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/431a70b1c6193e4d1df4f39b
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Fix CID 33227: Argument cannot be negative

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thu Mar 3 16:45:56 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/7aa7df50b45902c7902e91a6
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    More correct error message

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sat Mar 5 11:48:13 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/bfac7e38c8f41607afa0d16f
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Fix CID 174323: Unintended sign extension

    At least, I think this fixes it.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Fri Mar 25 01:16:50 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/1f0d53ca86a9bbdac81dd234
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Remove the hard-coded ".msg" extension from data/subs/*.msg display file

    And data/dirs/*.msg display file. Now you can have any supported menu file in this location if you wish.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Tue May 31 18:28:27 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/402f4377f3bb0c9108c22d54
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Close the open user.dat upon (unlikely/impossible) malloc error

    ---
    þ 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 Tue Dec 24 13:33:38 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/300d0c127a1f2f44f684874b
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Close file description in error condition

    Fix CID 516462

    ---
    þ 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 Tue Feb 11 18:25:08 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/906b193a2109821b66062d43
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Fix case-sensitivity issue in charset element of path in last commit

    fexistcase() only corrects the case of the filename, not the directories in
    the path. So we'll just use the lowercase version of the charset string, always.

    Also, return false upon failure of any call to replace_text(), not just the last one.

    ---
    þ 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 Mon Mar 31 18:52:59 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/7be352ac1ab689194d27bec1
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Support optional ctrl/<terminal-protocol>/text.ini file

    If the sysop wants custom text.dat strings to be unique per terminal
    connection protocol (e.g. telnet, rlogin, ssh, raw), this is how that
    can be achieved (e.g. ctrl/rlogin/text.ini can be used to override text.dat strings only for RLogin connections).

    To at least partially address issue #897

    ---
    þ 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 Thu Apr 10 23:39:24 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/a81e64575c9f30c0a3af0fd5
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Rework part of the "good password" checking algorithm

    Require that a good password contain a sequence of unique characters
    (not repeating, incrementing, or decrementing in ASCII code value) of at least half the configured minimum password length. By default, the minimum password length is 4 chars, so this means a sequence of at least 2 unique characters
    is required. If the minimum password length is increased by the sysop, so is the minimum required unique sequence length. The "PasswordInvalid" text.dat string is printed when passwords are rejected by this criteria.

    Previously, the following would be rejected by this portion of the algo,
    this logic has been replaced by the above:
    - all chars the same (would print the "PasswordInvalid" text.dat string)
    - first 4 chars are incrementing ("PasswordObvious" string printed)
    - first 4 chars are decrementing ("PasswordObvious" string printed)

    but now, a password that starts with "1234" or "abcd" is fine so long as it's longer than that and contains the minimum unique sequence length. This will prevent SBBS from rejecting high quality (e.g. randomly generated or crypto-hashed) passwords that just happen to begin with an incrementing sequence of 4 digits or alpha-characters.

    ---
    þ 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 Tue May 20 20:29:15 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/6e91b37768cb527efc9cd9d7
    Modified Files:
    src/sbbs3/str.cpp
    Log Message:
    Handle getuserdat() failure in sbbs_t::change_user()

    Address Coverity CID 551209

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