From: Andreas Steffen Date: Wed, 8 Sep 2010 09:09:11 +0000 (+0200) Subject: moved tls_t existance test into tls_eap_create() again X-Git-Tag: 4.5.0~195 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=51b385d44d4dffb4c337bb559131da0bfad317d3;p=thirdparty%2Fstrongswan.git moved tls_t existance test into tls_eap_create() again --- diff --git a/src/libcharon/plugins/eap_tls/eap_tls.c b/src/libcharon/plugins/eap_tls/eap_tls.c index 2980d74b20..53b61c8476 100644 --- a/src/libcharon/plugins/eap_tls/eap_tls.c +++ b/src/libcharon/plugins/eap_tls/eap_tls.c @@ -141,11 +141,6 @@ static eap_tls_t *eap_tls_create(identification_t *server, frag_size = lib->settings->get_int(lib->settings, "charon.plugins.eap-tls.fragment_size", MAX_FRAGMENT_LEN); tls = tls_create(is_server, server, peer, TLS_PURPOSE_EAP_TLS, NULL); - if (!tls) - { - free(this); - return NULL; - } this->tls_eap = tls_eap_create(EAP_TLS, tls, frag_size); if (!this->tls_eap) { diff --git a/src/libcharon/plugins/eap_tnc/eap_tnc.c b/src/libcharon/plugins/eap_tnc/eap_tnc.c index 432d5efbd3..234b1444dd 100644 --- a/src/libcharon/plugins/eap_tnc/eap_tnc.c +++ b/src/libcharon/plugins/eap_tnc/eap_tnc.c @@ -143,11 +143,6 @@ static eap_tnc_t *eap_tnc_create(identification_t *server, frag_size = lib->settings->get_int(lib->settings, "charon.plugins.eap-tnc.fragment_size", MAX_FRAGMENT_LEN); tnc_if_tnccs = tnc_if_tnccs_create(is_server, TLS_PURPOSE_EAP_TNC); - if (!tnc_if_tnccs) - { - free(this); - return NULL; - } this->tls_eap = tls_eap_create(EAP_TNC, tnc_if_tnccs, frag_size); if (!this->tls_eap) { diff --git a/src/libcharon/plugins/eap_ttls/eap_ttls.c b/src/libcharon/plugins/eap_ttls/eap_ttls.c index 6b52acc56f..d9220a33ca 100644 --- a/src/libcharon/plugins/eap_ttls/eap_ttls.c +++ b/src/libcharon/plugins/eap_ttls/eap_ttls.c @@ -148,11 +148,6 @@ static eap_ttls_t *eap_ttls_create(identification_t *server, frag_size = lib->settings->get_int(lib->settings, "charon.plugins.eap-ttls.fragment_size", MAX_FRAGMENT_LEN); tls = tls_create(is_server, server, peer, TLS_PURPOSE_EAP_TTLS, application); - if (!tls) - { - free(this); - return NULL; - } this->tls_eap = tls_eap_create(EAP_TTLS, tls, frag_size); if (!this->tls_eap) { diff --git a/src/libtls/tls_eap.c b/src/libtls/tls_eap.c index f74030bd4a..d923f21264 100644 --- a/src/libtls/tls_eap.c +++ b/src/libtls/tls_eap.c @@ -325,6 +325,11 @@ tls_eap_t *tls_eap_create(eap_type_t type, tls_t *tls, size_t frag_size) { private_tls_eap_t *this; + if (!tls) + { + return NULL; + } + INIT(this, .public = { .initiate = _initiate,