From db14914951b4996c04e9c1f6ff2ab6e3f7c8840c Mon Sep 17 00:00:00 2001 From: David Garske Date: Wed, 6 Dec 2023 12:43:26 -0800 Subject: [PATCH] Fixes for building wolfSSL in Visual Studio. Adds missing files. Fix for type cast warnings. --- IDE/WIN10/wolfssl-fips.vcxproj | 1 + src/internal.c | 6 +++--- src/ssl.c | 4 ++-- src/tls13.c | 2 +- wolfcrypt/src/pkcs7.c | 10 +++++----- wolfssl.vcxproj | 1 + 6 files changed, 13 insertions(+), 11 deletions(-) diff --git a/IDE/WIN10/wolfssl-fips.vcxproj b/IDE/WIN10/wolfssl-fips.vcxproj index 99ffb4352e..5d0122ea57 100644 --- a/IDE/WIN10/wolfssl-fips.vcxproj +++ b/IDE/WIN10/wolfssl-fips.vcxproj @@ -272,6 +272,7 @@ + diff --git a/src/internal.c b/src/internal.c index 81bc5376d7..a0a2cf6c41 100644 --- a/src/internal.c +++ b/src/internal.c @@ -27050,7 +27050,7 @@ int DecodePrivateKey(WOLFSSL *ssl, word16* length) || wolfSSL_CTX_IsPrivatePkSet(ssl->ctx) #endif ) { - *length = GetPrivateKeySigSize(ssl); + *length = (word16)GetPrivateKeySigSize(ssl); return 0; } else @@ -31582,7 +31582,7 @@ int SendCertificateVerify(WOLFSSL* ssl) if (ssl->buffers.key == NULL) { #ifdef HAVE_PK_CALLBACKS if (wolfSSL_CTX_IsPrivatePkSet(ssl->ctx)) - args->length = GetPrivateKeySigSize(ssl); + args->length = (word16)GetPrivateKeySigSize(ssl); else #endif ERROR_OUT(NO_PRIVATE_KEY, exit_scv); @@ -33555,7 +33555,7 @@ static int DoSessionTicket(WOLFSSL* ssl, const byte* input, word32* inOutIdx, if (ssl->buffers.key == NULL) { #ifdef HAVE_PK_CALLBACKS if (wolfSSL_CTX_IsPrivatePkSet(ssl->ctx)) - keySz = (word32)GetPrivateKeySigSize(ssl); + keySz = (word16)GetPrivateKeySigSize(ssl); else #endif ERROR_OUT(NO_PRIVATE_KEY, exit_sske); diff --git a/src/ssl.c b/src/ssl.c index 32d81e7aae..4aac9f8fc8 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -7779,11 +7779,11 @@ int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff, #ifdef WOLF_PRIVATE_KEY_ID if (ssl != NULL) { - ssl->buffers.keyType = keyType; + ssl->buffers.keyType = (byte)keyType; ssl->buffers.keySz = keySz; } else if (ctx != NULL) { - ctx->privateKeyType = keyType; + ctx->privateKeyType = (byte)keyType; ctx->privateKeySz = keySz; } #endif diff --git a/src/tls13.c b/src/tls13.c index 93ec08ff65..16a9e7b314 100644 --- a/src/tls13.c +++ b/src/tls13.c @@ -8633,7 +8633,7 @@ static int SendTls13CertificateVerify(WOLFSSL* ssl) if (ssl->buffers.key == NULL) { #ifdef HAVE_PK_CALLBACKS if (wolfSSL_CTX_IsPrivatePkSet(ssl->ctx)) - args->length = GetPrivateKeySigSize(ssl); + args->length = (word16)GetPrivateKeySigSize(ssl); else #endif ERROR_OUT(NO_PRIVATE_KEY, exit_scv); diff --git a/wolfcrypt/src/pkcs7.c b/wolfcrypt/src/pkcs7.c index 0792d59538..36983d5016 100644 --- a/wolfcrypt/src/pkcs7.c +++ b/wolfcrypt/src/pkcs7.c @@ -4627,7 +4627,7 @@ static int PKCS7_VerifySignedData(PKCS7* pkcs7, const byte* hashBuf, WOLFSSL_MSG("PKCS#7 signedData needs to be version 1 or 3"); ret = ASN_VERSION_E; } - pkcs7->version = version; + pkcs7->version = (byte)version; /* Get the set of DigestAlgorithmIdentifiers */ if (ret == 0 && GetSet(pkiMsg, &idx, &length, pkiMsgSz) < 0) @@ -4913,7 +4913,7 @@ static int PKCS7_VerifySignedData(PKCS7* pkcs7, const byte* hashBuf, if (multiPart) { pkcs7->stream->expected = contentLen + ASN_TAG_SZ; } - pkcs7->stream->multi = multiPart; + pkcs7->stream->multi = (byte)multiPart; #endif wc_PKCS7_ChangeState(pkcs7, WC_PKCS7_VERIFY_STAGE3); @@ -5221,7 +5221,7 @@ static int PKCS7_VerifySignedData(PKCS7* pkcs7, const byte* hashBuf, pkcs7->stream = stream; #endif } - pkcs7->version = version; + pkcs7->version = (byte)version; #ifdef ASN_BER_TO_DER pkcs7->der = der; #endif @@ -7692,7 +7692,7 @@ static int wc_PKCS7_PwriKek_KeyWrap(PKCS7* pkcs7, const byte* kek, word32 kekSz, if (*outSz < (word32)outLen) return BUFFER_E; - out[0] = cekSz; + out[0] = (byte)cekSz; out[1] = ~cek[0]; out[2] = ~cek[1]; out[3] = ~cek[2]; @@ -10845,7 +10845,7 @@ WOLFSSL_API int wc_PKCS7_DecodeEnvelopedData(PKCS7* pkcs7, byte* in, byte* encryptedContent = NULL; int explicitOctet = 0; word32 localIdx; - byte tag; + byte tag = 0; if (pkcs7 == NULL) return BAD_FUNC_ARG; diff --git a/wolfssl.vcxproj b/wolfssl.vcxproj index 7b5d251669..b5e9b07659 100644 --- a/wolfssl.vcxproj +++ b/wolfssl.vcxproj @@ -299,6 +299,7 @@ +