Topic: Headers without source

I have been making use of OpenSSL on a Linux system to provide Diffie Hellman algorithms.
Now I am attempting to use wolfSSL embedded SSL to get those algorithms on an embedded system.
The problem is that wolfSSL doesn't seem to make use of those OpenSSL algorithms.
In the folder cyassl there are two other folders, ctaocrypt and openssl.
There I can find two headers for two different Diffie Hellman implementations.
I can however only find the source of the ctaocrypt one (cyassl-2.8.0/ctaocrypt/src),
and not the source to the openssl one. It doesn't seem like it is left out because
the header that I found is modified with wolfSSL API statements and so forth.
Why is this done if it is simply left out? Is it really missing or am I not seeing it / misunderstanding it.

TLDR: looking for source to cyassl-2.8.0.zip\cyassl-2.8.0\cyassl\openssl\DH.h

Could anyone enlighten me? it would be much apreciated.

Menno

Share

Re: Headers without source

Hi Menno,

from what I understand, wolfSSL provides an OpenSSL API 'wrapper' which simply provides the function names as used by OpenSSL, but internally remaps them to wolfSSL's own functions. I also read that this compatibility layer is by no means complete but rather wraps the most widely used OpenSSL functions.
Let's take the OpenSSL function DH_generate_key and look at the file you mentioned:

#define DH_generate_key wolfSSL_DH_generate_key

This maps this function to wolfSSL_DH_generate_key.
The source for this wolfSSL-specific function is then found inside /cyassl-2.8.0/src/ssl.c starting at line 9061:

    /* return SSL_SUCCESS on ok, else 0 */
    int CyaSSL_DH_generate_key(CYASSL_DH* dh)
    {

You should have a look into chapter 13 of the wolfSSL manual if you have not yet done so:
http://www.yassl.com/yaSSL/Docs-cyassl- … ility.html

I hope this helps, nevertheless someone from WolfSSL may give a better answer smile.

Regards,
- Daniel

Share

Re: Headers without source

That is exactly what I wanted to know! Thanks a lot!  big_smile

Share