update VxWorks readme
This commit is contained in:
parent
5bcb7e98cb
commit
54c5a3a10c
@ -3,37 +3,49 @@
|
||||
####1.1 Steps
|
||||
1. Start by creating a new VxWorks image in Workbench by going to File > New >
|
||||
Project and then select VxWorks Image Project.
|
||||
2. Include the path to the wolfSSL header files(wolfssl/wolfssl):
|
||||
|
||||
2. Right click on the project and go to Import > Filesystem. Choose the path
|
||||
to the wolfSSL library here. Uncheck everything except the examples, src and
|
||||
wolfcrypt directories.
|
||||
In the wolfcrypt/src folder, uncheck aes\_asm.asm and aes\_asm.s.
|
||||
|
||||
3. Include the path to the wolfSSL header files(wolfssl/wolfssl):
|
||||
Right click the project and go to Properties > Build Properties > Paths.
|
||||
Choose Browse and select the wolfssl directory. Click ok.
|
||||
3. Add preprocessor definitions:
|
||||
|
||||
4. In wolfssl/wolfssl/wolfcrypt/settings.h, uncomment
|
||||
#define WOLFSSL_VXWORKS
|
||||
Note: To use a filesystem with the simulator, the certs folder will need to be
|
||||
placed in the workspace directory of the Workbench. This is only if you don't
|
||||
have USE\_CERT\_BUFFERS\_2048.
|
||||
|
||||
5. If not using a filesystem, add preprocessor definitions.
|
||||
Right click on project, go to Properties > Build Properties > Variables.
|
||||
Highlight EXTRA\_DEFINE. Click Edit and add the following to this line:
|
||||
-DWOLFSSL\_VXWORKS.
|
||||
This can also be done in wolfssl/wolfcrypt/settings.h by uncommenting the
|
||||
#define WOLFSSL_VXWORKS
|
||||
line.
|
||||
If there is not a filesystem set up, add -DUSE\_CERT\_BUFFERS\_2048 and
|
||||
-DNO\_FILESYSTEM to the variables or #define USE\_CERT\_BUFFERS\_2048 and
|
||||
\#define NO\_FILESYSTEM at the top of settings.h.
|
||||
If there is a filesystem, paths may need to be changed to the path of
|
||||
filesystem for certificate files in wolfssl/test.h.
|
||||
4. Right click on the project and go to Import > Filesystem. Choose the path
|
||||
to the wolfSSL library here. Uncheck everything except the src and wolfcrypt
|
||||
directories.
|
||||
In the wolfcrypt/src folder, uncheck aes\_asm.asm and aes\_asm.s.
|
||||
5. If NO\_\_DEV\_RANDOM remains defined in wolfssl/wolfcrypt/settings.h under
|
||||
-DUSE\_CERT\_BUFFERS\_2048 -DNO\_FILESYSTEM
|
||||
|
||||
6. If using a filesystem, copy the certs folder in wolfssl to the Wind River
|
||||
Workbench workspace folder. This is where the simulatory looks for the filesystem.
|
||||
|
||||
7. If NO\_\_DEV\_RANDOM remains defined in wolfssl/wolfcrypt/settings.h under
|
||||
\#ifdef WOLFSSL\_VXWORKS, a new GenerateSeed() function will need to be defined
|
||||
in wolfcrypt/src/random.c.
|
||||
|
||||
####1.2 Testing wolfSSL with VxWorks:
|
||||
#####1.2.1 wolfCrypt Test Application
|
||||
#####1.2.1 wolfCrypt Test and Benchmark Applications
|
||||
The wolfCrypt test application will test each of the cryptographic algorithms
|
||||
and output the status for each. This should return success for each algorithm
|
||||
if everything is working.
|
||||
if everything is working. The benchmark application will output time to run
|
||||
the cryptographic algorithms in milliseconds.
|
||||
|
||||
1. In usrAppInit.c, make a call to the wolfCrypt test application by adding
|
||||
the following to the usrAppInit() function:
|
||||
1. Include these header files in usrAppInit.c:
|
||||
#include <wolfcrypt/test/test.h>
|
||||
#include <wolfssl/ssl.h>
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfssl/test.h>
|
||||
|
||||
2. In usrAppInit.c, make a call to the wolfCrypt test and benchmark applications
|
||||
by adding the following to the usrAppInit() function:
|
||||
|
||||
typedef struct func_args {
|
||||
int argc;
|
||||
@ -44,11 +56,8 @@ the following to the usrAppInit() function:
|
||||
func_args args;
|
||||
|
||||
wolfcrypt_test(&args);
|
||||
2. Include these header files in usrAppInit.c:
|
||||
#include <wolfcrypt/test/test.h>
|
||||
#include <wolfssl/ssl.h>
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfssl/test.h>
|
||||
wolfcrypt_benchmark(&args);
|
||||
|
||||
3. Start the simulator and check that all wolfCrypt tests pass. If there is a
|
||||
certificate file error, adjust the caCert file locations in
|
||||
wolfcrypt/test/test.c or wolfssl/test.h to those of the filesystem in use.
|
||||
@ -58,17 +67,22 @@ The wolfSSL example client can be found in wolfssl/examples/client.
|
||||
|
||||
1. Add client.c and client.h from the examples/client folder to the Workbench
|
||||
project.
|
||||
|
||||
2. In usrAppInit.c, inlucde the func\_args as described in the Test Application
|
||||
section, and add a call to the client function:
|
||||
client_test(&args);
|
||||
|
||||
3. Add the client.h header file to the includes at the top of usrAppInit.c.
|
||||
|
||||
4. The wolfSSLIP will need to be changed to the IP address the server is
|
||||
running on. If using the VxWorks Simulator, localhost will not work. NAT should
|
||||
be selected in the Simulator Connection Advanced setup.
|
||||
|
||||
5. Start the example server from within the wolfSSL directory on the host
|
||||
machine:
|
||||
./examples/server/server -d -b
|
||||
The -d option disables peer checks, -b allows for binding to any interface.
|
||||
|
||||
6. Start the example client in Workbench.
|
||||
|
||||
#####1.2.3 Example Server
|
||||
@ -77,6 +91,7 @@ VxWorks simulator.
|
||||
|
||||
1. Add server.c and server.h from the wolfssl/examples/server folder to the
|
||||
Workbench project.
|
||||
|
||||
2. In usrAppInit.c, inlcude the func\args as described in the Test and Client
|
||||
applications and add a call to the server function:
|
||||
|
||||
@ -87,8 +102,21 @@ applications and add a call to the server function:
|
||||
server_test(&args);
|
||||
|
||||
3. Add the server.h header file to the includes at the top of usrAppInit.c.
|
||||
4. Start the server by following the directions in Section 2 for setting up
|
||||
the VxWorks Simulator.
|
||||
|
||||
4. Start the server and complete the following:
|
||||
Go to "Open Connection Details" under VxWorks Simulator which is in the connections
|
||||
dropdown. Choose the corresponding kernel image, typically called
|
||||
project/default/VxWorks. Select simnetd from the dropdown and enter
|
||||
192.168.200.1 as the IP address.
|
||||
|
||||
To connect to a server running on the VxWorks Simulator, enter these commands
|
||||
into the host terminal (for Ubuntu 14.04):
|
||||
sudo openvpn --mktun --dev tap0
|
||||
In Wind River directory:
|
||||
sudo vxworks-7/host/x86-linux2/bin/vxsimnetd
|
||||
This will start the vxsimnetd application. Leave it open. The IP address to
|
||||
connect to the server is the same as above.
|
||||
|
||||
5. Start the client on the host machine:
|
||||
./examples/client/client -d
|
||||
The -d option disables peer checks.
|
||||
@ -132,19 +160,3 @@ The following files are required to replicate this build:
|
||||
* This project was tested with a pre-built image in the VxWorks distribution
|
||||
called vsb\_vxsim\_linux.
|
||||
|
||||
###2 VXWORKS SIMULATOR:
|
||||
######The VxWorks simulator was used for testing the wolfSSL example applications (server, client, benchmark, and test).
|
||||
######These are the steps to reproduce this testing method.
|
||||
|
||||
Go to "Open Connection Details" under VxWorks Simulator which is in the connections
|
||||
dropdown. Choose the corresponding kernel image, typically called
|
||||
project/default/VxWorks. Select simnetd from the dropdown and enter
|
||||
192.168.200.1 as the IP address.
|
||||
|
||||
To connect to a server running on the VxWorks Simulator, enter these commands
|
||||
into the host terminal (for Ubuntu 14.04):
|
||||
sudo openvpn --mktun --dev tap0
|
||||
In Wind River directory:
|
||||
sudo vxworks-7/host/x86-linux2/bin/vxsimnetd
|
||||
This will start the vxsimnetd application. Leave it open. The IP address to
|
||||
connect to the server is the same as above.
|
||||
|
Loading…
Reference in New Issue
Block a user