• src/xpdev/ini_file.c

    From Deuc¿@VERT to Git commit to main/sbbs/master on Fri Mar 13 17:57:07 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/aef6cf1bab6a2a46ff1d5bfe
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    For an empty file, return an empty list.

    Returning NULL causes SyncTERM to report a failure decrypting the
    list.

    Fixes ticket 225
    Actually found due to PhotonTERM triggering it for me when I tested
    that.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Fri Mar 13 18:39:29 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/a99386a10c2feb321a22af70
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Also fix the !CRYPTLIB version

    This is actually where PhotonTERM is broken.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Sun Mar 15 16:01:53 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/1aa979f77807a9dc45affa36
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Fix inverted include_dupes check in ini_get_section_list()

    The list-based variant used (include_dupes && ...) to skip duplicates,
    which is inverted Ä it filters when it should include and vice versa.
    The file-based variant ini_read_section_list() correctly uses
    (!include_dupes && ...). Bug introduced in 7046272ee4 when the
    include_dupes parameter was added.

    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

    ---
    þ 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 Fri Apr 10 21:07:44 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/ce7715aba2e1b2ab4a68501f
    Modified Files:
    src/xpdev/ini_file.c
    Log Message:
    Fix possible NULL deref in iniHasInclude() when called with a nullptr

    (e.g. by echocfg when passed a directory on the command-line)

    ---
    þ 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