提交 f5f1fe1b 编写于 作者: D Daniel P. Berrange

Replace RTLD_LOCAL with RTLD_GLOBAL

Since we have drivers which depend on each other (ie QEMU/LXC
depend on the network driver APIs), we need to use RTLD_GLOBAL
instead of RTLD_LOCAL. While this pollutes the calling binary
with many more symbols, this is no worse than if we directly
link to the drivers, and this only applies to libvirtd

* src/driver.c: s/RTLD_LOCAL/RTLD_GLOBAL/
Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
上级 ee53a8c8
......@@ -59,7 +59,7 @@ virDriverLoadModule(const char *name)
goto cleanup;
}
handle = dlopen(modfile, RTLD_NOW | RTLD_LOCAL);
handle = dlopen(modfile, RTLD_NOW | RTLD_GLOBAL);
if (!handle) {
VIR_ERROR(_("failed to load module %s %s"), modfile, dlerror());
goto cleanup;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册