Skip to content

Remove symbol versioning for TrafficParticipant example

Description

Currently we are facing memory leaks reported by leak sanitizer.

With MR !128 (merged) the suppression of this issue was introduced.

Analysis Result

Due to the used symbol versioning for the TrafficParticipantModel example all osi related symbols and protobuf related symbols are set to local scope. While destructing tpm example (which got loaded via dlopen) leak sanitizer reports direct and indirect memory leaks. In case these symbols are set to global scope then we no longer get a report about leaking memory. Due to protobufs implementation specifica it seems to have a cross-correlation between symbols in the test code and in the tpm example shared library which is causing hte sanitizer to report leaking memory.

Proposed Fix

Remove version script at all and set osi and protobuf symbols to global scope.

Alternative Solution

Integrate open simulation interface as real shared library (instead of linking it in a static way).

Merge request reports

Loading