HomeFreeBSD

rtld: Fix a couple of bugs around the unloading of ELF filters.

Description

rtld: Fix a couple of bugs around the unloading of ELF filters.

  • Pass the correct object to unload_filtees().
  • Use a marker to restart iteration after unload_filtees() has returned. It calls dlclose() and may recursively remove entries from the global object list, so TAILQ_FOREACH_SAFE is not sufficient.

Reviewed by: kib
MFC after: 2 weeks
Sponsored by: Dell EMC Isilon

Details

Provenance
markjAuthored on
Reviewer
kib
Parents
rS310421: rtld: Ensure that dlopen() cannot obtain a reference on a doomed object.
Branches
Unknown
Tags
Unknown