Reputation: 31
I want to build the WolfSSL library in a non-standard environment, specifically a STM32F405 chip. The product i am trying to build the library for is a BitCrazy Crazyflie 2.0.
Having read the manual for WolfSSL, chapter 2.4 tells me that i need to keep the directory structure the same as in the downloaded package.
What i don't know is what parts of the download package does what and what parts of it is required for what functionality. My speculation is for basic WolfSSL functionality the parts of the download package i need are:
download_package/src
download_package/wolfssl
Other than these two directories i have no clue.
My needs are for DTLS 1.0 functionality and minimising the memory and storage footprint.
Upvotes: 3
Views: 754
Reputation: 611
wolfSSL offers a freely available porting guide for "building in a non-standard environment". The porting guide is located here:
https://wolfssl.com/wolfSSL/Docs-wolfssl-porting-guide.html
They also provide a tuning guide for removing features/custom tailoring a build here:
https://wolfssl.com/wolfSSL/Docs-wolfssl-tuning-guide.html
wolfSSL provides several DTLS examples located on github here:
https://github.com/kaleb-himes/wolfssl-examples/tree/master/dtls
It looks like if this line of code were to replaced:
wolfDTLSv1_2_client_method
with
wolfDTLSv1_client_method
In this section of https://github.com/kaleb-himes/wolfssl-examples/blob/master/dtls/client-dtls.c:
if ( (ctx = wolfSSL_CTX_new(wolfDTLSv1_2_client_method())) == NULL) {
fprintf(stderr, "wolfSSL_CTX_new error.\n");
return 1;
}
You would get DTLS v1.0 instead of DTLS v1.2
Upvotes: 2