ipseckey: Added "enable" option for the IPSECKEY plugin to strongswan.conf
This commit is contained in:
committed by
Tobias Brunner
parent
a77bbc3b8c
commit
932717fbde
@@ -568,6 +568,9 @@ Request peer authentication based on a client certificate
|
|||||||
.TP
|
.TP
|
||||||
.BR charon.plugins.ha.segment_count " [1]"
|
.BR charon.plugins.ha.segment_count " [1]"
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BR charon.plugins.ipseckey.enable " [no]"
|
||||||
|
Enable the fetching of IPSECKEY RRs from the DNS
|
||||||
.TP
|
.TP
|
||||||
.BR charon.plugins.led.activity_led
|
.BR charon.plugins.led.activity_led
|
||||||
|
|
||||||
|
|||||||
@@ -40,6 +40,11 @@ struct private_ipseckey_plugin_t {
|
|||||||
* credential set
|
* credential set
|
||||||
*/
|
*/
|
||||||
ipseckey_cred_t *cred;
|
ipseckey_cred_t *cred;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* IPSECKEY based authentication enabled
|
||||||
|
*/
|
||||||
|
bool enabled;
|
||||||
};
|
};
|
||||||
|
|
||||||
METHOD(plugin_t, get_name, char*,
|
METHOD(plugin_t, get_name, char*,
|
||||||
@@ -51,7 +56,10 @@ METHOD(plugin_t, get_name, char*,
|
|||||||
METHOD(plugin_t, destroy, void,
|
METHOD(plugin_t, destroy, void,
|
||||||
private_ipseckey_plugin_t *this)
|
private_ipseckey_plugin_t *this)
|
||||||
{
|
{
|
||||||
lib->credmgr->remove_set(lib->credmgr, &this->cred->set);
|
if (this->enabled)
|
||||||
|
{
|
||||||
|
lib->credmgr->remove_set(lib->credmgr, &this->cred->set);
|
||||||
|
}
|
||||||
this->res->destroy(this->res);
|
this->res->destroy(this->res);
|
||||||
DESTROY_IF(this->cred);
|
DESTROY_IF(this->cred);
|
||||||
free(this);
|
free(this);
|
||||||
@@ -73,6 +81,8 @@ plugin_t *ipseckey_plugin_create()
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
.res = lib->resolver->create(lib->resolver),
|
.res = lib->resolver->create(lib->resolver),
|
||||||
|
.enabled = lib->settings->get_bool(lib->settings,
|
||||||
|
"charon.plugins.ipseckey.enable", FALSE),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (!this->res)
|
if (!this->res)
|
||||||
@@ -83,8 +93,11 @@ plugin_t *ipseckey_plugin_create()
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
this->cred = ipseckey_cred_create(this->res);
|
if (this->enabled)
|
||||||
lib->credmgr->add_set(lib->credmgr, &this->cred->set);
|
{
|
||||||
|
this->cred = ipseckey_cred_create(this->res);
|
||||||
|
lib->credmgr->add_set(lib->credmgr, &this->cred->set);
|
||||||
|
}
|
||||||
|
|
||||||
return &this->public.plugin;
|
return &this->public.plugin;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user