• 3rdp/build/cl-no-stdc-flexarray.patch3rdp/build/GNUmakefile

    From Deucе@VERT to Git commit to main/sbbs/master on Sun Aug 10 14:20:01 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/c643f673c3efd05c2898945b
    Added Files:
    3rdp/build/cl-no-stdc-flexarray.patch
    Modified Files:
    3rdp/build/GNUmakefile
    Log Message:
    Fix SF ticket 205

    When using GCC >= 15, Cryptlib attempts to use flex arrays.
    However, the implementation seen in CachyOS at least, sizeof()
    a struct ending with a flex array doesn't include padding before
    the first element of the array.

    Because of this, Cryptlib will write to memory after the allocation.
    This gets caught by the -fhardened fortify source memcpy()
    implementation, so the process crashes during the cryptlib self-test.

    To "fix" this, I'm just disabling the use of flex arrays, and falling
    back to inserting an extra byte at the end, which uses the "classic"
    method to do this, but make unaligned access much more likely on
    LLP64/LP64 systems (ie: most current systems as of 2025).

    Luckily, it's also pretty normal to natively support unaligned access
    these days, so this is better than the alternative and easier than
    fixing it right.

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