terminate imc/imv that couldn't be initialized properly
authorAndreas Steffen <andreas.steffen@strongswan.org>
Tue, 10 May 2011 05:03:37 +0000 (07:03 +0200)
committerAndreas Steffen <andreas.steffen@strongswan.org>
Tue, 10 May 2011 05:03:50 +0000 (07:03 +0200)
src/libcharon/plugins/tnc_imc/tnc_imc_plugin.c
src/libcharon/plugins/tnc_imv/tnc_imv_plugin.c

index a4126a5..bc13b87 100644 (file)
@@ -130,6 +130,12 @@ static bool load_imcs(char *filename)
                }
                if (!charon->imcs->add(charon->imcs, imc))
                {
+                       if (imc->terminate &&
+                               imc->terminate(imc->get_id(imc)) != TNC_RESULT_SUCCESS)
+                       {
+                               DBG1(DBG_TNC, "IMC \"%s\" not terminated successfully",
+                                                          imc->get_name(imc));
+                       }
                        imc->destroy(imc);
                        return FALSE;
                }
index 4dfe9ef..45cf95c 100644 (file)
@@ -130,6 +130,12 @@ static bool load_imvs(char *filename)
                }
                if (!charon->imvs->add(charon->imvs, imv))
                {
+                       if (imv->terminate &&
+                               imv->terminate(imv->get_id(imv)) != TNC_RESULT_SUCCESS)
+                       {
+                               DBG1(DBG_TNC, "IMV \"%s\" not terminated successfully",
+                                                          imv->get_name(imv));
+                       }
                        imv->destroy(imv);
                        return FALSE;
                }