StrToLower
StrToLower

Reputation: 31

Building and adding WolfSSL library to a new environment

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

Answers (1)

Kaleb
Kaleb

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

Related Questions