When we build and ship FireDaemon Fusion, we try to ensure it contains the most recent version of OpenSSL. We thought it would be useful to make our OpenSSL Binary Distribution available for download for others to use in their own software projects.
OpenSSL keeps an informal list of available 3rd-party maintained binaries. Here's our summary:
|OpenSSL for Microsoft Windows||Pre-compiled x86 (32-bit) and x64 (64-bit) 1.1.1 libraries with dependency on the Visual Studio 2019 runtime (binary-compatible with Visual Studio 2015 and 2017). Primarily built for FireDaemon Fusion, but may be used for any Windows application. The OpenSSL DLL and EXE files are digitally code-signed 'FireDaemon Technologies Limited'.||Download OpenSSL 1.1.1h|
Whenever we release an updated version of FireDaemon Fusion or OpenSSL gets updated with security fixes, we will ship FireDaemon Fusion with the latest version of OpenSSL_1_1_1-stable available. The currently deployed OpenSSL library is version 1.1.1h-dev at commit. We are currently shipping OpenSSL_1_1_1g-11-g1632a6854c as reported by:
git describe --always --tag --long --first-parent --dirty
The actual command line to build OpenSSL is as follows (where %toolset% is VC-WIN32 and VC-WIN64A respectively):
perl ..\Configure %toolset% no-asm no-ssl3 no-zlib no-comp no-ui --api=1.1.0 --prefix="%openssl-dst%" --openssldir=ssl -DOPENSSL_NO_DEPRECATED
For reference, the whole build script creating the packages is attached to this article.
OpenSSL, as shipped with FireDaemon Fusion, depends on the Microsoft Visual Studio 2019 runtime. The binaries were built with the msvc-14.24 toolset.
The external dependency creates much smaller modules and .pdb files and integrates nicely with FireDaemon Fusion. We believe that this shouldn't be problematic since the MSVC 14.2 runtime is binary compatible with applications built using the MSVC 14.0 or 14.1 runtimes, and once installed the Universal C Runtime (CRT) is subject to automatic Windows updates.