Daniel Pouzzner a3fb5029f8 clean up trailing whitespace and misplaced CRLFs, add missing final newlines, remove stray UTF8 nonprintables (BOMs) and ASCIIfy stray homoglyphs (spaces and apostrophes), guided by expanded coverage in wolfssl-multi-test check-source-text. | 3 months ago | |
---|---|---|
.. | ||
sketches | 3 months ago | |
Arduino_README_prepend.md | 5 months ago | |
README.md | 3 months ago | |
include.am | 9 months ago | |
keywords.txt | 10 months ago | |
library.properties.template | 9 months ago | |
wolfssl-arduino.sh | 3 months ago | |
wolfssl.h | 9 months ago |
See the example sketches:
When publishing a new version to the Arduino Registry, be sure to edit WOLFSSL_VERSION_ARUINO_SUFFIX
in the wolfssl-arduino.sh
script.
Many of the supported boards are natively built-in to the Arduino IDE Board Manager and by adding additional cores as needed.
STM32 Support can be added by including this link in the "Additional Boards Managers URLs" field from stm32duino/Arduino_Core_STM32 .
https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
The Official wolfSSL: https://github.com/wolfSSL/arduino-wolfSSL See PR #1.
This option will allow wolfSSL to be installed directly using the native Arduino tools.
Use this shell script that will re-organize the wolfSSL library to be compatible with Arduino Library Specification for projects that use Arduino IDE 1.5.0 or newer.
The Arduino IDE requires a library's source files to be in the library's root directory with a
header file in the name of the library. This script moves all src/
files to the IDE/ARDUINO/wolfSSL/src
directory and creates a stub header file called wolfssl.h
inside that directory.
To configure wolfSSL with Arduino, enter ONE of the following 4 commands
from within the wolfssl/IDE/ARDUINO
directory:
./wolfssl-arduino.sh
wolfSSL
directory of IDE/ARDUINO
.user_settings.h
, or copy/rename the default../wolfssl-arduino.sh INSTALL
(The most common option)
wolfSSL
directory$HOME/Arduino/libraries
for most bash environments/mnt/c/Users/$USER/Documents/Arduino/libraries
(for WSL)user_settings.h
../wolfssl-arduino.sh INSTALL /path/to/repository
(Used to update arduino-wolfSSL)
wolfSSL
directory/path/to/repository
user_settings.h
../wolfssl-arduino.sh INSTALL /path/to/any/other/directory
wolfSSL
directory/path/to/any/other/directory
Edit <arduino-libraries>/wolfSSL/src/user_settings.h
If building for Intel Galileo platform add: #define INTEL_GALILEO
.
Add any other custom settings. For a good start see the examples in wolfssl root
"/examples/configs/usersettings*.h"
If you experience any issues with custom user_settings.h
see the wolfssl
porting guide here for more assistance: https://www.wolfssl.com/docs/porting-guide/
If you have any issues contact support@wolfssl.com for help.
The wolfSSL library should automatically be detected when found in the libraries
directory.
Sketch -> Include Library
choose wolfSSL for new sketches.Sketch -> Include Library -> Add .ZIP Library...
and choose the
IDE/ARDUNIO/wolfSSL
folder.Sketch -> Include Library
choose wolfSSL.Open an example Arduino sketch for wolfSSL:
wolfSSL Client INO sketch: sketches/wolfssl_client/wolfssl_client.ino
wolfSSL Server INO sketch: sketches/wolfssl_server/wolfssl_server.ino
Refresh the local Windows Arduino wolfSSL library from GitHub repository directory using WSL:
Don't forget to edit WOLFSSL_VERSION_ARUINO_SUFFIX
!
# Change to the wolfSSL Arduino IDE directory
cd /mnt/c/workspace/wolfssl-$USER/IDE/ARDUINO
# remove current Arduino wolfSSL library
rm -rf /mnt/c/Users/$USER/Documents/Arduino/libraries/wolfssl
# Install wolfSSL as an Arduino library
./wolfssl-arduino.sh INSTALL
Publish wolfSSL from WSL to a Arduino-wolfSSL-$USER
repository.
cd /mnt/c/workspace/wolfssl-$USER/IDE/ARDUINO
rm -rf /mnt/c/Users/$USER/Documents/Arduino/libraries/wolfSSL
rm -rf /mnt/c/workspace/wolfssl-$USER/IDE/ARDUINO/wolfSSL
./wolfssl-arduino.sh INSTALL /mnt/c/workspace/Arduino-wolfSSL-$USER/
Publish wolfSSL from WSL to default Windows local library.
cd /mnt/c/workspace/wolfssl-$USER/IDE/ARDUINO
rm -rf /mnt/c/Users/$USER/Documents/Arduino/libraries/wolfSSL
rm -rf /mnt/c/workspace/wolfssl-arduino/IDE/ARDUINO/wolfSSL
./wolfssl-arduino.sh INSTALL
Test the TLS server by running a local command-line client.
cd /mnt/c/workspace/wolfssl-$USER
./examples/client/client -h 192.168.1.43 -p 11111 -v 3
Build wolfSSL to include wolfSSH support to an alternate development directory.
cd /mnt/c/workspace/wolfssl-$USER
./configure --prefix=/mnt/c/workspace/wolfssh-$USER/wolfssl_install --enable-ssh
make
make install
Build wolfSSH with wolfSSL not installed to default directory.
cd /mnt/c/workspace/wolfssh-$USER
./configure --with-wolfssl=/mnt/c/workspace/wolfssh-$USER/wolfssl_install
make
./examples/client/client -u jill -h 192.168.1.34 -p 22222 -P upthehill
Test the current wolfSSL.
cd /mnt/c/workspace/wolfssl-arduino
git status
./autogen.sh
./configure --enable-all
make clean
make && make test
Build and run testwolfcrypt
.
./autogen.sh
./configure --enable-all
make clean && make && ./wolfcrypt/test/testwolfcrypt