Dynamic linker no longer fails when an audit module provides alternate DSO
Previously, when an audit module provided an alternate DSO (dynamic shared object) path, the *ld.so* dynamic linker terminated unexpectedly with a segmentation fault. This update fixes the bug and the dynamic linker now keeps track of the original DSO path for future reference and no longer crashes in the described scenario.
+++ This bug was initially created as a clone of Bug #1211098 +++
Description of problem:
When audit modules provide path as the return value of the la_objsearch calls the name replaces whatever ld.so uses to find the DSO. If the target DSO has an SONAME this is the SONAME. As a result the SONAME is not in the list by which the DSO is known. This usually is no problem. It becomes a problem when the SONAME is needed afterwards. One example is checking symbol and DSO versions.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
ld.so crash when below both conditions are met
1) audit modules provide path
2) dependent libary(ie what is recorded in NEEDED section) has dso versioning
ld.so not to crash
--- Additional comment from Kazu Yoshida on 2015-04-12 21:57:37 EDT ---
--- Additional comment from RHEL Product and Program Management on 2015-04-12 22:00:41 EDT ---
Since this bug report was entered in bugzilla, the release flag has been
set to ? to ensure that it is properly evaluated for this release.
Ulrich's patch posted upstream:
This bug was accidentally moved from POST to MODIFIED via an error in automation, please see firstname.lastname@example.org with any questions
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.