From f8686087a07e4aa2357315ec1793e825b92d3dda Mon Sep 17 00:00:00 2001 From: chrfranke <chrfranke@4ea69e1a-61f1-4043-bf83-b5c94c648137> Date: Sun, 31 Oct 2021 18:34:22 +0000 Subject: [PATCH] os_win32.cpp: Decode Windows 10, 11 and Server 2022 21H2 build numbers. git-svn-id: https://svn.code.sf.net/p/smartmontools/code/trunk@5239 4ea69e1a-61f1-4043-bf83-b5c94c648137 --- smartmontools/ChangeLog | 5 +++++ smartmontools/os_win32.cpp | 15 +++++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/smartmontools/ChangeLog b/smartmontools/ChangeLog index c2f6ed9ba..a6724a953 100644 --- a/smartmontools/ChangeLog +++ b/smartmontools/ChangeLog @@ -1,5 +1,10 @@ $Id$ +2021-10-31 Christian Franke <franke@computer.org> + + os_win32.cpp: Decode Windows 10, 11 and Server 2022 21H2 build + numbers. + 2021-10-23 Christian Franke <franke@computer.org> Don't pass possible command escapes to the 'mail' command (#1535). diff --git a/smartmontools/os_win32.cpp b/smartmontools/os_win32.cpp index 1ebc78c9d..8506347c1 100644 --- a/smartmontools/os_win32.cpp +++ b/smartmontools/os_win32.cpp @@ -4007,22 +4007,29 @@ std::string win_smart_interface::get_os_version_str() case 19041: w = "w10-2004"; break; case 19042: w = "w10-20H2"; break; case 19043: w = "w10-21H1"; break; - default: w = "w10"; + case 19044: w = "w10-21H2"; break; + case 22000: w = "w11-21H2"; break; + default: w = (vi.dwBuildNumber < 22000 + ? "w10" + : "w11"); build = vi.dwBuildNumber; break; } break; case 0xa0<<1 | 1: switch (vi.dwBuildNumber) { - case 14393: w = "2016"; break; + case 14393: w = "2016-1607"; break; case 16299: w = "2016-1709"; break; case 17134: w = "2016-1803"; break; - case 17763: w = "2019"; break; + case 17763: w = "2019-1809"; break; case 18362: w = "2019-1903"; break; case 18363: w = "2019-1909"; break; case 19041: w = "2019-2004"; break; case 19042: w = "2019-20H2"; break; + case 20348: w = "2022-21H2"; break; default: w = (vi.dwBuildNumber < 17763 ? "2016" - : "2019"); + : vi.dwBuildNumber < 20348 + ? "2019" + : "2022"); build = vi.dwBuildNumber; break; } break; } -- GitLab