• src/xpdev/ini_file.c

    From Rob Swindell@VERT to Git commit to main/sbbs/master on Mon May 16 12:10:06 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/8c95808d718877b480fd1cee
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Borland didn't include inet_ntop() or inet_pton()

    Fixes CI and nightly build.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Mon May 16 12:47:58 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/bcbfff2d860b4550c02c2390
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Apparently MinGW32 doesn't have inet_ntop() or inet_pton() either

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Fri Jun 24 23:17:56 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/ee057c0595f56b2f777b1055
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Fix issue with iniSet* functions and root section

    Bug introduced in commit 0d9111a5: iniSet* functions would write key/values to the end of the list when the root section (NULL) was specified, rather than the beginning of the list.
    The root section always starts at the beginning of the list/file, so I'm not sure why section_start() was doing anything other than returning 0 for the root section. It's possible this now breaks iniSortSections() in some way, so that should be retested with a file with a root section and named sections.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wed Jul 13 23:34:44 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/8a1b3cb7609ebe52a704282b
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Don't allow strings that contain 0xFF (truncate at this char value)

    1. It's a non-printable char
    2. It's the Telnet IAC byte value
    3. CNF files use this as an "uninitialized value" indicator

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Fri Dec 30 16:20:50 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/4f3f3f67d73e521d8a6f5d8c
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Borland C/C++ doesn't have strto[u]ll()

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on ChromeOS)@VERT to Git commit to main/sbbs/master on Sat Feb 11 16:17:47 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/242ba34e73d5f510f41f3406
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    When writing hex integer values, use "0" rather than "0x0"

    upgrade_to_v320.js sets these values to just "0", so let's not thrash on the format.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on ChromeOS)@VERT to Git commit to main/sbbs/master on Sat Feb 11 17:27:03 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/b1953726fffaae205f44e274
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    iniSetHexInt[64] write values < 10 in decimal notation

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (in GitKraken)@VERT to Git commit to main/sbbs/master on Sun Feb 19 13:42:55 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/c0f77e5c527d3eea5ac31b35
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Resolve Borland 'Unreachable code' warning

    Warning W8066 .\ini_file.c 416: Unreachable code in function iniRemoveKey

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on ChromeOS)@VERT to Git commit to main/sbbs/master on Sat Mar 25 18:46:50 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/a6c20de1a5aaa810405a4a25
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    iniSetDuration() just now sets key values to "0" (not "0S") when zero

    Remove trailing white-space (e.g. after the equals or colon following the key) in iniRemoveValue().

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on ChromeOS)@VERT to Git commit to main/sbbs/master on Sun Apr 30 11:38:05 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/b9e5efacac9390d5af47c56e
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Fix memory leak in iniFreeParsedSections(), wasn't freeing the list member

    The 'list' member was allocated by iniParseSections() but never freed.

    Caught be Nelgin's recent valgrind report, e.g.:

    ==2725235== 56 bytes in 1 blocks are indirectly lost in loss record 82 of 191 ==2725235== at 0x484DCD3: realloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==2725235== by 0x4FA351C: strListAnnex (in /home/bbs/sbbs/repo/src/sbbs3/gcc.linux.x64.lib.release/libsbbs.so)
    ==2725235== by 0x4F9ADDE: iniParseSections (in /home/bbs/sbbs/repo/src/sbbs3/gcc.linux.x64.lib.release/libsbbs.so)
    ==2725235== by 0x49F1F0A: read_chat_cfg (in /home/bbs/sbbs/repo/src/sbbs3/gcc.linux.x64.lib.release/libsbbs.so)
    ==2725235== by 0x49E8BF1: load_cfg (in /home/bbs/sbbs/repo/src/sbbs3/gcc.linux.x64.lib.release/libsbbs.so)
    ==2725235== by 0x5C14C75: ftp_server (in /home/bbs/sbbs/repo/src/sbbs3/gcc.linux.x64.lib.release/libftpsrvr.so)
    ==2725235== by 0x5D5AB42: start_thread (pthread_create.c:442)
    ==2725235== by 0x5DEBBB3: clone (clone.S:100)

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wed Feb 7 10:17:48 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/d2f5d55133310a6c03b91057
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    No strtoull() for Borland

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wed Feb 7 10:21:35 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/cea188d03b824bafaf7b4622
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Fix reversed logic of previous commit.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tue Feb 20 15:56:44 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/4fd02c4efa228d777db94785
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Partial fix of iniGetSString() and iniReadSString()

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tue Feb 20 16:06:14 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/b29d43752c47abff892b5083
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Finish fixing ini*SString().

    The first fix was to copy the right value, the second fix was to
    ensure zero-length strings are terminated.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tue Feb 20 16:20:01 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/ddcb536755e002a0985a8f48
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Fix (incorrect) warning from gcc12

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wed Feb 21 05:43:42 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/fbd2315bd2647948b18e26ae
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    And now Coverity gets into the false warning game.

    Fix incorrect Coverity issue that speculates this may return fval.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wed Feb 21 06:30:32 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/fd41db08baa65e68618163f9
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Cast away warning...

    This is why I returned ret. :D

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wed Feb 21 09:59:19 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/2995f851439e440f60587b87
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Bugfix and more paranoia in ini*SString() functions.

    Bugfis: Be sure to terminate value if returning deflt.
    Paranoia: Terminate value if iniGetString() returns NULL

    I think the only way to trigger the paranoia is to pass NULL as the
    default when reading a key that's not present.

    ---
    ■ 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 Mon Mar 4 18:23:44 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/92088f9983ef38fc376208c2
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    For name ints/enums, allow the value to be longer than the name

    This allows me to shorten "Informational" to "Info" and "Debugging" to "Debug" and be backward compatible with existing .ini files. I think "Info" and
    "Debug" are universally known and take up less space (e.g. in SCFG).

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