From: Alan T. DeKok Date: Thu, 9 Aug 2012 15:54:54 +0000 (+0200) Subject: Produce warnings on OpenSSL problems, rather than crash. X-Git-Tag: release_2_2_0~71 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=71bb6db6bf2fad77bcb267978a4b1cd58e722f84;p=thirdparty%2Ffreeradius-server.git Produce warnings on OpenSSL problems, rather than crash. --- diff --git a/src/modules/rlm_eap/libeap/mppe_keys.c b/src/modules/rlm_eap/libeap/mppe_keys.c index f868a313297..05577f5198a 100644 --- a/src/modules/rlm_eap/libeap/mppe_keys.c +++ b/src/modules/rlm_eap/libeap/mppe_keys.c @@ -132,6 +132,11 @@ void eaptls_gen_mppe_keys(VALUE_PAIR **reply_vps, SSL *s, unsigned char *p = seed; size_t prf_size; + if (!s->s3) { + radlog(L_ERR, "ERROR: OpenSSL build / link incompatibility detected"); + return; + } + prf_size = strlen(prf_label); memcpy(p, prf_label, prf_size); @@ -171,6 +176,11 @@ void eapttls_gen_challenge(SSL *s, uint8_t *buffer, size_t size) uint8_t seed[sizeof(EAPTLS_PRF_CHALLENGE)-1 + 2*SSL3_RANDOM_SIZE]; uint8_t *p = seed; + if (!s->s3) { + radlog(L_ERR, "ERROR: OpenSSL build / link incompatibility detected"); + return; + } + memcpy(p, EAPTLS_PRF_CHALLENGE, sizeof(EAPTLS_PRF_CHALLENGE)-1); p += sizeof(EAPTLS_PRF_CHALLENGE)-1; memcpy(p, s->s3->client_random, SSL3_RANDOM_SIZE);