This bug is created as a clone of upstream ticket:
Due to 48872 we now actually free and close plugins correctly.
However, this has exposed a number of issues in other plugins not behaving correctly. In the TET tests the xorplugin assign a name to SLAPI_PLUGIN_PWD_STORAGE_SCHEME_NAME from the stack rather than the heap. When plugin_closeall is called, this causes a segfault as slapi_ch_free_string(&plugin->plg_pwdstorageschemename); is trying to free something that it cannot.
The fix is that we should be strduping the name, and then freeing that in the plugin_free. This way plugins can allocate from heap or stack and we do not cause these faults.
Steps to reproduce:
1. Run Tier2 dsCoreLong tests from beaker
2. Observe crash report in the list
3. Beaker job - https://beaker.engineering.redhat.com/jobs/1379188
Ran dsCoreLong tier2 tests from beaker with the latest build of 389-ds-base and found no crash. Hence, marking the bug as Verified.
Bkr job - https://beaker.engineering.redhat.com/jobs/1399654
TET report - http://wiki-old.idm.lab.bos.redhat.com/qa/archive/beaker/RHDS/RHEL73/389-ds-base-18.104.22.168-3.el7.x86_64/Tier2/Linux/20160712-131935-dsCoreLong.html
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.