AFSIM 2.9 - 25 Feb 2022¶
Visit the AFSIM 2.9 Release Page on DI2E (Access Controlled) for more information and resources related to this release.
Release Dates¶
AFSIM 2.9.0 - 25 Feb 2022
Security Updates¶
Corrected several buffer and integer overflow issues identified by Fortify static code analysis as being high severity.
Corrected several type mismatch (signed to unsigned) issues throughout the codebase identified by Fortify static code analysis as being high severity, fully resolving this category of issues.
- Addressed multiple security vulnerabilities in the following third party libraries: (AFSIM-1817)
Curl: CVE-2020-8285, CVE-2020-8286, CVE-2021-22876, CVE-2021-22890, CVE-2020-8284
Libtiff: CVE-2020-35524, CVE-2020-35523, CVE-2020-35522, CVE-2020-35521
Jpeg: CVE-2020-14152, CVE-2020-14153
FFmpeg: CVE-2019-15942, CVE-2020-14212, Multiple “Denial of Service” and “Buffer Overflow” CVEs (AFSIM-1404)
Qt: CVE-2020-17507
Corrected a mismatched free memory error in the weapon_tools ATG_LAR_AND_LC_GENERATOR.
Corrected memory leaks in the WSF_BALLISTIC_MISSILE_LAUNCH_COMPUTER that occur when show_graphics is enabled.
Corrected memory leaks in the WSF_QUANTUM_TASKER_PROCESSOR when an evaluator, generator, or allocator is re-defined in a derived processor. (AFSIM-1786)
Corrected a memory leak in the kinematic trajectory model of WSF_TSPI_MOVER.
Corrected a potential memory leak that could occur in certain conditions when using a route_network.
Development Updates¶
The
myst-parser
Python package is a new requirement for generating documentation. The Python package requirements have been combined into a top-levelrequirements.txt
file for convenient and consistent installation. This file may be used with a command such as:pip install --user --requirement requirements.txt
Updated the following third party libraries to address security vulnerabilities and access new features: SDL from 2.0.14 to 2.0.16, Curl from 7.71.1 to 7.79.1, Libtiff from 4.1.0 to 4.3.0, JPEG from 9b to 9d, FFMPEG from 4.2.1 to 4.2.4, GDAL from 3.0.4 to 3.3.2, Qt from 5.12.9 to 5.12.11, and Proj from 7.0.0 to 8.1.1. See Security Updates for more information. (AFSIM-1817)
Changed default value for
PROMOTE_HARDWARE_EXCEPTIONS
CMake flag to true. Plugins must be compiled with the same value as the host application was compiled with. (AFSIM-1640, AFSIM-1616)Modified CMake configuration, for versions 3.13 and higher, so that Visual Studio user files will not be automatically overwritten. The macro
write_vcproj_user
was renamed tocreate_vs_debug_env
. (AFSIM-2387)Add new type-safe coordinate vector classes for each of the major coordinate frames. These new classes are available in the
ut::coords
namespace. They currently have a deprecated implicit conversion toUtVec3<T>
, the legacy non-coordinate-specific vector class. This will be removed in a future release, leaving only an explicit conversion. (AFSIM-1177)Added convenience macros for C++14, C++17, and C++20 compiler attributes to
UtCompilerAttributes.hpp
.Added
ut::stacktrace
as a stand-in for C++23’sstd::stacktrace
. (AFSIM-1732)The remaining *.hxx and *.cxx files in util were renamed to *.hpp and *.cpp for consistency with coding standards. The old *.hxx headers are deprecated and will be removed in a future release. In the meantime compatibility stubs are provided which emit a message (Visual Studio) or warning (GCC). (AFSIM-2395)
Newer versions of Sphinx, including 3.x and 4.x, are now supported for building documentation. Sphinx 2.1 remains the minimum supported version. (AFSIM-1343)