aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2016-09-13 14:27:54 +0200
committerTobias Brunner <tobias@strongswan.org>2016-09-20 15:36:15 +0200
commit70ac90c552ebc4042d287f6e2cab424088085704 (patch)
treea8723b9e6b5c68119e48479fd2b7c88b3813e8de
parent0b4ba9c53d43b2aa1668af537308b657c600f9ba (diff)
downloadstrongswan-70ac90c552ebc4042d287f6e2cab424088085704.tar.bz2
strongswan-70ac90c552ebc4042d287f6e2cab424088085704.tar.xz
eap-peap: Fix memory leaks when handling tunneled methods
-rw-r--r--src/libcharon/plugins/eap_peap/eap_peap_server.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libcharon/plugins/eap_peap/eap_peap_server.c b/src/libcharon/plugins/eap_peap/eap_peap_server.c
index 7f8348e06..d51d0d090 100644
--- a/src/libcharon/plugins/eap_peap/eap_peap_server.c
+++ b/src/libcharon/plugins/eap_peap/eap_peap_server.c
@@ -211,7 +211,7 @@ METHOD(tls_application_t, process, status_t,
{
DBG1(DBG_IKE, "received tunneled EAP-PEAP AVP [EAP/%N]",
eap_code_short_names, code);
-
+ in->destroy(in);
/* if EAP_SUCCESS check if to continue phase2 with EAP-TNC */
return (this->phase2_result == EAP_SUCCESS && code == EAP_SUCCESS) ?
start_phase2_tnc(this) : FAILED;
@@ -250,6 +250,7 @@ METHOD(tls_application_t, process, status_t,
{
DBG1(DBG_IKE, "%N method not available",
eap_type_names, EAP_IDENTITY);
+ in->destroy(in);
return FAILED;
}
}
@@ -258,6 +259,7 @@ METHOD(tls_application_t, process, status_t,
{
DBG1(DBG_IKE, "%N method failed", eap_type_names, EAP_IDENTITY);
+ in->destroy(in);
return FAILED;
}