diff options
author | Yves-Alexis Perez <corsac@debian.org> | 2015-11-18 15:19:06 +0100 |
---|---|---|
committer | Yves-Alexis Perez <corsac@debian.org> | 2015-11-18 15:19:06 +0100 |
commit | fb6324eb165d1577bc4541bc2fc6758c56da2a95 (patch) | |
tree | afbc98168e056e7839ac0dc434db8f88ffb34833 /src/libtnccs | |
parent | ea6a577e967da0ee954b06b7bdc6796e97eb9b2b (diff) | |
parent | 1e980d6be0ef0e243c6fe82b5e855454b97e24a4 (diff) | |
download | vyos-strongswan-fb6324eb165d1577bc4541bc2fc6758c56da2a95.tar.gz vyos-strongswan-fb6324eb165d1577bc4541bc2fc6758c56da2a95.zip |
Merge tag 'upstream/5.3.4'
Upstream version 5.3.4
Diffstat (limited to 'src/libtnccs')
-rw-r--r-- | src/libtnccs/plugins/tnc_imc/tnc_imc.c | 8 | ||||
-rw-r--r-- | src/libtnccs/plugins/tnc_imv/tnc_imv.c | 8 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/libtnccs/plugins/tnc_imc/tnc_imc.c b/src/libtnccs/plugins/tnc_imc/tnc_imc.c index 623da7f62..822df3f27 100644 --- a/src/libtnccs/plugins/tnc_imc/tnc_imc.c +++ b/src/libtnccs/plugins/tnc_imc/tnc_imc.c @@ -349,10 +349,16 @@ static private_tnc_imc_t* tnc_imc_create_empty(char *name) imc_t* tnc_imc_create(char *name, char *path) { private_tnc_imc_t *this; + int flag = RTLD_LAZY; this = tnc_imc_create_empty(name); - this->handle = dlopen(path, RTLD_LAZY); + if (lib->settings->get_bool(lib->settings, "%s.dlopen_use_rtld_now", + lib->ns, FALSE)) + { + flag = RTLD_NOW; + } + this->handle = dlopen(path, flag); if (!this->handle) { DBG1(DBG_TNC, "IMC \"%s\" failed to load: %s", name, dlerror()); diff --git a/src/libtnccs/plugins/tnc_imv/tnc_imv.c b/src/libtnccs/plugins/tnc_imv/tnc_imv.c index 039f1fcf1..9a0304172 100644 --- a/src/libtnccs/plugins/tnc_imv/tnc_imv.c +++ b/src/libtnccs/plugins/tnc_imv/tnc_imv.c @@ -345,10 +345,16 @@ static private_tnc_imv_t* tnc_imv_create_empty(char *name) imv_t* tnc_imv_create(char *name, char *path) { private_tnc_imv_t *this; + int flag = RTLD_LAZY; this = tnc_imv_create_empty(name); - this->handle = dlopen(path, RTLD_LAZY); + if (lib->settings->get_bool(lib->settings, "%s.dlopen_use_rtld_now", + lib->ns, FALSE)) + { + flag = RTLD_NOW; + } + this->handle = dlopen(path, flag); if (!this->handle) { DBG1(DBG_TNC, "IMV \"%s\" failed to load: %s", name, dlerror()); |