This directory contains the CSharp wrapper for the wolfSSL TLS layer with examples.
wolfSSL_CSharp
: wolfSSL TLS layer wrappers (library)Examples:
wolfSSL-DTLS-PSK-Server
wolfSSL-DTLS-Server
wolfSSL-Example-IOCallbacks
wolfSSL-TLS-Client
wolfSSL-TLS-PSK-Client
wolfSSL-TLS-PSK-Server
wolfSSL-TLS-Server
wolfSSL-TLS-ServerThreaded
A Visual Studio solution wolfSSL_CSharp.sln
is provided. This will allow you
to build the wrapper library and examples. It includes the wolfSSL Visual Studio
project directly.
Prerequisites for linux:
apt-get update
apt-get upgrade
apt-get install mono-complete
./autogen.sh
./configure --enable-wolftpm
make
make check
sudo make install
From the wolfssl root directory:
cd wrapper/CSharp
Compile server:
mcs wolfSSL_CSharp/wolfSSL.cs wolfSSL_CSharp/X509.cs \
wolfSSL-TLS-Server/wolfSSL-TLS-Server.cs -OUT:server.exe
Compile client:
mcs wolfSSL_CSharp/wolfSSL.cs wolfSSL_CSharp/X509.cs \
wolfSSL-TLS-Client/wolfSSL-TLS-Client.cs -OUT:client.exe
In one terminal instance run the server:
mono server.exe
And in another terminal instance run the client:
mono client.exe
To enable SNI, just pass the -S
argument with the specified hostname to the client:
mono client.exe -S hostname
And run the server with the -S
flag:
mono server.exe -S