mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-09-04 08:35:31 +00:00
Disable RTLD_DEEPBIND when compiled under AddressSanitizer
This commit is contained in:
@@ -257,7 +257,7 @@ dlopen_dlz_create(const char *dlzname, unsigned int argc, char *argv[],
|
|||||||
/* Open the library */
|
/* Open the library */
|
||||||
dlopen_flags = RTLD_NOW|RTLD_GLOBAL;
|
dlopen_flags = RTLD_NOW|RTLD_GLOBAL;
|
||||||
|
|
||||||
#ifdef RTLD_DEEPBIND
|
#if defined(RTLD_DEEPBIND) && !__ADDRESS_SANITIZER__
|
||||||
/*
|
/*
|
||||||
* If RTLD_DEEPBIND is available then use it. This can avoid
|
* If RTLD_DEEPBIND is available then use it. This can avoid
|
||||||
* issues with a module using a different version of a system
|
* issues with a module using a different version of a system
|
||||||
|
@@ -133,7 +133,7 @@ load_library(isc_mem_t *mctx, const char *filename, const char *instname,
|
|||||||
instname, filename);
|
instname, filename);
|
||||||
|
|
||||||
flags = RTLD_NOW|RTLD_LOCAL;
|
flags = RTLD_NOW|RTLD_LOCAL;
|
||||||
#ifdef RTLD_DEEPBIND
|
#if defined(RTLD_DEEPBIND) && !__ADDRESS_SANITIZER__
|
||||||
flags |= RTLD_DEEPBIND;
|
flags |= RTLD_DEEPBIND;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@@ -109,7 +109,7 @@ load_plugin(isc_mem_t *mctx, const char *modpath, ns_plugin_t **pluginp) {
|
|||||||
REQUIRE(pluginp != NULL && *pluginp == NULL);
|
REQUIRE(pluginp != NULL && *pluginp == NULL);
|
||||||
|
|
||||||
flags = RTLD_LAZY | RTLD_LOCAL;
|
flags = RTLD_LAZY | RTLD_LOCAL;
|
||||||
#ifdef RTLD_DEEPBIND
|
#if defined(RTLD_DEEPBIND) && !__ADDRESS_SANITIZER__
|
||||||
flags |= RTLD_DEEPBIND;
|
flags |= RTLD_DEEPBIND;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user