This commit is contained in:
Ludovic FLAMENT
2016-05-20 21:51:13 +02:00
390 changed files with 37963 additions and 6190 deletions

3
.gitignore vendored
View File

@@ -39,6 +39,8 @@ cyassl.sublime*
fips.c
fips_test.c
fips
src/async.c
wolfssl/async.h
ctaocrypt/benchmark/benchmark
ctaocrypt/test/testctaocrypt
wolfcrypt/benchmark/benchmark
@@ -69,6 +71,7 @@ ntru-cert.pem
ntru-key.raw
key.der
key.pem
ecc-public-key.der
ecc-key.der
ecc-key.pem
certreq.der

View File

@@ -1,8 +1,8 @@
/* wolfssl_client.ino
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#include <wolfssl.h>
#include <wolfssl/ssl.h>
#include <Ethernet.h>

View File

@@ -1,8 +1,8 @@
/* benchmark-main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

View File

@@ -1,8 +1,8 @@
/* current-time.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

View File

@@ -1,8 +1,8 @@
/* minimum-startup.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#include <stdint.h>
#pragma language=extended

View File

@@ -1,8 +1,8 @@
/* test-main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,10 +16,11 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
typedef struct func_args {
int argc;
char** argv;

View File

@@ -4,6 +4,11 @@ This directory contains project files for IAR EWARM IDE. These
projects have been set up to generic ARM Cortex-M MPUs.
In order to generate project for specific target MPU, take following steps.
** Note ** regarding Segger Embedded Operating System (embOS)
The directory embOS contains projects specifically for embOS on IAR-EWARM.
Only use this directory if you are building an IAR Workbench project that
uses embOS
Included Project Files
-----------------------

6
IDE/IAR-EWARM/embOS/.gitignore vendored Normal file
View File

@@ -0,0 +1,6 @@
*.bat
*.xcl
*.crun
*.dbgdt
*.dni

View File

@@ -0,0 +1,28 @@
#-----------------------------------------------------------------------------#
wolfSSL + embOS + IAR Workbench
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
For building the existing examples on a SAMV71_Explained_Ultra with Cortex M7
#-----------------------------------------------------------------------------#
See SAMV71_XULT\<example>\README_<example>
I.E. SAMV71_XULT\embOS_wolfcrypt_lib_SAMV71_XULT\README_wolfcrypt_lib
#-----------------------------------------------------------------------------#
For building wolfssl on a new CPU that is supported by embOS in IAR Workbench
#-----------------------------------------------------------------------------#
See custom_port\README_custom_port
#-----------------------------------------------------------------------------#
#-----------------------------------------------------------------------------#
Thank you for choosing wolfSSL if you ever have any questions please contact us!
support@wolfssl.com
info@wolfssl.com
Copyright © 2016 wolfSSL Inc. All rights reserved.

View File

@@ -0,0 +1,14 @@
Each example project here has it's own README please follow them in detail.
embOS_wolfcrypt_benchmark_SAMV71_XULT\README_wolfcrypt_benchmark
embOS_wolfcrypt_lib_SAMV71_XULT\README_wolfcrypt_lib
embOS_wolfcrypt_test_SAMV71_XULT\README_wolfcrypt_test
Thank you for using this guide and we hope this is helpful to you. If you have
any suggestions / feedback for us please contact us:
support@wolfssl.com
info@wolfssl.com
Copyright © 2016 wolfSSL Inc. All rights reserved.

View File

@@ -0,0 +1,33 @@
/*
* A simple example for evaluation purposes written from scratch by wolfSSL Inc
*/
/*###ICF### ****/
/*-Editor annotation file-*/
/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
/*-Specials-*/
define symbol __ICFEDIT_intvec_start__ = 0x00400000;
/*-Memory Regions-*/
define symbol __ICFEDIT_region_RAM_start__ = 0x20400000;
define symbol __ICFEDIT_region_RAM_end__ = 0x20459999;
define symbol __ICFEDIT_region_ROM_start__ = 0x00400000;
define symbol __ICFEDIT_region_ROM_end__ = 0x00599999;
/*-Sizes-*/
define symbol __ICFEDIT_size_cstack__ = 0x400;
define symbol __ICFEDIT_size_heap__ = 0x13000;
/**** ###ICF###*/
define memory mem with size = 4G;
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
initialize by copy { readwrite };
do not initialize { section .noinit };
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
place in ROM_region { readonly };
place in RAM_region { readwrite, block CSTACK, block HEAP };

View File

@@ -0,0 +1,67 @@
#ifndef _EMBOS_USER_SETTINGS_H_
#define _EMBOS_USER_SETTINGS_H_
#undef WOLFSSL_EMBOS
#define WOLFSSL_EMBOS
#undef WOLFCRYPT_ONLY
#define WOLFCRYPT_ONLY
#undef NO_64BIT
#define NO_64BIT
#undef SIZEOF_LONG
#define SIZEOF_LONG 4
#undef SIZEOF_LONG_LONG
#define SIZEOF_LONG_LONG 8
#undef USE_FAST_MATH
#define USE_FAST_MATH
#undef HAVE_CHACHA
#define HAVE_CHACHA
#undef HAVE_POLY1305
#define HAVE_POLY1305
#undef ECC_SHAMIR
#define ECC_SHAMIR
#undef HAVE_ECC
#define HAVE_ECC
#undef ECC_USER_CURVES
#define ECC_USER_CURVES
#undef ECC_ALT_SIZE
#define ECC_ALT_SIZE
#undef FP_MAX_BITS_ECC
#define FP_MAX_BITS_ECC 528
#undef TFM_TIMING_RESISTANT
#define TFM_TIMING_RESISTANT
#undef WOLFSSL_SHA512
#define WOLFSSL_SHA512
#undef WOLFSSL_SHA384
#define WOLFSSL_SHA384
#undef HAVE_AESGCM
#define HAVE_AESGCM
#undef NO_INLINE
#define NO_INLINE
#undef BENCH_EMBEDDED
#define BENCH_EMBEDDED
#undef WOLFSSL_SMALL_STACK
#define WOLFSSL_SMALL_STACK
#undef USE_WOLFSSL_MEMORY
#define USE_WOLFSSL_MEMORY
#endif /* _EMBOS_USER_SETTINGS_H_ */

View File

@@ -0,0 +1,43 @@
#ifndef _EMBOS_USER_SETTINGS_H_
#define _EMBOS_USER_SETTINGS_H_
#undef WOLFCRYPT_ONLY
#define WOLFCRYPT_ONLY
#undef NO_64BIT
#define NO_64BIT
#undef SIZEOF_LONG
#define SIZEOF_LONG 4
#undef SIZEOF_LONG_LONG
#define SIZEOF_LONG_LONG 8
#undef HAVE_CHACHA
#define HAVE_CHACHA
#undef HAVE_POLY1305
#define HAVE_POLY1305
#undef ECC_SHAMIR
#define ECC_SHAMIR
#undef HAVE_ECC
#define HAVE_ECC
#undef WOLFSSL_SHA512
#define WOLFSSL_SHA512
#undef WOLFSSL_SHA384
#define WOLFSSL_SHA384
#undef HAVE_AESGCM
#define HAVE_AESGCM
#undef NO_INLINE
#define NO_INLINE
#undef BENCH_EMBEDDED
#define BENCH_EMBEDDED
#endif /* _EMBOS_USER_SETTINGS_H_ */

View File

@@ -0,0 +1,191 @@
#ifndef _EMBOS_USER_SETTINGS_H_
#define _EMBOS_USER_SETTINGS_H_
/* ------------------------------------------------------------------------- */
/* Platform */
/* ------------------------------------------------------------------------- */
#undef NO_INLINE
#define NO_INLINE
#undef SINGLE_THREADED
#define SINGLE_THREADED
#undef WOLFSSL_SMALL_STACK
#define WOLFSSL_SMALL_STACK
/* ------------------------------------------------------------------------- */
/* Math Configuration */
/* ------------------------------------------------------------------------- */
#undef NO_64BIT
#define NO_64BIT
#ifndef SIZEOF_LONG
#define SIZEOF_LONG 4
#endif
#ifndef SIZEOF_LONG_LONG
#define SIZEOF_LONG_LONG 8
#endif
#undef USE_FAST_MATH
#define USE_FAST_MATH
#ifdef USE_FAST_MATH
#undef TFM_TIMING_RESISTANT
// #define TFM_TIMING_RESISTANT
/* Optimizations (TFM_ARM, TFM_ASM or none) */
#undef TFM_ARM
// #define TFM_ARM
#undef TFM_ASM
//#define TFM_ASM
#endif
/* ------------------------------------------------------------------------- */
/* Crypto */
/* ------------------------------------------------------------------------- */
#undef WOLFCRYPT_ONLY
#define WOLFCRYPT_ONLY
/* ECC */
#if 1
#undef HAVE_ECC
#define HAVE_ECC
/* Manually define enabled curves */
#undef ECC_USER_CURVES
#define ECC_USER_CURVES
#define HAVE_ECC192
#define HAVE_ECC224
#undef NO_ECC256
#define HAVE_ECC384
#define HAVE_ECC521
/* Fixed point cache (speeds repeated operations against same private key) */
#undef FP_ECC
//#define FP_ECC
#ifdef FP_ECC
/* Bits / Entries */
#undef FP_ENTRIES
#define FP_ENTRIES 2
#undef FP_LUT
#define FP_LUT 4
#endif
/* Optional ECC calculation method */
/* Note: doubles heap usage, but slightly faster */
#undef ECC_SHAMIR
#define ECC_SHAMIR
/* Reduces heap usage, but slower */
#undef ECC_TIMING_RESISTANT
#define ECC_TIMING_RESISTANT
#ifdef USE_FAST_MATH
/* Max ECC bits (curve size * 8). ECC521 is (66*8) = 528. */
#undef ALT_ECC_SIZE
#define ALT_ECC_SIZE
#undef FP_MAX_BITS_ECC
#define FP_MAX_BITS_ECC 528
/* Enable TFM optimizations for ECC */
#define TFM_ECC192
#define TFM_ECC224
#define TFM_ECC256
#define TFM_ECC384
#define TFM_ECC521
#endif
#endif
/* RSA */
#undef NO_RSA
#if 1
#ifdef USE_FAST_MATH
/* Maximum math bits (Max RSA key bits * 2) */
#undef FP_MAX_BITS
#define FP_MAX_BITS 4096
#endif
/* half as much memory but twice as slow */
#undef RSA_LOW_MEM
//#define RSA_LOW_MEM
#else
#define NO_RSA
#endif
/* AES */
#undef NO_AES
#if 1
#undef HAVE_AESGCM
#define HAVE_AESGCM
/* GCM Method: GCM_SMALL, GCM_WORD32 or GCM_TABLE */
#undef GCM_SMALL
#define GCM_SMALL
#else
#define NO_AES
#endif
/* ChaCha20 / Poly1305 */
#undef HAVE_CHACHA
#undef HAVE_POLY1305
#if 1
#define HAVE_CHACHA
#define HAVE_POLY1305
/* Needed for Poly1305 */
#undef HAVE_ONE_TIME_AUTH
#define HAVE_ONE_TIME_AUTH
#endif
/* ------------------------------------------------------------------------- */
/* Hashing */
/* ------------------------------------------------------------------------- */
/* Sha */
#undef NO_SHA
#if 1
#else
#define NO_SHA
#endif
/* Sha256 */
#undef NO_SHA256
#if 1
/* over twice as small, but 50% slower */
//#define USE_SLOW_SHA2
#else
#define NO_SHA256
#endif
/* Sha512 */
#undef WOLFSSL_SHA512
#if 1
#define WOLFSSL_SHA512
/* Sha384 */
#undef WOLFSSL_SHA384
#if 1
#define WOLFSSL_SHA384
#endif
#endif
/* MD5 */
#undef NO_MD5
#if 1
#define NO_MD5
#endif
/* ------------------------------------------------------------------------- */
/* Benchmark / Test */
/* ------------------------------------------------------------------------- */
/* Use reduced benchmark / test sizes */
#undef BENCH_EMBEDDED
#define BENCH_EMBEDDED
#undef USE_CERT_BUFFERS_2048
#define USE_CERT_BUFFERS_2048
#endif /* _EMBOS_USER_SETTINGS_H_ */

View File

@@ -0,0 +1,29 @@
#include "RTOS.h"
#include "BSP.h"
#include <stdio.h>
#include <wolfcrypt/benchmark/benchmark.h>
static OS_STACKPTR int WLFSTACK[20000]; /* Stack Size for Task */
static OS_TASK WLFTASK; /* Task */
static void wolfTask(void) {
printf("Begin Benchmark Tests\n");
benchmark_test(NULL);
printf("Benchmark Tests Complete\n");
while (1) {
BSP_ToggleLED(1);
OS_Delay(200);
}
}
int main(void) {
OS_IncDI(); /* Disable interrupts */
OS_InitKern(); /* Initialize OS */
OS_InitHW(); /* Initialize Hardware */
BSP_Init(); /* Initialize LED ports */
/* You need to create at least one task before calling OS_Start() */
OS_CREATETASK(&WLFTASK, "Tests task", wolfTask, 100, WLFSTACK);
OS_Start(); /* Start the OS */
return 0;
}

View File

@@ -0,0 +1,70 @@
Steps taken to evaluate wolfSSL with the following:
Required Software for this guide:
IAR Embedded Workbench IDE - ARM v7.60.1 (or similar version)
embOS v4.16 (for Cortex-M and IAR compiler)
wolfssl (latest version)
Required items (Hardware) for this guide:
Atmel SAM V71 Xplained Ultra (Or equivelent Cortex-M Evaluation Board)
Note: Must have J-Trace adapter (SWD or SWD + ETM)
j-Trace for ARM Cortex-M Processors
Note: You can see here: https://www.segger.com/j-trace-for-cortex-m.html
Note: You can also purchase other models, we used one from IAR v3.2
20 pin target ribbon cable
USB Cable with j-Trace adapter end
Micro usb cable
#--!! NOTE !!--#
For this guide "**SAMV71_DIR" will signify the directory:
C:\<path-to>\wolfssl\IDE\IAR-EWARM\embOS\SAMV71_XULT\
#----------------------------------------------------------------------------#
# Setup file system to evaluate wolfssl in embOS project:
# (If you have not already done so)
#----------------------------------------------------------------------------#
1. In wolfssl you will notice the directory:
wolfssl\IDE\IAR-EWARM\embOS\extract_trial_here
2. go to embOS website and download a trial for your platform
https://www.segger.com/downloads/embos ->
embOS trial for Cortex-M and IAR compiler
3. Extract (unzip) the download to
C:\<path-to>\wolfssl\IDE\IAR-EWARM\embOS\extract_trial_here\
(Note: you do not need to do anything further in this directory, the
wolfSSL evaluation projects will simply link against it)
#----------------------------------------------------------------------------#
# Evaluate wolfcrypt_benchmarks in embOS project:
#----------------------------------------------------------------------------#
1. In IAR Workbench go to Project -> Add Existing Project
a. Browse to **SAMV71_DIR\embOS_wolfcrypt_benchmark_SAMV71_XULT\
b. Choose wolfcrypt_benchmark.ewp and click "Open"
2. Go to Project -> Rebuild All
3. Connect your SAMV71 Xplained Ultra to your PC with micro USB in the "Debug"
port for power and the J-Link hooked up to SWD pins and your PC
4. Go to Project -> Download and Debug
5. Once the "Debug" environment has loaded go to: View -> Terminal I/O
(This is where the printf's will be directed to)
6. Hit "Go" (Debug option with 3 right arrows "→→→")
7. You should observe the benchmark times for the configured algorithms.
#----------------------------------------------------------------------------#
#----------------------------------------------------------------------------#
Thank you for using this guide and we hope this was helpful to you. If you have
any suggestions / feedback for us please contact us:
support@wolfssl.com
info@wolfssl.com
Copyright © 2016 wolfSSL Inc. All rights reserved.

View File

@@ -0,0 +1,39 @@
[BREAKPOINTS]
ForceImpTypeAny = 0
ShowInfoWin = 1
EnableFlashBP = 2
BPDuringExecution = 0
[CFI]
CFISize = 0x00
CFIAddr = 0x00
[CPU]
MonModeVTableAddr = 0xFFFFFFFF
MonModeDebug = 0
MaxNumAPs = 0
LowPowerHandlingMode = 0
OverrideMemMap = 0
AllowSimulation = 1
ScriptFile=""
[FLASH]
CacheExcludeSize = 0x00
CacheExcludeAddr = 0x00
MinNumBytesFlashDL = 0
SkipProgOnCRCMatch = 1
VerifyDownload = 1
AllowCaching = 1
EnableFlashDL = 2
Override = 1
Device="ATSAMV71Q21"
[GENERAL]
WorkRAMSize = 0x00
WorkRAMAddr = 0x00
RAMUsageLimit = 0x00
[SWO]
SWOLogFile=""
[MEM]
RdOverrideOrMask = 0x00
RdOverrideAndMask = 0xFFFFFFFF
RdOverrideAddr = 0xFFFFFFFF
WrOverrideOrMask = 0x00
WrOverrideAndMask = 0xFFFFFFFF
WrOverrideAddr = 0xFFFFFFFF

View File

@@ -0,0 +1,44 @@
Steps taken to evaluate wolfSSL with the following:
Required Software for this guide:
IAR Embedded Workbench IDE - ARM v7.60.1 (or similar version)
embOS v4.16 (for Cortex-M and IAR compiler)
wolfssl (latest version)
Required items (Hardware) for this guide:
Atmel SAM V71 Xplained Ultra (Or equivelent Cortex-M Evaluation Board)
Note: Must have J-Trace adapter (SWD or SWD + ETM)
j-Trace for ARM Cortex-M Processors
Note: You can see here: https://www.segger.com/j-trace-for-cortex-m.html
Note: You can also purchase other models, we used one from IAR v3.2
20 pin target ribbon cable
USB Cable with j-Trace adapter end
Micro usb cable
#--!! NOTE !!--#
For this guide "**SAMV71_DIR" will signify the directory:
C:\<path-to>\wolfssl\IDE\IAR-EWARM\embOS\SAMV71_XULT\
#----------------------------------------------------------------------------#
# Create wolfcrypt_lib.a
#----------------------------------------------------------------------------#
1. Open IAR Workbench -> Project -> Add Existing Project
a. Browse to **SAMV71_DIR\embOS_wolfcrypt_lib
c. Choose wolfcrypt_lib.ewp and click "Open"
2. Go to Project -> Rebuild All
3. Verify the library built, you should now have:
**SAMV71_DIR\embOS_wolfcrypt_lib\Debug\Bin\wolfcrypt_lib.a
#----------------------------------------------------------------------------#
#----------------------------------------------------------------------------#
Thank you for using this guide and we hope this was helpful to you. If you have
any suggestions / feedback for us please contact us:
support@wolfssl.com
info@wolfssl.com
Copyright © 2016 wolfSSL Inc. All rights reserved.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,29 @@
#include "RTOS.h"
#include "BSP.h"
#include <stdio.h>
#include <wolfcrypt/test/test.h>
static OS_STACKPTR int WLFSTACK[20000]; /* Stack Size for Task */
static OS_TASK WLFTASK; /* Task */
static void wolfTask(void) {
printf("Begin wolfcrypt tests\n");
wolfcrypt_test(NULL);
printf("wolfcrypt tests complete.\n");
while (1) {
BSP_ToggleLED(1);
OS_Delay(200);
}
}
int main(void) {
OS_IncDI(); /* Disable interrupts */
OS_InitKern(); /* Initialize OS */
OS_InitHW(); /* Initialize Hardware for OS */
BSP_Init(); /* Initialize LED ports */
/* You need to create at least one task before calling OS_Start() */
OS_CREATETASK(&WLFTASK, "Tests task", wolfTask, 100, WLFSTACK);
OS_Start(); /* Start the OS */
return 0;
}

View File

@@ -0,0 +1,69 @@
Steps taken to evaluate wolfSSL with the following:
Required Software for this guide:
IAR Embedded Workbench IDE - ARM v7.60.1 (or similar version)
embOS v4.16 (for Cortex-M and IAR compiler)
wolfssl (latest version)
Required items (Hardware) for this guide:
Atmel SAM V71 Xplained Ultra (Or equivelent Cortex-M Evaluation Board)
Note: Must have J-Trace adapter (SWD or SWD + ETM)
j-Trace for ARM Cortex-M Processors
Note: You can see here: https://www.segger.com/j-trace-for-cortex-m.html
Note: You can also purchase other models, we used one from IAR v3.2
20 pin target ribbon cable
USB Cable with j-Trace adapter end
Micro usb cable
#--!! NOTE !!--#
For this guide "**SAMV71_DIR" will signify the directory:
C:\<path-to>\wolfssl\IDE\IAR-EWARM\embOS\SAMV71_XULT\
#----------------------------------------------------------------------------#
# Setup file system to evaluate wolfssl in embOS project:
# (If you have not already done so)
#----------------------------------------------------------------------------#
1. In wolfssl you will notice the directory:
wolfssl\IDE\IAR-EWARM\embOS\extract_trial_here
2. go to embOS website and download a trial for your platform
https://www.segger.com/downloads/embos ->
embOS trial for Cortex-M and IAR compiler
3. Extract (unzip) the download to
C:\<path-to>\wolfssl\IDE\IAR-EWARM\embOS\extract_trial_here\
(Note: you do not need to do anything further in this directory, the
wolfSSL evaluation projects will simply link against it)
#----------------------------------------------------------------------------#
# Evaluate wolfcrypt_tests in embOS project:
#----------------------------------------------------------------------------#
1. In IAR Workbench go to Project -> Add Existing Project
a. Browse to **SAMV71_DIR\embOS_wolfcrypt_test_SAMV71_XULT\
b. Choose wolfcrypt_test.ewp and click "Open"
2. Go to Project -> Rebuild All
3. Connect your SAMV71 Xplained Ultra to your PC with micro USB in the "Debug"
port for power and the J-Link hooked up to SWD pins and your PC
4. Go to Project -> Download and Debug
5. Once the "Debug" environment has loaded go to: View -> Terminal I/O
(This is where the printf's will be directed to)
6. Hit "Go" (Debug option with 3 right arrows "→→→")
7. You should observe the tests run and pass.
#----------------------------------------------------------------------------#
#----------------------------------------------------------------------------#
Thank you for using this guide and we hope this was helpful to you. If you have
any suggestions / feedback for us please contact us:
support@wolfssl.com
info@wolfssl.com
Copyright © 2016 wolfSSL Inc. All rights reserved.

View File

@@ -0,0 +1,39 @@
[BREAKPOINTS]
ForceImpTypeAny = 0
ShowInfoWin = 1
EnableFlashBP = 2
BPDuringExecution = 0
[CFI]
CFISize = 0x00
CFIAddr = 0x00
[CPU]
MonModeVTableAddr = 0xFFFFFFFF
MonModeDebug = 0
MaxNumAPs = 0
LowPowerHandlingMode = 0
OverrideMemMap = 0
AllowSimulation = 1
ScriptFile=""
[FLASH]
CacheExcludeSize = 0x00
CacheExcludeAddr = 0x00
MinNumBytesFlashDL = 0
SkipProgOnCRCMatch = 1
VerifyDownload = 1
AllowCaching = 1
EnableFlashDL = 2
Override = 1
Device="ATSAMV71Q21"
[GENERAL]
WorkRAMSize = 0x00
WorkRAMAddr = 0x00
RAMUsageLimit = 0x00
[SWO]
SWOLogFile=""
[MEM]
RdOverrideOrMask = 0x00
RdOverrideAndMask = 0xFFFFFFFF
RdOverrideAddr = 0xFFFFFFFF
WrOverrideOrMask = 0x00
WrOverrideAndMask = 0xFFFFFFFF
WrOverrideAddr = 0xFFFFFFFF

View File

@@ -0,0 +1,222 @@
Steps taken to evaluate wolfSSL with the following:
Required Software for this guide:
IAR Embedded Workbench IDE - ARM v7.60.1 (or similar version)
embOS (version that supports your CPU)
wolfssl (latest version)
#----------------------------------------------------------------------------#
# SECTION 1:
# Setting up the file system
#----------------------------------------------------------------------------#
1. Browse to wolfssl/IDE/IAR-EWARM/embOS/
a. copy/paste the directory custom_port and re-name it to the CPU
you intend to target. For now we will just use the term CUSTOM_DIR
to signify a copy of the custom_port directory
#----------------------------------------------------------------------------#
# SECTION 2:
# Create wolfcrypt_lib.a
#----------------------------------------------------------------------------#
1. Open IAR Workbench -> Project -> Create New Project -> Empty Project
c. Browse to CUSTOM_DIR/wolfcrypt_lib_custom_port/ (from section 1)
d. Called it "wolfcrypt_lib" and hit "Save"
2. Go to Project -> Add Group...
a. call group wolfcrypt_sources
3. Right click on wolfcrypt_sources group -> Add -> Add Files...
4. Browse to wolfssl/wolfcrypt/src directory and select the following files:
#---------------------------------------------#
# aes.c memory.c #
# asn.c misc.c #
# chacha.c poly1305.c #
# chacha20_poly1305.c pwdbased.c #
# coding.c rabbit.c #
# des3.c random.c #
# dh.c rsa.c #
# dsa.c sha.c #
# ecc.c sha256.c #
# hash.c sha512.c #
# hmac.c tfm.c #
# md4.c wc_encrypt.c #
# md5.c wc_port.c #
#---------------------------------------------#
5. Once those are all added go to
Project -> Properties C/C++ Compiler -> Preprocessor (Tab)
a. In the field "Defined symbols:" add WOLFSSL_USER_SETTINGS
b. In the field "Additional include directories:"
put in this line: $PROJ_DIR$\..\..\..\..\..\
and this line: $PROJ_DIR$\..\custom_port_user_settings
#---------------------------------------------
#(Or alternately you can use the browse option to navigate to
#C:\<path-to>\wolfssl and
#C:\<path-to>\wolfssl\IDE\IAR-EWARM\CUSTOM_DIR\
# custom_port_user_settings\)
#(If you ever need to change or customize your build settings this
#is the file that should be modified:
#CUSTOM_DIR\custom_port_user_settings\user_settings.h)
#---------------------------------------------
7. In Project -> Options -> General Options -> Output (Tab)
Check the option for "Library" instead of "Executable"
Click "OK"
8. Go to Project -> Rebuild all (The library should build)
9. Confirm the library is now located here:
C:\<path to>\wolfssl\IDE\IAR-EWARM\CUSTOM_DIR\wolfcrypt_lib_custom_port\
Debug\Exe\wolfcrypt_lib.a
We are now set to link to this library in the evaluation project
#----------------------------------------------------------------------------#
# SECTION 3:
# Evaluate wolfcrypt tests in embOS project:
#----------------------------------------------------------------------------#
1. go to embOS website and download a trial for your platform
https://www.segger.com/downloads/embos ->
embOS trial for Cortex-M and IAR compiler
2. After downloading, extract the zip to:
C:\<path-to>\wolfssl\IDE\IAR-EWARM\embOS\extract_trial_here\
3. Open IAR Workbench -> Project -> Create New Project -> Empty Project
c. Browse to CUSTOM_DIR\wolfcrypt_test_custom_port\ (from section 1)
d. Called it "wolfcrypt_test" and hit "Save"
4. Go to Project -> Options -> C/C++ Compiler -> Preprocessor (Tab)
a. Add these to the field "Defined symbols:"
DEBUG=1
__CPU-YOU-ARE-TARGETING__ (For example: __SAMV71Q21__)
WOLFSSL_USER_SETTINGS
b. Now in the field "Additional include directories:"
$PROJ_DIR$\..\..\..\..\..\
$PROJ_DIR$\..\custom_port_user_settings
#---------------------------------------------
#(Or alternately you can use the browse option to navigate to
#C:\<path-to>\wolfssl and
#C:\<path-to>\wolfssl\IDE\IAR-EWARM\CUSTOM_DIR\
# custom_port_user_settings\)
#---------------------------------------------
5. Go to Project -> Options -> Linker -> Library (Tab)
Add to the field "Additonal libraries:"
$PROJ_DIR$\..\embOS_wolfcrypt_lib_SAMV71_XULT\Debug\Exe\wolfcrypt_lib.a
$PROJ_DIR$\..\..\extract_trial_here\Start\Lib\os7m_tlv_dp.a
6. The main project file is located here:
CUSTOM_DIR\wolfcrypt_test_custom_port\Application\runWolfcryptTests.c
7. Right Click the project name: Add -> Add Group
add a group called "Application"
8. Right Click that group and Add -> Add files
browse to the main project file in step 5 above
9. Create Groups and add files for your CPU's support. These will be .c
files found in the extracted directory in two places:
extract_trial_here\Start\BoardSupport\<vendor>\<CPU>\DeviceSupport
extract_trial_here\Start\BoardSupport\<vendor>\<CPU>\Setup
#---------------------------------------------
# For example:
# extract_trial_here\Start\BoardSupport\Atmel\SAMV71_XPlainedUltra\
# DeviceSupport
# extract_trial_here\Start\BoardSupport\Atmel\SAMV71_XPlainedUltra\Setup
#---------------------------------------------
10. To get Logging working for seeing test results:
a. Go to Project -> Options -> General Options -> Library Configuration
b. In the field "Library low-level interface implementation"
Check the radio button for Semihosted
Then in the inner field marked "stdout/stderr"
Check the radio button for "Via semihosting" and click "OK"
11. Now we're ready to build and debug the project.
a. Project -> Options -> Debugger
In the field marked "Driver" Select drop-down and choose J-Link/J-Trace
Click "OK"
b. Project -> Rebuild All
c. Connect your Cortex-M evaluation board to j-Trace and j-Trace to PC
d. Connect the micro-USB to the debug port of the Cortex-M and PC for power
e. Project -> Download and Debug
12. Once the Debug environment spawns go to View -> Terminal I/O
This is where the "printf" to stdout will be directed
13. In the Debug Menu bar look for the little square with three arrows pointing
to the right. When you mouse over it should say "GO"
Click this option and in the Terminal I/O Window you should see something
like this (depends on which functionality you set in user_settings.h)
SEE NOTE 1 BELOW IF YOU OBSERVE AN ERROR (-40) IN RSA TEST
Begin wolfcrypt tests
MD5 test passed!
MD4 test passed!
SHA test passed!
SHA-256 test passed!
SHA-384 test passed!
SHA-512 test passed!
HMAC-MD5 test passed!
HMAC-SHA test passed!
HMAC-SHA256 test passed!
HMAC-SHA384 test passed!
HMAC-SHA512 test passed!
GMAC test passed!
HC-128 test passed!
Rabbit test passed!
Chacha test passed!
POLY1305 test passed!
ChaCha20-Poly1305 AEAD test passed!
DES test passed!
DES3 test passed!
AES test passed!
AES-GCM test passed!
RANDOM test passed!
RSA test passed!
DH test passed!
DSA test passed!
PWDBASED test passed!
ECC test passed!
wolfcrypt tests complete.
#----------------------------------------------------------------------------#
# SECTION 4:
# Evaluate benchmark tests in embOS project:
#----------------------------------------------------------------------------#
Follow the steps from section 3 only using
CUSTOM_DIR\wolfcrypt_benchmark_custom_port\
#----------------------------------------------------------------------------#
#----------------------------------------------------------------------------#
Thank you for using this guide and we hope this was helpful to you. If you have
any suggestions / feedback for us please contact us:
support@wolfssl.com
info@wolfssl.com
/* --------------------------------------------------------------------------*/
#### NOTE 1: ####
If you are working off of a base example project and you observe memory errors
when malloc is called, make sure that the linker script has set the HEAP high
enough.
Project -> Options -> Linker -> (Config Tab) -> Linker configuration file
Check this file for __size_heap__ it is typically set to 0x200 by default.
There are places in wolfSSL that malloc as much as 4k at a time and peak usage
can be as high as 29K if using full functionality.
/* --------------------------------------------------------------------------*/
Copyright © 2016 wolfSSL Inc. All rights reserved.

View File

@@ -0,0 +1,33 @@
/*
* A simple example for evaluation purposes written from scratch by wolfSSL Inc
*/
/*###ICF### ****/
/*-Editor annotation file-*/
/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
/*-Specials-*/
define symbol __ICFEDIT_intvec_start__ = 0x00400000;
/*-Memory Regions-*/
define symbol __ICFEDIT_region_RAM_start__ = 0x20400000;
define symbol __ICFEDIT_region_RAM_end__ = 0x20459999;
define symbol __ICFEDIT_region_ROM_start__ = 0x00400000;
define symbol __ICFEDIT_region_ROM_end__ = 0x00599999;
/*-Sizes-*/
define symbol __ICFEDIT_size_cstack__ = 0x400;
define symbol __ICFEDIT_size_heap__ = 0x13000;
/**** ###ICF###*/
define memory mem with size = 4G;
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
initialize by copy { readwrite };
do not initialize { section .noinit };
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
place in ROM_region { readonly };
place in RAM_region { readwrite, block CSTACK, block HEAP };

View File

@@ -0,0 +1,64 @@
#ifndef _EMBOS_USER_SETTINGS_H_
#define _EMBOS_USER_SETTINGS_H_
#undef WOLFSSL_EMBOS
#define WOLFSSL_EMBOS
#undef WOLFCRYPT_ONLY
#define WOLFCRYPT_ONLY
#undef NO_64BIT
#define NO_64BIT
#undef SIZEOF_LONG
#define SIZEOF_LONG 4
#undef SIZEOF_LONG_LONG
#define SIZEOF_LONG_LONG 8
#undef HAVE_CHACHA
#define HAVE_CHACHA
#undef HAVE_POLY1305
#define HAVE_POLY1305
#undef ECC_SHAMIR
#define ECC_SHAMIR
#undef HAVE_ECC
#define HAVE_ECC
#undef ECC_USER_CURVES
#define ECC_USER_CURVES
#undef ECC_ALT_SIZE
#define ECC_ALT_SIZE
#undef FP_MAX_BITS_ECC
#define FP_MAX_BITS_ECC 528
#undef TFM_TIMING_RESISTANT
#define TFM_TIMING_RESISTANT
#undef WOLFSSL_SHA512
#define WOLFSSL_SHA512
#undef WOLFSSL_SHA384
#define WOLFSSL_SHA384
#undef HAVE_AESGCM
#define HAVE_AESGCM
#undef NO_INLINE
#define NO_INLINE
#undef BENCH_EMBEDDED
#define BENCH_EMBEDDED
#undef WOLFSSL_SMALL_STACK
#define WOLFSSL_SMALL_STACK
#undef USE_WOLFSSL_MEMORY
#define USE_WOLFSSL_MEMORY
#endif /* _EMBOS_USER_SETTINGS_H_ */

View File

@@ -0,0 +1,29 @@
#include "RTOS.h"
#include "BSP.h"
#include <stdio.h>
#include <wolfcrypt/benchmark/benchmark.h>
static OS_STACKPTR int WLFSTACK[20000]; /* Stack Size for Task */
static OS_TASK WLFTASK; /* Task */
static void wolfTask(void) {
printf("Begin benchmark tests\n");
wolfcrypt_test(NULL);
printf("benchmark tests complete.\n");
while (1) {
BSP_ToggleLED(1);
OS_Delay(200);
}
}
int main(void) {
OS_IncDI(); /* Disable interrupts */
OS_InitKern(); /* Initialize OS */
OS_InitHW(); /* Initialize Hardware */
BSP_Init(); /* Initialize LED ports */
/* You need to create at least one task before calling OS_Start() */
OS_CREATETASK(&WLFTASK, "Tests task", wolfTask, 100, WLFSTACK);
OS_Start(); /* Start the OS */
return 0;
}

View File

@@ -0,0 +1,30 @@
#include "RTOS.h"
#include "BSP.h"
#include <stdio.h>
#include <wolfcrypt/test/test.h>
static OS_STACKPTR int WLFSTACK[20000]; /* Stack Size for Task */
static OS_TASK WLFTASK; /* Task */
static void wolfTask(void) {
printf("Begin wolfcrypt tests\n");
wolfcrypt_test(NULL);
printf("wolfcrypt tests complete.\n");
while (1) {
BSP_ToggleLED(1);
OS_Delay(200);
}
}
int main(void) {
OS_IncDI(); /* Disable interrupts */
OS_InitKern(); /* Initialize OS */
OS_InitHW(); /* Initialize Hardware for OS */
BSP_Init(); /* Initialize LED ports */
/* You need to create at least one task before calling OS_Start() */
OS_CREATETASK(&WLFTASK, "Tests task", wolfTask, 100, WLFSTACK);
OS_Start(); /* Start the OS */
return 0;
}

View File

@@ -0,0 +1,32 @@
An empty directory used when extracting segger trial.
*** For SAMV71_XULT project ***
This trial can be found here:
https://www.segger.com/downloads/embos
Look for the Download for IAR compiler and Cortex M
The title should be: "embOS trial for Cortex-M and IAR compiler"
*** For custom port ***
The trial will still be located at: https://www.segger.com/downloads/embos
However you will need to identify and download the correct project for your
target CPU
Thank you for using this guide and we hope this is helpful to you. If you have
any suggestions / feedback for us please contact us:
support@wolfssl.com
info@wolfssl.com
Copyright © 2016 wolfSSL Inc. All rights reserved.

View File

@@ -1,8 +1,8 @@
/* lpc_18xx_port.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#include "board.h"
#include "otp_18xx_43xx.h" /* For RNG */
#include "timer_18xx_43xx.h"

View File

@@ -1,8 +1,8 @@
/* lpc_18xx_startup.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#include "board.h"
#include <stdint.h>
#include <stdio.h>

View File

@@ -1,8 +1,8 @@
/* time.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* certs_test.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

View File

@@ -1,8 +1,8 @@
/* config-BEREFOOT.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,10 +16,11 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/**** wolfSSL for KEIL-RL Configuration ****/
#define __CORTEX_M3__

View File

@@ -1,8 +1,8 @@
/* config-FS.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,10 +16,11 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/**** wolfSSL for KEIL-RL Configuration ****/
#define __CORTEX_M3__

View File

@@ -1,8 +1,8 @@
/* config-RTX-TCP-FS.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,11 +16,12 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/**** wolfSSL for MDK-RTX-TCP-FS Configuration ****/
#define __CORTEX_M3__

View File

@@ -1,8 +1,8 @@
/* config.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifndef MDK_CONFIG_H__
#define MDK_CONFIG_H__
/**** wolfSSL for KEIL-RL Configuration ****/

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/*shell.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/*** tiny Shell for wolfSSL apps ***/

View File

@@ -1,8 +1,8 @@
/* time-STM32F2.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-dummy.c.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,23 +1,23 @@
/* wolfssl_KEIL_RL.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* wolfSSL is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
*/
*
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* wolfSSL is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/***************************************************************************************/

View File

@@ -1,8 +1,8 @@
/* wolfssl_KEIL_RL.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/******************************************************************************/
/** This file is for defining types, values for specific to KEIL-MDK-ARM. **/
/******************************************************************************/

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* config-Crypt.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,10 +16,11 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
// <<< Use Configuration Wizard in Context Menu >>>
// <h> wolfCrypt Configuration

View File

@@ -1,8 +1,8 @@
/* config.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#define __CORTEX_M3__
#if defined(MDK_CONF_full)

View File

@@ -1,8 +1,8 @@
/* settings.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/* Place OS specific preprocessor flags, defines, includes here, will be
included into every file because types.h includes it */

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-STM32F2.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-dummy.c.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* settings.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/* Place OS specific preprocessor flags, defines, includes here, will be
included into every file because types.h includes it */

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-dummy.c.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* settings.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/* Place OS specific preprocessor flags, defines, includes here, will be
included into every file because types.h includes it */

View File

@@ -1,8 +1,8 @@
/* config-RTX-TCP-FS.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,11 +16,12 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
// <<< Use Configuration Wizard in Context Menu >>>
// <h> Build Target: Simple Client
// <s.15>Callee IP Address

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-dummy.c.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* settings.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/* Place OS specific preprocessor flags, defines, includes here, will be
included into every file because types.h includes it */

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-dummy.c.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* settings.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/* Place OS specific preprocessor flags, defines, includes here, will be
included into every file because types.h includes it */

View File

@@ -1,8 +1,8 @@
/* config-RTX-TCP-FS.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,10 +16,11 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/**** CyaSSL for KEIL-RL Configuration ****/
#define __CORTEX_M3__

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-STM32F2.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-STM32F2.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-dummy.c.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* settings.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/* Place OS specific preprocessor flags, defines, includes here, will be
included into every file because types.h includes it */

View File

@@ -1,8 +1,8 @@
/* config-RTX-TCP-FS.h
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,11 +16,12 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
// <<< Use Configuration Wizard in Context Menu >>>
// <h> Build Target: Simple Server
// <s.15>Listen Port Number

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* time-dummy.c.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/*shell.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/*** tiny Shell for wolfSSL apps ***/

View File

@@ -1,8 +1,8 @@
/* time-STM32F2.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,8 +16,9 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>

View File

@@ -1,8 +1,8 @@
/* ssl-dummy.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

View File

@@ -27,7 +27,7 @@ SET(WOLFCRYPT_SOURCES src/aes.c src/arc4.c src/asn.c src/blake2b.c
src/camellia.c src/chacha.c src/coding.c src/compress.c src/des3.c
src/dh.c src/dsa.c src/ecc.c src/error.c src/hc128.c src/hmac.c
src/integer.c src/logging.c src/md2.c src/md4.c src/md5.c src/memory.c
src/misc.c src/pkcs7.c src/poly1305.c src/pwdbased.c src/rabbit.c
src/pkcs7.c src/poly1305.c src/pwdbased.c src/rabbit.c
src/random.c src/ripemd.c src/rsa.c src/sha.c src/sha256.c src/sha512.c
src/tfm.c src/wc_port.c src/wc_encrypt.c src/hash.c
../wolfssl/wolfcrypt/aes.h ../wolfssl/wolfcrypt/arc4.h ../wolfssl/wolfcrypt/asn.h ../wolfssl/wolfcrypt/blake2.h
@@ -39,6 +39,7 @@ SET(WOLFCRYPT_SOURCES src/aes.c src/arc4.c src/asn.c src/blake2b.c
../wolfssl/wolfcrypt/tfm.h ../wolfssl/wolfcrypt/wc_port.h ../wolfssl/wolfcrypt/wc_encrypt.h
../wolfssl/wolfcrypt/hash.h
)
# misc.c is not compiled in since using INLINE
ADD_CONVENIENCE_LIBRARY(wolfcrypt ${WOLFCRYPT_SOURCES})
RESTRICT_SYMBOL_EXPORTS(wolfcrypt)

View File

@@ -1,8 +1,8 @@
/* arm_startup.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#include "hw.h"
#include <stdio.h>

View File

@@ -1,8 +1,8 @@
/* benchmark_main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

View File

@@ -15,6 +15,9 @@ void hw_uart_printchar(int c);
void hw_watchdog_disable(void);
uint32_t hw_rand(void);
// Delay functions
void delay_us(uint32_t microseconds);
#endif /* WOLFSSL_ROWLEY_HW_H */

View File

@@ -1,8 +1,8 @@
/* kinetis_hw.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#include "hw.h"
#if defined(FREESCALE) && defined(K_SERIES)
@@ -44,17 +45,29 @@
#define FLASH_CLK_DIV 4 /* Flash clock divisor */
// UART TX Port, Pin, Mux and Baud
#define UART_PORT UART5 /* UART Port */
#define UART_PORT UART4 /* UART Port */
#define UART_TX_PORT PORTE /* UART TX Port */
#define UART_TX_PIN 8 /* UART TX Pin */
#define UART_TX_PIN 24 /* UART TX Pin */
#define UART_TX_MUX 0x3 /* Kinetis UART pin mux */
#define UART_BAUD 115200 /* UART Baud Rate */
/* Note: You will also need to update the UART clock gate in hw_uart_init (SIM_SCGC1_UART5_MASK) */
/* Note: TWR-K60 is UART3, PTC17 */
/* Note: FRDM-K64 is UART4, PTE24 */
/* Note: TWR-K64 is UART5, PTE8 */
/***********************************************/
// Private functions
static uint32_t mDelayCyclesPerUs = 0;
#define NOP_FOR_LOOP_INSTRUCTION_COUNT 6
static void delay_nop(uint32_t count)
{
int i;
for(i=0; i<count; i++) {
__asm volatile("nop");
}
}
static void hw_mcg_init(void)
{
/* Adjust clock dividers (core/system=div/1, bus=div/2, flex bus=div/2, flash=div/4) */
@@ -88,7 +101,7 @@ static void hw_uart_init(void)
uint8_t temp;
/* Enable UART core clock */
SIM->SCGC1 |= SIM_SCGC1_UART5_MASK;
SIM->SCGC1 |= SIM_SCGC1_UART4_MASK;
/* Configure UART TX pin */
UART_TX_PORT->PCR[UART_TX_PIN] = PORT_PCR_MUX(UART_TX_MUX);
@@ -116,9 +129,37 @@ static void hw_uart_init(void)
static void hw_rtc_init(void)
{
/* Init nop delay */
mDelayCyclesPerUs = (SYS_CLK_KHZ / 1000 / NOP_FOR_LOOP_INSTRUCTION_COUNT);
/* Enable RTC clock and oscillator */
SIM->SCGC6 |= SIM_SCGC6_RTC_MASK;
RTC->CR |= RTC_CR_OSCE_MASK;
if (RTC->SR & RTC_SR_TIF_MASK) {
/* Resets the RTC registers except for the SWR bit */
RTC->CR |= RTC_CR_SWR_MASK;
RTC->CR &= ~RTC_CR_SWR_MASK;
/* Set TSR register to 0x1 to avoid the TIF bit being set in the SR register */
RTC->TSR = 1;
}
/* Disable RTC Interrupts */
RTC_IER = 0;
/* Enable OSC */
if ((RTC->CR & RTC_CR_OSCE_MASK) == 0) {
int i;
/* Turn on */
RTC->CR |= RTC_CR_OSCE_MASK;
/* Wait RTC startup delay 1000 us */
delay_us(1000);
}
/* Enable counter */
RTC->SR |= RTC_SR_TCE_MASK;
}
static void hw_rand_init(void)
@@ -173,6 +214,12 @@ uint32_t hw_rand(void)
return RNG->OR; /* Return next value in FIFO output register */
}
void delay_us(uint32_t microseconds)
{
delay_nop(mDelayCyclesPerUs * microseconds);
}
// Watchdog
void hw_watchdog_disable(void)
{

View File

@@ -1,8 +1,8 @@
/* retarget.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,24 +16,50 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#include "hw.h"
#include "user_settings.h"
double current_time(int reset)
{
double time;
(void)reset;
time = hw_get_time_sec();
time += (double)hw_get_time_msec() / 1000;
return time;
}
uint32_t custom_rand_generate(void)
unsigned int custom_rand_generate(void)
{
return hw_rand();
}
int custom_rand_generate_block(unsigned char* output, unsigned int sz)
{
uint32_t i = 0;
while (i < sz)
{
/* If not aligned or there is odd/remainder */
if( (i + sizeof(CUSTOM_RAND_TYPE)) > sz ||
((uint32_t)&output[i] % sizeof(CUSTOM_RAND_TYPE)) != 0
) {
/* Single byte at a time */
output[i++] = (unsigned char)custom_rand_generate();
}
else {
/* Use native 8, 16, 32 or 64 copy instruction */
*((CUSTOM_RAND_TYPE*)&output[i]) = custom_rand_generate();
i += sizeof(CUSTOM_RAND_TYPE);
}
}
return 0;
}
// Debug print handler
int __putchar(int c, __printf_tag_ptr ctx)
{

View File

@@ -1,8 +1,8 @@
/* test_main.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,10 +16,11 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

View File

@@ -1,29 +1,369 @@
/* Configuration */
#define SINGLE_THREADED
#define WOLFSSL_SMALL_STACK
#define WOLFSSL_GENERAL_ALIGNMENT 4
#define NO_MAIN_DRIVER
#define NO_FILESYSTEM
#define NO_WRITEV
#define NO_DEV_RANDOM
#define NO_WOLFSSL_MEMORY
/* Example custom user settings for wolfSSL */
#ifndef WOLFSSL_USER_SETTINGS_H
#define WOLFSSL_USER_SETTINGS_H
#ifdef __cplusplus
extern "C" {
#endif
/* ------------------------------------------------------------------------- */
/* Platform */
/* ------------------------------------------------------------------------- */
#undef WOLFSSL_GENERAL_ALIGNMENT
#define WOLFSSL_GENERAL_ALIGNMENT 4
#undef SINGLE_THREADED
#define SINGLE_THREADED
#undef WOLFSSL_SMALL_STACK
#define WOLFSSL_SMALL_STACK
/* ------------------------------------------------------------------------- */
/* Math Configuration */
/* ------------------------------------------------------------------------- */
#undef USE_FAST_MATH
#define USE_FAST_MATH
#ifdef USE_FAST_MATH
#undef TFM_TIMING_RESISTANT
#define TFM_TIMING_RESISTANT
/* Optimizations (TFM_ARM, TFM_ASM or none) */
#define TFM_ARM
//#define TFM_ASM
#endif
/* Math debugging (adds support for mp_dump) */
#undef WOLFSSL_DEBUG_MATH
//#define WOLFSSL_DEBUG_MATH
/* ------------------------------------------------------------------------- */
/* Crypto */
/* ------------------------------------------------------------------------- */
/* ECC */
#if 1
#undef HAVE_ECC
#define HAVE_ECC
/* Manually define enabled curves */
#undef ECC_USER_CURVES
#define ECC_USER_CURVES
#define HAVE_ECC192
#define HAVE_ECC224
#undef NO_ECC256
#define HAVE_ECC384
#define HAVE_ECC521
/* Fixed point cache (speeds repeated operations against same private key) */
#undef FP_ECC
//#define FP_ECC
#ifdef FP_ECC
/* Bits / Entries */
#undef FP_ENTRIES
#define FP_ENTRIES 2
#undef FP_LUT
#define FP_LUT 4
#endif
/* Optional ECC calculation method */
/* Note: doubles heap usage, but slightly faster */
#undef ECC_SHAMIR
#define ECC_SHAMIR
/* Reduces heap usage, but slower */
#undef ECC_TIMING_RESISTANT
#define ECC_TIMING_RESISTANT
#ifdef USE_FAST_MATH
/* use reduced size math buffers for ecc points */
#undef ALT_ECC_SIZE
#define ALT_ECC_SIZE
/* optionally override the default max ecc bits */
#undef FP_MAX_BITS_ECC
//#define FP_MAX_BITS_ECC 512
/* Enable TFM optimizations for ECC */
#define TFM_ECC192
#define TFM_ECC224
#define TFM_ECC256
#define TFM_ECC384
#define TFM_ECC521
#endif
#endif
/* RSA */
#undef NO_RSA
#if 1
#ifdef USE_FAST_MATH
/* Maximum math bits (Max RSA key bits * 2) */
#undef FP_MAX_BITS
#define FP_MAX_BITS 4096
#endif
/* half as much memory but twice as slow */
#undef RSA_LOW_MEM
//#define RSA_LOW_MEM
#else
#define NO_RSA
#endif
/* AES */
#undef NO_AES
#if 1
#undef HAVE_AESGCM
#define HAVE_AESGCM
/* GCM Method: GCM_SMALL, GCM_WORD32 or GCM_TABLE */
#undef GCM_SMALL
#define GCM_SMALL
#else
#define NO_AES
#endif
/* ChaCha20 / Poly1305 */
#undef HAVE_CHACHA
#undef HAVE_POLY1305
#if 1
#define HAVE_CHACHA
#define HAVE_POLY1305
/* Needed for Poly1305 */
#undef HAVE_ONE_TIME_AUTH
#define HAVE_ONE_TIME_AUTH
#endif
/* Ed25519 / Curve25519 */
#undef HAVE_CURVE25519
#undef HAVE_ED25519
#if 0
#define HAVE_CURVE25519
#define HAVE_ED25519
/* Optionally use small math (less flash usage, but much slower) */
#if 0
#define CURVED25519_SMALL
#endif
#endif
/* ------------------------------------------------------------------------- */
/* Hashing */
/* ------------------------------------------------------------------------- */
/* Sha */
#undef NO_SHA
#if 1
/* 1k smaller, but 25% slower */
//#define USE_SLOW_SHA
#else
#define NO_SHA
#endif
/* Sha256 */
#undef NO_SHA256
#if 1
#else
#define NO_SHA256
#endif
/* Sha512 */
#undef WOLFSSL_SHA512
#if 1
#define WOLFSSL_SHA512
/* Sha384 */
#undef WOLFSSL_SHA384
#if 1
#define WOLFSSL_SHA384
#endif
/* over twice as small, but 50% slower */
//#define USE_SLOW_SHA2
#endif
/* MD5 */
#undef NO_MD5
#if 1
#define NO_MD5
#endif
/* ------------------------------------------------------------------------- */
/* HW Crypto Acceleration */
/* ------------------------------------------------------------------------- */
// See README.md for instructions
//#define FREESCALE_MMCAU 1
/* Benchmark */
/* ------------------------------------------------------------------------- */
/* Benchmark / Test */
/* ------------------------------------------------------------------------- */
/* Use reduced benchmark / test sizes */
#undef BENCH_EMBEDDED
#define BENCH_EMBEDDED
#undef USE_CERT_BUFFERS_2048
#define USE_CERT_BUFFERS_2048
/* Custom functions */
extern int custom_rand_generate(void);
#define CUSTOM_RAND_GENERATE custom_rand_generate
#define CUSTOM_RAND_TYPE word32
/* ------------------------------------------------------------------------- */
/* Debugging */
/* ------------------------------------------------------------------------- */
#undef WOLFSSL_DEBUG
//#define WOLFSSL_DEBUG
#ifdef WOLFSSL_DEBUG
#define fprintf(file, format, ...) printf(format, ##__VA_ARGS__)
/* Use this to measure / print heap usage */
#if 0
#undef USE_WOLFSSL_MEMORY
#define USE_WOLFSSL_MEMORY
#undef WOLFSSL_TRACK_MEMORY
#define WOLFSSL_TRACK_MEMORY
#endif
#else
#undef NO_WOLFSSL_MEMORY
#define NO_WOLFSSL_MEMORY
#undef NO_ERROR_STRINGS
#define NO_ERROR_STRINGS
#endif
/* ------------------------------------------------------------------------- */
/* Port */
/* ------------------------------------------------------------------------- */
/* Override Current Time */
/* Allows custom "custom_time()" function to be used for benchmark */
#define WOLFSSL_USER_CURRTIME
/* Debugging - Optional */
#if 0
#define fprintf(file, format, ...) printf(format, ##__VA_ARGS__)
#define DEBUG_WOLFSSL
/* ------------------------------------------------------------------------- */
/* RNG */
/* ------------------------------------------------------------------------- */
/* Size of returned HW RNG value */
#define CUSTOM_RAND_TYPE unsigned int
/* Choose RNG method */
#if 1
/* Use built-in P-RNG (SHA256 based) with HW RNG */
/* P-RNG + HW RNG (P-RNG is ~8K) */
#undef HAVE_HASHDRBG
#define HAVE_HASHDRBG
extern unsigned int custom_rand_generate(void);
#undef CUSTOM_RAND_GENERATE
#define CUSTOM_RAND_GENERATE custom_rand_generate
#else
/* Bypass P-RNG and use only HW RNG */
extern int custom_rand_generate_block(unsigned char* output, unsigned int sz);
#undef CUSTOM_RAND_GENERATE_BLOCK
#define CUSTOM_RAND_GENERATE_BLOCK custom_rand_generate_block
#endif
/* ------------------------------------------------------------------------- */
/* Enable Features */
/* ------------------------------------------------------------------------- */
#undef KEEP_PEER_CERT
//#define KEEP_PEER_CERT
#undef HAVE_COMP_KEY
//#define HAVE_COMP_KEY
#undef HAVE_TLS_EXTENSIONS
//#define HAVE_TLS_EXTENSIONS
#undef HAVE_SUPPORTED_CURVES
//#define HAVE_SUPPORTED_CURVES
#undef WOLFSSL_BASE64_ENCODE
//#define WOLFSSL_BASE64_ENCODE
/* TLS Session Cache */
#if 0
#define SMALL_SESSION_CACHE
#else
#define NO_SESSION_CACHE
#endif
/* ------------------------------------------------------------------------- */
/* Disable Features */
/* ------------------------------------------------------------------------- */
#undef NO_WOLFSSL_SERVER
//#define NO_WOLFSSL_SERVER
#undef NO_WOLFSSL_CLIENT
//#define NO_WOLFSSL_CLIENT
#undef NO_CRYPT_TEST
//#define NO_CRYPT_TEST
#undef NO_CRYPT_BENCHMARK
//#define NO_CRYPT_BENCHMARK
/* In-lining of misc.c functions */
/* If defined, must include wolfcrypt/src/misc.c in build */
/* Slower, but about 1k smaller */
#undef NO_INLINE
//#define NO_INLINE
#undef NO_FILESYSTEM
#define NO_FILESYSTEM
#undef NO_WRITEV
#define NO_WRITEV
#undef NO_MAIN_DRIVER
#define NO_MAIN_DRIVER
#undef NO_DEV_RANDOM
#define NO_DEV_RANDOM
#undef NO_DSA
#define NO_DSA
#undef NO_DH
#define NO_DH
#undef NO_DES3
#define NO_DES3
#undef NO_RC4
#define NO_RC4
#undef NO_OLD_TLS
#define NO_OLD_TLS
#undef NO_HC128
#define NO_HC128
#undef NO_RABBIT
#define NO_RABBIT
#undef NO_PSK
#define NO_PSK
#undef NO_MD4
#define NO_MD4
#undef NO_PWDBASED
#define NO_PWDBASED
#undef NO_CODING
#define NO_CODING
#ifdef __cplusplus
}
#endif
#endif /* WOLFSSL_USER_SETTINGS_H */

View File

@@ -11,14 +11,100 @@
<folder Name="Source Files">
<configuration Name="Common" filter="c;cpp;cxx;cc;h;s;inc" />
<folder Name="wolfcrypt">
<folder Name="benchmark" path="../../wolfcrypt/benchmark" />
<folder
Name="src"
exclude=".asm;.s"
filter=""
path="../../wolfcrypt/src"
recurse="No" />
<folder Name="test" path="../../wolfcrypt/test" />
<folder Name="benchmark">
<file file_name="../../wolfcrypt/benchmark/benchmark.c" />
<file file_name="../../wolfcrypt/benchmark/benchmark.h" />
<file file_name="../../wolfcrypt/benchmark/include.am" />
</folder>
<folder Name="src">
<file file_name="../../wolfcrypt/src/aes.c" />
<file file_name="../../wolfcrypt/src/arc4.c" />
<file file_name="../../wolfcrypt/src/asm.c" />
<file file_name="../../wolfcrypt/src/asn.c" />
<file file_name="../../wolfcrypt/src/blake2b.c" />
<file file_name="../../wolfcrypt/src/camellia.c" />
<file file_name="../../wolfcrypt/src/chacha.c" />
<file file_name="../../wolfcrypt/src/chacha20_poly1305.c" />
<file file_name="../../wolfcrypt/src/coding.c" />
<file file_name="../../wolfcrypt/src/compress.c" />
<file file_name="../../wolfcrypt/src/curve25519.c" />
<file file_name="../../wolfcrypt/src/des3.c" />
<file file_name="../../wolfcrypt/src/dh.c" />
<file file_name="../../wolfcrypt/src/dsa.c" />
<file file_name="../../wolfcrypt/src/ecc.c" />
<file file_name="../../wolfcrypt/src/ecc_fp.c" />
<file file_name="../../wolfcrypt/src/ed25519.c" />
<file file_name="../../wolfcrypt/src/error.c" />
<file file_name="../../wolfcrypt/src/fe_low_mem.c" />
<file file_name="../../wolfcrypt/src/fe_operations.c" />
<file file_name="../../wolfcrypt/src/fp_mont_small.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_12.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_17.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_20.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_24.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_28.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_3.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_32.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_4.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_48.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_6.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_64.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_7.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_8.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_9.i" />
<file file_name="../../wolfcrypt/src/fp_mul_comba_small_set.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_12.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_17.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_20.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_24.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_28.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_3.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_32.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_4.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_48.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_6.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_64.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_7.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_8.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_9.i" />
<file file_name="../../wolfcrypt/src/fp_sqr_comba_small_set.i" />
<file file_name="../../wolfcrypt/src/ge_low_mem.c" />
<file file_name="../../wolfcrypt/src/ge_operations.c" />
<file file_name="../../wolfcrypt/src/hash.c" />
<file file_name="../../wolfcrypt/src/hc128.c" />
<file file_name="../../wolfcrypt/src/hmac.c" />
<file file_name="../../wolfcrypt/src/idea.c" />
<file file_name="../../wolfcrypt/src/include.am" />
<file file_name="../../wolfcrypt/src/integer.c" />
<file file_name="../../wolfcrypt/src/logging.c" />
<file file_name="../../wolfcrypt/src/md2.c" />
<file file_name="../../wolfcrypt/src/md4.c" />
<file file_name="../../wolfcrypt/src/md5.c" />
<file file_name="../../wolfcrypt/src/memory.c" />
<file file_name="../../wolfcrypt/src/misc.c">
<configuration Name="ARM_Debug" build_exclude_from_build="Yes" />
</file>
<file file_name="../../wolfcrypt/src/pkcs7.c" />
<file file_name="../../wolfcrypt/src/poly1305.c" />
<file file_name="../../wolfcrypt/src/pwdbased.c" />
<file file_name="../../wolfcrypt/src/rabbit.c" />
<file file_name="../../wolfcrypt/src/random.c" />
<file file_name="../../wolfcrypt/src/ripemd.c" />
<file file_name="../../wolfcrypt/src/rsa.c" />
<file file_name="../../wolfcrypt/src/sha.c" />
<file file_name="../../wolfcrypt/src/sha256.c" />
<file file_name="../../wolfcrypt/src/sha512.c" />
<file file_name="../../wolfcrypt/src/signature.c" />
<file file_name="../../wolfcrypt/src/srp.c" />
<file file_name="../../wolfcrypt/src/tfm.c" />
<file file_name="../../wolfcrypt/src/wc_encrypt.c" />
<file file_name="../../wolfcrypt/src/wc_port.c" />
</folder>
<folder Name="test">
<file file_name="../../wolfcrypt/test/include.am" />
<file file_name="../../wolfcrypt/test/test.c" />
<file file_name="../../wolfcrypt/test/test.h" />
</folder>
<folder Name="user-crypto" path="../../wolfcrypt/user-crypto">
<configuration Name="Common" build_exclude_from_build="Yes" />
</folder>
@@ -45,9 +131,9 @@
Placement="Flash"
Target="MK64FN1M0xxx12"
arm_linker_fiq_stack_size="0"
arm_linker_heap_size="102800"
arm_linker_heap_size="91136"
arm_linker_irq_stack_size="0"
arm_linker_stack_size="4096"
arm_linker_stack_size="30720"
arm_simulator_memory_simulation_filename="$(TargetsDir)/Kinetis/KinetisSimulatorMemory.dll"
arm_simulator_memory_simulation_parameter="MK64FN1M0xxx12;0x100000;0x0;0x0;0x40000"
arm_target_loader_applicable_loaders="Flash"
@@ -84,9 +170,9 @@
Placement="Flash"
Target="MK64FN1M0xxx12"
arm_linker_fiq_stack_size="0"
arm_linker_heap_size="102800"
arm_linker_heap_size="91136"
arm_linker_irq_stack_size="0"
arm_linker_stack_size="4096"
arm_linker_stack_size="30720"
arm_simulator_memory_simulation_filename="$(TargetsDir)/Kinetis/KinetisSimulatorMemory.dll"
arm_simulator_memory_simulation_parameter="MK64FN1M0xxx12;0x100000;0x0;0x0;0x40000"
arm_target_loader_applicable_loaders="Flash"

View File

@@ -27,6 +27,8 @@ then "Browse" and select:
#define WOLFSSL_VXWORKS
Note: pthreads defined by default
5. If using the VxWorks simulator add the following to EXTRA\_DEFINE:
-DVXWORKS_SIM /* only if using the VxWorks simulator */
@@ -154,9 +156,7 @@ Note: The wolfSSL example server and client cannot run at the same time on the V
5. There is an example client in ```<path_to_wolfssl>/wolfssl/examples``` . Again, wolfSSL will first need to be built. Follow the instructions [here](https://www.wolfssl.com/wolfSSL/Docs-wolfssl-manual-2-building-wolfssl.html) to do so. See the [wolfSSL manual]( https://wolfssl.com/wolfSSL/Docs-wolfssl-manual-3-getting-started.html) for instructions on how to set up the client. From within ```<path_to_wolfssl>/wolfssl``` , the following command can be used to run the client on the host machine:
./examples/client/client -h 192.168.200.1 -d
The -d option disables peer checks.
./examples/client/client -h 192.168.200.1
6. The following output should be expected in the simulator terminal:

View File

@@ -7,6 +7,155 @@
objects = {
/* Begin PBXBuildFile section */
30B060541C6DDB2B00D46008 /* crl.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646011A89928E0062516A /* crl.c */; };
30B060551C6DDB2B00D46008 /* internal.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646021A89928E0062516A /* internal.c */; };
30B060561C6DDB2B00D46008 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646031A89928E0062516A /* io.c */; };
30B060571C6DDB2B00D46008 /* keys.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646041A89928E0062516A /* keys.c */; };
30B060581C6DDB2B00D46008 /* ocsp.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646051A89928E0062516A /* ocsp.c */; };
30B060591C6DDB2B00D46008 /* sniffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646061A89928E0062516A /* sniffer.c */; };
30B0605A1C6DDB2B00D46008 /* ssl.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646071A89928E0062516A /* ssl.c */; };
30B0605B1C6DDB2B00D46008 /* tls.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646081A89928E0062516A /* tls.c */; };
30B0605C1C6DDB2B00D46008 /* aes.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646111A8992CC0062516A /* aes.c */; };
30B0605D1C6DDB2B00D46008 /* arc4.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646121A8992CC0062516A /* arc4.c */; };
30B0605E1C6DDB2B00D46008 /* asn.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646131A8992CC0062516A /* asn.c */; };
30B0605F1C6DDB2B00D46008 /* blake2b.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646141A8992CC0062516A /* blake2b.c */; };
30B060601C6DDB2B00D46008 /* camellia.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646151A8992CC0062516A /* camellia.c */; };
30B060611C6DDB2B00D46008 /* chacha.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646161A8992CC0062516A /* chacha.c */; };
30B060621C6DDB2B00D46008 /* coding.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646171A8992CC0062516A /* coding.c */; };
30B060631C6DDB2B00D46008 /* des3.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646181A8992CC0062516A /* des3.c */; };
30B060641C6DDB2B00D46008 /* dh.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646191A8992CC0062516A /* dh.c */; };
30B060651C6DDB2B00D46008 /* dsa.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216461A1A8992CC0062516A /* dsa.c */; };
30B060661C6DDB2B00D46008 /* ecc.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216461B1A8992CC0062516A /* ecc.c */; };
30B060671C6DDB2B00D46008 /* error.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216461C1A8992CC0062516A /* error.c */; };
30B060681C6DDB2B00D46008 /* hash.c in Sources */ = {isa = PBXBuildFile; fileRef = 525BE5331B3869110054BBCD /* hash.c */; };
30B060691C6DDB2B00D46008 /* hc128.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216461D1A8992CC0062516A /* hc128.c */; };
30B0606A1C6DDB2B00D46008 /* hmac.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216461E1A8992CC0062516A /* hmac.c */; };
30B0606B1C6DDB2B00D46008 /* integer.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216461F1A8992CC0062516A /* integer.c */; };
30B0606C1C6DDB2B00D46008 /* logging.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646201A8992CC0062516A /* logging.c */; };
30B0606D1C6DDB2B00D46008 /* md2.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646211A8992CC0062516A /* md2.c */; };
30B0606E1C6DDB2B00D46008 /* md4.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646221A8992CC0062516A /* md4.c */; };
30B0606F1C6DDB2B00D46008 /* md5.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646231A8992CC0062516A /* md5.c */; };
30B060701C6DDB2B00D46008 /* memory.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646241A8992CC0062516A /* memory.c */; };
30B060721C6DDB2B00D46008 /* pkcs7.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646261A8992CC0062516A /* pkcs7.c */; };
30B060731C6DDB2B00D46008 /* poly1305.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646271A8992CC0062516A /* poly1305.c */; };
30B060741C6DDB2B00D46008 /* pwdbased.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646281A8992CC0062516A /* pwdbased.c */; };
30B060751C6DDB2B00D46008 /* rabbit.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646291A8992CC0062516A /* rabbit.c */; };
30B060761C6DDB2B00D46008 /* random.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216462A1A8992CC0062516A /* random.c */; };
30B060771C6DDB2B00D46008 /* ripemd.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216462B1A8992CC0062516A /* ripemd.c */; };
30B060781C6DDB2B00D46008 /* rsa.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216462C1A8992CC0062516A /* rsa.c */; };
30B060791C6DDB2B00D46008 /* sha.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216462D1A8992CC0062516A /* sha.c */; };
30B0607A1C6DDB2B00D46008 /* sha256.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216462E1A8992CC0062516A /* sha256.c */; };
30B0607B1C6DDB2B00D46008 /* sha512.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216462F1A8992CC0062516A /* sha512.c */; };
30B0607C1C6DDB2B00D46008 /* tfm.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646301A8992CC0062516A /* tfm.c */; };
30B0607D1C6DDB2B00D46008 /* wc_encrypt.c in Sources */ = {isa = PBXBuildFile; fileRef = 522DBE0C1B7926FB0031F454 /* wc_encrypt.c */; };
30B0607E1C6DDB2B00D46008 /* wc_port.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646311A8992CC0062516A /* wc_port.c */; };
30B0607F1C6DDB4600D46008 /* callbacks.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646531A8993290062516A /* callbacks.h */; };
30B060801C6DDB4600D46008 /* certs_test.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646541A8993290062516A /* certs_test.h */; };
30B060811C6DDB4600D46008 /* crl.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646551A8993290062516A /* crl.h */; };
30B060821C6DDB4600D46008 /* error-ssl.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646561A8993290062516A /* error-ssl.h */; };
30B060831C6DDB4600D46008 /* internal.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646571A8993290062516A /* internal.h */; };
30B060841C6DDB4600D46008 /* ocsp.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646581A8993290062516A /* ocsp.h */; };
30B060851C6DDB4600D46008 /* ssl.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216465B1A8993290062516A /* ssl.h */; };
30B060861C6DDB4600D46008 /* test.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216465C1A8993290062516A /* test.h */; };
30B060871C6DDB4600D46008 /* version.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216465D1A8993290062516A /* version.h */; };
30B0608B1C6DDB6200D46008 /* aes.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216465E1A8993770062516A /* aes.h */; };
30B0608C1C6DDB6200D46008 /* arc4.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216465F1A8993770062516A /* arc4.h */; };
30B0608D1C6DDB6200D46008 /* asn_public.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646601A8993770062516A /* asn_public.h */; };
30B0608E1C6DDB6200D46008 /* asn.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646611A8993770062516A /* asn.h */; };
30B0608F1C6DDB6200D46008 /* blake2-impl.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646621A8993770062516A /* blake2-impl.h */; };
30B060901C6DDB6200D46008 /* blake2-int.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646631A8993770062516A /* blake2-int.h */; };
30B060911C6DDB6200D46008 /* blake2.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646641A8993770062516A /* blake2.h */; };
30B060921C6DDB6200D46008 /* camellia.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646651A8993770062516A /* camellia.h */; };
30B060931C6DDB6200D46008 /* chacha.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646661A8993770062516A /* chacha.h */; };
30B060941C6DDB6200D46008 /* coding.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646671A8993770062516A /* coding.h */; };
30B060951C6DDB6200D46008 /* compress.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646681A8993770062516A /* compress.h */; };
30B060961C6DDB6200D46008 /* des3.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646691A8993770062516A /* des3.h */; };
30B060971C6DDB6200D46008 /* dh.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216466A1A8993770062516A /* dh.h */; };
30B060981C6DDB6200D46008 /* dsa.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216466B1A8993770062516A /* dsa.h */; };
30B060991C6DDB6200D46008 /* ecc.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216466C1A8993770062516A /* ecc.h */; };
30B0609A1C6DDB6200D46008 /* error-crypt.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216466D1A8993770062516A /* error-crypt.h */; };
30B0609B1C6DDB6200D46008 /* fips_test.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216466E1A8993770062516A /* fips_test.h */; };
30B0609C1C6DDB6200D46008 /* hash.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 525BE5351B3869430054BBCD /* hash.h */; };
30B0609D1C6DDB6200D46008 /* hc128.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216466F1A8993770062516A /* hc128.h */; };
30B0609E1C6DDB6200D46008 /* hmac.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646701A8993770062516A /* hmac.h */; };
30B0609F1C6DDB6200D46008 /* integer.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646721A8993770062516A /* integer.h */; };
30B060A01C6DDB6200D46008 /* logging.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646731A8993770062516A /* logging.h */; };
30B060A11C6DDB6200D46008 /* md2.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646741A8993770062516A /* md2.h */; };
30B060A21C6DDB6200D46008 /* md4.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646751A8993770062516A /* md4.h */; };
30B060A31C6DDB6200D46008 /* md5.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646761A8993770062516A /* md5.h */; };
30B060A41C6DDB6200D46008 /* memory.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646771A8993770062516A /* memory.h */; };
30B060A51C6DDB6200D46008 /* misc.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646781A8993770062516A /* misc.h */; };
30B060A61C6DDB6200D46008 /* mpi_class.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646791A8993770062516A /* mpi_class.h */; };
30B060A71C6DDB6200D46008 /* mpi_superclass.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216467A1A8993770062516A /* mpi_superclass.h */; };
30B060A81C6DDB6200D46008 /* pkcs7.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216467B1A8993770062516A /* pkcs7.h */; };
30B060A91C6DDB6200D46008 /* poly1305.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216467C1A8993770062516A /* poly1305.h */; };
30B060AA1C6DDB6200D46008 /* pwdbased.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216467D1A8993770062516A /* pwdbased.h */; };
30B060AB1C6DDB6200D46008 /* rabbit.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216467E1A8993770062516A /* rabbit.h */; };
30B060AC1C6DDB6200D46008 /* random.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216467F1A8993770062516A /* random.h */; };
30B060AD1C6DDB6200D46008 /* ripemd.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646801A8993770062516A /* ripemd.h */; };
30B060AE1C6DDB6200D46008 /* rsa.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646811A8993770062516A /* rsa.h */; };
30B060AF1C6DDB6200D46008 /* settings.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646821A8993770062516A /* settings.h */; };
30B060B01C6DDB6200D46008 /* sha.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646831A8993770062516A /* sha.h */; };
30B060B11C6DDB6200D46008 /* sha256.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646841A8993770062516A /* sha256.h */; };
30B060B21C6DDB6200D46008 /* sha512.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646851A8993770062516A /* sha512.h */; };
30B060B31C6DDB6200D46008 /* tfm.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646861A8993770062516A /* tfm.h */; };
30B060B41C6DDB6200D46008 /* types.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646871A8993770062516A /* types.h */; };
30B060B51C6DDB6200D46008 /* visibility.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646881A8993770062516A /* visibility.h */; };
30B060B61C6DDB6200D46008 /* wc_encrypt.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 522DBE0E1B7927290031F454 /* wc_encrypt.h */; };
30B060B71C6DDB6200D46008 /* wc_port.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646891A8993770062516A /* wc_port.h */; };
30B060B81C6DDB7D00D46008 /* callbacks.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216468A1A8993BB0062516A /* callbacks.h */; };
30B060B91C6DDB7D00D46008 /* certs_test.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216468B1A8993BB0062516A /* certs_test.h */; };
30B060BA1C6DDB7D00D46008 /* crl.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216468C1A8993BB0062516A /* crl.h */; };
30B060BB1C6DDB7D00D46008 /* error-ssl.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216468D1A8993BB0062516A /* error-ssl.h */; };
30B060BC1C6DDB7D00D46008 /* internal.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216468E1A8993BB0062516A /* internal.h */; };
30B060BD1C6DDB7D00D46008 /* ocsp.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216468F1A8993BB0062516A /* ocsp.h */; };
30B060BE1C6DDB7D00D46008 /* ssl.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646921A8993BB0062516A /* ssl.h */; };
30B060BF1C6DDB7D00D46008 /* test.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646931A8993BB0062516A /* test.h */; };
30B060C01C6DDB7D00D46008 /* version.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646941A8993BB0062516A /* version.h */; };
30B060C11C6DDB9800D46008 /* aes.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646951A8993F50062516A /* aes.h */; };
30B060C21C6DDB9800D46008 /* arc4.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646961A8993F50062516A /* arc4.h */; };
30B060C31C6DDB9800D46008 /* asn_public.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646971A8993F50062516A /* asn_public.h */; };
30B060C41C6DDB9800D46008 /* asn.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646981A8993F50062516A /* asn.h */; };
30B060C51C6DDB9800D46008 /* blake2-impl.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646991A8993F50062516A /* blake2-impl.h */; };
30B060C61C6DDB9800D46008 /* blake2-int.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216469A1A8993F50062516A /* blake2-int.h */; };
30B060C71C6DDB9800D46008 /* blake2.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216469B1A8993F50062516A /* blake2.h */; };
30B060C81C6DDB9800D46008 /* camellia.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216469C1A8993F50062516A /* camellia.h */; };
30B060C91C6DDB9800D46008 /* chacha.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216469D1A8993F50062516A /* chacha.h */; };
30B060CA1C6DDB9800D46008 /* coding.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216469E1A8993F50062516A /* coding.h */; };
30B060CB1C6DDB9800D46008 /* compress.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 5216469F1A8993F50062516A /* compress.h */; };
30B060CC1C6DDB9800D46008 /* des3.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A01A8993F50062516A /* des3.h */; };
30B060CD1C6DDB9800D46008 /* dh.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A11A8993F50062516A /* dh.h */; };
30B060CE1C6DDB9800D46008 /* dsa.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A21A8993F50062516A /* dsa.h */; };
30B060CF1C6DDB9800D46008 /* ecc.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A31A8993F50062516A /* ecc.h */; };
30B060D01C6DDB9800D46008 /* error-crypt.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A41A8993F50062516A /* error-crypt.h */; };
30B060D11C6DDB9800D46008 /* fips_test.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A51A8993F50062516A /* fips_test.h */; };
30B060D21C6DDB9800D46008 /* hc128.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A61A8993F50062516A /* hc128.h */; };
30B060D31C6DDB9800D46008 /* hmac.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A71A8993F50062516A /* hmac.h */; };
30B060D41C6DDB9800D46008 /* integer.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A81A8993F50062516A /* integer.h */; };
30B060D51C6DDB9800D46008 /* logging.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646A91A8993F50062516A /* logging.h */; };
30B060D61C6DDB9800D46008 /* md2.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646AA1A8993F50062516A /* md2.h */; };
30B060D71C6DDB9800D46008 /* md4.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646AB1A8993F50062516A /* md4.h */; };
30B060D81C6DDB9800D46008 /* md5.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646AC1A8993F50062516A /* md5.h */; };
30B060D91C6DDB9800D46008 /* memory.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646AD1A8993F50062516A /* memory.h */; };
30B060DA1C6DDB9800D46008 /* misc.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646AE1A8993F50062516A /* misc.h */; };
30B060DB1C6DDB9800D46008 /* mpi_class.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646AF1A8993F50062516A /* mpi_class.h */; };
30B060DC1C6DDB9800D46008 /* mpi_superclass.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B01A8993F50062516A /* mpi_superclass.h */; };
30B060DD1C6DDB9800D46008 /* pkcs7.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B11A8993F50062516A /* pkcs7.h */; };
30B060DE1C6DDB9800D46008 /* poly1305.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B21A8993F50062516A /* poly1305.h */; };
30B060DF1C6DDB9800D46008 /* pwdbased.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B31A8993F50062516A /* pwdbased.h */; };
30B060E01C6DDB9800D46008 /* rabbit.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B41A8993F50062516A /* rabbit.h */; };
30B060E11C6DDB9800D46008 /* random.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B51A8993F50062516A /* random.h */; };
30B060E21C6DDB9800D46008 /* ripemd.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B61A8993F50062516A /* ripemd.h */; };
30B060E31C6DDB9800D46008 /* rsa.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B71A8993F50062516A /* rsa.h */; };
30B060E41C6DDB9800D46008 /* settings_comp.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B81A8993F50062516A /* settings_comp.h */; };
30B060E51C6DDB9800D46008 /* settings.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646B91A8993F50062516A /* settings.h */; };
30B060E61C6DDB9800D46008 /* sha.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646BA1A8993F50062516A /* sha.h */; };
30B060E71C6DDB9800D46008 /* sha256.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646BB1A8993F50062516A /* sha256.h */; };
30B060E81C6DDB9800D46008 /* sha512.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646BC1A8993F50062516A /* sha512.h */; };
30B060E91C6DDB9800D46008 /* tfm.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646BD1A8993F50062516A /* tfm.h */; };
30B060EA1C6DDB9800D46008 /* types.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646BE1A8993F50062516A /* types.h */; };
30B060EB1C6DDB9800D46008 /* visibility.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646BF1A8993F50062516A /* visibility.h */; };
30B060EC1C6DDB9800D46008 /* wc_port.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 521646C01A8993F50062516A /* wc_port.h */; };
521646091A89928E0062516A /* crl.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646011A89928E0062516A /* crl.c */; };
5216460A1A89928E0062516A /* internal.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646021A89928E0062516A /* internal.c */; };
5216460B1A89928E0062516A /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646031A89928E0062516A /* io.c */; };
@@ -35,7 +184,6 @@
521646431A8992CC0062516A /* md4.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646221A8992CC0062516A /* md4.c */; };
521646441A8992CC0062516A /* md5.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646231A8992CC0062516A /* md5.c */; };
521646451A8992CC0062516A /* memory.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646241A8992CC0062516A /* memory.c */; };
521646461A8992CC0062516A /* misc.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646251A8992CC0062516A /* misc.c */; };
521646471A8992CC0062516A /* pkcs7.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646261A8992CC0062516A /* pkcs7.c */; };
521646481A8992CC0062516A /* poly1305.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646271A8992CC0062516A /* poly1305.c */; };
521646491A8992CC0062516A /* pwdbased.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646281A8992CC0062516A /* pwdbased.c */; };
@@ -165,7 +313,6 @@
A4F318551BC58B1700FDF2BB /* camellia.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646151A8992CC0062516A /* camellia.c */; };
A4F318561BC58B1700FDF2BB /* wc_port.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646311A8992CC0062516A /* wc_port.c */; };
A4F318571BC58B1700FDF2BB /* pwdbased.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646281A8992CC0062516A /* pwdbased.c */; };
A4F318581BC58B1700FDF2BB /* misc.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646251A8992CC0062516A /* misc.c */; };
A4F318591BC58B1700FDF2BB /* hc128.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216461D1A8992CC0062516A /* hc128.c */; };
A4F3185A1BC58B1700FDF2BB /* asn.c in Sources */ = {isa = PBXBuildFile; fileRef = 521646131A8992CC0062516A /* asn.c */; };
A4F3185B1BC58B1700FDF2BB /* sha512.c in Sources */ = {isa = PBXBuildFile; fileRef = 5216462F1A8992CC0062516A /* sha512.c */; };
@@ -310,6 +457,149 @@
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
30B060491C6DDAEA00D46008 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = include/wolfssl;
dstSubfolderSpec = 7;
files = (
30B0607F1C6DDB4600D46008 /* callbacks.h in CopyFiles */,
30B060801C6DDB4600D46008 /* certs_test.h in CopyFiles */,
30B060811C6DDB4600D46008 /* crl.h in CopyFiles */,
30B060821C6DDB4600D46008 /* error-ssl.h in CopyFiles */,
30B060831C6DDB4600D46008 /* internal.h in CopyFiles */,
30B060841C6DDB4600D46008 /* ocsp.h in CopyFiles */,
30B060851C6DDB4600D46008 /* ssl.h in CopyFiles */,
30B060861C6DDB4600D46008 /* test.h in CopyFiles */,
30B060871C6DDB4600D46008 /* version.h in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
30B060881C6DDB5200D46008 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = include/wolfssl/wolfcrypt;
dstSubfolderSpec = 7;
files = (
30B0608B1C6DDB6200D46008 /* aes.h in CopyFiles */,
30B0608C1C6DDB6200D46008 /* arc4.h in CopyFiles */,
30B0608D1C6DDB6200D46008 /* asn_public.h in CopyFiles */,
30B0608E1C6DDB6200D46008 /* asn.h in CopyFiles */,
30B0608F1C6DDB6200D46008 /* blake2-impl.h in CopyFiles */,
30B060901C6DDB6200D46008 /* blake2-int.h in CopyFiles */,
30B060911C6DDB6200D46008 /* blake2.h in CopyFiles */,
30B060921C6DDB6200D46008 /* camellia.h in CopyFiles */,
30B060931C6DDB6200D46008 /* chacha.h in CopyFiles */,
30B060941C6DDB6200D46008 /* coding.h in CopyFiles */,
30B060951C6DDB6200D46008 /* compress.h in CopyFiles */,
30B060961C6DDB6200D46008 /* des3.h in CopyFiles */,
30B060971C6DDB6200D46008 /* dh.h in CopyFiles */,
30B060981C6DDB6200D46008 /* dsa.h in CopyFiles */,
30B060991C6DDB6200D46008 /* ecc.h in CopyFiles */,
30B0609A1C6DDB6200D46008 /* error-crypt.h in CopyFiles */,
30B0609B1C6DDB6200D46008 /* fips_test.h in CopyFiles */,
30B0609C1C6DDB6200D46008 /* hash.h in CopyFiles */,
30B0609D1C6DDB6200D46008 /* hc128.h in CopyFiles */,
30B0609E1C6DDB6200D46008 /* hmac.h in CopyFiles */,
30B0609F1C6DDB6200D46008 /* integer.h in CopyFiles */,
30B060A01C6DDB6200D46008 /* logging.h in CopyFiles */,
30B060A11C6DDB6200D46008 /* md2.h in CopyFiles */,
30B060A21C6DDB6200D46008 /* md4.h in CopyFiles */,
30B060A31C6DDB6200D46008 /* md5.h in CopyFiles */,
30B060A41C6DDB6200D46008 /* memory.h in CopyFiles */,
30B060A51C6DDB6200D46008 /* misc.h in CopyFiles */,
30B060A61C6DDB6200D46008 /* mpi_class.h in CopyFiles */,
30B060A71C6DDB6200D46008 /* mpi_superclass.h in CopyFiles */,
30B060A81C6DDB6200D46008 /* pkcs7.h in CopyFiles */,
30B060A91C6DDB6200D46008 /* poly1305.h in CopyFiles */,
30B060AA1C6DDB6200D46008 /* pwdbased.h in CopyFiles */,
30B060AB1C6DDB6200D46008 /* rabbit.h in CopyFiles */,
30B060AC1C6DDB6200D46008 /* random.h in CopyFiles */,
30B060AD1C6DDB6200D46008 /* ripemd.h in CopyFiles */,
30B060AE1C6DDB6200D46008 /* rsa.h in CopyFiles */,
30B060AF1C6DDB6200D46008 /* settings.h in CopyFiles */,
30B060B01C6DDB6200D46008 /* sha.h in CopyFiles */,
30B060B11C6DDB6200D46008 /* sha256.h in CopyFiles */,
30B060B21C6DDB6200D46008 /* sha512.h in CopyFiles */,
30B060B31C6DDB6200D46008 /* tfm.h in CopyFiles */,
30B060B41C6DDB6200D46008 /* types.h in CopyFiles */,
30B060B51C6DDB6200D46008 /* visibility.h in CopyFiles */,
30B060B61C6DDB6200D46008 /* wc_encrypt.h in CopyFiles */,
30B060B71C6DDB6200D46008 /* wc_port.h in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
30B060891C6DDB5400D46008 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = include/cyassl;
dstSubfolderSpec = 7;
files = (
30B060B81C6DDB7D00D46008 /* callbacks.h in CopyFiles */,
30B060B91C6DDB7D00D46008 /* certs_test.h in CopyFiles */,
30B060BA1C6DDB7D00D46008 /* crl.h in CopyFiles */,
30B060BB1C6DDB7D00D46008 /* error-ssl.h in CopyFiles */,
30B060BC1C6DDB7D00D46008 /* internal.h in CopyFiles */,
30B060BD1C6DDB7D00D46008 /* ocsp.h in CopyFiles */,
30B060BE1C6DDB7D00D46008 /* ssl.h in CopyFiles */,
30B060BF1C6DDB7D00D46008 /* test.h in CopyFiles */,
30B060C01C6DDB7D00D46008 /* version.h in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
30B0608A1C6DDB5500D46008 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = include/cyassl/ctaocrypt;
dstSubfolderSpec = 7;
files = (
30B060C11C6DDB9800D46008 /* aes.h in CopyFiles */,
30B060C21C6DDB9800D46008 /* arc4.h in CopyFiles */,
30B060C31C6DDB9800D46008 /* asn_public.h in CopyFiles */,
30B060C41C6DDB9800D46008 /* asn.h in CopyFiles */,
30B060C51C6DDB9800D46008 /* blake2-impl.h in CopyFiles */,
30B060C61C6DDB9800D46008 /* blake2-int.h in CopyFiles */,
30B060C71C6DDB9800D46008 /* blake2.h in CopyFiles */,
30B060C81C6DDB9800D46008 /* camellia.h in CopyFiles */,
30B060C91C6DDB9800D46008 /* chacha.h in CopyFiles */,
30B060CA1C6DDB9800D46008 /* coding.h in CopyFiles */,
30B060CB1C6DDB9800D46008 /* compress.h in CopyFiles */,
30B060CC1C6DDB9800D46008 /* des3.h in CopyFiles */,
30B060CD1C6DDB9800D46008 /* dh.h in CopyFiles */,
30B060CE1C6DDB9800D46008 /* dsa.h in CopyFiles */,
30B060CF1C6DDB9800D46008 /* ecc.h in CopyFiles */,
30B060D01C6DDB9800D46008 /* error-crypt.h in CopyFiles */,
30B060D11C6DDB9800D46008 /* fips_test.h in CopyFiles */,
30B060D21C6DDB9800D46008 /* hc128.h in CopyFiles */,
30B060D31C6DDB9800D46008 /* hmac.h in CopyFiles */,
30B060D41C6DDB9800D46008 /* integer.h in CopyFiles */,
30B060D51C6DDB9800D46008 /* logging.h in CopyFiles */,
30B060D61C6DDB9800D46008 /* md2.h in CopyFiles */,
30B060D71C6DDB9800D46008 /* md4.h in CopyFiles */,
30B060D81C6DDB9800D46008 /* md5.h in CopyFiles */,
30B060D91C6DDB9800D46008 /* memory.h in CopyFiles */,
30B060DA1C6DDB9800D46008 /* misc.h in CopyFiles */,
30B060DB1C6DDB9800D46008 /* mpi_class.h in CopyFiles */,
30B060DC1C6DDB9800D46008 /* mpi_superclass.h in CopyFiles */,
30B060DD1C6DDB9800D46008 /* pkcs7.h in CopyFiles */,
30B060DE1C6DDB9800D46008 /* poly1305.h in CopyFiles */,
30B060DF1C6DDB9800D46008 /* pwdbased.h in CopyFiles */,
30B060E01C6DDB9800D46008 /* rabbit.h in CopyFiles */,
30B060E11C6DDB9800D46008 /* random.h in CopyFiles */,
30B060E21C6DDB9800D46008 /* ripemd.h in CopyFiles */,
30B060E31C6DDB9800D46008 /* rsa.h in CopyFiles */,
30B060E41C6DDB9800D46008 /* settings_comp.h in CopyFiles */,
30B060E51C6DDB9800D46008 /* settings.h in CopyFiles */,
30B060E61C6DDB9800D46008 /* sha.h in CopyFiles */,
30B060E71C6DDB9800D46008 /* sha256.h in CopyFiles */,
30B060E81C6DDB9800D46008 /* sha512.h in CopyFiles */,
30B060E91C6DDB9800D46008 /* tfm.h in CopyFiles */,
30B060EA1C6DDB9800D46008 /* types.h in CopyFiles */,
30B060EB1C6DDB9800D46008 /* visibility.h in CopyFiles */,
30B060EC1C6DDB9800D46008 /* wc_port.h in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
521646C11A8A7B380062516A /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
@@ -599,6 +889,7 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
30B0604B1C6DDAEA00D46008 /* libwolfssl_tvos.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwolfssl_tvos.a; sourceTree = BUILT_PRODUCTS_DIR; };
521646011A89928E0062516A /* crl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = crl.c; path = ../../src/crl.c; sourceTree = "<group>"; };
521646021A89928E0062516A /* internal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = internal.c; path = ../../src/internal.c; sourceTree = "<group>"; };
521646031A89928E0062516A /* io.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = io.c; path = ../../src/io.c; sourceTree = "<group>"; };
@@ -755,6 +1046,13 @@
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
30B060481C6DDAEA00D46008 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
52B1344A16F3C9E800C07B32 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -999,6 +1297,7 @@
children = (
52B1344D16F3C9E800C07B32 /* libwolfssl_ios.a */,
A4F318EE1BC58B1700FDF2BB /* libwolfssl_osx.a */,
30B0604B1C6DDAEA00D46008 /* libwolfssl_tvos.a */,
);
name = Products;
sourceTree = "<group>";
@@ -1006,6 +1305,26 @@
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
30B0604A1C6DDAEA00D46008 /* wolfssl_tvos */ = {
isa = PBXNativeTarget;
buildConfigurationList = 30B060531C6DDAEA00D46008 /* Build configuration list for PBXNativeTarget "wolfssl_tvos" */;
buildPhases = (
30B060471C6DDAEA00D46008 /* Sources */,
30B060481C6DDAEA00D46008 /* Frameworks */,
30B060491C6DDAEA00D46008 /* CopyFiles */,
30B060881C6DDB5200D46008 /* CopyFiles */,
30B060891C6DDB5400D46008 /* CopyFiles */,
30B0608A1C6DDB5500D46008 /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = wolfssl_tvos;
productName = wolfssl_tvos;
productReference = 30B0604B1C6DDAEA00D46008 /* libwolfssl_tvos.a */;
productType = "com.apple.product-type.library.static";
};
52B1344C16F3C9E800C07B32 /* wolfssl_ios */ = {
isa = PBXNativeTarget;
buildConfigurationList = 52B1347216F3C9E800C07B32 /* Build configuration list for PBXNativeTarget "wolfssl_ios" */;
@@ -1054,6 +1373,11 @@
attributes = {
LastUpgradeCheck = 0460;
ORGANIZATIONNAME = "wolfSSL Inc";
TargetAttributes = {
30B0604A1C6DDAEA00D46008 = {
CreatedOnToolsVersion = 7.2.1;
};
};
};
buildConfigurationList = 52B1344816F3C9E800C07B32 /* Build configuration list for PBXProject "wolfssl" */;
compatibilityVersion = "Xcode 3.2";
@@ -1069,11 +1393,61 @@
targets = (
52B1344C16F3C9E800C07B32 /* wolfssl_ios */,
A4F3184E1BC58B1700FDF2BB /* wolfssl_osx */,
30B0604A1C6DDAEA00D46008 /* wolfssl_tvos */,
);
};
/* End PBXProject section */
/* Begin PBXSourcesBuildPhase section */
30B060471C6DDAEA00D46008 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
30B060541C6DDB2B00D46008 /* crl.c in Sources */,
30B060551C6DDB2B00D46008 /* internal.c in Sources */,
30B060561C6DDB2B00D46008 /* io.c in Sources */,
30B060571C6DDB2B00D46008 /* keys.c in Sources */,
30B060581C6DDB2B00D46008 /* ocsp.c in Sources */,
30B060591C6DDB2B00D46008 /* sniffer.c in Sources */,
30B0605A1C6DDB2B00D46008 /* ssl.c in Sources */,
30B0605B1C6DDB2B00D46008 /* tls.c in Sources */,
30B0605C1C6DDB2B00D46008 /* aes.c in Sources */,
30B0605D1C6DDB2B00D46008 /* arc4.c in Sources */,
30B0605E1C6DDB2B00D46008 /* asn.c in Sources */,
30B0605F1C6DDB2B00D46008 /* blake2b.c in Sources */,
30B060601C6DDB2B00D46008 /* camellia.c in Sources */,
30B060611C6DDB2B00D46008 /* chacha.c in Sources */,
30B060621C6DDB2B00D46008 /* coding.c in Sources */,
30B060631C6DDB2B00D46008 /* des3.c in Sources */,
30B060641C6DDB2B00D46008 /* dh.c in Sources */,
30B060651C6DDB2B00D46008 /* dsa.c in Sources */,
30B060661C6DDB2B00D46008 /* ecc.c in Sources */,
30B060671C6DDB2B00D46008 /* error.c in Sources */,
30B060681C6DDB2B00D46008 /* hash.c in Sources */,
30B060691C6DDB2B00D46008 /* hc128.c in Sources */,
30B0606A1C6DDB2B00D46008 /* hmac.c in Sources */,
30B0606B1C6DDB2B00D46008 /* integer.c in Sources */,
30B0606C1C6DDB2B00D46008 /* logging.c in Sources */,
30B0606D1C6DDB2B00D46008 /* md2.c in Sources */,
30B0606E1C6DDB2B00D46008 /* md4.c in Sources */,
30B0606F1C6DDB2B00D46008 /* md5.c in Sources */,
30B060701C6DDB2B00D46008 /* memory.c in Sources */,
30B060721C6DDB2B00D46008 /* pkcs7.c in Sources */,
30B060731C6DDB2B00D46008 /* poly1305.c in Sources */,
30B060741C6DDB2B00D46008 /* pwdbased.c in Sources */,
30B060751C6DDB2B00D46008 /* rabbit.c in Sources */,
30B060761C6DDB2B00D46008 /* random.c in Sources */,
30B060771C6DDB2B00D46008 /* ripemd.c in Sources */,
30B060781C6DDB2B00D46008 /* rsa.c in Sources */,
30B060791C6DDB2B00D46008 /* sha.c in Sources */,
30B0607A1C6DDB2B00D46008 /* sha256.c in Sources */,
30B0607B1C6DDB2B00D46008 /* sha512.c in Sources */,
30B0607C1C6DDB2B00D46008 /* tfm.c in Sources */,
30B0607D1C6DDB2B00D46008 /* wc_encrypt.c in Sources */,
30B0607E1C6DDB2B00D46008 /* wc_port.c in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
52B1344916F3C9E800C07B32 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
@@ -1086,7 +1460,6 @@
521646361A8992CC0062516A /* camellia.c in Sources */,
521646521A8992CC0062516A /* wc_port.c in Sources */,
521646491A8992CC0062516A /* pwdbased.c in Sources */,
521646461A8992CC0062516A /* misc.c in Sources */,
5216463E1A8992CC0062516A /* hc128.c in Sources */,
521646341A8992CC0062516A /* asn.c in Sources */,
521646501A8992CC0062516A /* sha512.c in Sources */,
@@ -1136,7 +1509,6 @@
A4F318551BC58B1700FDF2BB /* camellia.c in Sources */,
A4F318561BC58B1700FDF2BB /* wc_port.c in Sources */,
A4F318571BC58B1700FDF2BB /* pwdbased.c in Sources */,
A4F318581BC58B1700FDF2BB /* misc.c in Sources */,
A4F318591BC58B1700FDF2BB /* hc128.c in Sources */,
A4F3185A1BC58B1700FDF2BB /* asn.c in Sources */,
A4F3185B1BC58B1700FDF2BB /* sha512.c in Sources */,
@@ -1177,6 +1549,74 @@
/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
30B060511C6DDAEA00D46008 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = YES;
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_UNREACHABLE_CODE = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
HEADER_SEARCH_PATHS = (
$SRCROOT,
$PROJECT_DIR/../..,
);
MTL_ENABLE_DEBUG_INFO = YES;
OTHER_LDFLAGS = "-ObjC";
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = appletvos;
SKIP_INSTALL = YES;
TVOS_DEPLOYMENT_TARGET = 9.1;
USER_HEADER_SEARCH_PATHS = "wolfssl/wolfcrypt wolfssl";
};
name = Debug;
};
30B060521C6DDAEA00D46008 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = YES;
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_UNREACHABLE_CODE = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
HEADER_SEARCH_PATHS = (
$SRCROOT,
$PROJECT_DIR/../..,
);
MTL_ENABLE_DEBUG_INFO = NO;
OTHER_LDFLAGS = "-ObjC";
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = appletvos;
SKIP_INSTALL = YES;
TVOS_DEPLOYMENT_TARGET = 9.1;
USER_HEADER_SEARCH_PATHS = "wolfssl/wolfcrypt wolfssl";
VALIDATE_PRODUCT = YES;
};
name = Release;
};
52B1347016F3C9E800C07B32 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -1337,6 +1777,15 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
30B060531C6DDAEA00D46008 /* Build configuration list for PBXNativeTarget "wolfssl_tvos" */ = {
isa = XCConfigurationList;
buildConfigurations = (
30B060511C6DDAEA00D46008 /* Debug */,
30B060521C6DDAEA00D46008 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
52B1344816F3C9E800C07B32 /* Build configuration list for PBXProject "wolfssl" */ = {
isa = XCConfigurationList;
buildConfigurations = (

39
README
View File

@@ -35,6 +35,41 @@ before calling wolfSSL_new(); Though it's not recommended.
*** end Notes ***
********* wolfSSL (Formerly CyaSSL) Release 3.9.0 (3/18/2016)
Release 3.9.0 of wolfSSL has bug fixes and new features including:
- Add new leantls configuration
- Add RSA OAEP padding at wolfCrypt level
- Add Arduino port and example client
- Add fixed point DH operation
- Add CUSTOM_RAND_GENRATE_SEED_OS and CUSTOM_RAND_GENERATE_BLOCK
- Add ECDHE-PSK cipher suites
- Add PSK ChaCha20-Poly1305 cipher suites
- Add option for fail on no peer cert except PSK suites
- Add port for Nordic nRF51
- Add additional ECC NIST test vectors for 256, 384 and 521
- Add more granular ECC, Ed25519/Curve25519 and AES configs
- Update to ChaCha20-Poly1305
- Update support for Freescale KSDK 1.3.0
- Update DER buffer handling code, refactoring and reducing memory
- Fix to AESNI 192 bit key expansion
- Fix to C# wrapper character encoding
- Fix sequence number issue with DTLS epoch 0 messages
- Fix RNGA with K64 build
- Fix ASN.1 X509 V3 certificate policy extension parsing
- Fix potential free of uninitialized RSA key in asn.c
- Fix potential underflow when using ECC build with FP_ECC
- Fixes for warnings in Visual Studio 2015 build
- No high level security fixes that requires an update though we always
recommend updating to the latest
- FP_ECC is off by default, users with it enabled should update for the zero
sized hash fix
See INSTALL file for build instructions.
More info can be found on-line at //http://wolfssl.com/yaSSL/Docs.html
********* wolfSSL (Formerly CyaSSL) Release 3.8.0 (12/30/2015)
Release 3.8.0 of wolfSSL has bug fixes and new features including:
@@ -162,8 +197,8 @@ Release 3.6.0 of wolfSSL has bug fixes and new features including:
- ECC make key crash fix on RNG failure, ECC users must update.
- Improvements to usage of time code.
- Improvements to VS solution files.
- GNU Binutils 2.24 ld has problems with some debug builds, to fix an ld error
add -fdebug-types-section to C_EXTRA_FLAGS
- GNU Binutils 2.24 (and late 2.23) ld has problems with some debug builds,
to fix an ld error add C_EXTRA_FLAGS="-fdebug-types-section -g1".
- No high level security fixes that requires an update though we always
recommend updating to the latest (except note 14, ecc RNG failure)

View File

@@ -37,6 +37,40 @@ wolfSSL_CTX_set_verify(ctx, SSL_VERIFY_NONE, 0);
before calling wolfSSL_new(); Though it's not recommended.
```
# wolfSSL (Formerly CyaSSL) Release 3.9.0 (03/18/2015)
##Release 3.9.0 of wolfSSL has bug fixes and new features including:
- Add new leantls configuration
- Add RSA OAEP padding at wolfCrypt level
- Add Arduino port and example client
- Add fixed point DH operation
- Add CUSTOM_RAND_GENRATE_SEED_OS and CUSTOM_RAND_GENERATE_BLOCK
- Add ECDHE-PSK cipher suites
- Add PSK ChaCha20-Poly1305 cipher suites
- Add option for fail on no peer cert except PSK suites
- Add port for Nordic nRF51
- Add additional ECC NIST test vectors for 256, 384 and 521
- Add more granular ECC, Ed25519/Curve25519 and AES configs
- Update to ChaCha20-Poly1305
- Update support for Freescale KSDK 1.3.0
- Update DER buffer handling code, refactoring and reducing memory
- Fix to AESNI 192 bit key expansion
- Fix to C# wrapper character encoding
- Fix sequence number issue with DTLS epoch 0 messages
- Fix RNGA with K64 build
- Fix ASN.1 X509 V3 certificate policy extension parsing
- Fix potential free of uninitialized RSA key in asn.c
- Fix potential underflow when using ECC build with FP_ECC
- Fixes for warnings in Visual Studio 2015 build
- No high level security fixes that requires an update though we always
recommend updating to the latest
- FP_ECC is off by default, users with it enabled should update for the zero
sized hash fix
See INSTALL file for build instructions.
More info can be found on-line at //http://wolfssl.com/yaSSL/Docs.html
# wolfSSL (Formerly CyaSSL) Release 3.8.0 (12/30/2015)

View File

@@ -18,6 +18,10 @@ if test -d .git; then
# touch fips files for non fips distribution
touch ./ctaocrypt/src/fips.c
touch ./ctaocrypt/src/fips_test.c
# touch async crypt files
touch ./src/async.c
touch ./wolfssl/async.h
else
WARNINGS="all"
fi

View File

@@ -6,7 +6,7 @@
#
#
AC_INIT([wolfssl],[3.8.1],[https://github.com/wolfssl/wolfssl/issues],[wolfssl],[http://www.wolfssl.com])
AC_INIT([wolfssl],[3.9.1],[https://github.com/wolfssl/wolfssl/issues],[wolfssl],[http://www.wolfssl.com])
AC_CONFIG_AUX_DIR([build-aux])
@@ -35,7 +35,7 @@ AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_HEADERS([config.h:config.in])dnl Keep filename to 8.3 for MS-DOS.
#shared library versioning
WOLFSSL_LIBRARY_VERSION=4:0:1
WOLFSSL_LIBRARY_VERSION=5:0:2
# | | |
# +------+ | +---+
# | | |
@@ -256,6 +256,21 @@ fi
AM_CONDITIONAL([BUILD_LEANPSK], [test "x$ENABLED_LEANPSK" = "xyes"])
# lean TLS build (TLS 1.2 client only (no client auth), ECC256, AES128 and SHA256 w/o Shamir)
AC_ARG_ENABLE([leantls],
[ --enable-leantls Enable Lean TLS build (default: disabled)],
[ ENABLED_LEANTLS=$enableval ],
[ ENABLED_LEANTLS=no ]
)
if test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_LEANTLS -DNO_WRITEV -DHAVE_ECC -DTFM_ECC256 -DECC_USER_CURVES -DNO_WOLFSSL_SERVER -DNO_RABBIT -DNO_RSA -DNO_DSA -DNO_DH -DNO_PWDBASED -DNO_DES3 -DNO_MD5 -DNO_ERROR_STRINGS -DNO_OLD_TLS -DNO_RC4 -DNO_SESSION_CACHE -DNO_SHA -DUSE_SLOW_SHA -DUSE_SLOW_SHA2 -DNO_PSK -DNO_WOLFSSL_MEMORY"
fi
AM_CONDITIONAL([BUILD_LEANTLS], [test "x$ENABLED_LEANTLS" = "xyes"])
# big cache
AC_ARG_ENABLE([bigcache],
[ --enable-bigcache Enable big session cache (default: disabled)],
@@ -354,7 +369,7 @@ AC_ARG_ENABLE([sniffer],
[ ENABLED_SNIFFER=no ]
)
# sniffer does't work in maxstrength mode
# sniffer doesn't work in maxstrength mode
if test "$ENABLED_SNIFFER" = "yes" && test "$ENABLED_MAXSTRENGTH" = "yes"
then
AC_MSG_ERROR([cannot enable maxstrength in sniffer mode.])
@@ -380,8 +395,8 @@ AC_ARG_ENABLE([aesgcm],
[ ENABLED_AESGCM=yes ]
)
# lean psk does't need gcm
if test "$ENABLED_LEANPSK" = "yes"
# leanpsk and leantls don't need gcm
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
ENABLED_AESGCM=no
fi
@@ -566,8 +581,8 @@ AC_ARG_ENABLE([sha512],
[ ENABLED_SHA512=$SHA512_DEFAULT ]
)
# lean psk does't need sha512
if test "$ENABLED_LEANPSK" = "yes"
# leanpsk and leantls don't need sha512
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
ENABLED_SHA512=no
fi
@@ -716,6 +731,14 @@ then
ECC_DEFAULT=yes
fi
# ECC Shamir
AC_ARG_ENABLE([eccshamir],
[AS_HELP_STRING([--enable-eccshamir],[Enable ECC Shamir (default: enabled on x86_64)])],
[ ENABLED_ECC_SHAMIR=$enableval ],
[ ENABLED_ECC_SHAMIR=$ECC_DEFAULT ]
)
# ECC
AC_ARG_ENABLE([ecc],
[AS_HELP_STRING([--enable-ecc],[Enable ECC (default: enabled on x86_64)])],
@@ -723,7 +746,7 @@ AC_ARG_ENABLE([ecc],
[ ENABLED_ECC=$ECC_DEFAULT ]
)
# lean psk does't need ecc
# lean psk doesn't need ecc
if test "$ENABLED_LEANPSK" = "yes"
then
ENABLED_ECC=no
@@ -736,18 +759,16 @@ fi
if test "$ENABLED_ECC" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DHAVE_ECC -DTFM_ECC256 -DECC_SHAMIR"
AM_CFLAGS="$AM_CFLAGS -DHAVE_ECC -DTFM_ECC256"
if test "$ENABLED_ECC_SHAMIR" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DECC_SHAMIR"
fi
fi
AM_CONDITIONAL([BUILD_ECC], [test "x$ENABLED_ECC" = "xyes"])
if test "$ENABLED_ECC" = "yes" && test "$ENABLED_SMALL" = "yes"
then
AC_MSG_ERROR([cannot enable ecc and small, ecc requires TLS which small turns off.])
fi
# for using memory optimization setting on both curve25519 and ed25519
ENABLED_CURVED25519_SMALL=no
@@ -874,8 +895,8 @@ if test "$ENABLED_ERROR_STRINGS" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_ERROR_STRINGS"
else
# turn off error strings if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off error strings if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DNO_ERROR_STRINGS"
ENABLED_ERROR_STRINGS=no
@@ -894,8 +915,8 @@ if test "$ENABLED_OLD_TLS" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_OLD_TLS"
else
# turn off old if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off old if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DNO_OLD_TLS"
ENABLED_OLD_TLS=no
@@ -942,8 +963,8 @@ if test "$ENABLED_MEMORY" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_WOLFSSL_MEMORY"
else
# turn off memory cb if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off memory cb if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
# but don't turn on NO_WOLFSSL_MEMORY because using own
ENABLED_MEMORY=no
@@ -964,8 +985,8 @@ if test "$ENABLED_RSA" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_RSA"
else
# turn off RSA if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off RSA if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DNO_RSA"
ENABLED_RSA=no
@@ -991,8 +1012,8 @@ if test "$ENABLED_DH" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_DH"
else
# turn off DH if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off DH if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DNO_DH"
ENABLED_DH=no
@@ -1137,8 +1158,8 @@ if test "$ENABLED_DES3" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_DES3"
else
# turn off DES3 if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off DES3 if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DNO_DES3"
ENABLED_DES3=no
@@ -1180,8 +1201,8 @@ if test "$ENABLED_ARC4" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_RC4"
else
# turn off ARC4 if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off ARC4 if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DNO_RC4"
ENABLED_ARC4=no
@@ -1202,8 +1223,8 @@ if test "$ENABLED_MD5" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_MD5 -DNO_OLD_TLS"
else
# turn off MD5 if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off MD5 if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DNO_MD5 -DNO_OLD_TLS"
ENABLED_MD5=no
@@ -1224,8 +1245,8 @@ if test "$ENABLED_SHA" = "no"
then
AM_CFLAGS="$AM_CFLAGS -DNO_SHA -DNO_OLD_TLS"
else
# turn off SHA if leanpsk on
if test "$ENABLED_LEANPSK" = "yes"
# turn off SHA if leanpsk or leantls on
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DNO_SHA -DNO_OLD_TLS"
ENABLED_SHA=no
@@ -1332,8 +1353,8 @@ AC_ARG_ENABLE([poly1305],
[ ENABLED_POLY1305=$POLY1305_DEFAULT]
)
# lean psk does't need poly1305
if test "$ENABLED_LEANPSK" = "yes"
# leanpsk and leantls don't need poly1305
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
ENABLED_POLY1305=no
fi
@@ -1361,8 +1382,8 @@ AC_ARG_ENABLE([chacha],
[ ENABLED_CHACHA=$CHACHA_DEFAULT]
)
# lean psk does't need chacha
if test "$ENABLED_LEANPSK" = "yes"
# leanpsk and leantls don't need chacha
if test "$ENABLED_LEANPSK" = "yes" || test "$ENABLED_LEANTLS" = "yes"
then
ENABLED_CHACHA=no
fi
@@ -1636,10 +1657,49 @@ AC_ARG_WITH([ntru],
AM_CONDITIONAL([BUILD_NTRU], [test "x$ENABLED_NTRU" = "xyes"])
if test "$ENABLED_NTRU" = "yes" && test "$ENABLED_SMALL" = "yes"
then
AC_MSG_ERROR([cannot enable ntru and small, ntru requires TLS which small turns off.])
fi
# Whitewood netRandom client library
ENABLED_WNR="no"
trywnrdir=""
AC_ARG_WITH([wnr],
[AS_HELP_STRING([--with-wnr=PATH],[Path to Whitewood netRandom install (default /usr/local)])],
[
AC_MSG_CHECKING([for Whitewood netRandom])
CPPFLAGS="$CPPFLAGS -DHAVE_WNR"
LIBS="$LIBS -lwnr"
AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <wnr.h>]], [[ wnr_setup(0, 0); ]])], [ wnr_linked=yes ],[ wnr_linked=no ])
if test "x$wnr_linked" == "xno" ; then
if test "x$withval" != "xno" ; then
trywnrdir=$withval
fi
if test "x$withval" == "xyes" ; then
trywnrdir="/usr/local"
fi
LDFLAGS="$AM_LDFLAGS $LDFLAGS -L$trywnrdir/lib"
CPPFLAGS="$CPPFLAGS -I$trywnrdir/include"
AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <wnr.h>]], [[ wnr_setup(0, 0); ]])], [ wnr_linked=yes ],[ wnr_linked=no ])
if test "x$wnr_linked" == "xno" ; then
AC_MSG_ERROR([Whitewood netRandom isn't found.
If it's already installed, specify its path using --with-wnr=/dir/])
fi
AC_MSG_RESULT([yes])
AM_LDFLAGS="$AM_LDFLAGS -L$trywnrdir/lib"
else
AC_MSG_RESULT([yes])
fi
AM_CFLAGS="$AM_CFLAGS -DHAVE_WNR"
ENABLED_WNR="yes"
]
)
AM_CONDITIONAL([BUILD_WNR], [test "x$ENABLED_WNR" = "xyes"])
# SNI
AC_ARG_ENABLE([sni],
@@ -1913,8 +1973,13 @@ then
if test "x$ENABLED_ECC" = "xno"
then
ENABLED_ECC="yes"
AM_CFLAGS="$AM_CFLAGS -DHAVE_ECC -DTFM_ECC256 -DECC_SHAMIR"
AM_CFLAGS="$AM_CFLAGS -DHAVE_ECC -DTFM_ECC256"
AM_CONDITIONAL([BUILD_ECC], [test "x$ENABLED_ECC" = "xyes"])
if test "$ENABLED_ECC_SHAMIR" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DECC_SHAMIR"
fi
fi
if test "x$ENABLED_OPENSSLEXTRA" = "xno"
then
@@ -1981,8 +2046,13 @@ then
if test "x$ENABLED_ECC" = "xno"
then
ENABLED_ECC="yes"
AM_CFLAGS="$AM_CFLAGS -DHAVE_ECC -DTFM_ECC256 -DECC_SHAMIR"
AM_CFLAGS="$AM_CFLAGS -DHAVE_ECC -DTFM_ECC256"
AM_CONDITIONAL([BUILD_ECC], [test "x$ENABLED_ECC" = "xyes"])
if test "$ENABLED_ECC_SHAMIR" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DECC_SHAMIR"
fi
fi
if test "x$ENABLED_PKCALLBACKS" = "xno"
then
@@ -2074,8 +2144,13 @@ then
then
ENABLED_OPENSSLEXTRA="yes"
ENABLED_ECC="yes"
AM_CFLAGS="$AM_CFLAGS -DHAVE_ECC -DTFM_ECC256 -DECC_SHAMIR"
AM_CFLAGS="$AM_CFLAGS -DHAVE_ECC -DTFM_ECC256"
AM_CONDITIONAL([BUILD_ECC], [test "x$ENABLED_ECC" = "xyes"])
if test "$ENABLED_ECC_SHAMIR" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DECC_SHAMIR"
fi
fi
AM_CFLAGS="$AM_CFLAGS -DHAVE_STUNNEL -DWOLFSSL_ALWAYS_VERIFY_CB"
@@ -2237,7 +2312,9 @@ AC_ARG_ENABLE([examples],
AS_IF([test "x$ENABLED_FILESYSTEM" = "xno"], [ENABLED_EXAMPLES="no"])
AS_IF([test "x$ENABLED_INLINE" = "xno"], [ENABLED_EXAMPLES="no"])
AS_IF([test "x$ENABLED_CRYPTONLY" = "xyes"], [ENABLED_EXAMPLES="no"])
AM_CONDITIONAL([BUILD_EXAMPLES], [test "x$ENABLED_EXAMPLES" = "xyes"])
AM_CONDITIONAL([BUILD_EXAMPLE_SERVERS], [test "x$ENABLED_EXAMPLES" = "xyes" && test "x$ENABLED_LEANTLS" = "xno"])
AM_CONDITIONAL([BUILD_EXAMPLE_CLIENTS], [test "x$ENABLED_EXAMPLES" = "xyes"])
AM_CONDITIONAL([BUILD_TESTS], [test "x$ENABLED_EXAMPLES" = "xyes" && test "x$ENABLED_LEANTLS" = "xno"])
# Enable wolfCrypt test and benchmark
AC_ARG_ENABLE([crypttests],
@@ -2498,16 +2575,107 @@ fi
AM_CONDITIONAL([BUILD_MCAPI], [test "x$ENABLED_MCAPI" = "xyes"])
# Asynchronous Crypto
AC_ARG_ENABLE([asynccrypt],
[ --enable-asynccrypt Enable Asynchronous Crypto (default: disabled)],
[ ENABLED_ASYNCCRYPT=$enableval ],
[ ENABLED_ASYNCCRYPT=no ]
)
if test "$ENABLED_ASYNCCRYPT" = "yes"
then
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_ASYNC_CRYPT"
# if Cavium not enabled the use async simulator for testing
if test "x$ENABLED_CAVIUM" = "xno"
then
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_ASYNC_CRYPT_TEST"
fi
fi
AM_CONDITIONAL([BUILD_ASYNCCRYPT], [test "x$ENABLED_ASYNCCRYPT" = "xyes"])
# Session Export
AC_ARG_ENABLE([sessionexport],
[AS_HELP_STRING([--enable-sessionexport],[Enable export and import of sessions (default: disabled)])],
[ ENABLED_SESSIONEXPORT=$enableval ],
[ ENABLED_SESSIONEXPORT=no ]
)
if test "$ENABLED_SESSIONEXPORT" = "yes"
then
if test "$ENABLED_DTLS" = "no"
then
AC_MSG_ERROR([Only DTLS supported with session export])
fi
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_SESSION_EXPORT"
fi
# check if PSK was enabled for conditionally running psk.test script
AM_CONDITIONAL([BUILD_PSK], [test "x$ENABLED_PSK" = "xyes"])
# Check for build-type conflicts
# check if should run the trusted peer certs test
# (for now checking both C_FLAGS and C_EXTRA_FLAGS)
case $C_EXTRA_FLAGS in
*WOLFSSL_TRUST_PEER_CERT*)
have_tp=yes
break;;
*)
have_tp=no ;;
esac
if test "$have_tp" = "no"; then
case $C_FLAGS in
*WOLFSSL_TRUST_PEER_CERT*)
have_tp=yes
break;;
*)
have_tp=no ;;
esac
fi
AM_CONDITIONAL([BUILD_TRUST_PEER_CERT], [test "x$have_tp" = "xyes"])
################################################################################
# Check for build-type conflicts #
################################################################################
AS_IF([test "x$ENABLED_MAXSTRENGTH" = "xyes" && \
test "x$ENABLED_LEANPSK" = "xyes"],
[AC_MSG_ERROR([Cannot use Max Strength and Lean PSK at the same time.])])
AS_IF([test "x$ENABLED_OCSP" = "xyes" && \
test "x$ENABLED_ASN" = "xno"],
[AC_MSG_ERROR([please enable asn if enabling ocsp.])])
AS_IF([test "x$ENABLED_OCSP" = "xyes" && \
test "x$ENABLED_RSA" = "xno" && \
test "x$ENABLED_ECC" = "xno"],
[AC_MSG_ERROR([please enable rsa or ecc if enabling ocsp.])])
# checks for pkcs7 needed enables
AS_IF([test "x$ENABLED_PKCS7" = "xyes" && \
test "x$ENABLED_RSA" = "xno"],
[AC_MSG_ERROR([please enable rsa if enabling pkcs7.])])
AS_IF([test "x$ENABLED_PKCS7" = "xyes" && \
test "x$ENABLED_SHA" = "xno"],
[AC_MSG_ERROR([please enable sha if enabling pkcs7.])])
AS_IF([test "x$ENABLED_LEANTLS" = "xyes" && \
test "x$ENABLED_ECC" = "xno"],
[AC_MSG_ERROR([please enable ecc if enabling leantls.])])
AS_IF([test "x$ENABLED_SNIFFER" = "xyes" && \
test "x$ENABLED_RSA" = "xno"],
[AC_MSG_ERROR([please enable rsa if enabling sniffer.])])
################################################################################
# Update CFLAGS based on options #
################################################################################
# Update CFLAGS based on options
AS_IF([test "x$ENABLED_MAXSTRENGTH" = "xyes"],
[AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_MAX_STRENGTH"])
@@ -2520,6 +2688,7 @@ AS_IF([test "x$ENABLED_MAXSTRENGTH" = "xyes" && \
test "x$ENABLED_SSLV3" = "xyes"],
[AC_MSG_ERROR([Cannot use Max Strength and SSLv3 at the same time.])])
################################################################################
# OPTIMIZE FLAGS
if test "$GCC" = "yes"
@@ -2556,10 +2725,18 @@ fi
LIB_SOCKET_NSL
AX_HARDEN_CC_COMPILER_FLAGS
# link to ws2_32 if on mingw
# if mingw then link to ws2_32 for sockets
case $host_os in
*mingw32)
LDFLAGS="$LDFLAGS -lws2_32" ;;
mingw*)
LDFLAGS="$LDFLAGS -lws2_32"
if test "$enable_shared" = "yes"
then
AC_DEFINE([WOLFSSL_DLL], [1], [Use __declspec(dllexport) when building library])
if test "$enable_static" = "yes"
then
MINGW_LIB_WARNING="yes"
fi
fi ;;
esac
# add user C_EXTRA_FLAGS back
@@ -2635,7 +2812,7 @@ for option in $OPTION_FLAGS; do
noequalsign=`echo $defonly | sed 's/=/ /'`
if test "$noequalsign" = "NDEBUG" || test "$noequalsign" = "DEBUG"
then
echo "not outputing (N)DEBUG to $OPTION_FILE"
echo "not outputting (N)DEBUG to $OPTION_FILE"
continue
fi
@@ -2685,8 +2862,16 @@ done < $OPTION_FILE
# switch ifdef protection in cyassl/option.h to CYASSL_OPTONS_H, remove bak
sed -i.bak 's/WOLFSSL_OPTIONS_H/CYASSL_OPTIONS_H/g' cyassl/options.h
# workaround for mingw sed that may get "Permission denied" trying to preserver permissions
case $host_os in
mingw*)
chmod u+w cyassl/options.h ;;
esac
rm cyassl/options.h.bak
# output config summary
echo "---"
echo "Configuration summary for $PACKAGE_NAME version $VERSION"
@@ -2744,6 +2929,7 @@ echo " * MD4: $ENABLED_MD4"
echo " * PSK: $ENABLED_PSK"
echo " * Poly1305: $ENABLED_POLY1305"
echo " * LEANPSK: $ENABLED_LEANPSK"
echo " * LEANTLS: $ENABLED_LEANTLS"
echo " * RSA: $ENABLED_RSA"
echo " * DSA: $ENABLED_DSA"
echo " * DH: $ENABLED_DH"
@@ -2773,6 +2959,7 @@ echo " * Persistent cert cache: $ENABLED_SAVECERT"
echo " * Atomic User Record Layer: $ENABLED_ATOMICUSER"
echo " * Public Key Callbacks: $ENABLED_PKCALLBACKS"
echo " * NTRU: $ENABLED_NTRU"
echo " * Whitewood netRandom: $ENABLED_WNR"
echo " * Server Name Indication: $ENABLED_SNI"
echo " * ALPN: $ENABLED_ALPN"
echo " * Maximum Fragment Length: $ENABLED_MAX_FRAGMENT"
@@ -2791,5 +2978,34 @@ echo " * LIBZ: $ENABLED_LIBZ"
echo " * Examples: $ENABLED_EXAMPLES"
echo " * User Crypto: $ENABLED_USER_CRYPTO"
echo " * Fast RSA: $ENABLED_FAST_RSA"
echo " * Async Crypto: $ENABLED_ASYNCCRYPT"
echo ""
echo "---"
################################################################################
# Show warnings at bottom so they are noticed
################################################################################
if test "$ENABLED_ASYNCCRYPT" = "yes"
then
AC_MSG_WARN([Make sure real async files are loaded. Contact wolfSSL for details on using the asynccrypt option.])
fi
# MinGW static vs shared library
# Reference URL from libtool for MinGW is located at
# http://www.gnu.org/software/libtool/manual/libtool.html#Cygwin-to-MinGW-Cross
# this allows for not even having dllimport/dllexport on functions
# with recent libtools, only requiring it with global variables.
#
# The following warning is displayed here because if not using "contemporary GNU
# tools" there is the possibility of export/import issues.
# wolfSSL uses __declspec(dllexport) and "contemporary GNU tools" handle the
# case where both static and shared libraries are built.
#
# More can be found about the MinGW linker at
# https://sourceware.org/binutils/docs/ld/WIN32.html
if test "$MINGW_LIB_WARNING" = "yes"
then
AC_MSG_WARN([Building with shared and static library at the same time on this system may cause export/import problems when using non contemporary GNU tools.])
fi

View File

@@ -1,8 +1,8 @@
/* misc.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,12 +16,14 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#ifdef NO_INLINE
#include <wolfssl/wolfcrypt/misc.h>
#else
/* for inline includes */
#define WOLFSSL_MISC_INCLUDED
#include <wolfcrypt/src/misc.c>
#endif

View File

@@ -1,8 +1,8 @@
/* wolfcrypt_first.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/* This file needs to be linked first in order to work correctly */
#ifdef HAVE_CONFIG_H

View File

@@ -1,8 +1,8 @@
/* wolfcrypt_last.c
*
* Copyright (C) 2006-2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
/* This file needs to be linked last in order to work correctly */
#ifdef HAVE_CONFIG_H

View File

@@ -1,8 +1,8 @@
/* callbacks.h
*
* Copyright (C) 2015 wolfSSL Inc.
* Copyright (C) 2006-2016 wolfSSL Inc.
*
* This file is part of wolfSSL. (formerly known as CyaSSL)
* This file is part of wolfSSL.
*
* wolfSSL is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,7 +16,8 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
*/
#include <wolfssl/callbacks.h>

Some files were not shown because too many files have changed in this diff Show More