diff --git a/IDE/Renesas/e2studio/RX65N/RSK/wolfssl/.cproject b/IDE/Renesas/e2studio/RX65N/RSK/wolfssl/.cproject
index 3f8e394ad..36ab33606 100644
--- a/IDE/Renesas/e2studio/RX65N/RSK/wolfssl/.cproject
+++ b/IDE/Renesas/e2studio/RX65N/RSK/wolfssl/.cproject
@@ -14,7 +14,7 @@
-
+
@@ -35,7 +35,7 @@
-
+
@@ -61,7 +61,7 @@
-
+
diff --git a/IDE/Renesas/e2studio/RX65N/RSK/wolfssl/wolfssl.rcpc b/IDE/Renesas/e2studio/RX65N/RSK/wolfssl/wolfssl.rcpc
index 48de27cdb..da2fa15e2 100644
--- a/IDE/Renesas/e2studio/RX65N/RSK/wolfssl/wolfssl.rcpc
+++ b/IDE/Renesas/e2studio/RX65N/RSK/wolfssl/wolfssl.rcpc
@@ -88,7 +88,7 @@
R5F565NEDxFC
-
+
@@ -111,7 +111,6 @@
-
diff --git a/IDE/Renesas/e2studio/RX65N/RSK/wolfssl_demo/user_settings.h b/IDE/Renesas/e2studio/RX65N/RSK/wolfssl_demo/user_settings.h
index b1f676d1e..43021a4a3 100644
--- a/IDE/Renesas/e2studio/RX65N/RSK/wolfssl_demo/user_settings.h
+++ b/IDE/Renesas/e2studio/RX65N/RSK/wolfssl_demo/user_settings.h
@@ -36,9 +36,10 @@
* 109: TSIPv1.09
* 113: TSIPv1.13
* 114: TSIPv1.14
+ * 115: TSIPv1.15
*----------------------------------------------------------------------------*/
#define WOLFSSL_RENESAS_TSIP
- #define WOLFSSL_RENESAS_TSIP_VER 114
+ #define WOLFSSL_RENESAS_TSIP_VER 115
/*-- TLS version definitions --------------------------------------------------
@@ -219,3 +220,6 @@
#define HAVE_HKDF
#define WC_RSA_PSS
#endif
+
+/*-- strcasecmp */
+#define XSTRCASECMP(s1,s2) strcmp((s1),(s2))
diff --git a/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl/.cproject b/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl/.cproject
index 68467fab1..8c4057e00 100644
--- a/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl/.cproject
+++ b/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl/.cproject
@@ -14,7 +14,7 @@
-
+
@@ -27,7 +27,7 @@
-
+
@@ -35,6 +35,8 @@
+
+
diff --git a/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl/wolfssl.rcpc b/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl/wolfssl.rcpc
index d2dca8535..81dec5b61 100644
--- a/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl/wolfssl.rcpc
+++ b/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl/wolfssl.rcpc
@@ -88,11 +88,13 @@
R5F572NNHxFB
-
+
-
+
+
+
@@ -106,6 +108,7 @@
+
@@ -116,7 +119,10 @@
-
+
+
+
+
diff --git a/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl_demo/user_settings.h b/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl_demo/user_settings.h
index 369a883e4..3a8cd4043 100644
--- a/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl_demo/user_settings.h
+++ b/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl_demo/user_settings.h
@@ -36,9 +36,10 @@
* 109: TSIPv1.09
* 113: TSIPv1.13
* 114: TSIPv1.14
+ * 115: TSIPv1.15
*----------------------------------------------------------------------------*/
#define WOLFSSL_RENESAS_TSIP
- #define WOLFSSL_RENESAS_TSIP_VER 114
+ #define WOLFSSL_RENESAS_TSIP_VER 115
/*-- TLS version definitions --------------------------------------------------
@@ -60,8 +61,10 @@
#define FREERTOS
#define FREERTOS_TCP
-
-
+#if !defined(FREERTOS_TCP)
+ #define WOLFSSL_NO_SOCK
+ #define WOLFSSL_USER_IO
+#endif
/*-- Cipher related definitions -----------------------------------------------
*
@@ -219,3 +222,6 @@
#define HAVE_HKDF
#define WC_RSA_PSS
#endif
+
+/*-- strcasecmp */
+#define XSTRCASECMP(s1,s2) strcmp((s1),(s2))
diff --git a/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl_demo/wolfssl_demo.c b/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl_demo/wolfssl_demo.c
index b5c4e1c5e..060e5cc72 100644
--- a/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl_demo/wolfssl_demo.c
+++ b/IDE/Renesas/e2studio/RX72N/EnvisionKit/wolfssl_demo/wolfssl_demo.c
@@ -24,11 +24,7 @@
#include
#include
-#include "FreeRTOS.h"
-#include "FreeRTOS_IP.h"
-#include "FreeRTOS_Sockets.h"
-#include "platform/iot_network.h"
-#include "platform.h"
+
#include
@@ -40,6 +36,14 @@
#include
#include
+#include "FreeRTOS.h"
+#if defined(FREERTOS_TCP)
+#include "FreeRTOS_IP.h"
+#include "FreeRTOS_Sockets.h"
+#include "platform/iot_network.h"
+#include "platform.h"
+#endif
+
#if defined(BENCHMARK)
#include "r_cmt_rx_if.h"
#endif
@@ -60,7 +64,7 @@
static WOLFSSL_CTX* client_ctx;
#endif /* TLS_CLIENT */
-#define TLSSERVER_IP "192.168.1.12"
+#define TLSSERVER_IP "192.168.11.49"
#define TLSSERVER_PORT 11111
#define YEAR 2022
#define MON 3
diff --git a/wolfcrypt/src/port/Renesas/renesas_tsip_sha.c b/wolfcrypt/src/port/Renesas/renesas_tsip_sha.c
index fad30640d..bcf047c8f 100644
--- a/wolfcrypt/src/port/Renesas/renesas_tsip_sha.c
+++ b/wolfcrypt/src/port/Renesas/renesas_tsip_sha.c
@@ -35,7 +35,7 @@
#include
#include
-#if !defined(NO_SHA)
+#if !defined(NO_SHA) && !defined(NO_WOLFSSL_RENESAS_TSIP_CRYPT_HASH)
#include
static void TSIPHashFree(wolfssl_TSIP_Hash* hash)
@@ -246,7 +246,7 @@ int wc_ShaCopy(wc_Sha256* src, wc_Sha256* dst)
}
#endif /* !NO_SHA */
-#if !defined(NO_SHA256)
+#if !defined(NO_SHA256) && !defined(NO_WOLFSSL_RENESAS_TSIP_CRYPT_HASH)
#include
/* */
diff --git a/wolfcrypt/src/port/Renesas/renesas_tsip_util.c b/wolfcrypt/src/port/Renesas/renesas_tsip_util.c
index f4a5536ca..620ecd91d 100644
--- a/wolfcrypt/src/port/Renesas/renesas_tsip_util.c
+++ b/wolfcrypt/src/port/Renesas/renesas_tsip_util.c
@@ -43,10 +43,12 @@ typedef e_tsip_err_t (*shaHmacFinalFn)
/* ./ca-cert.der.sign, */
/* expect to have these variables defined at user application */
+#if defined(WOLFSSL_RENESAS_TSIP_TLS) && (WOLFSSL_RENESAS_TSIP_VER>=109)
+extern uint32_t s_inst2[R_TSIP_SINST2_WORD_SIZE];
+#elif defined(WOLFSSL_RENESAS_TSIP_TLS) && (WOLFSSL_RENESAS_TSIP_VER>=106)
extern uint32_t s_flash[];
extern uint32_t s_inst1[R_TSIP_SINST_WORD_SIZE];
-extern uint32_t s_inst2[R_TSIP_SINST2_WORD_SIZE];
-
+#endif
wolfSSL_Mutex tsip_mutex;
static int tsip_CryptHwMutexInit_ = 0;
@@ -267,7 +269,7 @@ int wc_tsip_EccVerify(
int* result, void* ctx)
{
int ret = WOLFSSL_FAILURE;
- uint8_t* sigforSCE;
+ uint8_t* sigforSCE = NULL;
uint8_t* pSig;
const byte rs_size = R_TSIP_ECDSA_DATA_BYTE_SIZE/2;
byte offset = 0x3;
@@ -557,18 +559,18 @@ int tsip_usable(const struct WOLFSSL *ssl, uint8_t session_key_generated)
/* Check if TSIP can handle cipher suite */
if (ret == WOLFSSL_SUCCESS) {
if (
- cipher0 == CIPHER_BYTE &&
+ (cipher0 == CIPHER_BYTE &&
(cipher == l_TLS_RSA_WITH_AES_128_CBC_SHA ||
cipher == l_TLS_RSA_WITH_AES_128_CBC_SHA256 ||
cipher == l_TLS_RSA_WITH_AES_256_CBC_SHA ||
- cipher == l_TLS_RSA_WITH_AES_256_CBC_SHA256)
+ cipher == l_TLS_RSA_WITH_AES_256_CBC_SHA256))
#if (WOLFSSL_RENESAS_TSIP_VER >= TSIP109)
||
- cipher0 == ECC_BYTE &&
+ (cipher0 == ECC_BYTE &&
(cipher == l_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 ||
cipher == l_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 ||
cipher == l_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 ||
- cipher == l_TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256)
+ cipher == l_TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256))
#endif
) {
WOLFSSL_MSG("supported cipher suite");
@@ -1355,7 +1357,7 @@ int wc_tsip_tls_CertVerify(
uint8_t* tsip_encRsaKeyIndex)
{
int ret;
- uint8_t *sigforSCE;
+ uint8_t *sigforSCE = NULL;
uint8_t *pSig;
const byte rs_size = 0x20;
byte offset = 0x3;
@@ -1384,7 +1386,7 @@ int wc_tsip_tls_CertVerify(
return MEMORY_E;
}
/* initialization */
- XMEMCPY(sigforSCE, 0, R_TSIP_ECDSA_DATA_BYTE_SIZE);
+ XMEMSET(sigforSCE, 0, R_TSIP_ECDSA_DATA_BYTE_SIZE);
if (signature[offset] == 0x20) {
XMEMCPY(sigforSCE, &signature[offset+1], rs_size);
diff --git a/wolfcrypt/src/sha256.c b/wolfcrypt/src/sha256.c
index c893b05e4..0b231669b 100644
--- a/wolfcrypt/src/sha256.c
+++ b/wolfcrypt/src/sha256.c
@@ -182,7 +182,7 @@ where 0 <= L < 2^64.
defined(WOLFSSL_QNX_CAAM)) && \
!defined(WOLFSSL_AFALG_HASH) && !defined(WOLFSSL_DEVCRYPTO_HASH) && \
(!defined(WOLFSSL_ESP32WROOM32_CRYPT) || defined(NO_WOLFSSL_ESP32WROOM32_CRYPT_HASH)) && \
- (!defined(WOLFSSL_RENESAS_TSIP_CRYPT) || defined(NO_WOLFSSL_RENESAS_TSIP_HASH)) && \
+ (!defined(WOLFSSL_RENESAS_TSIP_CRYPT) || defined(NO_WOLFSSL_RENESAS_TSIP_CRYPT_HASH)) && \
!defined(WOLFSSL_PSOC6_CRYPTO) && !defined(WOLFSSL_IMXRT_DCP) && !defined(WOLFSSL_SILABS_SE_ACCEL) && \
!defined(WOLFSSL_KCAPI_HASH) && !defined(WOLFSSL_SE050_HASH) && \
(!defined(WOLFSSL_RENESAS_SCEPROTECT) || defined(NO_WOLFSSL_RENESAS_SCEPROTECT_HASH)) && \