-
-
Notifications
You must be signed in to change notification settings - Fork 26
Description
Background:
Our platform policy makes no reference to old versions of Windows. The primary Windows platforms are listed as "VC-WIN64A" and "mingw64" both on Windows 10. There are no community supported Windows platforms. There are a number of Windows platforms in the "unadopted" list - but none of them specify a specific Windows version that they apply to.
In the code we define the macro _WIN32_WINNT
to the value 0x0501:
According to the Microsoft documentation this corresponds to Windows XP:
https://docs.microsoft.com/en-us/cpp/porting/modifying-winver-and-win32-winnt?view=msvc-170
This means that (by default) we are unable to use functions introduced later than that in the code. We do have some conditionally compiled code which checks the value of _WIN32_WINNT
and, if it is sufficient high, uses more recent functions. It is possible to override the default value at Configure time (e.g. perl Configure -D_WIN32_WINNT=...
) - but this possibility does not seem to be documented and it seems unlikely that many people do this.
PR openssl/openssl#18270 proposes updating the default value of _WIN32_WINNT
to 0x0600 which would exclude Windows XP and Windows Server 2003 users. Microsoft ended support for Windows XP in April 2014 and for Windows Server 2003 in July 2015.
According to this tweet, 5.6% of Windows curl users say they use it on Windows XP:
https://twitter.com/bagder/status/1534465987269083136
Proposal:
This issue is proposing the following vote text in order that PR openssl/openssl#18270 may proceed:
"We will no longer support Windows XP or Windows Server 2003 from OpenSSL 3.1"
(Note: I am not actually calling this vote yet - just gathering feedback).