aboutsummaryrefslogtreecommitdiffstats
path: root/include/afb/afb-binding-v3.h
diff options
context:
space:
mode:
authorJosé Bollo <jose.bollo@iot.bzh>2020-02-06 09:17:52 +0100
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2020-02-12 13:37:19 +0000
commit44c40eaa9c923e070ab628ae759bcc01d9431aec (patch)
tree816554ab0266cc77312b97b761a0dcd501fbf917 /include/afb/afb-binding-v3.h
parent00b0c28ff1c4a111a86175ac945c519315082229 (diff)
Improves compatibility with AddressSanitizersicefish_9.0.0icefish/9.0.09.0.0
Address sanitizers is expecting shared objects loaded without the flag RTLD_DEEPBIND. This can be achieved by setting the environment variable AFB_NO_RTLD_DEEPBIND to the value 1 (exactly). This implies that the binder takes care of not clashing the namespaces by defining the symbol afbBindingV3root in both environment: the binder and the bindings. Bug-AGL: SPEC-3040 Bug-AGL: SPEC-3162 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Change-Id: Ic064590178d4cf8b34b939e4c9ecd587668f71b8
Diffstat (limited to 'include/afb/afb-binding-v3.h')
-rw-r--r--include/afb/afb-binding-v3.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/afb/afb-binding-v3.h b/include/afb/afb-binding-v3.h
index 79d36da5..8e11fe8b 100644
--- a/include/afb/afb-binding-v3.h
+++ b/include/afb/afb-binding-v3.h
@@ -139,10 +139,12 @@ struct afb_binding_v3
* @see afbBindingV3
* @see @ref validity-v3
*/
+#if !defined(AFB_BINDING_NO_ROOT) /* use with caution, see @ref validity-v3 */
#if AFB_BINDING_VERSION != 3
extern
#endif
struct afb_api_x3 *afbBindingV3root __attribute__((weak));
+#endif
/**
* Pre-initialization function.