aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndreas Steffen <andreas.steffen@strongswan.org>2010-11-04 23:59:31 +0100
committerAndreas Steffen <andreas.steffen@strongswan.org>2010-11-09 20:43:50 +0100
commitc78be5691cf1a659c5f848b7ad7dc1afd0b21900 (patch)
tree93ab8534bcb0c0505712832d79494f3afefa5a1f /src
parente7da87f942e1b4523820870154452688dbead77b (diff)
downloadstrongswan-c78be5691cf1a659c5f848b7ad7dc1afd0b21900.tar.bz2
strongswan-c78be5691cf1a659c5f848b7ad7dc1afd0b21900.tar.xz
check if optional terminate() function exists
Diffstat (limited to 'src')
-rw-r--r--src/libcharon/plugins/tnc_imc/tnc_imc_plugin.c3
-rw-r--r--src/libcharon/plugins/tnc_imv/tnc_imv_plugin.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/libcharon/plugins/tnc_imc/tnc_imc_plugin.c b/src/libcharon/plugins/tnc_imc/tnc_imc_plugin.c
index 1feedf93a..21cca6689 100644
--- a/src/libcharon/plugins/tnc_imc/tnc_imc_plugin.c
+++ b/src/libcharon/plugins/tnc_imc/tnc_imc_plugin.c
@@ -25,7 +25,8 @@ METHOD(plugin_t, destroy, void,
while (charon->imcs->remove_last(charon->imcs, (void**)&imc) == SUCCESS)
{
- if (imc->terminate(imc->get_id(imc)) != TNC_RESULT_SUCCESS)
+ if (imc->terminate &&
+ imc->terminate(imc->get_id(imc)) != TNC_RESULT_SUCCESS)
{
DBG1(DBG_TNC, "IMC '%s' not terminated successfully",
imc->get_name(imc));
diff --git a/src/libcharon/plugins/tnc_imv/tnc_imv_plugin.c b/src/libcharon/plugins/tnc_imv/tnc_imv_plugin.c
index 34f5b7619..99e4dce0e 100644
--- a/src/libcharon/plugins/tnc_imv/tnc_imv_plugin.c
+++ b/src/libcharon/plugins/tnc_imv/tnc_imv_plugin.c
@@ -25,7 +25,8 @@ METHOD(plugin_t, destroy, void,
while (charon->imvs->remove_last(charon->imvs, (void**)&imv) == SUCCESS)
{
- if (imv->terminate(imv->get_id(imv)) != TNC_RESULT_SUCCESS)
+ if (imv->terminate &&
+ imv->terminate(imv->get_id(imv)) != TNC_RESULT_SUCCESS)
{
DBG1(DBG_TNC, "IMV '%s' not terminated successfully",
imv->get_name(imv));