diff options
| author | Thurston Dang <thurston.dang@gmail.com> | 2023-11-09 12:53:06 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-11-09 12:53:06 -0800 |
| commit | 0be4c6b9483594494051e8f1f67afc2b516270ca (patch) | |
| tree | d8712ae89d97866986a82e631f25ca38ef0cc1b6 /llvm/lib/TextAPI/TextAPIError.cpp | |
| parent | b34d31d2e12b3b2cf574b16275dd6aafec586a7a (diff) | |
[sanitizer_common] Add experimental flag to tweak dlopen(<main program>) (#71715)
This introduces an experimental flag 'test_only_replace_dlopen_main_program'. When enabled, this will replace dlopen(main program,...) with dlopen(NULL,...), which is the correct way to get a handle to the main program.
This can be useful when ASan is statically linked, since dladdr((void*)pthread_join) or similar will return the path to the main program.
Note that dlopen(main program,...) never ends well:
- PIE in recent glibc versions (glibc bugzilla 24323), or non-PIE: return an error
- PIE in current GRTE and older glibc: attempt to load the main program again, leading to reinitializing ASan and failing to remap the shadow memory.
---------
Co-authored-by: Thurston Dang <thurston@google.com>
Diffstat (limited to 'llvm/lib/TextAPI/TextAPIError.cpp')
0 files changed, 0 insertions, 0 deletions
