• src/xpdev/genwrap.c

    From Deuc¿@VERT to Git commit to main/sbbs/master on Wed Dec 18 14:52:16 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/746ccfd57d43877a95aaded3
    Modified Files:
    src/xpdev/genwrap.c
    Log Message:
    Attempt to fix musl builds

    The non-standard strerror_r() is glibc specific, musl doesn't do
    that. It *appears* that __USE_GNU implies glibc.

    ---
    þ 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 Dec 19 18:15:35 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/8084997ba19ed4b9c1773003
    Modified Files:
    src/xpdev/genwrap.c
    Log Message:
    Use RtlGetVersion to get/report Windows 11 (and build number) correctly

    This is fun Microsoft. If Windows 11 is actually Windows 10.22000+, what will Windows 12 be? No one can guess.

    ---
    þ 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 Dec 19 18:30:40 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/d58cc13fde38ff3a965dc838
    Modified Files:
    src/xpdev/genwrap.c
    Log Message:
    Move the #pragma warning to just before the call to GetVersionEx()

    Needed for building sbbsexec.dll

    I guess #pramga warning only affects the following source line.

    Apparently we're disabling this warning effectively via other means in all other MSVC projects.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thu Dec 19 19:00:53 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/0c385ef21ba3488214dfa917
    Modified Files:
    src/xpdev/genwrap.c
    Log Message:
    Only use RtlGetVersion for Windows 10/11

    This function appears to truncate the service pack info for Windows 7 (6.1): "Windows NT Version 6.1 (Build 7601) Service Pack 1 x86" became:
    "Windows NT Version 6.1 (Build 7601) S x86"

    Don't close the handle to ntdll.dll (hey, that's stupid filename, Microsoft!) since the module could be unloaded from the address space and then a call to the captured procedure address could/would crash. This handle will be closed when the process terminates anyway.

    While we're here, correct the Windows 6.1 -> 7.0 numbering. That looks better: "Windows NT Version 7.0 (Build 7601) Service Pack 1 x86"

    Something should probably be done for Windows 6.2 -> 8.0 numbering too, but I don't have a VM handy. Is anyone actually still running Windows 8.x?

    ---
    þ 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 03:52:05 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/3046bd7ae4c3a503d9c5762d
    Modified Files:
    src/xpdev/genwrap.c
    Log Message:
    Simplify the Windows version detection a bit, don't use NetWkstaGetInfo()

    I started seeing Windows 10.0 reported (without a build number) again on Windows 11 (after a regular update), so changed the logic to always try/use RtlGetVersion() except for Windows 7 where I saw it truncated the Service
    Pack details.

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