This application report introduces how to integrate the wolfSSL onto TI Sitara RTOS.
Project collateral discussed in this application report can be downloaded from the following URL: http://www.ti.com/lit/zip/spracm5.
All other trademarks are the property of their respective owners.
WolfSSL is a famous TLS/SSL software solution and it is proven by many worldwide customers. Its quality is robust and the WolfSSL company maintains the security of their product each year.
This document contains:
Follow these steps for porting:
Create the three sub-folders (see Figure 1) in your code base, then put those folders under the parent folder named: wolfSSL.
If you are installing all of the TI packages, then, go to pdk_am335x_1_0_10\packages\MyExampleProjects\NIMU_FtpExample_skAM335x_armExampleproject\wolfssl\src.
If you are installing all of the TI packages, then, go to pdk_am335x_1_0_10\packages\MyExampleProjects\NIMU_FtpExample_skAM335x_armExampleproject\wolfssl\wolfcrypt\src.
Do not copy the “port” dir.
Do not copy the .asm .s file.
Figure 4 is marked with “X”.
If you are installing all the TI packgeI, then, go to pdk_am335x_1_0_10\packages\MyExampleProjects\ NIMU_FtpExample_skAM335x_armExampleproject\wolfssl\wolfSSL.
If you are installing all the TI packge, then, go to pdk_am335x_1_0_10\packages\MyExampleProjects\NIMU_FtpExample_skAM335x_armExampleproject\wolfssl\wolfSSL\wolfcrypt.
In the wolfssl\wolfcrypt\src\random.c, add the code as shown in Figure 7.
Add a new file (for example):
Reference the random_rng_Porting.c file in this zip file: 2018_5_15_WolfSSL_Importan_Temp_Backup_Client_Server_All_Okay_Release.
Download from here.
The first part is to register the user I/O call back:
Another one is to get the system time, this is related with the NO_ASN_TIME/ASN_TIME config.
For example, xNO_FILESYSTEM is to disable the “NO_FILESYSTEM”.
Add the included folder for the wolfSSL used header file.
Select the right compiler version and the boards. AM335SK can use the ICE_AM3359.
Please make sure the right versions of:
The important key for the download image and debug is the JTAG.
You can test the connection while finishing your own setting of the “ccxml.
You can reference this article:
You can access the two exe files that are listed under this path: : wolfssl-master\Debug.
The testing environment is as shown in Figure 21; each node will communicate with the Ethernet.
Search on YouTube for “TI Rio WolfSSL”. Or, visit the link here.
You can reference this article:
The four API are the basic soul for the entire demo. All of the important API are listed as shown below.
The two calls are user configured for your own code; you can refer to the wolSSL porting guide.
The following are the APIs used after the TCP socket is configured and connected. The wolfSSL data transmission on the TCP socket will rely on those APIs.