libtnccs: Optionally use RTLD_NOW to load IMC/IMVs with dlopen()
This commit is contained in:
parent
305c4aa82c
commit
50e4aeb22f
|
@ -66,8 +66,8 @@ charon.dh_exponent_ansi_x9_42 = yes
|
|||
strength.
|
||||
|
||||
charon.dlopen_use_rtld_now = no
|
||||
Use RTLD_NOW with dlopen when loading plugins to reveal missing symbols
|
||||
immediately.
|
||||
Use RTLD_NOW with dlopen when loading plugins and IMV/IMCs to reveal missing
|
||||
symbols immediately.
|
||||
|
||||
charon.dns1
|
||||
DNS server assigned to peer via configuration payload (CP).
|
||||
|
|
|
@ -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());
|
||||
|
|
|
@ -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());
|
||||
|
|
Loading…
Reference in New Issue