From: Tobias Brunner Date: Mon, 25 Jun 2012 13:58:50 +0000 (+0200) Subject: Check rng return value when generating RAND in eap-aka-3gpp2 plugin X-Git-Tag: 5.0.1~333 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=10b6ca5fb2fa633a3dbce652c9702ec7e49bdb8f;p=thirdparty%2Fstrongswan.git Check rng return value when generating RAND in eap-aka-3gpp2 plugin --- diff --git a/src/libcharon/plugins/eap_aka_3gpp2/eap_aka_3gpp2_provider.c b/src/libcharon/plugins/eap_aka_3gpp2/eap_aka_3gpp2_provider.c index b2b43da2a3..317a820c04 100644 --- a/src/libcharon/plugins/eap_aka_3gpp2/eap_aka_3gpp2_provider.c +++ b/src/libcharon/plugins/eap_aka_3gpp2/eap_aka_3gpp2_provider.c @@ -90,12 +90,12 @@ METHOD(simaka_provider_t, get_quintuplet, bool, /* generate RAND: we use a registered RNG, not f0() proposed in S.S0055 */ rng = lib->crypto->create_rng(lib->crypto, RNG_WEAK); - if (!rng) + if (!rng || !rng->get_bytes(rng, AKA_RAND_LEN, rand)) { DBG1(DBG_IKE, "generating RAND for AKA failed"); + DESTROY_IF(rng); return FALSE; } - rng->get_bytes(rng, AKA_RAND_LEN, rand); rng->destroy(rng); if (!eap_aka_3gpp2_get_k(id, k))