5.2.18. Crashes

5.2.18.1. [Critical] Potential stack overflow in Connext applications when parsing XML files with a custom DTD with deeply nested entity references

The Core Libraries XML parser had a third-party dependency on Expat version 2.6.3, which is known to be affected by a publicly disclosed vulnerability. This vulnerability has been fixed by upgrading Expat to the latest stable version, 2.7.1. See the “What’s New” section in this document for more details.

The impact on Connext applications of using the previous version was a stack overflow leading to a crash.

[RTI Issue ID CORE-15661]

5.2.18.2. [Critical] Possible crash when accessing information about a remote endpoint at the same time that the endpoint was being removed

The application could have crashed if it was trying to access information about a remote endpoint at the same time that the endpoint was being removed. (A remote endpoint is removed when the remote endpoint is deleted or loses liveliness.)

[RTI Issue ID CORE-15297]

5.2.18.3. [Major] Changes in RTI Connext logging behavior for Windows desktop applications

By default, Windows desktop applications (i.e., Windows applications with a graphical user interface) do not have an associated console for displaying RTI Connext log messages. To avoid losing important messages, RTI Connext automatically created a Windows console and redirected the output to it. The default behavior for Windows consoles attached to processes is to terminate the associated process when they are closed.

With RTI Connext Express, RTI’s graphical tools (such as Admin Console or Monitor UI) displayed license-related messages (like trial end dates and trial limits) on a pop-up Windows console on startup. Closing that pop-up console caused the associated RTI tool to terminate unexpectedly. In Admin Console, a Java Virtual Machine error was displayed.

RTI Connext no longer creates Windows consoles for logging. RTI’s graphical tools now display all messages (including license-related messages) in a mechanism specific to that tool (such as in a graphical view or log file). You should now install a logger device to handle your Windows desktop application logs. See Customizing the Handling of Generated Log Messages.

[RTI Issue ID CORE-15707]

5.2.18.4. [Critical] Modern C++ Distributed Logger may have crashed upon instance finalization

The Modern C++ Distributed Logger may have produced a crash after calling DistLogger::finalize() when a DomainParticipant had been set by the user. This problem was described as fixed in 7.3.0 (RTI Issue ID DISTLOG-238), but the fix was not complete.

[RTI Issue ID DISTLOG-255]

5.2.18.5. [Critical] Segmentation fault when using Network Capture APIs concurrently with DomainParticipantFactory deletion

Calling Network Capture APIs while another thread was deleting the DomainParticipantFactory could cause a segmentation fault due to unsafe concurrent access to internal resources. This issue has been resolved to prevent crashes in such scenarios.

[RTI Issue ID CORE-15914]

5.2.18.6. [Critical] Potential crash while printing the log message after an error

Due to mishandled string parameters on some log messages, an application running Connext could crash after an error had already happened. The problematic log messages are now properly generated and printed.

[RTI Issue ID CORE-15862]

5.2.18.7. [Critical] Segmentation fault when a DomainParticipant failed to be created

You may have seen a rare segmentation fault if a DomainParticipant failed to be created.

[RTI Issue ID CORE-16045]

5.2.18.8. [Critical] Segmentation fault and precondition errors with Monitoring Library 2.0 when Entities were deleted

Applications using Monitoring Library 2.0 could experience a rare segmentation fault when Connext entities (such as DataWriters) were deleted. Additionally, when linking against the Connext debug libraries, you may have observed precondition errors in the log output.

[RTI Issue ID MONITOR-734]

5.2.18.9. [Critical] Possible crash when metric value changed when Monitoring Library 2.0 was being disabled

One of the Monitoring Library 2.0 threads may not have finalized if a metric change happened at the same time that Monitoring Library 2.0 was being disabled. That thread crashed after trying to access memory that was already freed. Now all threads are properly finalized.

[RTI Issue ID MONITOR-735]