forked from wolfSSL/wolfssl
fix for g++ build
This commit is contained in:
13
src/ssl.c
13
src/ssl.c
@ -11957,11 +11957,8 @@ int wolfSSL_export_keying_material(WOLFSSL *ssl,
|
|||||||
const unsigned char *context, size_t contextLen,
|
const unsigned char *context, size_t contextLen,
|
||||||
int use_context)
|
int use_context)
|
||||||
{
|
{
|
||||||
byte* seed = NULL;
|
byte* seed = NULL;
|
||||||
/* clientRandom + serverRandom
|
word32 seedLen;
|
||||||
* OR
|
|
||||||
* clientRandom + serverRandom + ctx len encoding + ctx */
|
|
||||||
word32 seedLen = !use_context ? SEED_LEN : SEED_LEN + 2 + (word32)contextLen;
|
|
||||||
const struct ForbiddenLabels* fl;
|
const struct ForbiddenLabels* fl;
|
||||||
|
|
||||||
WOLFSSL_ENTER("wolfSSL_export_keying_material");
|
WOLFSSL_ENTER("wolfSSL_export_keying_material");
|
||||||
@ -11972,6 +11969,12 @@ int wolfSSL_export_keying_material(WOLFSSL *ssl,
|
|||||||
return WOLFSSL_FAILURE;
|
return WOLFSSL_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* clientRandom + serverRandom
|
||||||
|
* OR
|
||||||
|
* clientRandom + serverRandom + ctx len encoding + ctx */
|
||||||
|
seedLen = !use_context ? (word32)SEED_LEN :
|
||||||
|
(word32)SEED_LEN + 2 + (word32)contextLen;
|
||||||
|
|
||||||
if (ssl->options.saveArrays == 0 || ssl->arrays == NULL) {
|
if (ssl->options.saveArrays == 0 || ssl->arrays == NULL) {
|
||||||
WOLFSSL_MSG("To export keying material wolfSSL needs to keep handshake "
|
WOLFSSL_MSG("To export keying material wolfSSL needs to keep handshake "
|
||||||
"data. Call wolfSSL_KeepArrays before attempting to "
|
"data. Call wolfSSL_KeepArrays before attempting to "
|
||||||
|
12
src/tls13.c
12
src/tls13.c
@ -777,24 +777,24 @@ int Tls13_Exporter(WOLFSSL* ssl, unsigned char *out, size_t outLen,
|
|||||||
switch (ssl->specs.mac_algorithm) {
|
switch (ssl->specs.mac_algorithm) {
|
||||||
#ifndef NO_SHA256
|
#ifndef NO_SHA256
|
||||||
case sha256_mac:
|
case sha256_mac:
|
||||||
hashType = WC_SHA256;
|
hashType = WC_HASH_TYPE_SHA256;
|
||||||
hashLen = WC_SHA256_DIGEST_SIZE;
|
hashLen = WC_SHA256_DIGEST_SIZE;
|
||||||
emptyHash = emptySHA256Hash;
|
emptyHash = emptySHA256Hash;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef WOLFSSL_SHA384
|
#ifdef WOLFSSL_SHA384
|
||||||
case sha384_mac:
|
case sha384_mac:
|
||||||
hashType = WC_SHA384;
|
hashType = WC_HASH_TYPE_SHA384;
|
||||||
hashLen = WC_SHA384_DIGEST_SIZE;
|
hashLen = WC_SHA384_DIGEST_SIZE;
|
||||||
emptyHash = emptySHA384Hash;
|
emptyHash = emptySHA384Hash;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef WOLFSSL_TLS13_SHA512
|
#ifdef WOLFSSL_TLS13_SHA512
|
||||||
case sha512_mac:
|
case sha512_mac:
|
||||||
hashType = WC_SHA512;
|
hashType = WC_HASH_TYPE_SHA512;
|
||||||
hashLen = WC_SHA512_DIGEST_SIZE;
|
hashLen = WC_SHA512_DIGEST_SIZE;
|
||||||
emptyHash = emptySHA512Hash;
|
emptyHash = emptySHA512Hash;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
@ -40234,7 +40234,7 @@ static void test_export_keying_material(void)
|
|||||||
|
|
||||||
start_thread(test_server_nofail, &server_args, &serverThread);
|
start_thread(test_server_nofail, &server_args, &serverThread);
|
||||||
wait_tcp_ready(&server_args);
|
wait_tcp_ready(&server_args);
|
||||||
test_client_nofail(&client_args, test_export_keying_material_cb);
|
test_client_nofail(&client_args, (void*)test_export_keying_material_cb);
|
||||||
join_thread(serverThread);
|
join_thread(serverThread);
|
||||||
|
|
||||||
AssertTrue(client_args.return_code);
|
AssertTrue(client_args.return_code);
|
||||||
|
Reference in New Issue
Block a user