Actually Fuchsia non-support for interceptors. Fuchsia doesn't use
interceptors in the common sense at all. Almost all system library
functions don't need interception at all, because the system
libraries are just themselves compiled with sanitizers enabled and
have specific hook interfaces where needed to inform the sanitizer
runtime about thread lifetimes and the like. For the few functions
that do get intercepted, they don't use a generic mechanism like
dlsym with RTLD_NEXT to find the underlying system library function.
Instead, they use specific extra symbol names published by the
system library (e.g. __unsanitized_memcpy).
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
Could you please split WINDOWS->POSIX and Fuchsia changes into different patches so that we land refactoring first.
lib/sanitizer_common/sanitizer_platform_interceptors.h | ||
---|---|---|
40 ↗ | (On Diff #108728) | Could you please add some sanity check like: |
78 ↗ | (On Diff #108728) | SHould this be $if SANITIZER_POSIX && !SANITIZER_MAC |
Comment Actions
LGTM. You might want to remove this from the commit message, though:
Fuchsia is neither Windows nor POSIX. The SI_NOT_WINDOWS macro in
sanitizer_platform_interceptors.h was already effectively the same
as SI_POSIX, so just use SI_POSIX instead.
Thank you,
Filipe