*/
void eapttls_gen_challenge(SSL *s, uint8_t *buffer, size_t size)
{
+#if OPENSSL_VERSION_NUMBER < 0x10001000L
uint8_t out[32], buf[32];
uint8_t seed[sizeof(EAPTLS_PRF_CHALLENGE)-1 + 2*SSL3_RANDOM_SIZE];
uint8_t *p = seed;
+#endif
if (!s->s3) {
DEBUG("ERROR: No SSLv3 information");
return;
}
+#if OPENSSL_VERSION_NUMBER >= 0x10001000L
+ SSL_export_keying_material(s, buffer, size, EAPTLS_PRF_CHALLENGE,
+ sizeof(EAPTLS_PRF_CHALLENGE) - 1, NULL, 0, 0);
+#else
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);
seed, sizeof(seed), out, buf, sizeof(out));
memcpy(buffer, out, size);
+#endif
}
/*