Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions IDE/Renesas/e2studio/RA6M4/common/user_settings.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,32 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#if defined(WOLFSSL_RENESAS_SCEPROTECT)
/* FSP SM stands for Flexible Software Package Security Module
* WOLFSSL_RENESAS_FSPSM enables fundamental code when it uses.
* e.g. Open/Close/Random generator
* WOLFSSL_RENESAS_FSPSPM_TLS enables TLS related code for FSP SM
* e.g. Certificate verification, Master Secret Generation
* WOLFSSL_RENESAS_SCEPROTECT enables specific code for SCE if needed
*/
#define WOLFSSL_RENESAS_FSPSM
#define WOLFSSL_RENESAS_FSPSM_TLS
#endif

/* XXX_CRYPTONLY definition enables FSP SM module for Crypto only use.
* Therefore, it disables TLS related API use
*/
/* # define WOLFSSL_RENESAS_SCEPROTECT_CRYPTONLY */

#if defined(WOLFSSL_RENESAS_SCEPROTECT_CRYPTONLY)
#undef WOLFSSL_RENESAS_FSPSM_TLS
#define WOLFSSL_RENESAS_FSPSM_CRYPTONLY

#if !defined(WOLFSSL_RENESAS_SCEPROTECT)
#define WOLFSSL_RENESAS_SCEPROTECT
#endif
#endif

/* Operating Environment and Threading */
#define FREERTOS
#define FREERTOS_TCP
Expand Down Expand Up @@ -61,6 +87,9 @@
#define printf myprintf
#endif

/* Enable the following definition to use TLS 1.3
* For TLS1.3 use "extended-master" needs to turn on
*/
/* #define WOLFSSL_TLS13 */

#if defined(WOLFSSL_TLS13)
Expand Down
2 changes: 1 addition & 1 deletion IDE/Renesas/e2studio/RA6M4/common/wolfssl_demo.h
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ typedef struct tagTestInfo
void sce_test();
void TCPInit();
void wolfSSL_TLS_client_init();
void wolfSSL_TLS_client_do(void *pvParam);
int wolfSSL_TLS_client_do(void *pvParam);
void wolfSSL_TLS_cleanup();
extern WOLFSSL_CTX *client_ctx;

Expand Down
104 changes: 52 additions & 52 deletions IDE/Renesas/e2studio/RA6M4/test/key_data/key_data_sce.c
Original file line number Diff line number Diff line change
Expand Up @@ -72,32 +72,32 @@ const st_user_key_block_data_t g_key_block_data =
* This is used for Root Certificate verify by SCE */
const unsigned char ca_cert_der_sign[] =
{
0x19, 0xB4, 0xD1, 0x53, 0xBB, 0x87, 0x0B, 0xD8, 0xD8, 0xFC,
0x22, 0x21, 0xA6, 0xC1, 0xE5, 0xB2, 0x7A, 0xEF, 0xAF, 0x89,
0x8B, 0x92, 0xC9, 0x4E, 0x59, 0xF0, 0x0B, 0xAB, 0x24, 0x84,
0x60, 0x2D, 0x81, 0x42, 0x4A, 0x05, 0x2F, 0x2D, 0xAB, 0x20,
0x3F, 0x8D, 0xCA, 0x9F, 0x37, 0x4B, 0xDF, 0xE3, 0x2A, 0xA3,
0x3F, 0x4E, 0x09, 0x20, 0x08, 0xD4, 0x46, 0xD9, 0xF0, 0xD8,
0xA7, 0x43, 0x60, 0xE2, 0x1D, 0xF7, 0x25, 0x64, 0x38, 0xD2,
0xB1, 0x4E, 0x1F, 0x84, 0xFC, 0xC5, 0x55, 0x2C, 0x1A, 0xA2,
0xCE, 0x99, 0xD0, 0x21, 0x93, 0xA5, 0xDB, 0x6F, 0x14, 0x2C,
0xDF, 0x9A, 0x01, 0x6A, 0x9A, 0xCC, 0xB0, 0x08, 0xD8, 0xCF,
0xA8, 0x94, 0x41, 0x23, 0xBB, 0xC2, 0xA3, 0x8B, 0x77, 0x35,
0x27, 0x0D, 0x94, 0x16, 0xF3, 0xCA, 0x16, 0xA2, 0x4C, 0x2F,
0xB0, 0x8D, 0xE6, 0x38, 0xCC, 0x9C, 0x34, 0xE8, 0xDC, 0xDC,
0x1C, 0x5C, 0x88, 0x52, 0x97, 0x47, 0xC6, 0xB6, 0x66, 0xCF,
0xCE, 0xBF, 0xF0, 0x24, 0x19, 0x0F, 0x07, 0xA5, 0xC4, 0xC6,
0x37, 0x0D, 0x2A, 0x11, 0x6A, 0x66, 0x64, 0x62, 0x0E, 0xE6,
0xCB, 0xAF, 0xFB, 0x2E, 0x8E, 0x37, 0x1E, 0x6D, 0xD1, 0xAD,
0xE4, 0x16, 0x06, 0xFB, 0x43, 0x2E, 0x4D, 0x64, 0x18, 0xB2,
0x4C, 0xE7, 0xD3, 0xE9, 0x9B, 0x95, 0x13, 0x7D, 0x7D, 0x93,
0xC2, 0x34, 0x43, 0x0C, 0xFF, 0x58, 0xD3, 0xA7, 0x21, 0x8E,
0x2B, 0xB3, 0x36, 0x90, 0xF1, 0x1E, 0x0E, 0x87, 0x41, 0x48,
0xC9, 0x69, 0x57, 0x89, 0xD0, 0xF7, 0x86, 0x47, 0x8F, 0xF5,
0xA8, 0x13, 0x24, 0x0A, 0x7E, 0xE3, 0xBB, 0x9F, 0xF1, 0xDF,
0x30, 0xE7, 0x88, 0x70, 0x8A, 0x46, 0xD9, 0x1A, 0x50, 0x42,
0x4F, 0xCF, 0xC3, 0xCB, 0xCF, 0xE4, 0xA7, 0xA3, 0x74, 0x0A,
0xDE, 0x14, 0xAF, 0xA5, 0x7F, 0xE2
0x70, 0x4D, 0x6C, 0xCC, 0xAD, 0xD0, 0x74, 0x34, 0x10, 0xB3,
0x1F, 0x26, 0x49, 0x31, 0xD0, 0xD5, 0x0B, 0x4F, 0x50, 0xD4,
0x21, 0x7D, 0x3D, 0xE6, 0x9D, 0x5A, 0xF1, 0xE4, 0x48, 0xBD,
0x6D, 0xB3, 0x58, 0xB4, 0x07, 0xF1, 0x06, 0xA7, 0x3D, 0xB7,
0x24, 0x60, 0xBD, 0x72, 0xB2, 0x7B, 0xA8, 0x4F, 0xFC, 0x47,
0x64, 0xF0, 0x04, 0xBE, 0xC7, 0xAE, 0xB6, 0x6F, 0xA5, 0xD6,
0x65, 0xE9, 0xB5, 0x3D, 0x8A, 0xC8, 0x27, 0x9A, 0x3B, 0x4C,
0x98, 0xB0, 0x5F, 0x1E, 0x54, 0xA5, 0xEF, 0xBC, 0x61, 0xA7,
0x3F, 0xB7, 0x5D, 0x36, 0x5A, 0x27, 0x1C, 0x5A, 0xAF, 0x65,
0x7A, 0x89, 0x4F, 0x00, 0xB1, 0x75, 0xA7, 0xA9, 0x5C, 0xE8,
0xC8, 0x0E, 0x5C, 0x83, 0x12, 0x47, 0x11, 0xD1, 0xBD, 0xF4,
0x10, 0x7D, 0x7B, 0xD6, 0x05, 0xF7, 0xBE, 0xD2, 0x70, 0x05,
0x56, 0xD6, 0x84, 0x70, 0x11, 0x3D, 0x67, 0x93, 0x2E, 0xB0,
0x93, 0xBA, 0x34, 0xD0, 0xDE, 0xB8, 0x16, 0x7B, 0x0D, 0x67,
0x16, 0x92, 0x91, 0x79, 0xAC, 0x3C, 0xC9, 0x4D, 0x8A, 0xEE,
0x31, 0xCC, 0xFC, 0xF7, 0x78, 0xB3, 0x1B, 0x0F, 0x54, 0xCE,
0xF4, 0xBB, 0xE7, 0xF4, 0xAC, 0x80, 0xEF, 0xDD, 0xFF, 0x84,
0x7A, 0x37, 0xED, 0xC4, 0x45, 0x3D, 0x7C, 0x19, 0x81, 0x95,
0x2E, 0x71, 0xE7, 0x1B, 0x1C, 0x75, 0x67, 0xBC, 0x62, 0x0F,
0xAA, 0x90, 0x41, 0x01, 0x53, 0xD0, 0x3A, 0x6E, 0xE9, 0xC9,
0xAA, 0x2F, 0xD1, 0xD8, 0xB3, 0x3B, 0x80, 0xCA, 0xE5, 0xA1,
0x1B, 0x7F, 0xCF, 0xF5, 0xBF, 0x2C, 0x2B, 0xBE, 0x1F, 0x77,
0x89, 0x21, 0xD7, 0x76, 0x51, 0xA8, 0xD0, 0x31, 0xE1, 0x97,
0xD1, 0x63, 0x84, 0xA2, 0xAA, 0x6E, 0x9A, 0x33, 0x43, 0x65,
0x2A, 0x6B, 0x40, 0x03, 0x84, 0x6F, 0xC7, 0xB3, 0xE5, 0xD8,
0x64, 0x30, 0x12, 0x2A, 0x45, 0x1D
};

const int sizeof_ca_cert_der_sign = sizeof(ca_cert_der_sign);
Expand All @@ -108,32 +108,32 @@ const int sizeof_ca_cert_der_sign = sizeof(ca_cert_der_sign);
*/
const unsigned char ca_ecc_cert_der_sign[] =
{
0x66, 0x96, 0xB4, 0x9F, 0x0B, 0x56, 0x60, 0x1F, 0x01, 0x7A,
0xDE, 0x65, 0xD6, 0x8C, 0x2A, 0xE2, 0x20, 0xA0, 0xE8, 0x19,
0x99, 0x70, 0x8B, 0x17, 0x1B, 0xDA, 0x8C, 0x3A, 0x87, 0x07,
0xE7, 0xF9, 0x1B, 0x7C, 0xC1, 0x32, 0x55, 0x38, 0x15, 0x9C,
0x7B, 0x89, 0xDA, 0x9D, 0x57, 0x80, 0x50, 0xCF, 0xA6, 0x4C,
0x51, 0x71, 0xBA, 0x52, 0xFA, 0x58, 0x4C, 0xE7, 0x33, 0x08,
0xB9, 0xE7, 0x5F, 0x7E, 0x8A, 0x1D, 0xCC, 0xA8, 0x4A, 0xA9,
0xAF, 0xE5, 0xA1, 0x87, 0x59, 0xD0, 0xF7, 0x23, 0xAE, 0xC5,
0x42, 0x99, 0xFA, 0x4A, 0xAB, 0xFA, 0x08, 0xF9, 0x7C, 0x8D,
0xD3, 0xB1, 0xF7, 0xD8, 0x01, 0x3C, 0x06, 0xD5, 0x2C, 0xBF,
0x18, 0xF1, 0x45, 0x47, 0x5D, 0xA4, 0x7F, 0x90, 0x4E, 0x0C,
0x86, 0x41, 0x5F, 0x26, 0x25, 0x8B, 0x8A, 0xD8, 0x3F, 0x4B,
0xAF, 0xD5, 0xBE, 0xD9, 0xC6, 0x46, 0x2A, 0x2B, 0xC3, 0x10,
0x93, 0xCB, 0x1E, 0xFB, 0x3D, 0x8A, 0x39, 0xB6, 0x03, 0x9D,
0xC2, 0x16, 0xA1, 0xB5, 0x9C, 0x0D, 0x05, 0x5E, 0x1B, 0x30,
0x9F, 0x53, 0xEE, 0xF2, 0x27, 0xE1, 0xE3, 0x2F, 0xD9, 0xEB,
0xF2, 0xFE, 0xD3, 0x6C, 0x71, 0xCE, 0x28, 0x56, 0x9F, 0x85,
0x34, 0xAD, 0x9D, 0x3D, 0x22, 0x3A, 0x33, 0x3B, 0x9F, 0x55,
0x4F, 0x10, 0xA9, 0xD2, 0xAB, 0xE0, 0x29, 0x7A, 0x09, 0xF3,
0x4E, 0xC1, 0x21, 0xA7, 0xF4, 0xE5, 0x34, 0x6D, 0x68, 0x36,
0xE9, 0x7B, 0xD4, 0x42, 0x0A, 0xBC, 0xC4, 0x1F, 0x6C, 0x58,
0xB6, 0x65, 0x3F, 0x9F, 0x92, 0x65, 0xF9, 0x83, 0x7A, 0x94,
0x66, 0x7C, 0xB2, 0x03, 0x16, 0x65, 0x9E, 0xBF, 0x8C, 0x77,
0xB8, 0xA4, 0x13, 0x8B, 0xD3, 0x82, 0x39, 0x94, 0xD1, 0x2A,
0xE3, 0x3E, 0x51, 0xEB, 0x56, 0xE2, 0x92, 0x5C, 0x6B, 0xD1,
0x30, 0xD1, 0x91, 0x77, 0x6E, 0x28
0xB9, 0x59, 0x94, 0xE6, 0xD1, 0x5B, 0xFD, 0x59, 0xBB, 0x4F,
0x14, 0x0B, 0x9E, 0x30, 0x61, 0xF9, 0xFA, 0x2C, 0xD8, 0xE2,
0x7F, 0xD0, 0x1F, 0x47, 0xDE, 0x14, 0x8E, 0xD1, 0x78, 0x86,
0xA4, 0x9B, 0xDC, 0x86, 0x64, 0x2A, 0xD9, 0xBC, 0xBE, 0x61,
0x60, 0xB8, 0x1C, 0x46, 0xCE, 0x66, 0x97, 0xC0, 0x32, 0x04,
0x38, 0x3B, 0xCB, 0xB7, 0x38, 0x89, 0x11, 0xCE, 0xBA, 0x64,
0xE1, 0xDD, 0x4E, 0x3C, 0x6F, 0xA0, 0x48, 0xFA, 0x9F, 0x8F,
0xEC, 0x6A, 0xCA, 0xAC, 0x29, 0x4B, 0xD9, 0xF7, 0xE3, 0x03,
0xF7, 0xBA, 0xB8, 0xCC, 0x2C, 0xD1, 0xC8, 0x84, 0xFA, 0xF6,
0xFA, 0xE4, 0x72, 0xAF, 0x8D, 0x07, 0xF0, 0x3D, 0xD7, 0x58,
0x95, 0x08, 0x6F, 0xD5, 0x77, 0x1B, 0x92, 0x81, 0x99, 0x69,
0x5C, 0x4D, 0x8F, 0x98, 0xC6, 0x09, 0xC1, 0xEB, 0xB5, 0x86,
0x87, 0x47, 0xD7, 0x68, 0x73, 0xE8, 0x1D, 0x1B, 0xFE, 0xA5,
0x9C, 0x7A, 0x4B, 0xAD, 0x1A, 0x54, 0x46, 0xA0, 0xC8, 0xF7,
0x6C, 0xDD, 0xA6, 0xEF, 0x16, 0x21, 0x18, 0xCE, 0xF8, 0xDE,
0x3D, 0xB4, 0x56, 0x0C, 0xBA, 0xB7, 0x95, 0xD1, 0x6D, 0x0D,
0x49, 0xE7, 0x78, 0x64, 0x65, 0xC7, 0x24, 0x26, 0x81, 0xCD,
0x56, 0xB7, 0xB2, 0x31, 0xF2, 0xD7, 0x64, 0x55, 0x89, 0xCC,
0xDB, 0x69, 0x56, 0xED, 0x9B, 0x07, 0x9E, 0xD4, 0x07, 0x5E,
0xAF, 0xF0, 0x98, 0x94, 0xD6, 0x87, 0x0C, 0x22, 0xE1, 0x3A,
0x88, 0xE1, 0xC4, 0xBC, 0x51, 0x4B, 0x07, 0x4D, 0x2A, 0xCE,
0xA8, 0xE8, 0x9F, 0xF7, 0xA2, 0x8A, 0xEA, 0x90, 0x32, 0x20,
0xFC, 0xB6, 0x32, 0xE6, 0x8A, 0x47, 0x2B, 0xF4, 0xB4, 0x0F,
0x96, 0x7A, 0xC9, 0x0B, 0xF6, 0xBF, 0x69, 0x51, 0x9B, 0x44,
0xC2, 0xE2, 0xD6, 0x2D, 0xB1, 0x17, 0xAC, 0x7B, 0x32, 0xF2,
0x0E, 0x7A, 0x28, 0x67, 0xAB, 0xA5
};
static const int sizeof_ca_ecc_cert_der_sign = sizeof(ca_ecc_cert_der_sign);
#endif /* USE_CERT_BUFFERS_256 */
79 changes: 49 additions & 30 deletions IDE/Renesas/e2studio/RA6M4/test/src/test_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,12 @@

#if defined(WOLFSSL_RENESAS_SCEPROTECT) || \
defined(WOLFSSL_RENESAS_SCEPROTECT_CRYPTONLY)
#include <wolfssl/wolfcrypt/port/Renesas/renesas-sce-crypt.h>
#include <wolfssl/wolfcrypt/port/Renesas/renesas-fspsm-crypt.h>
#if defined(TLS_MULTITHREAD_TEST)
User_SCEPKCbInfo guser_PKCbInfo_taskA;
User_SCEPKCbInfo guser_PKCbInfo_taskB;
FSPSM_ST guser_PKCbInfo_taskA;
FSPSM_ST guser_PKCbInfo_taskB;
#else
User_SCEPKCbInfo guser_PKCbInfo;
FSPSM_ST guser_PKCbInfo;
#endif
#endif

Expand Down Expand Up @@ -128,35 +128,39 @@ static void my_Logging_cb(const int logLevel, const char *const logMessage)
}
#endif

void Clr_CallbackCtx(User_SCEPKCbInfo *g)
#if defined(WOLFSSL_RENESAS_SCEPROTECT)
void Clr_CallbackCtx(FSPSM_ST *g)
{
if (g->sce_wrapped_key_aes256 != NULL)
XFREE(g->sce_wrapped_key_aes256,
(void) g;

if (g->wrapped_key_aes256 != NULL)
XFREE(g->wrapped_key_aes256,
NULL, DYNAMIC_TYPE_TMP_BUFFER);

if (g->sce_wrapped_key_aes128 != NULL)
XFREE(g->sce_wrapped_key_aes128,
if (g->wrapped_key_aes128 != NULL)
XFREE(g->wrapped_key_aes128,
NULL, DYNAMIC_TYPE_TMP_BUFFER);

#if defined(WOLFSSL_RENESAS_SCEPROTECT_CRYPTONLY)
if (g->sce_wrapped_key_rsapri2048 != NULL)
XFREE(g->sce_wrapped_key_rsapri2048,
if (g->wrapped_key_rsapri2048 != NULL)
XFREE(g->wrapped_key_rsapri2048,
NULL, DYNAMIC_TYPE_TMP_BUFFER);

if (g->sce_wrapped_key_rsapub2048 != NULL)
XFREE(g->sce_wrapped_key_rsapub2048,
if (g->wrapped_key_rsapub2048 != NULL)
XFREE(g->wrapped_key_rsapub2048,
NULL, DYNAMIC_TYPE_TMP_BUFFER);

if (g->sce_wrapped_key_rsapri1024 != NULL)
XFREE(g->sce_wrapped_key_rsapri1024,
if (g->wrapped_key_rsapri1024 != NULL)
XFREE(g->wrapped_key_rsapri1024,
NULL, DYNAMIC_TYPE_TMP_BUFFER);

if (g->sce_wrapped_key_rsapub2048 != NULL)
XFREE(g->sce_wrapped_key_rsapub1024,
if (g->wrapped_key_rsapub2048 != NULL)
XFREE(g->wrapped_key_rsapub1024,
NULL, DYNAMIC_TYPE_TMP_BUFFER);
#endif
XMEMSET(g, 0, sizeof(User_SCEPKCbInfo));
}
#endif

void sce_test(void)
{
Expand Down Expand Up @@ -236,15 +240,15 @@ void sce_test(void)
sce_aes_wrapped_key_t *p1 = NULL;
sce_aes_wrapped_key_t *p2 = NULL;

guser_PKCbInfo.sce_wrapped_key_aes256 =
guser_PKCbInfo.wrapped_key_aes256 =
(sce_aes_wrapped_key_t*)XMALLOC(sizeof(sce_aes_wrapped_key_t),
NULL, DYNAMIC_TYPE_TMP_BUFFER);
p1 = (sce_aes_wrapped_key_t*)guser_PKCbInfo.sce_wrapped_key_aes256;
p1 = (sce_aes_wrapped_key_t*)guser_PKCbInfo.wrapped_key_aes256;

guser_PKCbInfo.sce_wrapped_key_aes128 =
guser_PKCbInfo.wrapped_key_aes128 =
(sce_aes_wrapped_key_t*)XMALLOC(sizeof(sce_aes_wrapped_key_t),
NULL, DYNAMIC_TYPE_TMP_BUFFER);
p2 = (sce_aes_wrapped_key_t*)guser_PKCbInfo.sce_wrapped_key_aes128;
p2 = (sce_aes_wrapped_key_t*)guser_PKCbInfo.wrapped_key_aes128;

if ( p1 == NULL || p2 == NULL) {
printf("failed to alloc memory!");
Expand Down Expand Up @@ -276,6 +280,16 @@ void sce_test(void)
#include "hal_data.h"
#include "r_sce.h"

#if defined(WOLFSSL_TLS13)
/* TLS1.3 needs RSA_PSS enabled.
* SCE doesn't support RSA PSS Padding
*/
const char* cipherlist[] = {
NULL
};
const int cipherlist_sz = 1;
TestInfo info[cipherlist_sz];
#else
#if defined(USE_CERT_BUFFERS_256)
#if !defined(TLS_MULTITHREAD_TEST)
const char* cipherlist[] = {
Expand Down Expand Up @@ -317,6 +331,7 @@ void sce_test(void)
TestInfo info[cipherlist_sz];
#endif
#endif
#endif

#ifdef TLS_MULTITHREAD_TEST
BaseType_t xReturned;
Expand Down Expand Up @@ -381,22 +396,26 @@ void sce_test(void)

#else

int TCP_connect_retry = 0;
wolfSSL_TLS_client_init();

do {

info[i].port = DEFAULT_PORT;
info[i].cipher = cipherlist[i];
info[i].ctx = client_ctx;
info[i].id = i;

memset(info[i].name, 0, sizeof(info[i].name));
sprintf(info[i].name, "wolfSSL_TLS_client_do(%02d)", i);
info[i].port = DEFAULT_PORT;
info[i].cipher = cipherlist[i];
info[i].ctx = client_ctx;
info[i].id = i;

wolfSSL_TLS_client_do(&info[i]);
XMEMSET(info[i].name, 0, sizeof(info[i].name));
XSPRINTF(info[i].name, "wolfSSL_TLS_client_do(%02d)", i);

if(wolfSSL_TLS_client_do(&info[i]) == -116) {
TCP_connect_retry++;
continue;
}
TCP_connect_retry = 0;
i++;
} while (i < cipherlist_sz);
} while (i < cipherlist_sz && TCP_connect_retry < 5);

#endif /* SCE_MULTITHREAD_TEST */

Expand Down
22 changes: 14 additions & 8 deletions IDE/Renesas/e2studio/RA6M4/test/src/wolf_client.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,14 @@ static const byte ucDNSServerAddress[4] = { 192, 168, 11, 1 };

#ifdef TLS_MULTITHREAD_TEST
xSemaphoreHandle exit_semaph;
extern User_SCEPKCbInfo guser_PKCbInfo_taskA;
extern User_SCEPKCbInfo guser_PKCbInfo_taskB;
# ifdef WOLFSSL_RENESAS_SCEPROTECT
extern FSPSM_ST guser_PKCbInfo_taskA;
extern FSPSM_ST guser_PKCbInfo_taskB;
# endif
#else
extern User_SCEPKCbInfo guser_PKCbInfo;
# ifdef WOLFSSL_RENESAS_SCEPROTECT
extern FSPSM_ST guser_PKCbInfo;
# endif
#endif

int SEGGER_RTT_vprintf(unsigned BufferIndex, const char * sFormat, va_list * pParamList);
Expand Down Expand Up @@ -125,7 +129,7 @@ void wolfSSL_TLS_client_init()
#endif
}

void wolfSSL_TLS_client_do(void *pvParam)
int wolfSSL_TLS_client_do(void *pvParam)
{

int ret;
Expand Down Expand Up @@ -192,17 +196,17 @@ void wolfSSL_TLS_client_do(void *pvParam)
/* Set callback CTX */
#if !defined(TLS_MULTITHREAD_TEST)

memset(&guser_PKCbInfo, 0, sizeof(User_SCEPKCbInfo));
XMEMSET(&guser_PKCbInfo, 0, sizeof(FSPSM_ST));
guser_PKCbInfo.devId = 0;
wc_sce_set_callback_ctx(ssl, (void*)&guser_PKCbInfo);

#else
if (p->port - DEFAULT_PORT == 0) {
memset(&guser_PKCbInfo_taskA, 0, sizeof(User_SCEPKCbInfo));
XMEMSET(&guser_PKCbInfo_taskA, 0, sizeof(FSPSM_ST));
wc_sce_set_callback_ctx(ssl, (void*)&guser_PKCbInfo_taskA);
}
else {
memset(&guser_PKCbInfo_taskB, 0, sizeof(User_SCEPKCbInfo));
XMEMSET(&guser_PKCbInfo_taskB, 0, sizeof(FSPSM_ST));
wc_sce_set_callback_ctx(ssl, (void*)&guser_PKCbInfo_taskB);
}
#endif
Expand Down Expand Up @@ -257,7 +261,9 @@ void wolfSSL_TLS_client_do(void *pvParam)
wolfSSL_free(ssl);
ssl = NULL;
/* need to reset callback */
#ifdef WOLFSSL_RENESAS_SCEPROTECT
wc_sce_set_callbacks(client_ctx);
#endif
}
/* clean up socket */
if (xClientSocket) {
Expand All @@ -270,7 +276,7 @@ void wolfSSL_TLS_client_do(void *pvParam)
xSemaphoreGive(exit_semaph);
vTaskDelete(NULL);
#endif

return ret;
}

void wolfSSL_TLS_cleanup()
Expand Down
Loading