Andras Fekete e14abbdc79 Cleanup spelling | 2 months ago | |
---|---|---|
.. | ||
wolfCrypt-Test | 2 months ago | |
wolfSSL-DTLS-PSK-Server | 2 months ago | |
wolfSSL-DTLS-Server | 2 months ago | |
wolfSSL-Example-IOCallbacks | 2 months ago | |
wolfSSL-TLS-Client | 2 months ago | |
wolfSSL-TLS-PSK-Client | 2 months ago | |
wolfSSL-TLS-PSK-Server | 2 months ago | |
wolfSSL-TLS-Server | 2 months ago | |
wolfSSL-TLS-ServerThreaded | 2 months ago | |
wolfSSL_CSharp | 1 month ago | |
README.md | 2 months ago | |
include.am | 2 months ago | |
user_settings.h | 2 months ago | |
wolfSSL_CSharp.sln | 2 months ago | |
wolfssl.vcxproj | 2 months ago |
This directory contains the CSharp wrapper for the wolfSSL TLS layer with examples.
wolfSSL_CSharp
: wolfSSL TLS layer wrappers (library).wolfCrypt-Test
: wolfCrypt layer wrapper testing.user_settings.h
: wolfCrypt wrapper user settings.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.
To successfully run and build the solution on Windows Visual Studio you will
need to open a new solution wolfSSL_CSharp.sln
located in wrapper\CSharp\wolfSSL_CSharp.sln
.
Select the CPU type, configuration, and target file.
select Build
and either Rebuild Solution
or Build Solution
.
Prerequisites for linux:
apt-get update
apt-get upgrade
apt-get install mono-complete
./autogen.sh
./configure --enable-keygen --enable-eccencrypt --enable-ed25519 --enable-curve25519 --enable-aesgcm
make
make check
sudo make install
From the wrapper/CSharp
directory (cd wrapper/CSharp
):
Compile wolfCrypt test:
mcs wolfCrypt-Test/wolfCrypt-Test.cs wolfSSL_CSharp/wolfCrypt.cs -OUT:wolfcrypttest.exe
mono wolfcrypttest.exe
From the wrapper/CSharp
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