forked from wolfSSL/wolfssl
Compare commits
1 Commits
v5.6.3-sta
...
fixes_with
Author | SHA1 | Date | |
---|---|---|---|
3cd5dabd0b |
58
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
58
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
@ -1,58 +0,0 @@
|
||||
name: Bug Report
|
||||
description: File a bug report
|
||||
title: "[Bug]: "
|
||||
labels: ["bug", "triage"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: >
|
||||
Thanks for reporting an bug. If you would prefer a private method,
|
||||
please email support@wolfssl.com
|
||||
- type: input
|
||||
id: contact
|
||||
attributes:
|
||||
label: Contact Details
|
||||
description: How can we get in touch with you if we need more info?
|
||||
placeholder: ex. email@example.com
|
||||
validations:
|
||||
required: false
|
||||
- type: input
|
||||
id: version
|
||||
attributes:
|
||||
label: Version
|
||||
description: What version were you using?
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: details
|
||||
attributes:
|
||||
label: Description
|
||||
description: |
|
||||
Describe the issue in detail
|
||||
Please include:
|
||||
* Specific `./configure` options or `user_settings.h`
|
||||
* Target and build environment
|
||||
placeholder: |
|
||||
Blinded by the light!
|
||||
Code runs too fast. It's gone plaid!
|
||||
...
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: reproduce
|
||||
attributes:
|
||||
label: Reproduction steps
|
||||
description: If possible please give instructions on how to reproduce.
|
||||
placeholder: |
|
||||
1. `./configure --enable-42`
|
||||
2. `make question`
|
||||
3.
|
||||
...
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
id: logs
|
||||
attributes:
|
||||
label: Relevant log output
|
||||
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
|
||||
render: shell
|
28
.github/ISSUE_TEMPLATE/other.yaml
vendored
28
.github/ISSUE_TEMPLATE/other.yaml
vendored
@ -1,28 +0,0 @@
|
||||
name: General Issue
|
||||
description: Request support with an issue
|
||||
labels: ["triage"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: >
|
||||
Thanks for reporting an issue. If you would prefer a private method,
|
||||
please email support@wolfssl.com
|
||||
- type: input
|
||||
id: version
|
||||
attributes:
|
||||
label: Version
|
||||
description: What version were you using?
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: details
|
||||
attributes:
|
||||
label: Description
|
||||
description: |
|
||||
Describe the issue in detail.
|
||||
Please include specific configuration options or user_settings.h
|
||||
placeholder: |
|
||||
`./configure --enable-world-domination` fails
|
||||
...
|
||||
validations:
|
||||
required: true
|
16
.github/PULL_REQUEST_TEMPLATE.md
vendored
16
.github/PULL_REQUEST_TEMPLATE.md
vendored
@ -1,16 +0,0 @@
|
||||
# Description
|
||||
|
||||
Please describe the scope of the fix or feature addition.
|
||||
|
||||
Fixes zd#
|
||||
|
||||
# Testing
|
||||
|
||||
How did you test?
|
||||
|
||||
# Checklist
|
||||
|
||||
- [ ] added tests
|
||||
- [ ] updated/added doxygen
|
||||
- [ ] updated appropriate READMEs
|
||||
- [ ] Updated manual and documentation
|
12
.github/SECURITY.md
vendored
12
.github/SECURITY.md
vendored
@ -1,12 +0,0 @@
|
||||
# Security Policy
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
If you discover a vulnerability, please report it to support@wolfssl.com
|
||||
|
||||
1. Include a detailed description
|
||||
2. Include method to reproduce and/or method of discovery
|
||||
3. We will evaluate the report promptly and respond to you with findings.
|
||||
4. We will credit you with the report if you would like.
|
||||
|
||||
**Please keep the vulnerability private** until a fix has been released.
|
32
.github/workflows/async.yml
vendored
32
.github/workflows/async.yml
vendored
@ -1,32 +0,0 @@
|
||||
name: Async Tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
make_check:
|
||||
strategy:
|
||||
matrix:
|
||||
config: [
|
||||
# Add new configs here
|
||||
'--enable-asynccrypt --enable-all --enable-dtls13',
|
||||
'--enable-asynccrypt-sw',
|
||||
]
|
||||
name: make check
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
name: Checkout wolfSSL
|
||||
|
||||
- name: Test wolfSSL async
|
||||
run: |
|
||||
./async-check.sh setup
|
||||
./configure ${{ matrix.config }}
|
||||
make check
|
||||
|
||||
- name: Print errors
|
||||
if: ${{ failure() }}
|
||||
run: |
|
||||
if [ -f test-suite.log ] ; then
|
||||
cat test-suite.log
|
||||
fi
|
32
.github/workflows/docker-Espressif.yml
vendored
32
.github/workflows/docker-Espressif.yml
vendored
@ -1,32 +0,0 @@
|
||||
name: Espressif examples tests
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
espressif_latest:
|
||||
name: latest Docker container
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: espressif/idf:latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Initialize Espressif IDE and build examples
|
||||
run: . /opt/esp/idf/export.sh; IDE/Espressif/ESP-IDF/compileAllExamples.sh
|
||||
espressif_v4_4:
|
||||
name: v4.4 Docker container
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: espressif/idf:release-v4.4
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Initialize Espressif IDE and build examples
|
||||
run: . /opt/esp/idf/export.sh; IDE/Espressif/ESP-IDF/compileAllExamples.sh
|
||||
espressif_v5_0:
|
||||
name: v5.0 Docker container
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: espressif/idf:release-v5.0
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Initialize Espressif IDE and build examples
|
||||
run: . /opt/esp/idf/export.sh; IDE/Espressif/ESP-IDF/compileAllExamples.sh
|
50
.github/workflows/docker-OpenWrt.yml
vendored
50
.github/workflows/docker-OpenWrt.yml
vendored
@ -1,50 +0,0 @@
|
||||
# This workflow tests out new libraries with existing OpenWrt builds to check
|
||||
# there aren't any compatibility issues. Take a look at Docker/OpenWrt/README.md
|
||||
name: OpenWrt test
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
build_library:
|
||||
name: Compile libwolfssl.so
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: alpine:latest
|
||||
steps:
|
||||
- name: Install required tools
|
||||
run: apk add argp-standalone asciidoc bash bc binutils bzip2 cdrkit coreutils diffutils elfutils-dev findutils flex musl-fts-dev g++ gawk gcc gettext git grep intltool libxslt linux-headers make musl-libintl musl-obstack-dev ncurses-dev openssl-dev patch perl python3-dev rsync tar unzip util-linux wget zlib-dev autoconf automake libtool
|
||||
- uses: actions/checkout@v3
|
||||
- name: Compile libwolfssl.so
|
||||
run: ./autogen.sh && ./configure --enable-all && make
|
||||
- name: Upload libwolfssl.so
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openwrt-libwolfssl.so
|
||||
path: src/.libs/libwolfssl.so
|
||||
retention-days: 1
|
||||
compile_container:
|
||||
name: Compile container
|
||||
runs-on: ubuntu-latest
|
||||
needs: build_library
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
release: [ "22.03-SNAPSHOT", "21.02-SNAPSHOT" ] # some other versions: 21.02.0 21.02.5 22.03.0 22.03.3 snapshot
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: docker/setup-buildx-action@v2
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openwrt-libwolfssl.so
|
||||
path: Docker/OpenWrt/.
|
||||
- name: Build but dont push
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
context: Docker/OpenWrt
|
||||
platforms: linux/amd64
|
||||
push: false
|
||||
tags: openwrt-test:latest
|
||||
build-args: DOCKER_BASE_CONTAINER=openwrt/rootfs:x86-64-${{ matrix.release }}
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=max
|
51
.github/workflows/haproxy.yml
vendored
51
.github/workflows/haproxy.yml
vendored
@ -1,51 +0,0 @@
|
||||
name: HaProxy Tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
haproxy_check:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# List of refs to test
|
||||
ref: [ master ]
|
||||
name: ${{ matrix.ref }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Build wolfSSL
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
path: wolfssl
|
||||
configure: --enable-quic --enable-haproxy
|
||||
install: true
|
||||
|
||||
- name: Checkout VTest
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: vtest/VTest
|
||||
path: VTest
|
||||
|
||||
- name: Build VTest
|
||||
working-directory: VTest
|
||||
# Special flags due to: https://github.com/vtest/VTest/issues/12
|
||||
run: make FLAGS='-O2 -s -Wall'
|
||||
|
||||
- name: Checkout HaProxy
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: haproxy/haproxy
|
||||
path: haproxy
|
||||
ref: ${{ matrix.ref }}
|
||||
|
||||
- name: Build HaProxy
|
||||
working-directory: haproxy
|
||||
run: >-
|
||||
make -j TARGET=linux-glibc DEBUG='-DDEBUG_MEMORY_POOLS -DDEBUG_STRICT'
|
||||
USE_OPENSSL_WOLFSSL=1 USE_QUIC=1 SSL_INC=$GITHUB_WORKSPACE/build-dir/include/
|
||||
SSL_LIB=$GITHUB_WORKSPACE/build-dir/lib/ ADDLIB=-Wl,-rpath=$GITHUB_WORKSPACE/build-dir/lib
|
||||
|
||||
- name: Test HaProxy
|
||||
working-directory: haproxy
|
||||
run: make reg-tests reg-tests/ssl VTEST_PROGRAM=$GITHUB_WORKSPACE/VTest/vtest
|
||||
|
11
.github/workflows/hostap-files/Makefile
vendored
11
.github/workflows/hostap-files/Makefile
vendored
@ -1,11 +0,0 @@
|
||||
obj-m := mac80211_hwsim.o
|
||||
KDIR := /lib/modules/$(shell uname -r)/build
|
||||
PWD := $(shell pwd)
|
||||
default:
|
||||
$(MAKE) -C $(KDIR) M=$(PWD) modules
|
||||
install:
|
||||
$(MAKE) -C $(KDIR) M=$(PWD) modules_install
|
||||
depmod -A
|
||||
clean:
|
||||
$(MAKE) -C $(KDIR) M=$(PWD) clean
|
||||
|
2
.github/workflows/hostap-files/README
vendored
2
.github/workflows/hostap-files/README
vendored
@ -1,2 +0,0 @@
|
||||
Makefile and directory used in .github/workflows/hostap.yml to
|
||||
compile the mac80211_hwsim kernel module.
|
@ -1,120 +0,0 @@
|
||||
#CC=ccache gcc
|
||||
|
||||
CONFIG_DRIVER_NONE=y
|
||||
CONFIG_DRIVER_NL80211=y
|
||||
CONFIG_RSN_PREAUTH=y
|
||||
|
||||
#CONFIG_TLS=internal
|
||||
#CONFIG_INTERNAL_LIBTOMMATH=y
|
||||
#CONFIG_INTERNAL_LIBTOMMATH_FAST=y
|
||||
#CONFIG_TLS=openssl
|
||||
CONFIG_TLS=wolfssl
|
||||
|
||||
CONFIG_EAP=y
|
||||
CONFIG_ERP=y
|
||||
CONFIG_EAP_MD5=y
|
||||
CONFIG_EAP_TLS=y
|
||||
CONFIG_EAP_MSCHAPV2=y
|
||||
CONFIG_EAP_PEAP=y
|
||||
CONFIG_EAP_GTC=y
|
||||
CONFIG_EAP_TTLS=y
|
||||
CONFIG_EAP_SIM=y
|
||||
CONFIG_EAP_AKA=y
|
||||
CONFIG_EAP_AKA_PRIME=y
|
||||
CONFIG_EAP_GPSK=y
|
||||
CONFIG_EAP_GPSK_SHA256=y
|
||||
CONFIG_EAP_SAKE=y
|
||||
CONFIG_EAP_PAX=y
|
||||
CONFIG_EAP_PSK=y
|
||||
CONFIG_EAP_VENDOR_TEST=y
|
||||
CONFIG_EAP_FAST=y
|
||||
CONFIG_EAP_TEAP=y
|
||||
CONFIG_EAP_IKEV2=y
|
||||
CONFIG_EAP_TNC=y
|
||||
CFLAGS += -DTNC_CONFIG_FILE=\"tnc/tnc_config\"
|
||||
LIBS += -rdynamic
|
||||
CONFIG_EAP_UNAUTH_TLS=y
|
||||
ifeq ($(CONFIG_TLS), openssl)
|
||||
CONFIG_EAP_PWD=y
|
||||
endif
|
||||
ifeq ($(CONFIG_TLS), wolfssl)
|
||||
CONFIG_EAP_PWD=y
|
||||
endif
|
||||
CONFIG_EAP_EKE=y
|
||||
CONFIG_PKCS12=y
|
||||
CONFIG_RADIUS_SERVER=y
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_TLSV11=y
|
||||
CONFIG_TLSV12=y
|
||||
|
||||
CONFIG_FULL_DYNAMIC_VLAN=y
|
||||
CONFIG_VLAN_NETLINK=y
|
||||
CONFIG_LIBNL32=y
|
||||
CONFIG_LIBNL3_ROUTE=y
|
||||
CONFIG_IEEE80211R=y
|
||||
CONFIG_IEEE80211AC=y
|
||||
CONFIG_IEEE80211AX=y
|
||||
|
||||
CONFIG_OCV=y
|
||||
|
||||
CONFIG_WPS=y
|
||||
CONFIG_WPS_UPNP=y
|
||||
CONFIG_WPS_NFC=y
|
||||
#CONFIG_WPS_STRICT=y
|
||||
CONFIG_WPA_TRACE=y
|
||||
CONFIG_WPA_TRACE_BFD=y
|
||||
|
||||
CONFIG_P2P_MANAGER=y
|
||||
CONFIG_DEBUG_FILE=y
|
||||
CONFIG_DEBUG_LINUX_TRACING=y
|
||||
CONFIG_WPA_CLI_EDIT=y
|
||||
CONFIG_ACS=y
|
||||
CONFIG_NO_RANDOM_POOL=y
|
||||
CONFIG_WNM=y
|
||||
CONFIG_INTERWORKING=y
|
||||
CONFIG_HS20=y
|
||||
CONFIG_SQLITE=y
|
||||
CONFIG_SAE=y
|
||||
CONFIG_SAE_PK=y
|
||||
CFLAGS += -DALL_DH_GROUPS
|
||||
|
||||
CONFIG_FST=y
|
||||
CONFIG_FST_TEST=y
|
||||
|
||||
CONFIG_TESTING_OPTIONS=y
|
||||
CFLAGS += -DCONFIG_RADIUS_TEST
|
||||
CONFIG_MODULE_TESTS=y
|
||||
|
||||
CONFIG_SUITEB=y
|
||||
|
||||
# AddressSanitizer (ASan) can be enabled by uncommenting the following lines.
|
||||
# This can be used as a more efficient memory error detector than valgrind
|
||||
# (though, with still some CPU and memory cost, so VM cases will need more
|
||||
# memory allocated for the guest).
|
||||
#CFLAGS += -fsanitize=address -O1 -fno-omit-frame-pointer -g
|
||||
#LIBS += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_h += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_n += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_c += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
|
||||
# Undefined Behavior Sanitizer (UBSan) can be enabled by uncommenting the
|
||||
# following lines.
|
||||
#CFLAGS += -Wno-format-nonliteral
|
||||
#CFLAGS += -fsanitize=undefined
|
||||
##CFLAGS += -fno-sanitize-recover
|
||||
#LIBS += -fsanitize=undefined
|
||||
##LIBS += -fno-sanitize-recover
|
||||
#LIBS_h += -fsanitize=undefined
|
||||
#LIBS_n += -fsanitize=undefined
|
||||
#LIBS_c += -fsanitize=undefined
|
||||
CONFIG_MBO=y
|
||||
|
||||
CONFIG_TAXONOMY=y
|
||||
CONFIG_FILS=y
|
||||
CONFIG_FILS_SK_PFS=y
|
||||
CONFIG_OWE=y
|
||||
CONFIG_DPP=y
|
||||
CONFIG_DPP2=y
|
||||
CONFIG_WEP=y
|
||||
CONFIG_PASN=y
|
||||
CONFIG_AIRTIME_POLICY=y
|
@ -1,707 +0,0 @@
|
||||
sae_pk
|
||||
sae_pk_group_negotiation
|
||||
sae_pk_sec_3
|
||||
sae_pk_sec_5
|
||||
sae_pk_group_20
|
||||
sae_pk_group_21
|
||||
sae_pk_group_20_sae_group_19
|
||||
sae_pk_group_20_sae_group_21
|
||||
sae_pk_group_19_sae_group_20
|
||||
sae_pk_password_without_pk
|
||||
sae_pk_only
|
||||
sae_pk_modes
|
||||
sae_pk_not_on_ap
|
||||
sae_pk_mixed
|
||||
sae_pk_mixed_immediate_confirm
|
||||
sae_pk_missing_ie
|
||||
sae_pk_unexpected_status
|
||||
sae_pk_invalid_signature
|
||||
sae_pk_invalid_fingerprint
|
||||
sae_pk_and_psk
|
||||
sae_pk_and_psk_invalid_password
|
||||
sae_pk_invalid_pw
|
||||
sae
|
||||
sae_password_ecc
|
||||
sae_pmksa_caching
|
||||
sae_pmksa_caching_pmkid
|
||||
sae_pmksa_caching_disabled
|
||||
sae_groups
|
||||
sae_group_nego
|
||||
sae_group_nego_no_match
|
||||
sae_anti_clogging
|
||||
sae_forced_anti_clogging
|
||||
sae_mixed
|
||||
sae_and_psk
|
||||
sae_and_psk2
|
||||
sae_wpa3_roam
|
||||
sae_mixed_mfp
|
||||
sae_mfp
|
||||
sae_missing_password
|
||||
sae_key_lifetime_in_memory
|
||||
sae_oom_wpas
|
||||
sae_proto_ecc
|
||||
sae_proto_ffc
|
||||
sae_proto_commit_delayed
|
||||
sae_proto_commit_replay
|
||||
sae_proto_confirm_replay
|
||||
sae_proto_hostapd
|
||||
sae_proto_hostapd_ecc
|
||||
sae_proto_hostapd_ffc
|
||||
sae_proto_hostapd_status_126
|
||||
sae_proto_hostapd_status_127
|
||||
sae_reflection_attack_ecc
|
||||
sae_reflection_attack_ecc_internal
|
||||
sae_commit_override
|
||||
sae_commit_override2
|
||||
sae_commit_invalid_scalar_element_ap
|
||||
sae_commit_invalid_element_ap
|
||||
sae_commit_invalid_scalar_element_sta
|
||||
sae_commit_invalid_element_sta
|
||||
sae_anti_clogging_proto
|
||||
sae_no_random
|
||||
sae_invalid_anti_clogging_token_req
|
||||
sae_password
|
||||
sae_password_short
|
||||
sae_password_long
|
||||
sae_connect_cmd
|
||||
sae_password_id
|
||||
sae_password_id_ecc
|
||||
sae_password_id_ffc
|
||||
sae_password_id_only
|
||||
sae_password_id_pwe_looping
|
||||
sae_password_id_pwe_check_ap
|
||||
sae_password_id_pwe_check_sta
|
||||
sae_forced_anti_clogging_pw_id
|
||||
sae_reauth
|
||||
sae_sync
|
||||
sae_confirm_immediate
|
||||
sae_confirm_immediate2
|
||||
sae_pwe_group_19
|
||||
sae_pwe_group_20
|
||||
sae_pwe_group_21
|
||||
sae_pwe_group_28
|
||||
sae_pwe_group_29
|
||||
sae_pwe_group_30
|
||||
sae_pwe_group_1
|
||||
sae_pwe_group_2
|
||||
sae_pwe_group_22
|
||||
sae_pwe_h2e_only_ap
|
||||
sae_pwe_h2e_only_ap_sta_forcing_loop
|
||||
sae_pwe_loop_only_ap
|
||||
sae_h2e_rejected_groups
|
||||
sae_h2e_rejected_groups_unexpected
|
||||
sae_h2e_password_id
|
||||
sae_pwe_in_psk_ap
|
||||
sae_auth_restart
|
||||
sae_rsne_mismatch
|
||||
sae_h2e_rsnxe_mismatch
|
||||
sae_h2e_rsnxe_mismatch_retries
|
||||
sae_h2e_rsnxe_mismatch_assoc
|
||||
sae_h2e_rsnxe_mismatch_ap
|
||||
sae_h2e_rsnxe_mismatch_ap2
|
||||
sae_h2e_rsnxe_mismatch_ap3
|
||||
sae_forced_anti_clogging_h2e
|
||||
sae_forced_anti_clogging_h2e_loop
|
||||
sae_okc
|
||||
sae_okc_sta_only
|
||||
sae_okc_pmk_lifetime
|
||||
sae_pmk_lifetime
|
||||
sae_and_psk_multiple_passwords
|
||||
sae_pmf_roam
|
||||
sae_ocv_pmk
|
||||
sae_ocv_pmk_failure
|
||||
sae_reject
|
||||
eap_tls_pkcs8_pkcs5_v2_des3
|
||||
eap_tls_pkcs8_pkcs5_v15
|
||||
eap_tls_session_resumption
|
||||
eap_tls_session_resumption_expiration
|
||||
eap_tls_session_resumption_radius
|
||||
eap_tls_sha512
|
||||
eap_tls_sha384
|
||||
eap_tls_ext_cert_check
|
||||
eap_tls_errors
|
||||
ap_wpa2_delayed_m3_retransmission
|
||||
ap_wpa2_delayed_m1_m3_retransmission
|
||||
ap_wpa2_delayed_m1_m3_retransmission2
|
||||
ap_wpa2_delayed_group_m1_retransmission
|
||||
ap_wpa2_delayed_group_m1_retransmission_igtk
|
||||
ap_wpa2_delayed_m1_m3_zero_tk
|
||||
ap_wpa2_plaintext_m1_m3
|
||||
ap_wpa2_plaintext_m1_m3_pmf
|
||||
ap_wpa2_plaintext_m3
|
||||
ap_wpa2_plaintext_group_m1
|
||||
ap_wpa2_plaintext_group_m1_pmf
|
||||
ap_wpa2_test_command_failures
|
||||
ap_wpa2_gtk_initial_rsc_tkip
|
||||
ap_wpa2_gtk_initial_rsc_ccmp
|
||||
ap_wpa2_gtk_initial_rsc_ccmp_256
|
||||
ap_wpa2_gtk_initial_rsc_gcmp
|
||||
ap_wpa2_gtk_initial_rsc_gcmp_256
|
||||
ap_wpa2_igtk_initial_rsc_aes_128_cmac
|
||||
ap_wpa2_igtk_initial_rsc_bip_gmac_128
|
||||
ap_wpa2_igtk_initial_rsc_bip_gmac_256
|
||||
ap_wpa2_igtk_initial_rsc_bip_cmac_256
|
||||
ap_wpa2_psk
|
||||
ap_wpa2_psk_file
|
||||
ap_wpa2_psk_file_keyid
|
||||
ap_wpa2_psk_mem
|
||||
ap_wpa2_ptk_rekey
|
||||
ap_wpa2_ptk_rekey_blocked_ap
|
||||
ap_wpa2_ptk_rekey_blocked_sta
|
||||
ap_wpa2_ptk_rekey_anonce
|
||||
ap_wpa2_ptk_rekey_ap
|
||||
ap_wpa2_sha256_ptk_rekey
|
||||
ap_wpa2_sha256_ptk_rekey_ap
|
||||
ap_wpa2_psk_file_errors
|
||||
ap_wpa2_psk_wildcard_ssid
|
||||
ap_wpa2_gtk_rekey
|
||||
ap_wpa2_gtk_rekey_request
|
||||
ap_wpa2_gtk_rekey_failure
|
||||
ap_wpa2_gtk_rekey_fail_1_sta
|
||||
ap_wpa2_gmk_rekey
|
||||
ap_wpa2_strict_rekey
|
||||
ap_wpa2_psk_ext
|
||||
ap_wpa2_psk_unexpected
|
||||
ap_wpa2_psk_ext_retry_msg_3
|
||||
ap_wpa2_psk_ext_retry_msg_3b
|
||||
ap_wpa2_psk_ext_retry_msg_3c
|
||||
ap_wpa2_psk_ext_retry_msg_3d
|
||||
ap_wpa2_psk_ext_retry_msg_3e
|
||||
ap_wpa2_psk_ext_delayed_ptk_rekey
|
||||
ap_wpa2_psk_ext_eapol
|
||||
ap_wpa2_psk_ext_eapol_retry1
|
||||
ap_wpa2_psk_ext_eapol_retry1b
|
||||
ap_wpa2_psk_ext_eapol_retry1c
|
||||
ap_wpa2_psk_ext_eapol_retry1d
|
||||
ap_wpa2_psk_ext_eapol_type_diff
|
||||
ap_wpa2_psk_ext_eapol_key_info
|
||||
ap_wpa2_psk_supp_proto
|
||||
ap_wpa2_psk_supp_proto_no_ie
|
||||
ap_wpa2_psk_supp_proto_ie_mismatch
|
||||
ap_wpa2_psk_supp_proto_ok
|
||||
ap_wpa2_psk_supp_proto_no_gtk
|
||||
ap_wpa2_psk_supp_proto_anonce_change
|
||||
ap_wpa2_psk_supp_proto_unexpected_group_msg
|
||||
ap_wpa2_psk_supp_proto_msg_1_invalid_kde
|
||||
ap_wpa2_psk_supp_proto_wrong_pairwise_key_len
|
||||
ap_wpa2_psk_supp_proto_wrong_group_key_len
|
||||
ap_wpa2_psk_supp_proto_gtk_tx_bit_workaround
|
||||
ap_wpa2_psk_supp_proto_gtk_keyidx_0_and_3
|
||||
ap_wpa2_psk_supp_proto_no_gtk_in_group_msg
|
||||
ap_wpa2_psk_supp_proto_too_long_gtk_in_group_msg
|
||||
ap_wpa2_psk_supp_proto_too_long_gtk_kde
|
||||
ap_wpa2_psk_supp_proto_gtk_not_encrypted
|
||||
ap_wpa2_psk_supp_proto_no_igtk
|
||||
ap_wpa2_psk_supp_proto_igtk_ok
|
||||
ap_wpa2_psk_supp_proto_igtk_keyid_swap
|
||||
ap_wpa2_psk_supp_proto_igtk_keyid_too_large
|
||||
ap_wpa2_psk_supp_proto_igtk_keyid_unexpected
|
||||
ap_wpa2_psk_wep
|
||||
ap_wpa2_psk_ifdown
|
||||
ap_wpa2_psk_drop_first_msg_4
|
||||
ap_wpa2_psk_disable_enable
|
||||
ap_wpa2_psk_incorrect_passphrase
|
||||
ap_wpa2_psk_no_random
|
||||
ap_wpa2_psk_assoc_rsn
|
||||
ap_wpa2_psk_ft_workaround
|
||||
ap_wpa2_psk_assoc_rsn_pmkid
|
||||
ap_wpa2_eapol_retry_limit
|
||||
ap_wpa2_disable_eapol_retry
|
||||
ap_wpa2_disable_eapol_retry_group
|
||||
ap_wpa2_psk_mic_0
|
||||
ap_wpa2_psk_local_error
|
||||
ap_wpa2_psk_inject_assoc
|
||||
ap_wpa2_psk_no_control_port
|
||||
ap_wpa2_psk_ap_control_port
|
||||
ap_wpa2_psk_ap_control_port_disabled
|
||||
ap_wpa2_psk_rsne_mismatch_ap
|
||||
ap_wpa2_psk_rsne_mismatch_ap2
|
||||
ap_wpa2_psk_rsne_mismatch_ap3
|
||||
ap_wpa2_psk_rsnxe_mismatch_ap
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_ap0
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_ap1
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_ap2
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_sta0
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_sta1
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_sta2
|
||||
ap_wpa2_eap_sim
|
||||
ap_wpa2_eap_sim_imsi_identity
|
||||
ap_wpa2_eap_sim_imsi_privacy_key
|
||||
ap_wpa2_eap_sim_imsi_privacy_attr
|
||||
ap_wpa2_eap_sim_sql
|
||||
ap_wpa2_eap_sim_config
|
||||
ap_wpa2_eap_sim_id_0
|
||||
ap_wpa2_eap_sim_id_1
|
||||
ap_wpa2_eap_sim_id_2
|
||||
ap_wpa2_eap_sim_id_3
|
||||
ap_wpa2_eap_sim_ext
|
||||
ap_wpa2_eap_sim_ext_replace_sim
|
||||
ap_wpa2_eap_sim_ext_replace_sim2
|
||||
ap_wpa2_eap_sim_ext_replace_sim3
|
||||
ap_wpa2_eap_sim_ext_auth_fail
|
||||
ap_wpa2_eap_sim_change_bssid
|
||||
ap_wpa2_eap_sim_no_change_set
|
||||
ap_wpa2_eap_sim_ext_anonymous
|
||||
ap_wpa2_eap_sim_ext_anonymous_no_pseudonym
|
||||
ap_wpa2_eap_sim_oom
|
||||
ap_wpa2_eap_aka
|
||||
ap_wpa2_eap_aka_imsi_identity
|
||||
ap_wpa2_eap_aka_imsi_privacy_key
|
||||
ap_wpa2_eap_aka_imsi_privacy_attr
|
||||
ap_wpa2_eap_aka_imsi_privacy_key_expired
|
||||
ap_wpa2_eap_aka_sql
|
||||
ap_wpa2_eap_aka_config
|
||||
ap_wpa2_eap_aka_ext
|
||||
ap_wpa2_eap_aka_ext_auth_fail
|
||||
ap_wpa2_eap_aka_prime
|
||||
ap_wpa2_eap_aka_prime_imsi_identity
|
||||
ap_wpa2_eap_aka_prime_imsi_privacy_key
|
||||
ap_wpa2_eap_aka_prime_sql
|
||||
ap_wpa2_eap_aka_prime_ext_auth_fail
|
||||
ap_wpa2_eap_aka_prime_ext
|
||||
ap_wpa2_eap_ttls_pap
|
||||
ap_wpa2_eap_ttls_pap_subject_match
|
||||
ap_wpa2_eap_ttls_pap_check_cert_subject
|
||||
ap_wpa2_eap_ttls_pap_incorrect_password
|
||||
ap_wpa2_eap_ttls_chap
|
||||
ap_wpa2_eap_ttls_chap_altsubject_match
|
||||
ap_wpa2_eap_ttls_chap_incorrect_password
|
||||
ap_wpa2_eap_ttls_mschap
|
||||
ap_wpa2_eap_ttls_mschap_incorrect_password
|
||||
ap_wpa2_eap_ttls_mschapv2
|
||||
ap_wpa2_eap_ttls_invalid_phase2
|
||||
ap_wpa2_eap_ttls_mschapv2_suffix_match
|
||||
ap_wpa2_eap_ttls_mschapv2_domain_match
|
||||
ap_wpa2_eap_ttls_mschapv2_incorrect_password
|
||||
ap_wpa2_eap_ttls_mschapv2_utf8
|
||||
ap_wpa2_eap_ttls_eap_gtc
|
||||
ap_wpa2_eap_ttls_eap_gtc_incorrect_password
|
||||
ap_wpa2_eap_ttls_eap_gtc_no_password
|
||||
ap_wpa2_eap_ttls_eap_gtc_server_oom
|
||||
ap_wpa2_eap_ttls_eap_gtc_oom
|
||||
ap_wpa2_eap_ttls_eap_md5
|
||||
ap_wpa2_eap_ttls_eap_md5_incorrect_password
|
||||
ap_wpa2_eap_ttls_eap_md5_no_password
|
||||
ap_wpa2_eap_ttls_eap_md5_server_oom
|
||||
ap_wpa2_eap_ttls_eap_mschapv2
|
||||
ap_wpa2_eap_ttls_eap_mschapv2_no_password
|
||||
ap_wpa2_eap_ttls_eap_mschapv2_server_oom
|
||||
ap_wpa2_eap_ttls_eap_sim
|
||||
ap_wpa2_eap_ttls_eap_sim_ext
|
||||
ap_wpa2_eap_ttls_eap_vendor
|
||||
ap_wpa2_eap_peap_eap_sim
|
||||
ap_wpa2_eap_peap_eap_sim_ext
|
||||
ap_wpa2_eap_fast_eap_sim_ext
|
||||
ap_wpa2_eap_ttls_eap_aka
|
||||
ap_wpa2_eap_peap_eap_aka
|
||||
ap_wpa2_eap_peap_eap_mschapv2
|
||||
ap_wpa2_eap_peap_eap_mschapv2_domain
|
||||
ap_wpa2_eap_peap_eap_mschapv2_incorrect_password
|
||||
ap_wpa2_eap_peap_crypto_binding
|
||||
ap_wpa2_eap_peap_crypto_binding_server_oom
|
||||
ap_wpa2_eap_peap_params
|
||||
ap_wpa2_eap_peap_eap_gtc
|
||||
ap_wpa2_eap_peap_eap_tls
|
||||
ap_wpa2_eap_peap_eap_vendor
|
||||
ap_wpa2_eap_tls
|
||||
ap_wpa2_eap_tls_blob
|
||||
ap_wpa2_eap_tls_blob_pem
|
||||
ap_wpa2_eap_tls_blob_missing
|
||||
ap_wpa2_eap_tls_with_tls_len
|
||||
ap_wpa2_eap_tls_pkcs12
|
||||
ap_wpa2_eap_tls_pkcs12_blob
|
||||
ap_wpa2_eap_tls_pkcs12_blob_pem
|
||||
ap_wpa2_eap_tls_diff_ca_trust
|
||||
ap_wpa2_eap_tls_diff_ca_trust2
|
||||
ap_wpa2_eap_tls_diff_ca_trust3
|
||||
ap_wpa2_eap_tls_neg_suffix_match
|
||||
ap_wpa2_eap_tls_neg_domain_match
|
||||
ap_wpa2_eap_tls_neg_subject_match
|
||||
ap_wpa2_eap_tls_neg_altsubject_match
|
||||
ap_wpa2_eap_unauth_tls
|
||||
ap_wpa2_eap_ttls_server_cert_hash
|
||||
ap_wpa2_eap_ttls_server_cert_hash_invalid
|
||||
ap_wpa2_eap_pwd
|
||||
ap_wpa2_eap_pwd_nthash
|
||||
ap_wpa2_eap_pwd_salt_sha1
|
||||
ap_wpa2_eap_pwd_salt_sha256
|
||||
ap_wpa2_eap_pwd_salt_sha512
|
||||
ap_wpa2_eap_pwd_groups
|
||||
ap_wpa2_eap_pwd_invalid_group
|
||||
ap_wpa2_eap_pwd_disabled_group
|
||||
ap_wpa2_eap_pwd_as_frag
|
||||
ap_wpa2_eap_gpsk
|
||||
ap_wpa2_eap_sake
|
||||
ap_wpa2_eap_eke
|
||||
ap_wpa2_eap_eke_many
|
||||
ap_wpa2_eap_eke_serverid_nai
|
||||
ap_wpa2_eap_eke_server_oom
|
||||
ap_wpa2_eap_ikev2
|
||||
ap_wpa2_eap_ikev2_as_frag
|
||||
ap_wpa2_eap_ikev2_oom
|
||||
ap_wpa2_eap_pax
|
||||
ap_wpa2_eap_psk
|
||||
ap_wpa2_eap_psk_oom
|
||||
ap_wpa2_eap_interactive
|
||||
ap_wpa2_eap_ext_enable_network_while_connected
|
||||
ap_wpa2_eap_vendor_test
|
||||
ap_wpa2_eap_vendor_test_oom
|
||||
ap_wpa2_eap_fast_gtc_identity_change
|
||||
ap_wpa2_eap_fast_eap_vendor
|
||||
ap_wpa2_eap_tls_ocsp
|
||||
ap_wpa2_eap_tls_ocsp_multi
|
||||
ap_wpa2_eap_tls_ocsp_key_id
|
||||
ap_wpa2_eap_tls_ocsp_ca_signed_good
|
||||
ap_wpa2_eap_tls_ocsp_ca_signed_revoked
|
||||
ap_wpa2_eap_tls_ocsp_ca_signed_unknown
|
||||
ap_wpa2_eap_tls_ocsp_server_signed
|
||||
ap_wpa2_eap_tls_ocsp_invalid_data
|
||||
ap_wpa2_eap_tls_ocsp_invalid
|
||||
ap_wpa2_eap_tls_ocsp_unknown_sign
|
||||
ap_wpa2_eap_tls_intermediate_ca
|
||||
ap_wpa2_eap_tls_ocsp_multi_revoked
|
||||
ap_wpa2_eap_tls_domain_suffix_match_cn_full
|
||||
ap_wpa2_eap_tls_domain_match_cn
|
||||
ap_wpa2_eap_tls_domain_suffix_match_cn
|
||||
ap_wpa2_eap_tls_domain_suffix_mismatch_cn
|
||||
ap_wpa2_eap_tls_domain_mismatch_cn
|
||||
ap_wpa2_eap_ttls_long_duration
|
||||
ap_wpa2_eap_ttls_server_cert_eku_client
|
||||
ap_wpa2_eap_ttls_server_cert_eku_client_server
|
||||
ap_wpa2_eap_ttls_server_pkcs12
|
||||
ap_wpa2_eap_ttls_server_pkcs12_extra
|
||||
ap_wpa2_eap_ttls_dh_params_server
|
||||
ap_wpa2_eap_ttls_dh_params_dsa_server
|
||||
ap_wpa2_eap_ttls_dh_params_not_found
|
||||
ap_wpa2_eap_ttls_dh_params_invalid
|
||||
ap_wpa2_eap_reauth
|
||||
ap_wpa2_eap_reauth_ptk_rekey_blocked_sta
|
||||
ap_wpa2_eap_request_identity_message
|
||||
ap_wpa2_eap_sim_aka_result_ind
|
||||
ap_wpa2_eap_sim_zero_db_timeout
|
||||
ap_wpa2_eap_too_many_roundtrips
|
||||
ap_wpa2_eap_too_many_roundtrips_server
|
||||
ap_wpa2_eap_too_many_roundtrips_server2
|
||||
ap_wpa2_eap_expanded_nak
|
||||
ap_wpa2_eap_sql
|
||||
ap_wpa2_eap_non_ascii_identity
|
||||
ap_wpa2_eap_non_ascii_identity2
|
||||
ap_wpa2_eap_unexpected_wep_eapol_key
|
||||
ap_wpa2_eap_session_ticket
|
||||
ap_wpa2_eap_no_workaround
|
||||
ap_wpa2_eap_tls_check_crl
|
||||
ap_wpa2_eap_tls_check_crl_not_strict
|
||||
ap_wpa2_eap_tls_crl_reload
|
||||
ap_wpa2_eap_tls_check_cert_subject
|
||||
ap_wpa2_eap_tls_check_cert_subject_neg
|
||||
ap_wpa2_eap_tls_oom
|
||||
ap_wpa2_eap_tls_macacl
|
||||
ap_wpa2_eap_oom
|
||||
ap_wpa2_eap_tls_13
|
||||
ap_wpa2_eap_tls_13_ocsp
|
||||
ap_wpa2_eap_tls_13_missing_prot_success
|
||||
ap_wpa2_eap_tls_13_fragmentation
|
||||
ap_wpa2_eap_ttls_13
|
||||
ap_wpa2_eap_peap_13
|
||||
ap_wpa2_eap_tls_13_ec
|
||||
ap_wpa2_eap_sim_db
|
||||
ap_wpa2_eap_sim_db_sqlite
|
||||
ap_wpa2_eap_assoc_rsn
|
||||
ap_wpa2_eap_status
|
||||
ap_wpa2_eap_gpsk_ptk_rekey_ap
|
||||
ap_wpa2_eap_wildcard_ssid
|
||||
ap_wpa2_eap_psk_mac_addr_change
|
||||
ap_wpa2_eap_server_get_id
|
||||
ap_wpa2_radius_server_get_id
|
||||
ap_wpa2_eap_tls_tod
|
||||
ap_wpa2_eap_tls_tod_tofu
|
||||
ap_wpa2_eap_sake_no_control_port
|
||||
ap_wpa2_tdls
|
||||
ap_wpa2_tdls_concurrent_init
|
||||
ap_wpa2_tdls_concurrent_init2
|
||||
ap_wpa2_tdls_decline_resp
|
||||
ap_wpa2_tdls_long_lifetime
|
||||
ap_wpa2_tdls_long_frame
|
||||
ap_wpa2_tdls_reneg
|
||||
ap_wpa2_tdls_wrong_lifetime_resp
|
||||
ap_wpa2_tdls_diff_rsnie
|
||||
ap_wpa2_tdls_wrong_tpk_m2_mic
|
||||
ap_wpa2_tdls_wrong_tpk_m3_mic
|
||||
ap_wpa2_tdls_double_tpk_m2
|
||||
ap_wpa2_tdls_responder_teardown
|
||||
dpp_network_intro_version
|
||||
dpp_network_intro_version_change
|
||||
dpp_network_intro_version_missing_req
|
||||
dpp_tcp_pkex
|
||||
dpp_tcp_pkex_auto_connect_2
|
||||
dpp_tcp_pkex_auto_connect_2_status
|
||||
dpp_tcp_pkex_auto_connect_2_status_fail
|
||||
dpp_tcp_pkex_while_associated
|
||||
dpp_tcp_pkex_while_associated_conn_status
|
||||
dpp_controller_relay_pkex
|
||||
dpp_push_button
|
||||
dpp_push_button_session_overlap_sta
|
||||
dpp_push_button_session_overlap_ap
|
||||
dpp_push_button_session_overlap_configurator
|
||||
dpp_push_button_2sta
|
||||
dpp_push_button_r_hash_mismatch_sta
|
||||
dpp_push_button_i_hash_mismatch_ap
|
||||
dpp_push_button_r_hash_mismatch_ap
|
||||
dpp_push_button_ext_conf
|
||||
dpp_push_button_wpas_conf
|
||||
dpp_private_peer_introduction
|
||||
dpp_qr_code_parsing
|
||||
dpp_uri_version
|
||||
dpp_uri_supported_curves
|
||||
dpp_uri_host
|
||||
dpp_qr_code_parsing_fail
|
||||
dpp_qr_code_curves
|
||||
dpp_qr_code_curves_brainpool
|
||||
dpp_qr_code_unsupported_curve
|
||||
dpp_qr_code_keygen_fail
|
||||
dpp_qr_code_curve_select
|
||||
dpp_qr_code_auth_broadcast
|
||||
dpp_configurator_enrollee
|
||||
dpp_configurator_enrollee_prime256v1
|
||||
dpp_configurator_enrollee_secp384r1
|
||||
dpp_configurator_enrollee_secp521r1
|
||||
dpp_configurator_enrollee_brainpoolP256r1
|
||||
dpp_configurator_enrollee_brainpoolP384r1
|
||||
dpp_configurator_enrollee_brainpoolP512r1
|
||||
dpp_configurator_enroll_conf
|
||||
dpp_qr_code_curve_prime256v1
|
||||
dpp_qr_code_curve_secp384r1
|
||||
dpp_qr_code_curve_secp521r1
|
||||
dpp_qr_code_curve_brainpoolP256r1
|
||||
dpp_qr_code_curve_brainpoolP384r1
|
||||
dpp_qr_code_curve_brainpoolP512r1
|
||||
dpp_qr_code_set_key
|
||||
dpp_qr_code_auth_mutual
|
||||
dpp_qr_code_auth_mutual2
|
||||
dpp_qr_code_auth_mutual_p_256
|
||||
dpp_qr_code_auth_mutual_p_384
|
||||
dpp_qr_code_auth_mutual_p_521
|
||||
dpp_qr_code_auth_mutual_bp_256
|
||||
dpp_qr_code_auth_mutual_bp_384
|
||||
dpp_qr_code_auth_mutual_bp_512
|
||||
dpp_auth_resp_retries
|
||||
dpp_qr_code_auth_mutual_not_used
|
||||
dpp_qr_code_auth_mutual_curve_mismatch
|
||||
dpp_qr_code_auth_hostapd_mutual2
|
||||
dpp_qr_code_listen_continue
|
||||
dpp_qr_code_auth_initiator_enrollee
|
||||
dpp_qr_code_auth_initiator_either_2
|
||||
dpp_qr_code_auth_initiator_either_3
|
||||
dpp_config_legacy
|
||||
dpp_config_legacy_psk_hex
|
||||
dpp_config_fragmentation
|
||||
dpp_config_legacy_gen
|
||||
dpp_config_legacy_gen_psk
|
||||
dpp_config_dpp_gen_prime256v1
|
||||
dpp_config_dpp_gen_secp384r1
|
||||
dpp_config_dpp_gen_secp521r1
|
||||
dpp_config_dpp_gen_expiry
|
||||
dpp_config_dpp_gen_expired_key
|
||||
dpp_config_dpp_gen_3rd_party
|
||||
dpp_config_dpp_override_prime256v1
|
||||
dpp_config_dpp_override_secp384r1
|
||||
dpp_config_override_objects
|
||||
dpp_config_signed_connector_error_no_dot_1
|
||||
dpp_config_signed_connector_error_no_dot_2
|
||||
dpp_config_signed_connector_error_unexpected_signature_len
|
||||
dpp_config_no_csign
|
||||
dpp_config_no_signed_connector
|
||||
dpp_config_unexpected_signed_connector_char
|
||||
dpp_config_root_not_an_object
|
||||
dpp_config_no_wi_fi_tech
|
||||
dpp_config_unsupported_wi_fi_tech
|
||||
dpp_config_no_discovery
|
||||
dpp_config_no_discovery_ssid
|
||||
dpp_config_too_long_discovery_ssid
|
||||
dpp_config_no_cred
|
||||
dpp_config_no_cred_akm
|
||||
dpp_config_unsupported_cred_akm
|
||||
dpp_config_error_legacy_no_pass
|
||||
dpp_config_error_legacy_too_long_pass
|
||||
dpp_config_error_legacy_psk_with_sae
|
||||
dpp_config_error_legacy_no_pass_for_sae
|
||||
dpp_config_error_legacy_invalid_psk
|
||||
dpp_config_error_legacy_too_short_psk
|
||||
dpp_config_connector_error_ext_sign
|
||||
dpp_config_connector_error_too_short_timestamp
|
||||
dpp_config_connector_error_invalid_timestamp
|
||||
dpp_config_connector_error_invalid_timestamp_date
|
||||
dpp_config_connector_error_invalid_time_zone
|
||||
dpp_config_connector_error_invalid_time_zone_2
|
||||
dpp_config_connector_error_expired_1
|
||||
dpp_config_connector_error_expired_2
|
||||
dpp_config_connector_error_expired_3
|
||||
dpp_config_connector_error_expired_4
|
||||
dpp_config_connector_error_expired_5
|
||||
dpp_config_connector_error_expired_6
|
||||
dpp_config_connector_error_no_groups
|
||||
dpp_config_connector_error_empty_groups
|
||||
dpp_config_connector_error_missing_group_id
|
||||
dpp_config_connector_error_missing_net_role
|
||||
dpp_config_connector_error_missing_net_access_key
|
||||
dpp_config_connector_error_net_access_key_mismatch
|
||||
dpp_akm_sha256
|
||||
dpp_akm_sha384
|
||||
dpp_akm_sha512
|
||||
dpp_network_introduction
|
||||
dpp_network_introduction_expired
|
||||
dpp_and_sae_akm
|
||||
dpp_ap_config
|
||||
dpp_ap_config_p256_p256
|
||||
dpp_ap_config_p256_p384
|
||||
dpp_ap_config_p384_p256
|
||||
dpp_ap_config_p384_p384
|
||||
dpp_ap_config_p521_p256
|
||||
dpp_ap_config_p521_p384
|
||||
dpp_ap_config_bp256_bp256
|
||||
dpp_ap_config_bp384_bp384
|
||||
dpp_ap_config_bp512_bp512
|
||||
dpp_ap_config_p256_bp256
|
||||
dpp_ap_config_bp256_p256
|
||||
dpp_ap_config_p521_bp512
|
||||
dpp_ap_config_reconfig_configurator
|
||||
dpp_auto_connect_1
|
||||
dpp_auto_connect_2
|
||||
dpp_auto_connect_2_connect_cmd
|
||||
dpp_auto_connect_2_sta_ver1
|
||||
dpp_auto_connect_2_ap_ver1
|
||||
dpp_auto_connect_2_ver1
|
||||
dpp_auto_connect_2_conf_ver1
|
||||
dpp_auto_connect_legacy
|
||||
dpp_auto_connect_legacy_ssid_charset
|
||||
dpp_auto_connect_legacy_sae_1
|
||||
dpp_auto_connect_legacy_sae_2
|
||||
dpp_auto_connect_legacy_psk_sae_1
|
||||
dpp_auto_connect_legacy_psk_sae_2
|
||||
dpp_auto_connect_legacy_psk_sae_3
|
||||
dpp_auto_connect_legacy_pmf_required
|
||||
dpp_qr_code_auth_responder_configurator
|
||||
dpp_qr_code_auth_responder_configurator_group_id
|
||||
dpp_qr_code_auth_enrollee_init_netrole
|
||||
dpp_qr_code_hostapd_init
|
||||
dpp_qr_code_hostapd_init_offchannel
|
||||
dpp_qr_code_hostapd_init_offchannel_neg_freq
|
||||
dpp_qr_code_hostapd_ignore_mismatch
|
||||
dpp_test_vector_p_256
|
||||
dpp_test_vector_p_256_b
|
||||
dpp_test_vector_p_521
|
||||
dpp_pkex
|
||||
dpp_pkex_v2
|
||||
dpp_pkex_p256
|
||||
dpp_pkex_p384
|
||||
dpp_pkex_p521
|
||||
dpp_pkex_bp256
|
||||
dpp_pkex_bp384
|
||||
dpp_pkex_bp512
|
||||
dpp_pkex_config
|
||||
dpp_pkex_no_identifier
|
||||
dpp_pkex_identifier_mismatch
|
||||
dpp_pkex_identifier_mismatch2
|
||||
dpp_pkex_identifier_mismatch3
|
||||
dpp_pkex_5ghz
|
||||
dpp_pkex_test_vector
|
||||
dpp_pkex_code_mismatch
|
||||
dpp_pkex_code_mismatch_limit
|
||||
dpp_pkex_curve_mismatch
|
||||
dpp_pkex_curve_mismatch_failure
|
||||
dpp_pkex_curve_mismatch_failure2
|
||||
dpp_pkex_exchange_resp_processing_failure
|
||||
dpp_pkex_commit_reveal_req_processing_failure
|
||||
dpp_pkex_config2
|
||||
dpp_pkex_no_responder
|
||||
dpp_pkex_after_retry
|
||||
dpp_pkex_hostapd_responder
|
||||
dpp_pkex_v2_hostapd_responder
|
||||
dpp_pkex_hostapd_initiator
|
||||
dpp_pkex_v2_hostapd_initiator
|
||||
dpp_pkex_hostapd_initiator_fallback
|
||||
dpp_pkex_hostapd_initiator_no_response
|
||||
dpp_pkex_hostapd_errors
|
||||
dpp_pkex_nak_curve_change
|
||||
dpp_pkex_nak_curve_change2
|
||||
dpp_hostapd_configurator
|
||||
dpp_hostapd_configurator_enrollee_v1
|
||||
dpp_hostapd_configurator_responder
|
||||
dpp_hostapd_configurator_fragmentation
|
||||
dpp_hostapd_enrollee_fragmentation
|
||||
dpp_hostapd_enrollee_gas_timeout
|
||||
dpp_hostapd_enrollee_gas_timeout_comeback
|
||||
dpp_hostapd_enrollee_gas_errors
|
||||
dpp_hostapd_enrollee_gas_proto
|
||||
dpp_hostapd_enrollee_gas_tx_status_errors
|
||||
dpp_hostapd_configurator_override_objects
|
||||
dpp_own_config
|
||||
dpp_own_config_group_id
|
||||
dpp_proto_after_wrapped_data_auth_req
|
||||
dpp_auth_req_stop_after_ack
|
||||
dpp_auth_req_retries
|
||||
dpp_auth_req_retries_multi_chan
|
||||
dpp_proto_after_wrapped_data_auth_resp
|
||||
dpp_proto_after_wrapped_data_auth_conf
|
||||
dpp_proto_after_wrapped_data_conf_req
|
||||
dpp_proto_after_wrapped_data_conf_resp
|
||||
dpp_proto_stop_at_pkex_exchange_resp
|
||||
dpp_proto_stop_at_pkex_cr_req
|
||||
dpp_proto_stop_at_pkex_cr_resp
|
||||
dpp_proto_network_introduction
|
||||
dpp_hostapd_auth_conf_timeout
|
||||
dpp_hostapd_auth_resp_retries
|
||||
dpp_tcp
|
||||
dpp_tcp_port
|
||||
dpp_tcp_mutual
|
||||
dpp_tcp_mutual_hostapd_conf
|
||||
dpp_tcp_conf_init
|
||||
dpp_tcp_conf_init_hostapd_enrollee
|
||||
dpp_tcp_controller_management_hostapd
|
||||
dpp_tcp_controller_management_hostapd2
|
||||
dpp_tcp_controller_start_failure
|
||||
dpp_tcp_init_failure
|
||||
dpp_controller_rx_failure
|
||||
dpp_controller_rx_errors
|
||||
dpp_conn_status_success
|
||||
dpp_conn_status_wrong_passphrase
|
||||
dpp_conn_status_no_ap
|
||||
dpp_conn_status_connector_mismatch
|
||||
dpp_conn_status_assoc_reject
|
||||
dpp_conn_status_success_hostapd_configurator
|
||||
dpp_mud_url
|
||||
dpp_mud_url_hostapd
|
||||
dpp_config_save
|
||||
dpp_config_save2
|
||||
dpp_config_save3
|
||||
dpp_nfc_uri
|
||||
dpp_nfc_uri_hostapd
|
||||
dpp_nfc_uri_hostapd_tag_read
|
||||
dpp_nfc_negotiated_handover
|
||||
dpp_nfc_negotiated_handover_diff_curve
|
||||
dpp_nfc_negotiated_handover_hostapd_sel
|
||||
dpp_nfc_negotiated_handover_hostapd_req
|
||||
dpp_nfc_errors_hostapd
|
||||
dpp_with_p2p_device
|
||||
dpp_pfs_ap_0
|
||||
dpp_pfs_ap_1
|
||||
dpp_pfs_ap_2
|
||||
dpp_pfs_connect_cmd
|
||||
dpp_pfs_connect_cmd_ap_2
|
||||
dpp_pfs_connect_cmd_ap_2_sae
|
||||
dpp_pfs_ap_0_sta_ver1
|
||||
dpp_pfs_errors
|
||||
dpp_qr_code_auth_rand_mac_addr
|
||||
dpp_enterprise
|
||||
dpp_enterprise_tcp
|
||||
dpp_enterprise_tcp2
|
||||
dpp_qr_code_config_event_initiator
|
||||
dpp_qr_code_config_event_initiator_set_comeback
|
||||
dpp_qr_code_config_event_initiator_slow
|
||||
dpp_qr_code_config_event_initiator_failure
|
||||
dpp_qr_code_config_event_initiator_no_response
|
||||
dpp_qr_code_config_event_initiator_both
|
||||
dpp_tcp_qr_code_config_event_initiator
|
||||
dpp_qr_code_config_event_responder
|
||||
dpp_discard_public_action
|
||||
|
@ -1,163 +0,0 @@
|
||||
#CC=ccache gcc
|
||||
|
||||
#CONFIG_TLS=openssl
|
||||
CONFIG_TLS=wolfssl
|
||||
#CONFIG_TLS=internal
|
||||
#CONFIG_INTERNAL_LIBTOMMATH=y
|
||||
#CONFIG_INTERNAL_LIBTOMMATH_FAST=y
|
||||
|
||||
CONFIG_IEEE8021X_EAPOL=y
|
||||
|
||||
CONFIG_ERP=y
|
||||
CONFIG_EAP_MD5=y
|
||||
CONFIG_MSCHAPV2=y
|
||||
CONFIG_EAP_TLS=y
|
||||
CONFIG_EAP_PEAP=y
|
||||
CONFIG_EAP_TTLS=y
|
||||
CONFIG_EAP_GTC=y
|
||||
CONFIG_EAP_OTP=y
|
||||
CONFIG_EAP_PSK=y
|
||||
CONFIG_EAP_PAX=y
|
||||
CONFIG_EAP_LEAP=y
|
||||
CONFIG_EAP_SIM=y
|
||||
CONFIG_EAP_AKA=y
|
||||
CONFIG_EAP_AKA_PRIME=y
|
||||
CONFIG_EAP_VENDOR_TEST=y
|
||||
CONFIG_EAP_TLV=y
|
||||
CONFIG_EAP_SAKE=y
|
||||
CONFIG_EAP_GPSK=y
|
||||
CONFIG_EAP_GPSK_SHA256=y
|
||||
CONFIG_EAP_EKE=y
|
||||
CONFIG_EAP_TNC=y
|
||||
CFLAGS += -DTNC_CONFIG_FILE=\"tnc/tnc_config\"
|
||||
LIBS += -rdynamic
|
||||
CONFIG_EAP_FAST=y
|
||||
CONFIG_EAP_TEAP=y
|
||||
CONFIG_EAP_IKEV2=y
|
||||
|
||||
ifeq ($(CONFIG_TLS), openssl)
|
||||
CONFIG_EAP_PWD=y
|
||||
endif
|
||||
ifeq ($(CONFIG_TLS), wolfssl)
|
||||
CONFIG_EAP_PWD=y
|
||||
endif
|
||||
|
||||
CONFIG_USIM_SIMULATOR=y
|
||||
CONFIG_SIM_SIMULATOR=y
|
||||
|
||||
#CONFIG_PCSC=y
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_DRIVER_NONE=y
|
||||
CONFIG_PKCS12=y
|
||||
CONFIG_CTRL_IFACE=unix
|
||||
|
||||
CONFIG_WPA_CLI_EDIT=y
|
||||
|
||||
CONFIG_OCSP=y
|
||||
|
||||
#CONFIG_ELOOP_POLL=y
|
||||
|
||||
CONFIG_CTRL_IFACE_DBUS_NEW=y
|
||||
CONFIG_CTRL_IFACE_DBUS_INTRO=y
|
||||
|
||||
CONFIG_IEEE80211R=y
|
||||
CONFIG_IEEE80211AC=y
|
||||
CONFIG_IEEE80211AX=y
|
||||
|
||||
CONFIG_OCV=y
|
||||
|
||||
CONFIG_DEBUG_FILE=y
|
||||
|
||||
CONFIG_WPS=y
|
||||
#CONFIG_WPS_STRICT=y
|
||||
CONFIG_WPS_UPNP=y
|
||||
CONFIG_WPS_NFC=y
|
||||
CONFIG_WPS_ER=y
|
||||
#CONFIG_WPS_REG_DISABLE_OPEN=y
|
||||
|
||||
CONFIG_DRIVER_WEXT=y
|
||||
|
||||
CONFIG_DRIVER_NL80211=y
|
||||
CFLAGS += -I/usr/include/libnl3
|
||||
CONFIG_LIBNL32=y
|
||||
|
||||
CONFIG_IBSS_RSN=y
|
||||
|
||||
CONFIG_AP=y
|
||||
CONFIG_MESH=y
|
||||
CONFIG_P2P=y
|
||||
CONFIG_WIFI_DISPLAY=y
|
||||
|
||||
CONFIG_ACS=y
|
||||
|
||||
CONFIG_BGSCAN_SIMPLE=y
|
||||
CONFIG_BGSCAN_LEARN=y
|
||||
|
||||
CONFIG_WPA_TRACE=y
|
||||
CONFIG_WPA_TRACE_BFD=y
|
||||
|
||||
CONFIG_TDLS=y
|
||||
CONFIG_TDLS_TESTING=y
|
||||
CONFIG_NO_RANDOM_POOL=y
|
||||
|
||||
CONFIG_TLSV11=y
|
||||
CONFIG_TLSV12=y
|
||||
|
||||
CONFIG_HT_OVERRIDES=y
|
||||
CONFIG_VHT_OVERRIDES=y
|
||||
CONFIG_HE_OVERRIDES=y
|
||||
|
||||
CONFIG_DEBUG_LINUX_TRACING=y
|
||||
|
||||
CONFIG_INTERWORKING=y
|
||||
CONFIG_HS20=y
|
||||
|
||||
CONFIG_AUTOSCAN_EXPONENTIAL=y
|
||||
CONFIG_AUTOSCAN_PERIODIC=y
|
||||
|
||||
CONFIG_EXT_PASSWORD_TEST=y
|
||||
CONFIG_EXT_PASSWORD_FILE=y
|
||||
|
||||
CONFIG_EAP_UNAUTH_TLS=y
|
||||
|
||||
CONFIG_SAE=y
|
||||
CONFIG_SAE_PK=y
|
||||
CFLAGS += -DALL_DH_GROUPS
|
||||
|
||||
CONFIG_WNM=y
|
||||
|
||||
CONFIG_FST=y
|
||||
CONFIG_FST_TEST=y
|
||||
|
||||
CONFIG_TESTING_OPTIONS=y
|
||||
CONFIG_MODULE_TESTS=y
|
||||
|
||||
CONFIG_SUITEB=y
|
||||
|
||||
# AddressSanitizer (ASan) can be enabled by uncommenting the following lines.
|
||||
# This can be used as a more efficient memory error detector than valgrind
|
||||
# (though, with still some CPU and memory cost, so VM cases will need more
|
||||
# memory allocated for the guest).
|
||||
#CFLAGS += -fsanitize=address -O1 -fno-omit-frame-pointer -g
|
||||
#LIBS += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_c += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_p += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
|
||||
# Undefined Behavior Sanitizer (UBSan) can be enabled by uncommenting the
|
||||
# following lines.
|
||||
#CFLAGS += -Wno-format-nonliteral
|
||||
#CFLAGS += -fsanitize=undefined
|
||||
##CFLAGS += -fno-sanitize-recover
|
||||
#LIBS += -fsanitize=undefined
|
||||
##LIBS += -fno-sanitize-recover
|
||||
#LIBS_c += -fsanitize=undefined
|
||||
#LIBS_p += -fsanitize=undefined
|
||||
CONFIG_MBO=y
|
||||
CONFIG_FILS=y
|
||||
CONFIG_FILS_SK_PFS=y
|
||||
CONFIG_PMKSA_CACHE_EXTERNAL=y
|
||||
CONFIG_OWE=y
|
||||
CONFIG_DPP=y
|
||||
CONFIG_DPP2=y
|
||||
CONFIG_WEP=y
|
||||
CONFIG_PASN=y
|
@ -1,119 +0,0 @@
|
||||
#CC=ccache gcc
|
||||
|
||||
CONFIG_DRIVER_NONE=y
|
||||
CONFIG_DRIVER_NL80211=y
|
||||
CONFIG_RSN_PREAUTH=y
|
||||
|
||||
#CONFIG_TLS=internal
|
||||
#CONFIG_INTERNAL_LIBTOMMATH=y
|
||||
#CONFIG_INTERNAL_LIBTOMMATH_FAST=y
|
||||
CONFIG_TLS=wolfssl
|
||||
|
||||
CONFIG_EAP=y
|
||||
CONFIG_ERP=y
|
||||
CONFIG_EAP_MD5=y
|
||||
CONFIG_EAP_TLS=y
|
||||
CONFIG_EAP_MSCHAPV2=y
|
||||
CONFIG_EAP_PEAP=y
|
||||
CONFIG_EAP_GTC=y
|
||||
CONFIG_EAP_TTLS=y
|
||||
CONFIG_EAP_SIM=y
|
||||
CONFIG_EAP_AKA=y
|
||||
CONFIG_EAP_AKA_PRIME=y
|
||||
CONFIG_EAP_GPSK=y
|
||||
CONFIG_EAP_GPSK_SHA256=y
|
||||
CONFIG_EAP_SAKE=y
|
||||
CONFIG_EAP_PAX=y
|
||||
CONFIG_EAP_PSK=y
|
||||
CONFIG_EAP_VENDOR_TEST=y
|
||||
CONFIG_EAP_FAST=y
|
||||
#CONFIG_EAP_TEAP=y
|
||||
CONFIG_EAP_IKEV2=y
|
||||
CONFIG_EAP_TNC=y
|
||||
CFLAGS += -DTNC_CONFIG_FILE=\"tnc/tnc_config\"
|
||||
LIBS += -rdynamic
|
||||
CONFIG_EAP_UNAUTH_TLS=y
|
||||
ifeq ($(CONFIG_TLS), wolfssl)
|
||||
CONFIG_EAP_PWD=y
|
||||
endif
|
||||
ifeq ($(CONFIG_TLS), openssl)
|
||||
CONFIG_EAP_PWD=y
|
||||
endif
|
||||
CONFIG_EAP_EKE=y
|
||||
CONFIG_PKCS12=y
|
||||
CONFIG_RADIUS_SERVER=y
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_TLSV11=y
|
||||
CONFIG_TLSV12=y
|
||||
|
||||
CONFIG_FULL_DYNAMIC_VLAN=y
|
||||
CONFIG_VLAN_NETLINK=y
|
||||
CONFIG_LIBNL32=y
|
||||
CONFIG_LIBNL3_ROUTE=y
|
||||
CONFIG_IEEE80211R=y
|
||||
CONFIG_IEEE80211AC=y
|
||||
CONFIG_IEEE80211AX=y
|
||||
|
||||
CONFIG_OCV=y
|
||||
|
||||
CONFIG_WPS=y
|
||||
CONFIG_WPS_UPNP=y
|
||||
CONFIG_WPS_NFC=y
|
||||
#CONFIG_WPS_STRICT=y
|
||||
CONFIG_WPA_TRACE=y
|
||||
CONFIG_WPA_TRACE_BFD=y
|
||||
|
||||
CONFIG_P2P_MANAGER=y
|
||||
CONFIG_DEBUG_FILE=y
|
||||
CONFIG_DEBUG_LINUX_TRACING=y
|
||||
CONFIG_WPA_CLI_EDIT=y
|
||||
CONFIG_ACS=y
|
||||
CONFIG_NO_RANDOM_POOL=y
|
||||
CONFIG_WNM=y
|
||||
CONFIG_INTERWORKING=y
|
||||
CONFIG_HS20=y
|
||||
CONFIG_SQLITE=y
|
||||
CONFIG_SAE=y
|
||||
#CONFIG_SAE_PK=y
|
||||
CFLAGS += -DALL_DH_GROUPS
|
||||
|
||||
CONFIG_FST=y
|
||||
CONFIG_FST_TEST=y
|
||||
|
||||
CONFIG_TESTING_OPTIONS=y
|
||||
CFLAGS += -DCONFIG_RADIUS_TEST
|
||||
CONFIG_MODULE_TESTS=y
|
||||
|
||||
CONFIG_SUITEB=y
|
||||
|
||||
# AddressSanitizer (ASan) can be enabled by uncommenting the following lines.
|
||||
# This can be used as a more efficient memory error detector than valgrind
|
||||
# (though, with still some CPU and memory cost, so VM cases will need more
|
||||
# memory allocated for the guest).
|
||||
#CFLAGS += -fsanitize=address -O1 -fno-omit-frame-pointer -g
|
||||
#LIBS += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_h += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_n += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_c += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
|
||||
# Undefined Behavior Sanitizer (UBSan) can be enabled by uncommenting the
|
||||
# following lines.
|
||||
#CFLAGS += -Wno-format-nonliteral
|
||||
#CFLAGS += -fsanitize=undefined
|
||||
##CFLAGS += -fno-sanitize-recover
|
||||
#LIBS += -fsanitize=undefined
|
||||
##LIBS += -fno-sanitize-recover
|
||||
#LIBS_h += -fsanitize=undefined
|
||||
#LIBS_n += -fsanitize=undefined
|
||||
#LIBS_c += -fsanitize=undefined
|
||||
CONFIG_MBO=y
|
||||
|
||||
CONFIG_TAXONOMY=y
|
||||
CONFIG_FILS=y
|
||||
CONFIG_FILS_SK_PFS=y
|
||||
CONFIG_OWE=y
|
||||
#CONFIG_DPP=y
|
||||
#CONFIG_DPP2=y
|
||||
CONFIG_WEP=y
|
||||
CONFIG_PASN=y
|
||||
CONFIG_AIRTIME_POLICY=y
|
@ -1,284 +0,0 @@
|
||||
sae
|
||||
sae_password_ecc
|
||||
sae_pmksa_caching
|
||||
sae_pmksa_caching_pmkid
|
||||
sae_pmksa_caching_disabled
|
||||
sae_groups
|
||||
sae_group_nego
|
||||
sae_group_nego_no_match
|
||||
sae_anti_clogging
|
||||
sae_forced_anti_clogging
|
||||
sae_mixed
|
||||
sae_and_psk
|
||||
sae_and_psk2
|
||||
sae_wpa3_roam
|
||||
sae_mixed_mfp
|
||||
sae_mfp
|
||||
sae_missing_password
|
||||
sae_key_lifetime_in_memory
|
||||
sae_oom_wpas
|
||||
sae_proto_ecc
|
||||
sae_proto_ffc
|
||||
sae_proto_commit_delayed
|
||||
sae_proto_commit_replay
|
||||
sae_proto_confirm_replay
|
||||
sae_proto_hostapd
|
||||
sae_proto_hostapd_ecc
|
||||
sae_proto_hostapd_ffc
|
||||
sae_proto_hostapd_status_126
|
||||
sae_proto_hostapd_status_127
|
||||
sae_reflection_attack_ecc
|
||||
sae_reflection_attack_ecc_internal
|
||||
sae_commit_override
|
||||
sae_commit_override2
|
||||
sae_commit_invalid_scalar_element_ap
|
||||
sae_commit_invalid_element_ap
|
||||
sae_commit_invalid_scalar_element_sta
|
||||
sae_commit_invalid_element_sta
|
||||
sae_anti_clogging_proto
|
||||
sae_no_random
|
||||
sae_bignum_failure_unsafe_group
|
||||
sae_invalid_anti_clogging_token_req
|
||||
sae_password
|
||||
sae_password_short
|
||||
sae_password_long
|
||||
sae_connect_cmd
|
||||
sae_password_id
|
||||
sae_password_id_ecc
|
||||
sae_password_id_ffc
|
||||
sae_password_id_only
|
||||
sae_password_id_pwe_looping
|
||||
sae_password_id_pwe_check_ap
|
||||
sae_password_id_pwe_check_sta
|
||||
sae_forced_anti_clogging_pw_id
|
||||
sae_reauth
|
||||
sae_sync
|
||||
sae_confirm_immediate
|
||||
sae_confirm_immediate2
|
||||
sae_pwe_group_19
|
||||
sae_pwe_group_20
|
||||
sae_pwe_group_21
|
||||
sae_pwe_group_1
|
||||
sae_pwe_group_2
|
||||
sae_pwe_group_22
|
||||
sae_pwe_h2e_only_ap
|
||||
sae_pwe_h2e_only_ap_sta_forcing_loop
|
||||
sae_pwe_loop_only_ap
|
||||
sae_h2e_rejected_groups
|
||||
sae_h2e_rejected_groups_unexpected
|
||||
sae_h2e_password_id
|
||||
sae_pwe_in_psk_ap
|
||||
sae_auth_restart
|
||||
sae_rsne_mismatch
|
||||
sae_h2e_rsnxe_mismatch
|
||||
sae_h2e_rsnxe_mismatch_retries
|
||||
sae_h2e_rsnxe_mismatch_assoc
|
||||
sae_h2e_rsnxe_mismatch_ap
|
||||
sae_h2e_rsnxe_mismatch_ap2
|
||||
sae_h2e_rsnxe_mismatch_ap3
|
||||
sae_forced_anti_clogging_h2e
|
||||
sae_forced_anti_clogging_h2e_loop
|
||||
sae_okc
|
||||
sae_okc_sta_only
|
||||
sae_okc_pmk_lifetime
|
||||
sae_pmk_lifetime
|
||||
sae_and_psk_multiple_passwords
|
||||
sae_pmf_roam
|
||||
sae_ocv_pmk
|
||||
sae_ocv_pmk_failure
|
||||
sae_reject
|
||||
eap_tls_pkcs8_pkcs5_v2_des3
|
||||
eap_tls_pkcs8_pkcs5_v15
|
||||
eap_tls_sha512
|
||||
eap_tls_sha384
|
||||
eap_tls_errors
|
||||
eap_proto_peap_errors_server
|
||||
eap_proto_peap_errors
|
||||
ap_wpa2_delayed_m3_retransmission
|
||||
ap_wpa2_delayed_m1_m3_retransmission
|
||||
ap_wpa2_delayed_m1_m3_retransmission2
|
||||
ap_wpa2_delayed_group_m1_retransmission
|
||||
ap_wpa2_delayed_group_m1_retransmission_igtk
|
||||
ap_wpa2_delayed_m1_m3_zero_tk
|
||||
ap_wpa2_plaintext_m1_m3
|
||||
ap_wpa2_plaintext_m1_m3_pmf
|
||||
ap_wpa2_plaintext_m3
|
||||
ap_wpa2_plaintext_group_m1
|
||||
ap_wpa2_plaintext_group_m1_pmf
|
||||
ap_wpa2_test_command_failures
|
||||
ap_wpa2_gtk_initial_rsc_tkip
|
||||
ap_wpa2_gtk_initial_rsc_ccmp
|
||||
ap_wpa2_gtk_initial_rsc_ccmp_256
|
||||
ap_wpa2_gtk_initial_rsc_gcmp
|
||||
ap_wpa2_gtk_initial_rsc_gcmp_256
|
||||
ap_wpa2_igtk_initial_rsc_aes_128_cmac
|
||||
ap_wpa2_igtk_initial_rsc_bip_gmac_128
|
||||
ap_wpa2_igtk_initial_rsc_bip_gmac_256
|
||||
ap_wpa2_igtk_initial_rsc_bip_cmac_256
|
||||
ap_wpa2_psk
|
||||
ap_wpa2_psk_file
|
||||
ap_wpa2_psk_file_keyid
|
||||
ap_wpa2_psk_mem
|
||||
ap_wpa2_ptk_rekey
|
||||
ap_wpa2_ptk_rekey_blocked_ap
|
||||
ap_wpa2_ptk_rekey_blocked_sta
|
||||
ap_wpa2_ptk_rekey_anonce
|
||||
ap_wpa2_ptk_rekey_ap
|
||||
ap_wpa2_sha256_ptk_rekey
|
||||
ap_wpa2_sha256_ptk_rekey_ap
|
||||
ap_wpa2_psk_file_errors
|
||||
ap_wpa2_psk_wildcard_ssid
|
||||
ap_wpa2_gtk_rekey
|
||||
ap_wpa2_gtk_rekey_request
|
||||
ap_wpa2_gtk_rekey_failure
|
||||
ap_wpa2_gmk_rekey
|
||||
ap_wpa2_strict_rekey
|
||||
ap_wpa2_psk_ext
|
||||
ap_wpa2_psk_unexpected
|
||||
ap_wpa2_psk_ext_retry_msg_3
|
||||
ap_wpa2_psk_ext_retry_msg_3b
|
||||
ap_wpa2_psk_ext_retry_msg_3c
|
||||
ap_wpa2_psk_ext_retry_msg_3d
|
||||
ap_wpa2_psk_ext_retry_msg_3e
|
||||
ap_wpa2_psk_ext_delayed_ptk_rekey
|
||||
ap_wpa2_psk_ext_eapol
|
||||
ap_wpa2_psk_ext_eapol_retry1
|
||||
ap_wpa2_psk_ext_eapol_retry1b
|
||||
ap_wpa2_psk_ext_eapol_retry1c
|
||||
ap_wpa2_psk_ext_eapol_retry1d
|
||||
ap_wpa2_psk_ext_eapol_type_diff
|
||||
ap_wpa2_psk_ext_eapol_key_info
|
||||
ap_wpa2_psk_wep
|
||||
ap_wpa2_psk_ifdown
|
||||
ap_wpa2_psk_drop_first_msg_4
|
||||
ap_wpa2_psk_disable_enable
|
||||
ap_wpa2_psk_incorrect_passphrase
|
||||
ap_wpa2_psk_no_random
|
||||
ap_wpa2_psk_assoc_rsn
|
||||
ap_wpa2_psk_ft_workaround
|
||||
ap_wpa2_psk_assoc_rsn_pmkid
|
||||
ap_wpa2_eapol_retry_limit
|
||||
ap_wpa2_disable_eapol_retry
|
||||
ap_wpa2_disable_eapol_retry_group
|
||||
ap_wpa2_psk_mic_0
|
||||
ap_wpa2_psk_local_error
|
||||
ap_wpa2_psk_inject_assoc
|
||||
ap_wpa2_psk_no_control_port
|
||||
ap_wpa2_psk_ap_control_port
|
||||
ap_wpa2_psk_ap_control_port_disabled
|
||||
ap_wpa2_psk_rsne_mismatch_ap
|
||||
ap_wpa2_psk_rsne_mismatch_ap2
|
||||
ap_wpa2_psk_rsne_mismatch_ap3
|
||||
ap_wpa2_psk_rsnxe_mismatch_ap
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_ap0
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_ap1
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_ap2
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_sta0
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_sta1
|
||||
ap_wpa2_psk_ext_key_id_ptk_rekey_sta2
|
||||
ap_wpa2_eap_sim
|
||||
ap_wpa2_eap_sim_sql
|
||||
ap_wpa2_eap_sim_config
|
||||
ap_wpa2_eap_sim_id_0
|
||||
ap_wpa2_eap_sim_id_1
|
||||
ap_wpa2_eap_sim_id_2
|
||||
ap_wpa2_eap_sim_id_3
|
||||
ap_wpa2_eap_sim_ext
|
||||
ap_wpa2_eap_sim_ext_replace_sim
|
||||
ap_wpa2_eap_sim_ext_replace_sim2
|
||||
ap_wpa2_eap_sim_ext_replace_sim3
|
||||
ap_wpa2_eap_sim_ext_auth_fail
|
||||
ap_wpa2_eap_sim_change_bssid
|
||||
ap_wpa2_eap_sim_no_change_set
|
||||
ap_wpa2_eap_sim_ext_anonymous
|
||||
ap_wpa2_eap_sim_ext_anonymous_no_pseudonym
|
||||
ap_wpa2_eap_sim_oom
|
||||
ap_wpa2_eap_aka
|
||||
ap_wpa2_eap_aka_sql
|
||||
ap_wpa2_eap_aka_config
|
||||
ap_wpa2_eap_aka_ext
|
||||
ap_wpa2_eap_aka_ext_auth_fail
|
||||
ap_wpa2_eap_aka_prime
|
||||
ap_wpa2_eap_aka_prime_sql
|
||||
ap_wpa2_eap_aka_prime_ext_auth_fail
|
||||
ap_wpa2_eap_aka_prime_ext
|
||||
ap_wpa2_eap_ttls_invalid_phase2
|
||||
ap_wpa2_eap_ttls_eap_vendor
|
||||
ap_wpa2_eap_fast_eap_sim
|
||||
ap_wpa2_eap_fast_eap_aka
|
||||
ap_wpa2_eap_peap_params
|
||||
ap_wpa2_eap_peap_eap_gtc
|
||||
ap_wpa2_eap_peap_eap_vendor
|
||||
ap_wpa2_eap_ttls_server_cert_hash
|
||||
ap_wpa2_eap_ttls_server_cert_hash_invalid
|
||||
ap_wpa2_eap_pwd
|
||||
ap_wpa2_eap_pwd_nthash
|
||||
ap_wpa2_eap_pwd_salt_sha1
|
||||
ap_wpa2_eap_pwd_salt_sha256
|
||||
ap_wpa2_eap_pwd_salt_sha512
|
||||
ap_wpa2_eap_pwd_groups
|
||||
ap_wpa2_eap_pwd_invalid_group
|
||||
ap_wpa2_eap_pwd_disabled_group
|
||||
ap_wpa2_eap_pwd_as_frag
|
||||
ap_wpa2_eap_gpsk
|
||||
ap_wpa2_eap_sake
|
||||
ap_wpa2_eap_ikev2
|
||||
ap_wpa2_eap_ikev2_as_frag
|
||||
ap_wpa2_eap_ikev2_oom
|
||||
ap_wpa2_eap_pax
|
||||
ap_wpa2_eap_psk
|
||||
ap_wpa2_eap_psk_oom
|
||||
ap_wpa2_eap_interactive
|
||||
ap_wpa2_eap_ext_enable_network_while_connected
|
||||
ap_wpa2_eap_vendor_test
|
||||
ap_wpa2_eap_vendor_test_oom
|
||||
ap_wpa2_eap_ttls_ocsp_revoked
|
||||
ap_wpa2_eap_ttls_ocsp_unknown
|
||||
ap_wpa2_eap_ttls_optional_ocsp_unknown
|
||||
ap_wpa2_eap_ttls_long_duration
|
||||
ap_wpa2_eap_ttls_server_cert_eku_client
|
||||
ap_wpa2_eap_ttls_server_cert_eku_client_server
|
||||
ap_wpa2_eap_ttls_dh_params
|
||||
ap_wpa2_eap_ttls_dh_params_dsa
|
||||
ap_wpa2_eap_ttls_dh_params_not_found
|
||||
ap_wpa2_eap_ttls_dh_params_invalid
|
||||
ap_wpa2_eap_ttls_dh_params_blob
|
||||
ap_wpa2_eap_ttls_dh_params_server
|
||||
ap_wpa2_eap_ttls_dh_params_dsa_server
|
||||
ap_wpa2_eap_reauth
|
||||
ap_wpa2_eap_reauth_ptk_rekey_blocked_sta
|
||||
ap_wpa2_eap_request_identity_message
|
||||
ap_wpa2_eap_sim_aka_result_ind
|
||||
ap_wpa2_eap_sim_zero_db_timeout
|
||||
ap_wpa2_eap_too_many_roundtrips
|
||||
ap_wpa2_eap_too_many_roundtrips_server
|
||||
ap_wpa2_eap_too_many_roundtrips_server2
|
||||
ap_wpa2_eap_expanded_nak
|
||||
ap_wpa2_eap_sql
|
||||
ap_wpa2_eap_non_ascii_identity
|
||||
ap_wpa2_eap_non_ascii_identity2
|
||||
ap_wpa2_eap_unexpected_wep_eapol_key
|
||||
ap_wpa2_eap_oom
|
||||
ap_wpa2_eap_sim_db
|
||||
ap_wpa2_eap_sim_db_sqlite
|
||||
ap_wpa2_eap_assoc_rsn
|
||||
ap_wpa2_eap_status
|
||||
ap_wpa2_eap_gpsk_ptk_rekey_ap
|
||||
ap_wpa2_eap_wildcard_ssid
|
||||
ap_wpa2_eap_psk_mac_addr_change
|
||||
ap_wpa2_eap_server_get_id
|
||||
ap_wpa2_radius_server_get_id
|
||||
ap_wpa2_eap_sake_no_control_port
|
||||
ap_wpa2_tdls
|
||||
ap_wpa2_tdls_concurrent_init
|
||||
ap_wpa2_tdls_concurrent_init2
|
||||
ap_wpa2_tdls_decline_resp
|
||||
ap_wpa2_tdls_long_lifetime
|
||||
ap_wpa2_tdls_long_frame
|
||||
ap_wpa2_tdls_reneg
|
||||
ap_wpa2_tdls_wrong_lifetime_resp
|
||||
ap_wpa2_tdls_diff_rsnie
|
||||
ap_wpa2_tdls_wrong_tpk_m2_mic
|
||||
ap_wpa2_tdls_wrong_tpk_m3_mic
|
||||
ap_wpa2_tdls_double_tpk_m2
|
||||
ap_wpa2_tdls_responder_teardown
|
@ -1,163 +0,0 @@
|
||||
#CC=ccache gcc
|
||||
|
||||
#CONFIG_TLS=openssl
|
||||
CONFIG_TLS=wolfssl
|
||||
#CONFIG_TLS=internal
|
||||
#CONFIG_INTERNAL_LIBTOMMATH=y
|
||||
#CONFIG_INTERNAL_LIBTOMMATH_FAST=y
|
||||
|
||||
CONFIG_IEEE8021X_EAPOL=y
|
||||
|
||||
CONFIG_ERP=y
|
||||
CONFIG_EAP_MD5=y
|
||||
CONFIG_MSCHAPV2=y
|
||||
CONFIG_EAP_TLS=y
|
||||
CONFIG_EAP_PEAP=y
|
||||
CONFIG_EAP_TTLS=y
|
||||
CONFIG_EAP_GTC=y
|
||||
CONFIG_EAP_OTP=y
|
||||
CONFIG_EAP_PSK=y
|
||||
CONFIG_EAP_PAX=y
|
||||
CONFIG_EAP_LEAP=y
|
||||
CONFIG_EAP_SIM=y
|
||||
CONFIG_EAP_AKA=y
|
||||
CONFIG_EAP_AKA_PRIME=y
|
||||
CONFIG_EAP_VENDOR_TEST=y
|
||||
CONFIG_EAP_TLV=y
|
||||
CONFIG_EAP_SAKE=y
|
||||
CONFIG_EAP_GPSK=y
|
||||
CONFIG_EAP_GPSK_SHA256=y
|
||||
CONFIG_EAP_EKE=y
|
||||
CONFIG_EAP_TNC=y
|
||||
CFLAGS += -DTNC_CONFIG_FILE=\"tnc/tnc_config\"
|
||||
LIBS += -rdynamic
|
||||
CONFIG_EAP_FAST=y
|
||||
#CONFIG_EAP_TEAP=y
|
||||
CONFIG_EAP_IKEV2=y
|
||||
|
||||
ifeq ($(CONFIG_TLS), wolfssl)
|
||||
CONFIG_EAP_PWD=y
|
||||
endif
|
||||
ifeq ($(CONFIG_TLS), openssl)
|
||||
CONFIG_EAP_PWD=y
|
||||
endif
|
||||
|
||||
CONFIG_USIM_SIMULATOR=y
|
||||
CONFIG_SIM_SIMULATOR=y
|
||||
|
||||
#CONFIG_PCSC=y
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_DRIVER_NONE=y
|
||||
CONFIG_PKCS12=y
|
||||
CONFIG_CTRL_IFACE=unix
|
||||
|
||||
CONFIG_WPA_CLI_EDIT=y
|
||||
|
||||
CONFIG_OCSP=y
|
||||
|
||||
#CONFIG_ELOOP_POLL=y
|
||||
|
||||
CONFIG_CTRL_IFACE_DBUS_NEW=y
|
||||
CONFIG_CTRL_IFACE_DBUS_INTRO=y
|
||||
|
||||
CONFIG_IEEE80211R=y
|
||||
CONFIG_IEEE80211AC=y
|
||||
CONFIG_IEEE80211AX=y
|
||||
|
||||
CONFIG_OCV=y
|
||||
|
||||
CONFIG_DEBUG_FILE=y
|
||||
|
||||
CONFIG_WPS=y
|
||||
#CONFIG_WPS_STRICT=y
|
||||
CONFIG_WPS_UPNP=y
|
||||
CONFIG_WPS_NFC=y
|
||||
CONFIG_WPS_ER=y
|
||||
#CONFIG_WPS_REG_DISABLE_OPEN=y
|
||||
|
||||
CONFIG_DRIVER_WEXT=y
|
||||
|
||||
CONFIG_DRIVER_NL80211=y
|
||||
CFLAGS += -I/usr/include/libnl3
|
||||
CONFIG_LIBNL32=y
|
||||
|
||||
CONFIG_IBSS_RSN=y
|
||||
|
||||
CONFIG_AP=y
|
||||
CONFIG_MESH=y
|
||||
CONFIG_P2P=y
|
||||
CONFIG_WIFI_DISPLAY=y
|
||||
|
||||
CONFIG_ACS=y
|
||||
|
||||
CONFIG_BGSCAN_SIMPLE=y
|
||||
CONFIG_BGSCAN_LEARN=y
|
||||
|
||||
CONFIG_WPA_TRACE=y
|
||||
CONFIG_WPA_TRACE_BFD=y
|
||||
|
||||
CONFIG_TDLS=y
|
||||
CONFIG_TDLS_TESTING=y
|
||||
CONFIG_NO_RANDOM_POOL=y
|
||||
|
||||
CONFIG_TLSV11=y
|
||||
CONFIG_TLSV12=y
|
||||
|
||||
CONFIG_HT_OVERRIDES=y
|
||||
CONFIG_VHT_OVERRIDES=y
|
||||
CONFIG_HE_OVERRIDES=y
|
||||
|
||||
CONFIG_DEBUG_LINUX_TRACING=y
|
||||
|
||||
CONFIG_INTERWORKING=y
|
||||
CONFIG_HS20=y
|
||||
|
||||
CONFIG_AUTOSCAN_EXPONENTIAL=y
|
||||
CONFIG_AUTOSCAN_PERIODIC=y
|
||||
|
||||
CONFIG_EXT_PASSWORD_TEST=y
|
||||
CONFIG_EXT_PASSWORD_FILE=y
|
||||
|
||||
CONFIG_EAP_UNAUTH_TLS=y
|
||||
|
||||
CONFIG_SAE=y
|
||||
#CONFIG_SAE_PK=y
|
||||
CFLAGS += -DALL_DH_GROUPS
|
||||
|
||||
CONFIG_WNM=y
|
||||
|
||||
CONFIG_FST=y
|
||||
CONFIG_FST_TEST=y
|
||||
|
||||
CONFIG_TESTING_OPTIONS=y
|
||||
CONFIG_MODULE_TESTS=y
|
||||
|
||||
CONFIG_SUITEB=y
|
||||
|
||||
# AddressSanitizer (ASan) can be enabled by uncommenting the following lines.
|
||||
# This can be used as a more efficient memory error detector than valgrind
|
||||
# (though, with still some CPU and memory cost, so VM cases will need more
|
||||
# memory allocated for the guest).
|
||||
#CFLAGS += -fsanitize=address -O1 -fno-omit-frame-pointer -g
|
||||
#LIBS += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_c += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
#LIBS_p += -fsanitize=address -fno-omit-frame-pointer -g
|
||||
|
||||
# Undefined Behavior Sanitizer (UBSan) can be enabled by uncommenting the
|
||||
# following lines.
|
||||
#CFLAGS += -Wno-format-nonliteral
|
||||
#CFLAGS += -fsanitize=undefined
|
||||
##CFLAGS += -fno-sanitize-recover
|
||||
#LIBS += -fsanitize=undefined
|
||||
##LIBS += -fno-sanitize-recover
|
||||
#LIBS_c += -fsanitize=undefined
|
||||
#LIBS_p += -fsanitize=undefined
|
||||
CONFIG_MBO=y
|
||||
CONFIG_FILS=y
|
||||
CONFIG_FILS_SK_PFS=y
|
||||
CONFIG_PMKSA_CACHE_EXTERNAL=y
|
||||
CONFIG_OWE=y
|
||||
#CONFIG_DPP=y
|
||||
#CONFIG_DPP2=y
|
||||
CONFIG_WEP=y
|
||||
CONFIG_PASN=y
|
@ -1,23 +0,0 @@
|
||||
<!DOCTYPE busconfig PUBLIC
|
||||
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
|
||||
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
|
||||
<busconfig>
|
||||
<policy user="root">
|
||||
<allow own="fi.epitest.hostap.WPASupplicant"/>
|
||||
<allow send_destination="fi.epitest.hostap.WPASupplicant"/>
|
||||
<allow send_interface="fi.epitest.hostap.WPASupplicant"/>
|
||||
<allow own="fi.w1.wpa_supplicant1"/>
|
||||
<allow send_destination="fi.w1.wpa_supplicant1"/>
|
||||
<allow send_interface="fi.w1.wpa_supplicant1"/>
|
||||
<allow receive_sender="fi.w1.wpa_supplicant1" receive_type="signal"/>
|
||||
</policy>
|
||||
<policy context="default">
|
||||
<deny own="fi.epitest.hostap.WPASupplicant"/>
|
||||
<deny send_destination="fi.epitest.hostap.WPASupplicant"/>
|
||||
<deny send_interface="fi.epitest.hostap.WPASupplicant"/>
|
||||
<deny own="fi.w1.wpa_supplicant1"/>
|
||||
<deny send_destination="fi.w1.wpa_supplicant1"/>
|
||||
<deny send_interface="fi.w1.wpa_supplicant1"/>
|
||||
<deny receive_sender="fi.w1.wpa_supplicant1" receive_type="signal"/>
|
||||
</policy>
|
||||
</busconfig>
|
279
.github/workflows/hostap.yml
vendored
279
.github/workflows/hostap.yml
vendored
@ -1,279 +0,0 @@
|
||||
name: hostap and wpa-supplicant Tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
build_wolfssl:
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- build_id: hostap-build1
|
||||
wolf_extra_config: --disable-tls13
|
||||
- build_id: hostap-build2
|
||||
wolf_extra_config: --enable-brainpool --enable-wpas-dpp
|
||||
name: Build wolfSSL
|
||||
# Just to keep it the same as the testing target
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
# No way to view the full strategy in the browser (really weird)
|
||||
- name: Print strategy
|
||||
run: |
|
||||
cat <<EOF
|
||||
${{ toJSON(matrix) }}
|
||||
EOF
|
||||
|
||||
- if: ${{ runner.debug }}
|
||||
name: Enable wolfSSL debug logging
|
||||
run: |
|
||||
echo "wolf_debug_flags=--enable-debug" >> $GITHUB_ENV
|
||||
|
||||
- name: Build wolfSSL
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
path: wolfssl
|
||||
configure: >-
|
||||
--enable-wpas CFLAGS=-DWOLFSSL_STATIC_RSA
|
||||
${{ env.wolf_debug_flags }} ${{ matrix.wolf_extra_config }}
|
||||
install: true
|
||||
|
||||
- name: Upload built lib
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.build_id }}
|
||||
path: build-dir
|
||||
retention-days: 1
|
||||
|
||||
# Build wpa_supplicant with wolfSSL and hostapd with OpenSSL and interop.
|
||||
hostap_test:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# should hostapd be compiled with wolfssl
|
||||
hostapd: [true, false]
|
||||
# should wpa_supplicant be compiled with wolfssl
|
||||
wpa_supplicant: [true, false]
|
||||
# Fix the versions of hostap and osp to not break testing when a new
|
||||
# patch is added in to osp. hostap_cherry_pick is used to apply the
|
||||
# commit that updates the certificates used for testing. Tests are read
|
||||
# from the corresponding configs/hostap_ref/tests file.
|
||||
config: [
|
||||
{
|
||||
hostap_ref: hostap_2_10,
|
||||
hostap_cherry_pick: 5679ec5c3dda25a0547a5f66407fd9b0b55fd04a,
|
||||
remove_teap: true,
|
||||
# TLS 1.3 does not work for this version
|
||||
build_id: hostap-build1,
|
||||
},
|
||||
# Test the dpp patch
|
||||
{
|
||||
hostap_ref: b607d2723e927a3446d89aed813f1aa6068186bb,
|
||||
hostap_cherry_pick: 5679ec5c3dda25a0547a5f66407fd9b0b55fd04a,
|
||||
osp_ref: ad5b52a49b3cc2a5bfb47ccc1d6a5137132e9446,
|
||||
build_id: hostap-build2
|
||||
},
|
||||
]
|
||||
# parallelize the tests to be able to run all tests within 10 minutes
|
||||
# Update the <total server> in the ./run-tests.py step when changing.
|
||||
server: [1, 2, 3, 4, 5]
|
||||
exclude:
|
||||
# don't test openssl on both sides
|
||||
- hostapd: false
|
||||
wpa_supplicant: false
|
||||
# no hostapd support for dpp yet
|
||||
- hostapd: true
|
||||
config: {
|
||||
hostap_ref: b607d2723e927a3446d89aed813f1aa6068186bb,
|
||||
osp_ref: ad5b52a49b3cc2a5bfb47ccc1d6a5137132e9446,
|
||||
build_id: hostap-build2
|
||||
}
|
||||
name: hwsim test
|
||||
# For openssl 1.1
|
||||
runs-on: ubuntu-20.04
|
||||
needs: build_wolfssl
|
||||
steps:
|
||||
# No way to view the full strategy in the browser (really weird)
|
||||
- name: Print strategy
|
||||
run: |
|
||||
cat <<EOF
|
||||
${{ toJSON(matrix) }}
|
||||
EOF
|
||||
|
||||
- name: Print computed job run ID
|
||||
run: |
|
||||
SHA_SUM=$(sha256sum << 'END_OF_HEREDOC' | cut -d " " -f 1
|
||||
${{ toJSON(github) }}
|
||||
END_OF_HEREDOC
|
||||
)
|
||||
echo "our_job_run_id=$SHA_SUM" >> $GITHUB_ENV
|
||||
echo Our job run ID is $SHA_SUM
|
||||
|
||||
- name: Checkout wolfSSL
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: wolfssl
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
# Don't prompt for anything
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
sudo apt-get update
|
||||
# hostap dependencies
|
||||
sudo apt-get install -y libpcap0.8 libpcap-dev curl libcurl4-openssl-dev \
|
||||
libnl-3-dev binutils-dev libssl-dev libiberty-dev libnl-genl-3-dev \
|
||||
libnl-route-3-dev libdbus-1-dev linux-modules-extra-`uname -r` \
|
||||
bridge-utils
|
||||
sudo pip3 install pycryptodome
|
||||
|
||||
- name: Enable mac80211
|
||||
run: |
|
||||
sudo modprobe mac80211
|
||||
lsmod | grep mac80211
|
||||
|
||||
- if: ${{ runner.debug }}
|
||||
name: Enable hostap debug logging
|
||||
run: |
|
||||
echo "hostap_debug_flags=-d" >> $GITHUB_ENV
|
||||
|
||||
- name: Download lib
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: ${{ matrix.config.build_id }}
|
||||
path: build-dir
|
||||
|
||||
- name: Setup d-bus
|
||||
working-directory: wolfssl/.github/workflows/hostap-files
|
||||
run: |
|
||||
sudo cp dbus-wpa_supplicant.conf /usr/share/dbus-1/system.d/wpa_supplicant.conf
|
||||
sudo service dbus reload
|
||||
|
||||
# This is super hack-ish :P
|
||||
# If you are trying to reproduce this on a more generic system, you can
|
||||
# just run `sudo apt install linux-modules-extra-$(uname -r)` and
|
||||
# this should have the module in the package. No need to compile it.
|
||||
- name: Compile and install mac80211_hwsim
|
||||
working-directory: wolfssl/.github/workflows/hostap-files
|
||||
run: |
|
||||
# The tag will be the first two numbers of from uname -r
|
||||
LINUX_TAG=$(uname -r | grep -oP '^\d+\.\d+')
|
||||
# Download the correct version of the driver
|
||||
wget https://raw.githubusercontent.com/torvalds/linux/v$LINUX_TAG/drivers/net/wireless/mac80211_hwsim.c
|
||||
wget https://raw.githubusercontent.com/torvalds/linux/v$LINUX_TAG/drivers/net/wireless/mac80211_hwsim.h
|
||||
make
|
||||
sudo make install
|
||||
sudo modprobe mac80211_hwsim
|
||||
lsmod | grep mac80211_hwsim
|
||||
sudo rmmod mac80211_hwsim
|
||||
|
||||
- name: Checkout hostap
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: julek-wolfssl/hostap-mirror
|
||||
path: hostap
|
||||
ref: ${{ matrix.config.hostap_ref }}
|
||||
# necessary for cherry pick step
|
||||
fetch-depth: 0
|
||||
|
||||
- if: ${{ matrix.config.hostap_cherry_pick }}
|
||||
name: Cherry pick certificate update
|
||||
working-directory: hostap
|
||||
run: git cherry-pick -n -X theirs ${{ matrix.config.hostap_cherry_pick }}
|
||||
|
||||
- if: ${{ matrix.config.osp_ref }}
|
||||
name: Checkout OSP
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: wolfssl/osp
|
||||
path: osp
|
||||
ref: ${{ matrix.config.osp_ref }}
|
||||
|
||||
- if: ${{ matrix.config.osp_ref }}
|
||||
name: Apply patch files
|
||||
working-directory: hostap
|
||||
run: |
|
||||
for f in $GITHUB_WORKSPACE/osp/hostap-patches/pending/*
|
||||
do
|
||||
patch -p1 < $f
|
||||
done
|
||||
|
||||
- if: ${{ matrix.hostapd }}
|
||||
name: Setup hostapd config file
|
||||
run: |
|
||||
cp wolfssl/.github/workflows/hostap-files/configs/${{ matrix.config.hostap_ref }}/hostapd.config \
|
||||
hostap/hostapd/.config
|
||||
cat <<EOF >> hostap/hostapd/.config
|
||||
CFLAGS += -I$GITHUB_WORKSPACE/build-dir/include -Wl,-rpath=$GITHUB_WORKSPACE/build-dir/lib
|
||||
LIBS += -L$GITHUB_WORKSPACE/build-dir/lib -Wl,-rpath=$GITHUB_WORKSPACE/build-dir/lib
|
||||
EOF
|
||||
|
||||
- if: ${{ matrix.wpa_supplicant }}
|
||||
name: Setup wpa_supplicant config file
|
||||
run: |
|
||||
cp wolfssl/.github/workflows/hostap-files/configs/${{ matrix.config.hostap_ref }}/wpa_supplicant.config \
|
||||
hostap/wpa_supplicant/.config
|
||||
cat <<EOF >> hostap/wpa_supplicant/.config
|
||||
CFLAGS += -I$GITHUB_WORKSPACE/build-dir/include -Wl,-rpath=$GITHUB_WORKSPACE/build-dir/lib
|
||||
LIBS += -L$GITHUB_WORKSPACE/build-dir/lib -Wl,-rpath=$GITHUB_WORKSPACE/build-dir/lib
|
||||
EOF
|
||||
|
||||
- name: Build hostap
|
||||
working-directory: hostap/tests/hwsim/
|
||||
run: ./build.sh
|
||||
|
||||
- if: ${{ matrix.hostapd }}
|
||||
name: Confirm hostapd linking with wolfSSL
|
||||
run: ldd hostap/hostapd/hostapd | grep wolfssl
|
||||
|
||||
- if: ${{ matrix.wpa_supplicant }}
|
||||
name: Confirm wpa_supplicant linking with wolfSSL
|
||||
run: ldd hostap/wpa_supplicant/wpa_supplicant | grep wolfssl
|
||||
|
||||
- if: ${{ matrix.config.remove_teap }}
|
||||
name: Remove EAP-TEAP from test configuration
|
||||
working-directory: hostap/tests/hwsim/auth_serv
|
||||
run: |
|
||||
sed -e 's/"erp-teap@example.com"\tTEAP//' -i eap_user.conf
|
||||
sed -e 's/"erp-teap@example.com"\tMSCHAPV2\t"password"\t\[2\]//' -i eap_user.conf
|
||||
sed -e 's/"TEAP"\t\tTEAP//' -i eap_user.conf
|
||||
sed -e 's/TEAP,//' -i eap_user.conf
|
||||
|
||||
- name: Run tests
|
||||
id: testing
|
||||
working-directory: hostap/tests/hwsim/
|
||||
run: |
|
||||
# Run tests in increments of 50 to cut down on the uploaded log size.
|
||||
while mapfile -t -n 50 ary && ((${#ary[@]})); do
|
||||
TESTS=$(printf '%s\n' "${ary[@]}" | tr '\n' ' ')
|
||||
# Retry up to three times
|
||||
for i in {1..3}; do
|
||||
HWSIM_RES=0
|
||||
# Logs can grow quickly especially in debug mode
|
||||
sudo rm -rf logs
|
||||
sudo ./start.sh
|
||||
sudo ./run-tests.py ${{ env.hostap_debug_flags }} --split ${{ matrix.server }}/5 $TESTS || HWSIM_RES=$?
|
||||
sudo ./stop.sh
|
||||
if [ "$HWSIM_RES" -eq "0" ]; then
|
||||
break
|
||||
fi
|
||||
done
|
||||
echo "test ran $i times"
|
||||
if [ "$HWSIM_RES" -ne "0" ]; then
|
||||
exit $HWSIM_RES
|
||||
fi
|
||||
done < $GITHUB_WORKSPACE/wolfssl/.github/workflows/hostap-files/configs/${{ matrix.config.hostap_ref }}/tests
|
||||
|
||||
- name: Change failure log permissions
|
||||
if: ${{ failure() && steps.testing.outcome == 'failure' }}
|
||||
working-directory: hostap/tests/hwsim/
|
||||
run: |
|
||||
sudo chown -R $USER:$USER logs
|
||||
zip -9 -r logs.zip logs/current
|
||||
|
||||
- name: Upload failure logs
|
||||
if: ${{ failure() && steps.testing.outcome == 'failure' }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: hostap-logs-${{ env.our_job_run_id }}
|
||||
path: hostap/tests/hwsim/logs.zip
|
||||
retention-days: 5
|
||||
|
31
.github/workflows/main.yml
vendored
31
.github/workflows/main.yml
vendored
@ -1,31 +0,0 @@
|
||||
name: CI
|
||||
concurrency:
|
||||
group: ${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ 'master', 'main', 'release/**' ]
|
||||
pull_request:
|
||||
branches: [ '*' ]
|
||||
|
||||
jobs:
|
||||
espressif:
|
||||
uses: ./.github/workflows/docker-Espressif.yml
|
||||
multi-compiler:
|
||||
uses: ./.github/workflows/multi-compiler.yml
|
||||
openwrt:
|
||||
uses: ./.github/workflows/docker-OpenWrt.yml
|
||||
os-check:
|
||||
uses: ./.github/workflows/os-check.yml
|
||||
async:
|
||||
uses: ./.github/workflows/async.yml
|
||||
stunnel:
|
||||
uses: ./.github/workflows/stunnel.yml
|
||||
openvpn:
|
||||
uses: ./.github/workflows/openvpn.yml
|
||||
hostap:
|
||||
uses: ./.github/workflows/hostap.yml
|
||||
# TODO: Currently this test fails. Enable it once it becomes passing.
|
||||
# haproxy:
|
||||
# uses: ./.github/workflows/haproxy.yml
|
34
.github/workflows/multi-compiler.yml
vendored
34
.github/workflows/multi-compiler.yml
vendored
@ -1,34 +0,0 @@
|
||||
name: Multiple compilers and versions
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
my_matrix:
|
||||
name: Compiler test
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- CC: gcc-9
|
||||
CXX: g++-9
|
||||
- CC: gcc-10
|
||||
CXX: g++-10
|
||||
- CC: gcc-11
|
||||
CXX: g++-11
|
||||
- CC: gcc-12
|
||||
CXX: g++-12
|
||||
- CC: clang-12
|
||||
CXX: clang++-12
|
||||
- CC: clang-13
|
||||
CXX: clang++-13
|
||||
- CC: clang-14
|
||||
CXX: clang++-14
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Build
|
||||
env:
|
||||
CC: ${{ matrix.CC }}
|
||||
CXX: ${{ matrix.CXX }}
|
||||
run: ./autogen.sh && ./configure && make && make dist
|
69
.github/workflows/openvpn.yml
vendored
69
.github/workflows/openvpn.yml
vendored
@ -1,69 +0,0 @@
|
||||
name: OpenVPN Tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
build_wolfssl:
|
||||
name: Build wolfSSL
|
||||
# Just to keep it the same as the testing target
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Build wolfSSL
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
path: wolfssl
|
||||
configure: --enable-openvpn
|
||||
install: true
|
||||
|
||||
- name: Upload built lib
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: wolf-install-openvpn
|
||||
path: build-dir
|
||||
retention-days: 1
|
||||
|
||||
openvpn_check:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# List of refs to test
|
||||
ref: [ master, release/2.6, v2.6.0 ]
|
||||
name: ${{ matrix.ref }}
|
||||
runs-on: ubuntu-latest
|
||||
needs: build_wolfssl
|
||||
steps:
|
||||
- name: Download lib
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: wolf-install-openvpn
|
||||
path: build-dir
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install liblzo2-dev libpam0g-dev liblz4-dev libcap-ng-dev \
|
||||
linux-libc-dev man2html libcmocka-dev python3-docutils \
|
||||
libtool automake autoconf libnl-genl-3-dev libnl-genl-3-200
|
||||
|
||||
- if: ${{ matrix.ref != 'master' }}
|
||||
name: Build and test openvpn with fsanitize
|
||||
run: |
|
||||
echo 'extra_c_flags=CFLAGS="-fsanitize=address -fno-omit-frame-pointer -O2"' >> $GITHUB_ENV
|
||||
|
||||
- name: Build and test openvpn
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
repository: OpenVPN/openvpn
|
||||
ref: ${{ matrix.ref }}
|
||||
path: openvpn
|
||||
configure: >-
|
||||
--with-crypto-library=wolfssl
|
||||
WOLFSSL_CFLAGS="-I$GITHUB_WORKSPACE/build-dir/include/ -I$GITHUB_WORKSPACE/build-dir/include/wolfssl"
|
||||
WOLFSSL_LIBS="-L$GITHUB_WORKSPACE/build-dir/lib -lwolfssl"
|
||||
${{ env.extra_c_flags }}
|
||||
check: true
|
||||
|
||||
- name: Confirm OpenVPN built with wolfSSL
|
||||
working-directory: ./openvpn
|
||||
run: ldd src/openvpn/openvpn | grep wolfssl
|
122
.github/workflows/os-check.yml
vendored
122
.github/workflows/os-check.yml
vendored
@ -1,122 +0,0 @@
|
||||
name: Ubuntu-Macos-Windows Tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
make_check:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ ubuntu-latest, macos-latest ]
|
||||
config: [
|
||||
# Add new configs here
|
||||
'',
|
||||
'--enable-all --enable-asn=template',
|
||||
'--enable-all --enable-asn=original',
|
||||
'--enable-harden-tls',
|
||||
'--enable-tls13 --enable-session-ticket --enable-dtls --enable-dtls13
|
||||
--enable-opensslextra --enable-sessioncerts
|
||||
CPPFLAGS=''-DWOLFSSL_DTLS_NO_HVR_ON_RESUME -DHAVE_EXT_CACHE
|
||||
-DWOLFSSL_TICKET_HAVE_ID -DHAVE_EX_DATA -DSESSION_CACHE_DYNAMIC_MEM'' ',
|
||||
]
|
||||
name: make check
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Build and test wolfSSL
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
configure: ${{ matrix.config }}
|
||||
check: true
|
||||
|
||||
make_user_settings:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ ubuntu-latest, macos-latest ]
|
||||
user-settings: [
|
||||
# Add new user_settings.h here
|
||||
'examples/configs/user_settings_all.h',
|
||||
]
|
||||
name: make user_setting.h
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Build and test wolfSSL
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
configure: --enable-usersettings
|
||||
check: true
|
||||
user-settings: ${{ matrix.user-settings }}
|
||||
|
||||
make_user_settings_testwolfcrypt:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ ubuntu-latest, macos-latest ]
|
||||
user-settings: [
|
||||
# Add new user_settings.h here
|
||||
'examples/configs/user_settings_min_ecc.h',
|
||||
'examples/configs/user_settings_wolfboot_keytools.h',
|
||||
'examples/configs/user_settings_wolftpm.h',
|
||||
]
|
||||
name: make user_setting.h (testwolfcrypt only)
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Build and test wolfSSL
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
configure: --enable-usersettings --disable-examples
|
||||
check: false
|
||||
user-settings: ${{ matrix.user-settings }}
|
||||
|
||||
- name: Run wolfcrypt/test/testwolfcrypt
|
||||
run: ./wolfcrypt/test/testwolfcrypt
|
||||
|
||||
# Has to be dedicated function due to the sed call
|
||||
make_user_all:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ ubuntu-latest, macos-latest ]
|
||||
name: make user_setting.h (with sed)
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- if: ${{ matrix.os == 'macos-latest' }}
|
||||
run: brew install automake libtool
|
||||
- run: ./autogen.sh
|
||||
- name: user_settings_all.h with compatibility layer
|
||||
run: |
|
||||
cp ./examples/configs/user_settings_all.h user_settings.h
|
||||
sed -i -e "s/if 0/if 1/" user_settings.h
|
||||
./configure --enable-usersettings
|
||||
make
|
||||
make check
|
||||
|
||||
windows_build:
|
||||
name: Windows Build Test
|
||||
runs-on: windows-latest
|
||||
env:
|
||||
# Path to the solution file relative to the root of the project.
|
||||
SOLUTION_FILE_PATH: wolfssl64.sln
|
||||
|
||||
# Configuration type to build.
|
||||
# You can convert this to a build matrix if you need coverage of multiple configuration types.
|
||||
# https://docs.github.com/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
|
||||
BUILD_CONFIGURATION: Release
|
||||
BUILD_PLATFORM: x64
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Add MSBuild to PATH
|
||||
uses: microsoft/setup-msbuild@v1
|
||||
|
||||
- name: Restore NuGet packages
|
||||
working-directory: ${{env.GITHUB_WORKSPACE}}
|
||||
run: nuget restore ${{env.SOLUTION_FILE_PATH}}
|
||||
|
||||
- name: Build
|
||||
working-directory: ${{env.GITHUB_WORKSPACE}}
|
||||
# Add additional options to the MSBuild command line here (like platform or verbosity level).
|
||||
# See https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference
|
||||
run: msbuild /m /p:PlatformToolset=v142 /p:Platform=${{env.BUILD_PLATFORM}} /p:Configuration=${{env.BUILD_CONFIGURATION}} ${{env.SOLUTION_FILE_PATH}}
|
61
.github/workflows/stunnel.yml
vendored
61
.github/workflows/stunnel.yml
vendored
@ -1,61 +0,0 @@
|
||||
name: stunnel Tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
build_wolfssl:
|
||||
name: Build wolfSSL
|
||||
# Just to keep it the same as the testing target
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Build wolfSSL
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
path: wolfssl
|
||||
configure: --enable-stunnel
|
||||
install: true
|
||||
|
||||
- name: Upload built lib
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: wolf-install-stunnel
|
||||
path: build-dir
|
||||
retention-days: 1
|
||||
|
||||
stunnel_check:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# List of releases to test
|
||||
ref: [ 5.67 ]
|
||||
name: ${{ matrix.ref }}
|
||||
runs-on: ubuntu-latest
|
||||
needs: build_wolfssl
|
||||
steps:
|
||||
- name: Download lib
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: wolf-install-stunnel
|
||||
path: build-dir
|
||||
|
||||
- name: Checkout OSP
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: wolfssl/osp
|
||||
path: osp
|
||||
|
||||
- name: Build and test stunnel
|
||||
uses: wolfSSL/actions-build-autotools-project@v1
|
||||
with:
|
||||
repository: mtrojnar/stunnel
|
||||
ref: stunnel-${{ matrix.ref }}
|
||||
path: stunnel
|
||||
patch-file: $GITHUB_WORKSPACE/osp/stunnel/${{ matrix.ref }}/stunnel-${{ matrix.ref }}.patch
|
||||
configure: --enable-wolfssl SSLDIR=$GITHUB_WORKSPACE/build-dir
|
||||
check: true
|
||||
|
||||
- name: Confirm stunnel built with wolfSSL
|
||||
working-directory: ./stunnel
|
||||
run: ldd src/stunnel | grep wolfssl
|
||||
|
100
.gitignore
vendored
100
.gitignore
vendored
@ -5,21 +5,18 @@ ctaocrypt/src/src/
|
||||
*.o
|
||||
*.patch
|
||||
*.deps
|
||||
*.d
|
||||
*.libs
|
||||
*.cache
|
||||
.dirstamp
|
||||
*.user
|
||||
configure
|
||||
configure
|
||||
config.*
|
||||
!cmake/config.in
|
||||
*Debug/
|
||||
*Release/
|
||||
*.ncb
|
||||
*.suo
|
||||
*.sdf
|
||||
*.opensdf
|
||||
*.cmd
|
||||
ipch/
|
||||
build-aux/
|
||||
rpm/spec
|
||||
@ -27,7 +24,6 @@ rpm/spec
|
||||
stamp-h
|
||||
cyassl/options.h
|
||||
wolfssl/options.h
|
||||
.build_params
|
||||
libtool.m4
|
||||
aclocal.m4
|
||||
aminclude.am
|
||||
@ -73,7 +69,6 @@ examples/sctp/sctp-server
|
||||
examples/sctp/sctp-server-dtls
|
||||
examples/sctp/sctp-client
|
||||
examples/sctp/sctp-client-dtls
|
||||
examples/asn1/asn1
|
||||
server_ready
|
||||
snifftest
|
||||
output
|
||||
@ -83,7 +78,6 @@ tests/unit
|
||||
testsuite/testsuite.test
|
||||
tests/unit.test
|
||||
tests/bio_write_test.txt
|
||||
tests/test-log-dump-to-file.txt
|
||||
test-write-dhparams.pem
|
||||
testsuite/*.der
|
||||
testsuite/*.pem
|
||||
@ -209,6 +203,14 @@ TAGS
|
||||
support/cyassl.pc
|
||||
support/wolfssl.pc
|
||||
cyassl/ctaocrypt/stamp-h1
|
||||
swig/_cyassl.so
|
||||
swig/_wolfssl.so
|
||||
swig/cyassl.py
|
||||
swig/wolfssl.py
|
||||
swig/cyassl.pyc
|
||||
swig/wolfssl.pyc
|
||||
swig/cyassl_wrap.c
|
||||
swig/wolfssl_wrap.c
|
||||
stamp-h1
|
||||
clang_output_*
|
||||
internal.plist
|
||||
@ -224,24 +226,6 @@ IDE/MDK-ARM/LPC43xx/LPC43xx/
|
||||
*.gcno
|
||||
*.gcda
|
||||
*.gcov
|
||||
*.dgcov
|
||||
!linuxkm/Makefile
|
||||
/Kbuild
|
||||
linuxkm/*.ko
|
||||
linuxkm/*.ko.signed
|
||||
linuxkm/Module.symvers
|
||||
linuxkm/built-in.a
|
||||
linuxkm/modules.order
|
||||
linuxkm/wolfcrypt
|
||||
linuxkm/libwolfssl.mod
|
||||
linuxkm/libwolfssl.mod.c
|
||||
linuxkm/libwolfssl.lds
|
||||
linuxkm/module_exports.c
|
||||
linuxkm/linuxkm/get_thread_size
|
||||
|
||||
# autotools generated
|
||||
scripts/unit.test
|
||||
wolfcrypt/test/test_paths.h
|
||||
|
||||
# MPLAB Generated Files (OS X)
|
||||
mcapi/wolfcrypt_mcapi.X/nbproject/Makefile-*
|
||||
@ -323,10 +307,6 @@ IDE/HEXIWEAR/wolfSSL_HW/Debug
|
||||
# Linux-SGX
|
||||
IDE/LINUX-SGX/*.a
|
||||
|
||||
IDE/iotsafe/*.map
|
||||
IDE/iotsafe/*.elf
|
||||
IDE/iotsafe/*.bin
|
||||
|
||||
# Binaries
|
||||
wolfcrypt/src/port/intel/qat_test
|
||||
/mplabx/wolfssl.X/dist/default/
|
||||
@ -355,65 +335,3 @@ IDE/XCODE/Index
|
||||
/IDE/Renesas/e2studio/Projects/test/trash
|
||||
/IDE/Renesas/e2studio/Projects/test/*.launch
|
||||
/IDE/Renesas/e2studio/Projects/test/*.scfg
|
||||
|
||||
/IDE/Renesas/e2studio/RX65N/GR-ROSE/.metadata
|
||||
/IDE/Renesas/e2studio/RX65N/GR-ROSE/smc/src
|
||||
/IDE/Renesas/e2studio/RX65N/GR-ROSE/smc/trash
|
||||
/IDE/Renesas/e2studio/RX65N/GR-ROSE/test/src/smc_gen
|
||||
/IDE/Renesas/e2studio/RX65N/GR-ROSE/test/generate
|
||||
|
||||
/IDE/Renesas/e2studio/RX65N/RSK/.metadata
|
||||
/IDE/Renesas/e2studio/RX65N/RSK/smc/src
|
||||
/IDE/Renesas/e2studio/RX65N/RSK/smc/trash
|
||||
/IDE/Renesas/e2studio/RX65N/RSK/test/src/smc_gen
|
||||
/IDE/Renesas/e2studio/RX65N/RSK/test/generate
|
||||
|
||||
/IDE/Renesas/e2studio/RX72N/EnvisionKit/.metadata
|
||||
/IDE/Renesas/e2studio/RX72N/EnvisionKit/smc/src
|
||||
/IDE/Renesas/e2studio/RX72N/EnvisionKit/smc/trash
|
||||
/IDE/Renesas/e2studio/RX72N/EnvisionKit/test/src/smc_gen
|
||||
/IDE/Renesas/e2studio/RX72N/EnvisionKit/test/generate
|
||||
|
||||
# QNX CAAM
|
||||
/IDE/QNX/example-server/server-tls
|
||||
/IDE/QNX/example-client/client-tls
|
||||
/IDE/QNX/example-cmac/cmac-test
|
||||
/IDE/QNX/CAAM-DRIVER/wolfCrypt
|
||||
|
||||
# Xilinx
|
||||
/IDE/XilinxSDK/data
|
||||
|
||||
# Emacs
|
||||
*~
|
||||
|
||||
# CMake
|
||||
CMakeFiles/
|
||||
CMakeCache.txt
|
||||
cmake_install.cmake
|
||||
|
||||
# GDB Settings
|
||||
\.gdbinit
|
||||
|
||||
libFuzzer
|
||||
|
||||
# Pycharm and other IDEs
|
||||
\.idea
|
||||
|
||||
# FIPS
|
||||
XXX-fips-test
|
||||
|
||||
# ASYNC
|
||||
async
|
||||
|
||||
# Generated user_settings_asm.h.
|
||||
user_settings_asm.h
|
||||
|
||||
# VisualGD
|
||||
**/.visualgdb
|
||||
|
||||
# Espressif sdk config default should be saved in sdkconfig.defaults
|
||||
# we won't track the actual working sdkconfig files
|
||||
/IDE/Espressif/**/sdkconfig
|
||||
|
||||
# auto-created CMake backups
|
||||
**/CMakeLists.txt.old
|
||||
|
2377
CMakeLists.txt
2377
CMakeLists.txt
File diff suppressed because it is too large
Load Diff
2209
ChangeLog.md
2209
ChangeLog.md
File diff suppressed because it is too large
Load Diff
@ -1,25 +0,0 @@
|
||||
ARG DOCKER_BASE_IMAGE=ubuntu:22.04
|
||||
FROM $DOCKER_BASE_IMAGE
|
||||
|
||||
USER root
|
||||
|
||||
ARG DEPS_WOLFSSL="build-essential autoconf libtool clang clang-tools zlib1g-dev libuv1-dev libpam0g-dev valgrind git linux-headers-generic gcc-multilib g++-multilib libpcap-dev bubblewrap gdb iputils-ping lldb bsdmainutils netcat binutils-arm-linux-gnueabi binutils-aarch64-linux-gnu"
|
||||
ARG DEPS_LIBOQS="astyle cmake gcc ninja-build libssl-dev python3-pytest python3-pytest-xdist unzip xsltproc doxygen graphviz python3-yaml valgrind git"
|
||||
ARG DEPS_TESTS="abi-dumper libcurl4-openssl-dev tcpdump"
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt update && apt install -y apt-utils \
|
||||
&& apt install -y ${DEPS_WOLFSSL} ${DEPS_LIBOQS} ${DEPS_TESTS} \
|
||||
&& apt clean -y && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ARG USER=docker
|
||||
ARG UID=1000
|
||||
ARG GID=1000
|
||||
RUN groupadd -f -g ${GID} docker && ( getent passwd ${UID} || useradd -ms /bin/bash ${USER} -u ${UID} -g ${GID} )
|
||||
|
||||
# install liboqs
|
||||
RUN git clone --single-branch https://github.com/open-quantum-safe/liboqs.git && cd liboqs && git checkout af76ca3b1f2fbc1f4f0967595f3bb07692fb3d82 \
|
||||
&& mkdir build && cd build && cmake -DOQS_DIST_BUILD=ON -DOQS_USE_CPUFEATURE_INSTRUCTIONS=OFF -DOQS_USE_OPENSSL=0 .. && make -j8 all && make install && cd ../.. && rm -rf liboqs
|
||||
|
||||
# Allow non-root to use tcpdump (will need NET_RAW and NET_ADMIN capability when running the container)
|
||||
RUN setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/tcpdump
|
||||
|
||||
USER ${UID}:${GID}
|
@ -1,12 +0,0 @@
|
||||
# This Dockerfile is used in conjunction with the docker-OpenWrt.yml GitHub Action.
|
||||
ARG DOCKER_BASE_CONTAINER=openwrt/rootfs:x86-64-snapshot
|
||||
FROM $DOCKER_BASE_CONTAINER
|
||||
|
||||
RUN mkdir -p /var/lock # Fix for parent container
|
||||
COPY libwolfssl.so /tmp/libwolfssl.so
|
||||
RUN export LIBWOLFSSL=$(ls /usr/lib/libwolfssl.so.* -1); \
|
||||
rm ${LIBWOLFSSL} && ln -s /tmp/libwolfssl.so ${LIBWOLFSSL}
|
||||
# for debugging purposes to make sure the correct library is tested
|
||||
RUN ls -Ll /usr/lib/libwolfssl* && ldd /lib/libustream-ssl.so | grep wolfssl
|
||||
COPY runTests.sh /tmp/.
|
||||
RUN /tmp/runTests.sh
|
@ -1,13 +0,0 @@
|
||||
This container is really only useful in conjunction with the GitHub Workflow
|
||||
found in .github/workflows/docker-OpenWrt.yml. The idea is that we will
|
||||
compile a new libwolfssl that gets placed in official OpenWrt containers to
|
||||
run some tests ensuring the library is still compatible with existing
|
||||
binaries.
|
||||
|
||||
To run the test locally, build libwolfssl.so (or download from the GitHub Action)
|
||||
and put it in Docker/OpenWrt. Then switch to that folder and run:
|
||||
docker build -t openwrt --build-args DOCKER_BASE_CONTAINER=<openwrtContainer> .
|
||||
where 'openwrtContainer' => "openwrt/rootfs:x86-64-22.03-SNAPSHOT" or similar
|
||||
|
||||
This should run some sample tests. The resulting container then can be used to
|
||||
evaluate OpenWrt with the latest wolfSSL library.
|
@ -1,23 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
runCMD() { # usage: runCMD "<command>" "<retVal>"
|
||||
eval $1 >/dev/null 2>&1
|
||||
RETVAL=$?
|
||||
if [ "$RETVAL" != "$2" ]; then
|
||||
echo "Command ($1) returned ${RETVAL}, but expected $2. Rerunning with output to terminal:"
|
||||
eval $1
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Successful tests
|
||||
runCMD "ldd /lib/libustream-ssl.so" 0
|
||||
runCMD "opkg update" 0
|
||||
runCMD "uclient-fetch -O /dev/null 'https://letsencrypt.org'" 0
|
||||
# Negative tests
|
||||
runCMD "uclient-fetch --ca-certificate=/dev/null -O /dev/null 'https://letsencrypt.org'" 5
|
||||
runCMD "uclient-fetch -O /dev/null 'https://self-signed.badssl.com/'" 5
|
||||
runCMD "uclient-fetch -O /dev/null 'https://untrusted-root.badssl.com/'" 5
|
||||
runCMD "uclient-fetch -O /dev/null 'https://expired.badssl.com/'" 5
|
||||
|
||||
echo "All tests passed."
|
@ -1,13 +0,0 @@
|
||||
# Overview
|
||||
This is a simple Docker environment for compiling and running WolfSSL. Use `run.sh` to build everything (Docker container, WolfSSL, etc.). This script takes in arguments that can be passed to `./configure`. For example: `run.sh --enable-all`
|
||||
|
||||
When the compilation and tests succeed, you will be dropped in to a shell environment within the container. This can be useful to build other things within the environment.
|
||||
|
||||
# FAQ
|
||||
## permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock
|
||||
You need to be added to the `docker` group to run Docker containers. Run `sudo usermod -aG docker $USER`. You may need to restart the Docker daemon.
|
||||
|
||||
## Unable to access symlinked files outside of WolfSSL
|
||||
The volume mounted in the Docker container needs to have all files that your compilation will need. To solve this, you have a couple options:
|
||||
1. Change the `WOLFSSL_DIR` variable in the `run.sh` to one higher up (by adding `/..` to the path). Then update the `docker build` to include the correct path to the Dockerfile and the `docker run` argument to the working directory (`-w`) to the WolfSSL source directory
|
||||
2. Move the external repository to within the WolfSSL directory. For example create an `external` folder which has your files. This route may have complications when stashing Git work.
|
@ -1,11 +0,0 @@
|
||||
# vim:ft=automake
|
||||
# included from Top Level Makefile.am
|
||||
# All paths should be given relative to the root
|
||||
|
||||
EXTRA_DIST+= Docker/Dockerfile
|
||||
EXTRA_DIST+= Docker/run.sh
|
||||
EXTRA_DIST+= Docker/README.md
|
||||
|
||||
ignore_files+=Docker/OpenWRT/Dockerfile
|
||||
ignore_files+=Docker/OpenWRT/runTests.sh
|
||||
ignore_files+=Docker/OpenWRT/README.md
|
@ -1,14 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "Running with \"${*}\"..."
|
||||
|
||||
# Assume we're in wolfssl/Docker
|
||||
WOLFSSL_DIR=$(builtin cd ${BASH_SOURCE%/*}/..; pwd)
|
||||
|
||||
docker build -t wolfssl --build-arg UID=$(id -u) --build-arg GID=$(id -g) "${WOLFSSL_DIR}/Docker" && \
|
||||
docker run --rm -it -v ${HOME}/.gitconfig:/home/docker/.gitconfig:ro -v ${HOME}/.ssh:/home/docker/.ssh:ro -v "${WOLFSSL_DIR}:/tmp/wolfssl" -w /tmp/wolfssl wolfssl /bin/bash -c "./autogen.sh && ./configure ${*@Q} && make" && \
|
||||
docker run --rm -it -v ${HOME}/.gitconfig:/home/docker/.gitconfig:ro -v ${HOME}/.ssh:/home/docker/.ssh:ro -v "${WOLFSSL_DIR}:/tmp/wolfssl" -w /tmp/wolfssl wolfssl /bin/bash
|
||||
|
||||
exitval=$?
|
||||
echo "Exited with error code $exitval"
|
||||
exit $exitval
|
@ -1,26 +0,0 @@
|
||||
ARG DOCKER_BASE_IMAGE=ubuntu
|
||||
FROM ubuntu as BUILDER
|
||||
|
||||
ARG DEPS_WOLFSSL="build-essential autoconf libtool zlib1g-dev libuv1-dev libpam0g-dev git libpcap-dev libcurl4-openssl-dev bsdmainutils netcat iputils-ping bubblewrap"
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt update && apt install -y apt-utils \
|
||||
&& apt install -y ${DEPS_WOLFSSL} ${DEPS_LIBOQS} \
|
||||
&& apt clean -y && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ARG NUM_CPU=16
|
||||
|
||||
# This arg is to force a rebuild starting from this line
|
||||
ARG DUMMY=date
|
||||
# install wolfssl
|
||||
RUN DUMMY=${DUMMY} git clone --depth=1 --single-branch --branch=master http://github.com/wolfssl/wolfssl && cd wolfssl && ./autogen.sh && ./configure --enable-all && make -j $NUM_CPU && make install && ldconfig
|
||||
|
||||
# install wolfCLU
|
||||
RUN git clone --depth=1 --single-branch --branch=main http://github.com/wolfssl/wolfCLU && cd wolfCLU && ./autogen.sh && ./configure && make -j $NUM_CPU && make install
|
||||
|
||||
FROM ${DOCKER_BASE_IMAGE}
|
||||
USER root
|
||||
COPY --from=BUILDER /usr/local/lib/libwolfssl.so /usr/local/lib/
|
||||
COPY --from=BUILDER /usr/local/bin/wolfssl* /usr/local/bin/
|
||||
RUN ldconfig
|
||||
CMD ["/usr/local/bin/wolfssl"]
|
||||
LABEL org.opencontainers.image.source=https://github.com/wolfssl/wolfssl
|
||||
LABEL org.opencontainers.image.description="Simple wolfCLU in a container"
|
@ -1,10 +0,0 @@
|
||||
This is a small container that has wolfCLU installed for quick access. To build your own run the following:
|
||||
```
|
||||
docker build --pull --build-arg DUMMY=$(date +%s) -t wolfclu .
|
||||
```
|
||||
|
||||
To run the container, you can use:
|
||||
```
|
||||
docker run -it --rm -v $(pwd):/ws -w /ws wolfclu version
|
||||
```
|
||||
This command will allow you to use the certs/keys in your local directory.
|
@ -17,8 +17,8 @@ Step 2: Copy the directory wolfSSL that was just created to:
|
||||
|
||||
Step 3: Edit `<arduino-libraries>/wolfSSL/user_settings.h`
|
||||
If building for Intel Galileo platform add: `#define INTEL_GALILEO`.
|
||||
Add any other custom settings, for a good start see the examples in wolfssl root
|
||||
"/examples/configs/user_settings_*.h"
|
||||
Add any other custom settings, for a good start see the below in wolfssl root.
|
||||
(See wolfssl/IDE/ROWLEY-CROSSWORKS-ARM/user_settings.h)
|
||||
|
||||
Step 4: If you experience any issues with custom user_settings.h see the wolfssl
|
||||
porting guide here for more assistance: https://www.wolfssl.com/docs/porting-guide/
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* wolfssl_client.ino
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
@ -24,8 +24,8 @@
|
||||
#include <wolfssl/ssl.h>
|
||||
#include <Ethernet.h>
|
||||
|
||||
const char host[] = "192.168.1.148"; /* server to connect to */
|
||||
const int port = 11111; /* port on server to connect to */
|
||||
const char host[] = "192.168.1.148"; // server to connect to
|
||||
const int port = 11111; // port on server to connect to
|
||||
|
||||
int EthernetSend(WOLFSSL* ssl, char* msg, int sz, void* ctx);
|
||||
int EthernetReceive(WOLFSSL* ssl, char* reply, int sz, void* ctx);
|
||||
@ -51,7 +51,7 @@ void setup() {
|
||||
Serial.println("unable to get ctx");
|
||||
return;
|
||||
}
|
||||
/* initialize wolfSSL using callback functions */
|
||||
// initialize wolfSSL using callback functions
|
||||
wolfSSL_CTX_set_verify(ctx, SSL_VERIFY_NONE, 0);
|
||||
wolfSSL_SetIOSend(ctx, EthernetSend);
|
||||
wolfSSL_SetIORecv(ctx, EthernetReceive);
|
||||
@ -119,10 +119,7 @@ void loop() {
|
||||
if ((wolfSSL_write(ssl, msg, msgSz)) == msgSz) {
|
||||
|
||||
Serial.print("Server response: ");
|
||||
/* wait for data */
|
||||
while (!client.available()) {}
|
||||
/* read data */
|
||||
while (wolfSSL_pending(ssl)) {
|
||||
while (client.available() || wolfSSL_pending(ssl)) {
|
||||
input = wolfSSL_read(ssl, reply, sizeof(reply) - 1);
|
||||
total_input += input;
|
||||
if (input < 0) {
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* wolfssl_server.ino
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
@ -31,7 +31,7 @@
|
||||
#error Please undefine NO_WOLFSSL_SERVER for this example
|
||||
#endif
|
||||
|
||||
const int port = 11111; /* port to listen on */
|
||||
const int port = 11111; // port to listen on
|
||||
|
||||
int EthernetSend(WOLFSSL* ssl, char* msg, int sz, void* ctx);
|
||||
int EthernetReceive(WOLFSSL* ssl, char* reply, int sz, void* ctx);
|
||||
@ -59,12 +59,12 @@ void setup() {
|
||||
return;
|
||||
}
|
||||
|
||||
/* initialize wolfSSL using callback functions */
|
||||
// initialize wolfSSL using callback functions
|
||||
wolfSSL_CTX_set_verify(ctx, SSL_VERIFY_NONE, 0);
|
||||
wolfSSL_SetIOSend(ctx, EthernetSend);
|
||||
wolfSSL_SetIORecv(ctx, EthernetReceive);
|
||||
|
||||
/* setup the private key and certificate */
|
||||
// setup the private key and certificate
|
||||
err = wolfSSL_CTX_use_PrivateKey_buffer(ctx, ecc_key_der_256,
|
||||
sizeof_ecc_key_der_256, WOLFSSL_FILETYPE_ASN1);
|
||||
if (err != WOLFSSL_SUCCESS) {
|
||||
@ -78,7 +78,7 @@ void setup() {
|
||||
return;
|
||||
}
|
||||
|
||||
/* Start the server */
|
||||
// Start the server
|
||||
server.begin();
|
||||
|
||||
return;
|
||||
@ -110,7 +110,7 @@ void loop() {
|
||||
int replySz = 0;
|
||||
const char* cipherName;
|
||||
|
||||
/* Listen for incoming client requests. */
|
||||
// Listen for incoming client requests.
|
||||
client = server.available();
|
||||
if (!client) {
|
||||
return;
|
||||
@ -142,10 +142,7 @@ void loop() {
|
||||
Serial.println(cipherName);
|
||||
|
||||
Serial.print("Server Read: ");
|
||||
/* wait for data */
|
||||
while (!client.available()) {}
|
||||
/* read data */
|
||||
while (wolfSSL_pending(ssl)) {
|
||||
while (client.available() || wolfSSL_pending(ssl)) {
|
||||
input = wolfSSL_read(ssl, reply, sizeof(reply) - 1);
|
||||
if (input < 0) {
|
||||
err = wolfSSL_get_error(ssl, 0);
|
||||
@ -162,7 +159,7 @@ void loop() {
|
||||
}
|
||||
}
|
||||
|
||||
/* echo data */
|
||||
// echo data
|
||||
if ((wolfSSL_write(ssl, reply, replySz)) != replySz) {
|
||||
err = wolfSSL_get_error(ssl, 0);
|
||||
wolfSSL_ERR_error_string(err, errBuf);
|
||||
|
@ -11,29 +11,20 @@ space(){
|
||||
}
|
||||
|
||||
if [ "$DIR" = "ARDUINO" ]; then
|
||||
if [ ! -d "wolfSSL" ]; then
|
||||
mkdir wolfSSL
|
||||
fi
|
||||
rm -rf wolfSSL
|
||||
mkdir wolfSSL
|
||||
|
||||
cp ../../src/*.c ./wolfSSL
|
||||
cp ../../wolfcrypt/src/*.c ./wolfSSL
|
||||
|
||||
if [ ! -d "wolfSSL/wolfssl" ]; then
|
||||
mkdir wolfSSL/wolfssl
|
||||
fi
|
||||
mkdir wolfSSL/wolfssl
|
||||
cp ../../wolfssl/*.h ./wolfSSL/wolfssl
|
||||
if [ ! -d "wolfSSL/wolfssl/wolfcrypt" ]; then
|
||||
mkdir wolfSSL/wolfssl/wolfcrypt
|
||||
fi
|
||||
mkdir wolfSSL/wolfssl/wolfcrypt
|
||||
cp ../../wolfssl/wolfcrypt/*.h ./wolfSSL/wolfssl/wolfcrypt
|
||||
|
||||
# support misc.c as include in wolfcrypt/src
|
||||
if [ ! -d "./wolfSSL/wolfcrypt" ]; then
|
||||
mkdir ./wolfSSL/wolfcrypt
|
||||
fi
|
||||
if [ ! -d "./wolfSSL/wolfcrypt/src" ]; then
|
||||
mkdir ./wolfSSL/wolfcrypt/src
|
||||
fi
|
||||
mkdir ./wolfSSL/wolfcrypt
|
||||
mkdir ./wolfSSL/wolfcrypt/src
|
||||
cp ../../wolfcrypt/src/misc.c ./wolfSSL/wolfcrypt/src
|
||||
cp ../../wolfcrypt/src/asm.c ./wolfSSL/wolfcrypt/src
|
||||
|
||||
@ -41,41 +32,28 @@ if [ "$DIR" = "ARDUINO" ]; then
|
||||
mv ./wolfSSL/bio.c ./wolfSSL/wolfssl
|
||||
mv ./wolfSSL/evp.c ./wolfSSL/wolfssl
|
||||
|
||||
# make a copy of evp.c and bio.c for ssl.c to include inline
|
||||
cp ./wolfSSL/wolfssl/evp.c ./wolfSSL/wolfcrypt/src/evp.c
|
||||
cp ./wolfSSL/wolfssl/bio.c ./wolfSSL/wolfcrypt/src/bio.c
|
||||
|
||||
# copy openssl compatibility headers to their appropriate location
|
||||
if [ ! -d "./wolfSSL/wolfssl/openssl" ]; then
|
||||
mkdir ./wolfSSL/wolfssl/openssl
|
||||
fi
|
||||
cp ../../wolfssl/openssl/* ./wolfSSL/wolfssl/openssl
|
||||
|
||||
echo "/* Generated wolfSSL header file for Arduino */" > ./wolfSSL/wolfssl.h
|
||||
echo "#include <user_settings.h>" >> ./wolfSSL/wolfssl.h
|
||||
echo "#include <wolfssl/wolfcrypt/settings.h>" >> ./wolfSSL/wolfssl.h
|
||||
echo "#include <wolfssl/ssl.h>" >> ./wolfSSL/wolfssl.h
|
||||
|
||||
if [ ! -f "./wolfSSL/user_settings.h" ]; then
|
||||
echo "/* Generated wolfSSL user_settings.h file for Arduino */" > ./wolfSSL/user_settings.h
|
||||
echo "#ifndef ARDUINO_USER_SETTINGS_H" >> ./wolfSSL/user_settings.h
|
||||
echo "#define ARDUINO_USER_SETTINGS_H" >> ./wolfSSL/user_settings.h
|
||||
space ./wolfSSL/user_settings.h
|
||||
echo "/* Platform */" >> ./wolfSSL/user_settings.h
|
||||
echo "#define WOLFSSL_ARDUINO" >> ./wolfSSL/user_settings.h
|
||||
space ./wolfSSL/user_settings.h
|
||||
echo "/* Math library (remove this to use normal math)*/" >> ./wolfSSL/user_settings.h
|
||||
echo "#define USE_FAST_MATH" >> ./wolfSSL/user_settings.h
|
||||
echo "#define TFM_NO_ASM" >> ./wolfSSL/user_settings.h
|
||||
space ./wolfSSL/user_settings.h
|
||||
echo "/* RNG DEFAULT !!FOR TESTING ONLY!! */" >> ./wolfSSL/user_settings.h
|
||||
echo "/* comment out the error below to get started w/ bad entropy source" >> ./wolfSSL/user_settings.h
|
||||
echo " * This will need fixed before distribution but is OK to test with */" >> ./wolfSSL/user_settings.h
|
||||
echo "#error \"needs solved, see: https://www.wolfssl.com/docs/porting-guide/\"" >> ./wolfSSL/user_settings.h
|
||||
echo "#define WOLFSSL_GENSEED_FORTEST" >> ./wolfSSL/user_settings.h
|
||||
space ./wolfSSL/user_settings.h
|
||||
echo "#endif /* ARDUINO_USER_SETTINGS_H */" >> ./wolfSSL/user_settings.h
|
||||
fi
|
||||
echo "/* Generated wolfSSL user_settings.h file for Arduino */" > ./wolfSSL/user_settings.h
|
||||
echo "#ifndef ARDUINO_USER_SETTINGS_H" >> ./wolfSSL/user_settings.h
|
||||
echo "#define ARDUINO_USER_SETTINGS_H" >> ./wolfSSL/user_settings.h
|
||||
space wolfSSL/user_settings.h
|
||||
echo "/* Platform */" >> ./wolfSSL/user_settings.h
|
||||
echo "#define WOLFSSL_ARDUINO" >> ./wolfSSL/user_settings.h
|
||||
space wolfSSL/user_settings.h
|
||||
echo "/* Math library (remove this to use normal math)*/" >> ./wolfSSL/user_settings.h
|
||||
echo "#define USE_FAST_MATH" >> ./wolfSSL/user_settings.h
|
||||
echo "#define TFM_NO_ASM" >> ./wolfSSL/user_settings.h
|
||||
space wolfSSL/user_settings.h
|
||||
echo "/* RNG DEFAULT !!FOR TESTING ONLY!! */" >> ./wolfSSL/user_settings.h
|
||||
echo "/* comment out the error below to get started w/ bad entropy source" >> ./wolfSSL/user_settings.h
|
||||
echo " * This will need fixed before distribution but is OK to test with */" >> ./wolfSSL/user_settings.h
|
||||
echo "#error \"needs solved, see: https://www.wolfssl.com/docs/porting-guide/\"" >> ./wolfSSL/user_settings.h
|
||||
echo "#define WOLFSSL_GENSEED_FORTEST" >> ./wolfSSL/user_settings.h
|
||||
space wolfSSL/user_settings.h
|
||||
echo "#endif /* ARDUINO_USER_SETTINGS_H */" >> ./wolfSSL/user_settings.h
|
||||
|
||||
cp wolfSSL/wolfssl/wolfcrypt/settings.h wolfSSL/wolfssl/wolfcrypt/settings.h.bak
|
||||
echo " /* wolfSSL Generated ARDUINO settings */" > ./wolfSSL/wolfssl/wolfcrypt/settings.h
|
||||
|
@ -1,153 +0,0 @@
|
||||
/* Cpu0_Main.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 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
|
||||
*/
|
||||
|
||||
/* Infineon includes */
|
||||
#include "Ifx_Types.h"
|
||||
#include "IfxCpu.h"
|
||||
#include "IfxScuWdt.h"
|
||||
#include "IfxAsclin_Asc.h"
|
||||
#include "IfxCpu_Irq.h"
|
||||
#include "IfxPort.h"
|
||||
#include "SysSe/Bsp/Bsp.h"
|
||||
|
||||
/* For mapping stdio printf */
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
/* used to wait for CPU sync event */
|
||||
IFX_ALIGN(4) IfxCpu_syncEvent g_cpuSyncEvent = 0;
|
||||
|
||||
#define SERIAL_BAUDRATE 115200 /* Baud rate in bit/s */
|
||||
#define SERIAL_PIN_RX IfxAsclin0_RXA_P14_1_IN /* RX pin of the board */
|
||||
#define SERIAL_PIN_TX IfxAsclin0_TX_P14_0_OUT /* TX pin of the board */
|
||||
#define INTPRIO_ASCLIN0_TX 19 /* Priority of the ISR */
|
||||
#define ASC_TX_BUFFER_SIZE 128 /* Definition of the buffer size */
|
||||
|
||||
/* Declaration of the ASC handle */
|
||||
static IfxAsclin_Asc g_asc;
|
||||
|
||||
/* Declaration of the FIFOs parameters:
|
||||
* The transfer buffers allocate memory for the data itself and for FIFO runtime
|
||||
* variables. 8 more bytes have to be added to ensure a proper circular buffer
|
||||
* handling independent from the address to which the buffers have been located.
|
||||
*/
|
||||
static uint8 g_ascTxBuffer[ASC_TX_BUFFER_SIZE + sizeof(Ifx_Fifo) + 8];
|
||||
|
||||
/******************************************************************************/
|
||||
/*----Function Implementations------------------------------------------------*/
|
||||
/******************************************************************************/
|
||||
|
||||
/* Re-target the C library printf function to the asc lin. */
|
||||
int fputc(int ch, FILE *f)
|
||||
{
|
||||
Ifx_SizeT count;
|
||||
/* convert to CRLF */
|
||||
if (ch == (int)'\n') {
|
||||
int chcr = (int)'\r';
|
||||
count = 1;
|
||||
IfxAsclin_Asc_write(&g_asc, &chcr, &count, TIME_INFINITE);
|
||||
}
|
||||
count = 1;
|
||||
IfxAsclin_Asc_write(&g_asc, &ch, &count, TIME_INFINITE);
|
||||
return ch;
|
||||
}
|
||||
|
||||
/* Add the Interrupt Service Routine */
|
||||
IFX_INTERRUPT(asclin0_Tx_ISR, 0, INTPRIO_ASCLIN0_TX);
|
||||
void asclin0_Tx_ISR(void)
|
||||
{
|
||||
IfxAsclin_Asc_isrTransmit(&g_asc);
|
||||
}
|
||||
|
||||
static void init_UART(void)
|
||||
{
|
||||
IfxAsclin_Asc_Config ascConfig;
|
||||
|
||||
IfxCpu_Irq_installInterruptHandler(asclin0_Tx_ISR, INTPRIO_ASCLIN0_TX);
|
||||
|
||||
/* Port pins configuration */
|
||||
const IfxAsclin_Asc_Pins pins = {
|
||||
NULL_PTR, IfxPort_InputMode_pullUp, /* CTS pin not used */
|
||||
&SERIAL_PIN_RX, IfxPort_InputMode_pullUp, /* RX pin */
|
||||
NULL_PTR, IfxPort_OutputMode_pushPull, /* RTS pin not used */
|
||||
&SERIAL_PIN_TX, IfxPort_OutputMode_pushPull, /* TX pin */
|
||||
IfxPort_PadDriver_cmosAutomotiveSpeed1
|
||||
};
|
||||
|
||||
/* Initialize an instance of IfxAsclin_Asc_Config with default values */
|
||||
IfxAsclin_Asc_initModuleConfig(&ascConfig, SERIAL_PIN_TX.module);
|
||||
|
||||
/* Set the desired baud rate */
|
||||
ascConfig.baudrate.baudrate = SERIAL_BAUDRATE;
|
||||
|
||||
/* ISR priorities and interrupt target */
|
||||
ascConfig.interrupt.txPriority = INTPRIO_ASCLIN0_TX;
|
||||
ascConfig.interrupt.typeOfService = IfxCpu_Irq_getTos(IfxCpu_getCoreIndex());
|
||||
|
||||
/* FIFO configuration */
|
||||
ascConfig.txBuffer = &g_ascTxBuffer;
|
||||
ascConfig.txBufferSize = ASC_TX_BUFFER_SIZE;
|
||||
|
||||
ascConfig.pins = &pins;
|
||||
|
||||
/* Initialize module with above parameters */
|
||||
IfxAsclin_Asc_initModule(&g_asc, &ascConfig);
|
||||
|
||||
/* Turn off buffers, so I/O occurs immediately */
|
||||
setvbuf(stdin, NULL, _IONBF, 0);
|
||||
setvbuf(stdout, NULL, _IONBF, 0);
|
||||
setvbuf(stderr, NULL, _IONBF, 0);
|
||||
}
|
||||
|
||||
int send_UART(const char* str)
|
||||
{
|
||||
Ifx_SizeT count = (Ifx_SizeT)strlen(str);
|
||||
IfxAsclin_Asc_write(&g_asc, str, &count, TIME_INFINITE);
|
||||
return (int)count;
|
||||
}
|
||||
|
||||
void core0_main(void)
|
||||
{
|
||||
IfxCpu_enableInterrupts();
|
||||
|
||||
/* !!WATCHDOG0 AND SAFETY WATCHDOG ARE DISABLED HERE!!
|
||||
* Enable the watchdogs and service them periodically if it is required
|
||||
*/
|
||||
IfxScuWdt_disableCpuWatchdog(IfxScuWdt_getCpuWatchdogPassword());
|
||||
IfxScuWdt_disableSafetyWatchdog(IfxScuWdt_getSafetyWatchdogPassword());
|
||||
|
||||
/* Wait for CPU sync event */
|
||||
IfxCpu_emitEvent(&g_cpuSyncEvent);
|
||||
IfxCpu_waitEvent(&g_cpuSyncEvent, 1);
|
||||
|
||||
/* Initialize the UART to board VCOM */
|
||||
init_UART();
|
||||
|
||||
/* bare metal loop */
|
||||
while(1)
|
||||
{
|
||||
extern void run_wolf_tests(void);
|
||||
run_wolf_tests();
|
||||
|
||||
/* wait 5 seconds */
|
||||
waitTime(IfxStm_getTicksFromMilliseconds(BSP_DEFAULT_TIMER, 5 * 1000));
|
||||
} /* while */
|
||||
}
|
@ -1,114 +0,0 @@
|
||||
# Infineon AURIX Development Studio
|
||||
|
||||
An Eclipse based IDE for developing software for the Infineon TriCore AURIX TX3XX.
|
||||
|
||||
Tested Platform:
|
||||
* Infineon AURIX™ Development Studio 1.7.2 (Build 20220617-0730)
|
||||
* Infineon TriBoard TC399 v2.0
|
||||
* wolfSSL v5.4.0 (with PR 5419)
|
||||
|
||||
## Running wolfCrypt on TriCore
|
||||
|
||||
1) Add the wolfSSL source and headers to `Libraries/wolfssl`.
|
||||
- Only the following folders are required: `src`, `wolfcrypt` and `wolfssl`.
|
||||
- See script to help with producing bundle here: https://github.com/wolfSSL/wolfssl/blob/master/scripts/makedistsmall.sh
|
||||
2) Add `WOLFSSL_USER_SETTINGS` to the Preprocessing symbols list. C/C++ Build -> Settings -> TASKING C/C++ Compiler -> Preprocessing.
|
||||
3) Add `Libraries/wolfssl` to the include path. C/C++ General -> Paths and Symbols -> Includes -> GNU C
|
||||
4) Add ignores for the following warnings. Unused static function (553) and switch missing break (536). C/C++ Build -> Settings -> TASKING C/C++ Compiler -> Diagnostics
|
||||
5) Copy `Cpu0_Main.c`, `user_settings.h` and `wolf_main.c` into the project folder.
|
||||
6) Increase the stack by modifying `Lcf_Tasking_Tricore_Tc.lsl` to adjusting the USTACK0-4 (`LCF_USTACK#_SIZE`) from 2k to 12k.
|
||||
6) Build and run/debug.
|
||||
|
||||
### Example output from wolfCrypt test and benchmark
|
||||
|
||||
Benchmark Configuration:
|
||||
* TriCore (TC1.6.2P) 32-bit super-scalar running at 300MHz:
|
||||
* Release build: `-O2`
|
||||
* SP Math SMALL: sp_c32.c for RSA/ECC/DH
|
||||
* AES GCM SMALL
|
||||
|
||||
```
|
||||
Running wolfCrypt Tests...
|
||||
------------------------------------------------------------------------------
|
||||
wolfSSL version 5.4.0
|
||||
------------------------------------------------------------------------------
|
||||
error test passed!
|
||||
MEMORY test passed!
|
||||
base64 test passed!
|
||||
asn test passed!
|
||||
RANDOM test passed!
|
||||
SHA test passed!
|
||||
SHA-256 test passed!
|
||||
Hash test passed!
|
||||
HMAC-SHA test passed!
|
||||
HMAC-SHA256 test passed!
|
||||
HMAC-KDF test passed!
|
||||
TLSv1.3 KDF test passed!
|
||||
GMAC test passed!
|
||||
Chacha test passed!
|
||||
POLY1305 test passed!
|
||||
ChaCha20-Poly1305 AEAD test passed!
|
||||
AES test passed!
|
||||
AES192 test passed!
|
||||
AES256 test passed!
|
||||
AES-GCM test passed!
|
||||
RSA test passed!
|
||||
ECC test passed!
|
||||
ECC buffer test passed!
|
||||
CMAC test passed!
|
||||
logging test passed!
|
||||
time test passed!
|
||||
mutex test passed!
|
||||
memcb test passed!
|
||||
Test complete
|
||||
Crypt Test: Return code 0
|
||||
Running wolfCrypt Benchmarks...
|
||||
wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
|
||||
RNG 725 KB took 1.023 seconds, 708.703 KB/s
|
||||
AES-128-CBC-enc 2 MB took 1.002 seconds, 2.071 MB/s
|
||||
AES-128-CBC-dec 2 MB took 1.005 seconds, 2.065 MB/s
|
||||
AES-192-CBC-enc 2 MB took 1.002 seconds, 1.779 MB/s
|
||||
AES-192-CBC-dec 2 MB took 1.013 seconds, 1.783 MB/s
|
||||
AES-256-CBC-enc 2 MB took 1.003 seconds, 1.558 MB/s
|
||||
AES-256-CBC-dec 2 MB took 1.009 seconds, 1.573 MB/s
|
||||
AES-128-GCM-enc 225 KB took 1.013 seconds, 222.112 KB/s
|
||||
AES-128-GCM-dec 225 KB took 1.014 seconds, 221.892 KB/s
|
||||
AES-192-GCM-enc 225 KB took 1.046 seconds, 215.107 KB/s
|
||||
AES-192-GCM-dec 225 KB took 1.046 seconds, 215.104 KB/s
|
||||
AES-256-GCM-enc 225 KB took 1.070 seconds, 210.279 KB/s
|
||||
AES-256-GCM-dec 225 KB took 1.069 seconds, 210.477 KB/s
|
||||
GMAC Small 251 KB took 1.000 seconds, 251.000 KB/s
|
||||
AES-128-ECB-enc 2 MB took 1.000 seconds, 2.000 MB/s
|
||||
AES-128-ECB-dec 2 MB took 1.000 seconds, 2.049 MB/s
|
||||
AES-192-ECB-enc 2 MB took 1.000 seconds, 1.727 MB/s
|
||||
AES-192-ECB-dec 2 MB took 1.000 seconds, 1.772 MB/s
|
||||
AES-256-ECB-enc 2 MB took 1.000 seconds, 1.518 MB/s
|
||||
AES-256-ECB-dec 2 MB took 1.000 seconds, 1.563 MB/s
|
||||
CHACHA 3 MB took 1.007 seconds, 3.322 MB/s
|
||||
CHA-POLY 2 MB took 1.011 seconds, 2.028 MB/s
|
||||
POLY1305 6 MB took 1.003 seconds, 6.012 MB/s
|
||||
SHA 3 MB took 1.004 seconds, 3.380 MB/s
|
||||
SHA-256 2 MB took 1.003 seconds, 1.558 MB/s
|
||||
AES-128-CMAC 2 MB took 1.010 seconds, 2.055 MB/s
|
||||
AES-256-CMAC 2 MB took 1.010 seconds, 1.547 MB/s
|
||||
HMAC-SHA 3 MB took 1.004 seconds, 3.356 MB/s
|
||||
HMAC-SHA256 2 MB took 1.010 seconds, 1.547 MB/s
|
||||
RSA 2048 public 50 ops took 1.020 sec, avg 20.400 ms, 49.019 ops/sec
|
||||
RSA 2048 private 2 ops took 2.377 sec, avg 1188.492 ms, 0.841 ops/sec
|
||||
ECC [ SECP256R1] 256 key gen 16 ops took 1.061 sec, avg 66.313 ms, 15.080 ops/sec
|
||||
ECDHE [ SECP256R1] 256 agree 16 ops took 1.059 sec, avg 66.187 ms, 15.109 ops/sec
|
||||
ECDSA [ SECP256R1] 256 sign 14 ops took 1.058 sec, avg 75.570 ms, 13.233 ops/sec
|
||||
ECDSA [ SECP256R1] 256 verify 8 ops took 1.080 sec, avg 135.002 ms, 7.407 ops/sec
|
||||
Benchmark complete
|
||||
Benchmark Test: Return code 0
|
||||
```
|
||||
|
||||
|
||||
## Running wolfCrypt on the HSM (Cortex M3)
|
||||
|
||||
Coming soon
|
||||
|
||||
|
||||
## Support
|
||||
|
||||
For questions please email facts@wolfssl.com
|
@ -1,8 +0,0 @@
|
||||
# vim:ft=automake
|
||||
# included from Top Level Makefile.am
|
||||
# All paths should be given relative to the root
|
||||
|
||||
EXTRA_DIST+= IDE/AURIX/Cpu0_Main.c
|
||||
EXTRA_DIST+= IDE/AURIX/README.md
|
||||
EXTRA_DIST+= IDE/AURIX/user_settings.h
|
||||
EXTRA_DIST+= IDE/AURIX/wolf_main.c
|
@ -1,150 +0,0 @@
|
||||
/* wolf_main.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 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
|
||||
*/
|
||||
|
||||
|
||||
/* wolfSSL includes */
|
||||
#ifndef WOLFSSL_USER_SETTINGS
|
||||
#include <wolfssl/options.h>
|
||||
#endif
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfssl/wolfcrypt/error-crypt.h>
|
||||
#include <wolfssl/wolfcrypt/random.h> /* for CUSTOM_RAND_TYPE */
|
||||
#include <wolfcrypt/test/test.h>
|
||||
#include <wolfcrypt/benchmark/benchmark.h>
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
#include <stdarg.h>
|
||||
#include <string.h>
|
||||
|
||||
/* Infineon Includes */
|
||||
#include "Ifx_Types.h"
|
||||
#include "IfxStm.h"
|
||||
|
||||
extern int send_UART(const char* str);
|
||||
static void my_logging_cb(const int logLevel, const char *const logMessage)
|
||||
{
|
||||
send_UART(logMessage);
|
||||
send_UART("\r\n");
|
||||
(void)logLevel; /* not used */
|
||||
}
|
||||
|
||||
/* TIME CODE */
|
||||
/* Optionally you can define NO_ASN_TIME to disable all cert time checks */
|
||||
static int hw_get_time_sec(void)
|
||||
{
|
||||
/* get time in seconds */
|
||||
return IfxStm_get(&MODULE_STM0) / IfxStm_getFrequency(&MODULE_STM0);
|
||||
}
|
||||
|
||||
/* This is used by wolfCrypt asn.c for cert time checking */
|
||||
unsigned long my_time(unsigned long* timer)
|
||||
{
|
||||
(void)timer;
|
||||
return hw_get_time_sec();
|
||||
}
|
||||
|
||||
#ifndef WOLFCRYPT_ONLY
|
||||
/* This is used by TLS only */
|
||||
unsigned int LowResTimer(void)
|
||||
{
|
||||
return hw_get_time_sec();
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef NO_CRYPT_BENCHMARK
|
||||
/* This is used by wolfCrypt benchmark tool only */
|
||||
double current_time(int reset)
|
||||
{
|
||||
double timeNow;
|
||||
uint64_t timeMs, ticks = IfxStm_get(&MODULE_STM0);
|
||||
(void)reset;
|
||||
timeMs = ticks / (IfxStm_getFrequency(&MODULE_STM0) / 1000);
|
||||
timeNow = (timeMs / 1000); // sec
|
||||
timeNow += (double)(timeMs % 1000) / 1000; // ms
|
||||
return timeNow;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* RNG CODE */
|
||||
/* TODO: Implement real RNG */
|
||||
static unsigned int gCounter;
|
||||
unsigned int hw_rand(void)
|
||||
{
|
||||
//#warning Must implement your own random source
|
||||
|
||||
return ++gCounter;
|
||||
}
|
||||
|
||||
unsigned int my_rng_seed_gen(void)
|
||||
{
|
||||
return hw_rand();
|
||||
}
|
||||
|
||||
typedef struct func_args {
|
||||
int argc;
|
||||
char** argv;
|
||||
int return_code;
|
||||
} func_args;
|
||||
|
||||
void run_wolf_tests(void)
|
||||
{
|
||||
func_args args;
|
||||
|
||||
#ifdef DEBUG_WOLFSSL
|
||||
wolfSSL_Debugging_ON();
|
||||
#endif
|
||||
wolfSSL_SetLoggingCb(my_logging_cb);
|
||||
|
||||
/* initialize wolfSSL */
|
||||
#ifdef WOLFCRYPT_ONLY
|
||||
wolfCrypt_Init();
|
||||
#else
|
||||
wolfSSL_Init();
|
||||
#endif
|
||||
|
||||
memset(&args, 0, sizeof(args));
|
||||
args.return_code = NOT_COMPILED_IN; /* default */
|
||||
|
||||
printf("Running wolfCrypt Tests...\n");
|
||||
#ifndef NO_CRYPT_TEST
|
||||
args.return_code = 0;
|
||||
wolfcrypt_test(&args);
|
||||
printf("Crypt Test: Return code %d\n", args.return_code);
|
||||
#else
|
||||
args.return_code = NOT_COMPILED_IN;
|
||||
#endif
|
||||
|
||||
printf("Running wolfCrypt Benchmarks...\n");
|
||||
#ifndef NO_CRYPT_BENCHMARK
|
||||
args.return_code = 0;
|
||||
benchmark_test(&args);
|
||||
#else
|
||||
args.return_code = NOT_COMPILED_IN;
|
||||
#endif
|
||||
printf("Benchmark Test: Return code %d\n", args.return_code);
|
||||
|
||||
#ifdef WOLFCRYPT_ONLY
|
||||
wolfCrypt_Cleanup();
|
||||
#else
|
||||
wolfSSL_Cleanup();
|
||||
#endif
|
||||
}
|
@ -1,119 +0,0 @@
|
||||
cc_library_shared {
|
||||
|
||||
name: "libwolfssl",
|
||||
|
||||
arch: {
|
||||
arm: {
|
||||
instruction_set: "arm",
|
||||
},
|
||||
arm64: {
|
||||
cflags: ["-DARM64"],
|
||||
},
|
||||
},
|
||||
compile_multilib: "both",
|
||||
export_include_dirs: ["."],
|
||||
shared_libs: ["liblog"],
|
||||
cflags: [
|
||||
"-DWOLFSSL_USER_SETTINGS",
|
||||
"-Os",
|
||||
"-fomit-frame-pointer",
|
||||
|
||||
/* If using WOLFSSL_ARMASM then add these cflags for ARM crypto extensions */
|
||||
/* "-mcpu=cortex-a73+crypto", */
|
||||
/* "-march=armv8-a", */
|
||||
/* "-mstrict-align", */
|
||||
],
|
||||
include_dirs: [
|
||||
"external/wolfssl/wolfssl",
|
||||
"external/wolfssl",
|
||||
],
|
||||
|
||||
srcs: [
|
||||
"./src/crl.c",
|
||||
"./src/internal.c",
|
||||
"./src/keys.c",
|
||||
"./src/ocsp.c",
|
||||
"./src/sniffer.c",
|
||||
"./src/ssl.c",
|
||||
"./src/tls.c",
|
||||
"./src/tls13.c",
|
||||
"./src/wolfio.c",
|
||||
] + [
|
||||
"./wolfcrypt/src/aes.c",
|
||||
"./wolfcrypt/src/arc4.c",
|
||||
"./wolfcrypt/src/asm.c",
|
||||
"./wolfcrypt/src/asn.c",
|
||||
"./wolfcrypt/src/blake2b.c",
|
||||
"./wolfcrypt/src/blake2s.c",
|
||||
"./wolfcrypt/src/camellia.c",
|
||||
"./wolfcrypt/src/chacha.c",
|
||||
"./wolfcrypt/src/chacha20_poly1305.c",
|
||||
"./wolfcrypt/src/cmac.c",
|
||||
"./wolfcrypt/src/coding.c",
|
||||
"./wolfcrypt/src/compress.c",
|
||||
"./wolfcrypt/src/cpuid.c",
|
||||
"./wolfcrypt/src/cryptocb.c",
|
||||
"./wolfcrypt/src/curve25519.c",
|
||||
"./wolfcrypt/src/curve448.c",
|
||||
"./wolfcrypt/src/des3.c",
|
||||
"./wolfcrypt/src/dh.c",
|
||||
"./wolfcrypt/src/dsa.c",
|
||||
"./wolfcrypt/src/ecc.c",
|
||||
"./wolfcrypt/src/ecc_fp.c",
|
||||
"./wolfcrypt/src/ed25519.c",
|
||||
"./wolfcrypt/src/ed448.c",
|
||||
"./wolfcrypt/src/error.c",
|
||||
"./wolfcrypt/src/fe_448.c",
|
||||
"./wolfcrypt/src/fe_low_mem.c",
|
||||
"./wolfcrypt/src/fe_operations.c",
|
||||
"./wolfcrypt/src/fips.c",
|
||||
"./wolfcrypt/src/fips_test.c",
|
||||
"./wolfcrypt/src/ge_448.c",
|
||||
"./wolfcrypt/src/ge_low_mem.c",
|
||||
"./wolfcrypt/src/ge_operations.c",
|
||||
"./wolfcrypt/src/hash.c",
|
||||
"./wolfcrypt/src/kdf.c",
|
||||
"./wolfcrypt/src/hmac.c",
|
||||
"./wolfcrypt/src/integer.c",
|
||||
"./wolfcrypt/src/kdf.c",
|
||||
"./wolfcrypt/src/logging.c",
|
||||
"./wolfcrypt/src/md2.c",
|
||||
"./wolfcrypt/src/md4.c",
|
||||
"./wolfcrypt/src/md5.c",
|
||||
"./wolfcrypt/src/memory.c",
|
||||
"./wolfcrypt/src/pkcs12.c",
|
||||
"./wolfcrypt/src/pkcs7.c",
|
||||
"./wolfcrypt/src/poly1305.c",
|
||||
"./wolfcrypt/src/pwdbased.c",
|
||||
"./wolfcrypt/src/random.c",
|
||||
"./wolfcrypt/src/rc2.c",
|
||||
"./wolfcrypt/src/ripemd.c",
|
||||
"./wolfcrypt/src/rsa.c",
|
||||
"./wolfcrypt/src/selftest.c",
|
||||
"./wolfcrypt/src/sha256.c",
|
||||
"./wolfcrypt/src/sha3.c",
|
||||
"./wolfcrypt/src/sha512.c",
|
||||
"./wolfcrypt/src/sha.c",
|
||||
"./wolfcrypt/src/signature.c",
|
||||
"./wolfcrypt/src/sp_arm32.c",
|
||||
"./wolfcrypt/src/sp_arm64.c",
|
||||
"./wolfcrypt/src/sp_armthumb.c",
|
||||
"./wolfcrypt/src/sp_c32.c",
|
||||
"./wolfcrypt/src/sp_c64.c",
|
||||
"./wolfcrypt/src/sp_cortexm.c",
|
||||
"./wolfcrypt/src/sp_dsp32.c",
|
||||
"./wolfcrypt/src/sp_int.c",
|
||||
"./wolfcrypt/src/sp_x86_64.c",
|
||||
"./wolfcrypt/src/srp.c",
|
||||
"./wolfcrypt/src/tfm.c",
|
||||
"./wolfcrypt/src/wc_dsp.c",
|
||||
"./wolfcrypt/src/wc_encrypt.c",
|
||||
"./wolfcrypt/src/wc_pkcs11.c",
|
||||
"./wolfcrypt/src/wc_port.c",
|
||||
"./wolfcrypt/src/wolfcrypt_first.c",
|
||||
"./wolfcrypt/src/wolfcrypt_last.c",
|
||||
"./wolfcrypt/src/wolfevent.c",
|
||||
"./wolfcrypt/src/wolfmath.c",
|
||||
],
|
||||
|
||||
}
|
@ -1,37 +0,0 @@
|
||||
# Android wolfSSL Support
|
||||
|
||||
Tested on Android v8.1 with WPA Supplicant and KeyStore to replace BoringSSL.
|
||||
|
||||
## Files
|
||||
|
||||
* `Android.bp`: Template build system file for wolfSSL.
|
||||
* `user_settings.h`: Template build settings for wolfSSL
|
||||
|
||||
## Installation
|
||||
|
||||
1) Place the wolfSSL library into `./external/wolfssl`
|
||||
2) Copy `Android.bp` into `./external/wolfssl`
|
||||
3) Copy `user_settings.h` into `./external/wolfssl`
|
||||
4) Add `PRODUCT_PACKAGES += libwolfssl` to your device .mk.
|
||||
|
||||
## Typical Android build instruction
|
||||
|
||||
```sh
|
||||
source build/envsetup.sh
|
||||
lunch [num]
|
||||
mm -j8
|
||||
```
|
||||
|
||||
## Using wolfSSL in your Application
|
||||
|
||||
In your `Android.mk` build file for your application add the following:
|
||||
|
||||
```makefile
|
||||
# Crypto Provider - wolfSSL
|
||||
LOCAL_CFLAGS += -DWOLFSSL_USER_SETTINGS -Iexternal/wolfssl -Iexternal/wolfssl/wolfssl
|
||||
LOCAL_SHARED_LIBRARIES += libwolfssl
|
||||
```
|
||||
|
||||
## Support
|
||||
|
||||
For questions please email support@wolfssl.com
|
@ -1,8 +0,0 @@
|
||||
# vim:ft=automake
|
||||
# included from Top Level Makefile.am
|
||||
# All paths should be given relative to the root
|
||||
|
||||
EXTRA_DIST += \
|
||||
IDE/Android/Android.bp \
|
||||
IDE/Android/README.md \
|
||||
IDE/Android/user_settings.h
|
@ -1,138 +0,0 @@
|
||||
/* Custom build settings for Android */
|
||||
|
||||
#ifndef _WOLF_USER_SETTINGS_H_
|
||||
#define _WOLF_USER_SETTINGS_H_
|
||||
|
||||
#if 0
|
||||
#define HAVE_FIPS_VERSION 2
|
||||
#define HAVE_FIPS
|
||||
#endif
|
||||
|
||||
#ifdef __aarch64__
|
||||
#if !defined(__clang__) || \
|
||||
(defined(__clang__) && defined(__clang_major__) && __clang_major__ >= 5)
|
||||
/* older clang v4 has issue with inline assembly constraints */
|
||||
#define WOLFSSL_ARMASM
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if 1 /* SP Assembly Speedups (wPAA) */
|
||||
#define WOLFSSL_SP
|
||||
#define WOLFSSL_SP_SMALL /* use smaller version of code */
|
||||
#define WOLFSSL_HAVE_SP_RSA
|
||||
#define WOLFSSL_HAVE_SP_DH
|
||||
#define WOLFSSL_HAVE_SP_ECC
|
||||
#ifdef WOLFSSL_ARMASM
|
||||
#define WOLFSSL_SP_ARM64_ASM
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* WPA Supplicant Support */
|
||||
#define WOLFSSL_WPAS_SMALL
|
||||
#define OPENSSL_ALL
|
||||
#define HAVE_THREAD_LS
|
||||
|
||||
#define USE_FAST_MATH
|
||||
#define FP_MAX_BITS (4096*2) /* Maximum math bits (Max RSA key bits * 2) */
|
||||
#define TFM_TIMING_RESISTANT
|
||||
#define ECC_TIMING_RESISTANT
|
||||
#define WC_RSA_BLINDING
|
||||
|
||||
#define HAVE_HASHDRBG
|
||||
|
||||
#if 1
|
||||
#define WOLFSSL_TLS13
|
||||
#endif
|
||||
#define WC_RSA_PSS
|
||||
#define HAVE_SESSION_TICKET
|
||||
#define HAVE_TLS_EXTENSIONS
|
||||
#define HAVE_SUPPORTED_CURVES
|
||||
#define HAVE_EXTENDED_MASTER
|
||||
#define HAVE_ENCRYPT_THEN_MAC
|
||||
#define WOLFSSL_ENCRYPTED_KEYS
|
||||
#define HAVE_KEYING_MATERIAL
|
||||
#define NO_OLD_TLS
|
||||
#define NO_CHECK_PRIVATE_KEY
|
||||
|
||||
/* enable PK callback support for signing operations to key store */
|
||||
#define HAVE_PK_CALLBACKS
|
||||
/* crypto callback support is not in FIPS 3389 */
|
||||
#ifndef HAVE_FIPS
|
||||
#define WOLF_CRYPTO_CB
|
||||
#endif
|
||||
|
||||
#define KEEP_OUR_CERT
|
||||
#define KEEP_PEER_CERT
|
||||
#define WOLFSSL_ALWAYS_VERIFY_CB
|
||||
#define WOLFSSL_ALWAYS_KEEP_SNI
|
||||
#define HAVE_EX_DATA
|
||||
#define HAVE_EXT_CACHE
|
||||
#define WOLFSSL_EITHER_SIDE
|
||||
#define WOLFSSL_PUBLIC_MP
|
||||
#define WOLFSSL_DER_LOAD
|
||||
|
||||
#define WOLFSSL_CERT_GEN
|
||||
#define WOLFSSL_CERT_EXT
|
||||
#define WOLFSSL_CERT_REQ
|
||||
|
||||
#define WOLFSSL_KEY_GEN
|
||||
#define WC_RSA_NO_PADDING
|
||||
|
||||
#define WOLFSSL_DH_CONST
|
||||
#define HAVE_FFDHE_2048
|
||||
#define HAVE_FFDHE_3072
|
||||
#define HAVE_FFDHE_4096
|
||||
#define HAVE_DH_DEFAULT_PARAMS
|
||||
#ifdef HAVE_FIPS
|
||||
#define WOLFSSL_VALIDATE_FFC_IMPORT
|
||||
#define HAVE_FFDHE_Q
|
||||
#endif
|
||||
|
||||
#define WOLFSSL_SHA224
|
||||
#define WOLFSSL_SHA512
|
||||
#define WOLFSSL_SHA384
|
||||
#define WOLFSSL_NOSHA512_256
|
||||
#define WOLFSSL_NOSHA512_224
|
||||
#define WOLFSSL_SHA3
|
||||
|
||||
#define HAVE_HKDF
|
||||
#define HAVE_PKCS8
|
||||
|
||||
#define HAVE_ECC
|
||||
#define TFM_ECC256
|
||||
#define ECC_SHAMIR
|
||||
#define HAVE_COMP_KEY
|
||||
#ifdef HAVE_FIPS
|
||||
#define HAVE_ECC_CDH
|
||||
#define WOLFSSL_VALIDATE_ECC_IMPORT
|
||||
#endif
|
||||
#ifdef __i386
|
||||
#define TFM_NO_ASM
|
||||
#endif
|
||||
|
||||
#define HAVE_AESGCM
|
||||
#define HAVE_AESCCM
|
||||
#define WOLFSSL_AES_DIRECT
|
||||
#define WOLFSSL_AES_COUNTER
|
||||
#define HAVE_AES_ECB
|
||||
#define WOLFSSL_CMAC
|
||||
|
||||
#define WOLFSSL_BASE64_ENCODE
|
||||
#define HAVE_CRL
|
||||
|
||||
#define NO_DSA
|
||||
#define NO_RC4
|
||||
#define NO_PSK
|
||||
#define WOLFSSL_NO_SHAKE256
|
||||
#define NO_MD4
|
||||
#define NO_OLD_MD5_NAME
|
||||
#define NO_OLD_SHA_NAMES
|
||||
#define NO_OLD_SHA256_NAMES
|
||||
#define NO_OLD_WC_NAMES
|
||||
|
||||
#if 0
|
||||
#define DEBUG_WOLFSSL
|
||||
#define WOLFSSL_ANDROID_DEBUG
|
||||
#endif
|
||||
|
||||
#endif /* _WOLF_USER_SETTINGS_H_ */
|
@ -22,15 +22,13 @@ The `IDE/CRYPTOCELL/main.c` example application provides a function to run the s
|
||||
- SHA-256
|
||||
- AES CBC
|
||||
- CryptoCell 310 RNG
|
||||
- RSA sign/verify and RSA key gen (2048 bit in PKCSv1.5 padding mode)
|
||||
- RSA sign/verify and RSA key gen
|
||||
- RSA encrypt/decrypt
|
||||
- ECC sign/verify/shared secret
|
||||
- ECC key import/export and key gen pairs
|
||||
- Hardware RNG
|
||||
- RTC for benchmark timing source
|
||||
|
||||
Note: All Cryptocell features are not supported. The wolfcrypt RSA API allows import and export of Private/Public keys in DER format. However, this is not possible with key pairs generated with Cryptocell because the importing/exporting Cryptocell keys has not been implemented yet.
|
||||
|
||||
## Setup
|
||||
### Setting up Nordic SDK with wolfSSL
|
||||
1. Download the wolfSSL source code or a zip file from GitHub and place it under your SDK `InstallFolder/external/` directory. You can also copy or simlink to the source.
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* main.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
@ -18,8 +18,6 @@
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
|
||||
*/
|
||||
|
||||
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfcrypt/test/test.h>
|
||||
#include <wolfcrypt/benchmark/benchmark.h>
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* user_settings.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
@ -41,7 +41,6 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#if defined(WOLFSSL_CRYPTOCELL)
|
||||
/* see SASI_AES_KEY_MAX_SIZE_IN_BYTES in the nRF5 SDK */
|
||||
#define AES_MAX_KEY_SIZE 128
|
||||
#endif /* WOLFSSL_CRYPTOCELL*/
|
||||
|
||||
@ -138,9 +137,6 @@ extern "C" {
|
||||
#if 1
|
||||
#define HAVE_ECC
|
||||
|
||||
#include <strings.h>
|
||||
/* strings.h required for strncasecmp */
|
||||
|
||||
/* Manually define enabled curves */
|
||||
#undef ECC_USER_CURVES
|
||||
#define ECC_USER_CURVES
|
||||
@ -558,6 +554,12 @@ extern "C" {
|
||||
#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
|
||||
|
||||
|
@ -1,64 +1,71 @@
|
||||
|
||||
|
||||
# Deos Port
|
||||
|
||||
## Overview
|
||||
|
||||
You can enable the wolfSSL support for Deos RTOS available
|
||||
[here](https://www.ddci.com/products_deos_do_178c_arinc_653/) using
|
||||
the `#define WOLFSSL_DEOS`. Deos is a time & space partitioned,
|
||||
multi-core enabled, DO-178C DAL A certifiable RTOS.
|
||||
|
||||
You can enable the wolfSSL support for Deos RTOS available [here](https://www.ddci.com/products_deos_do_178c_arinc_653/) using the `#define WOLFSSL_DEOS`.
|
||||
Deos is a time & space partitioned, multi-core enabled, DO-178C DAL A certifiable RTOS.
|
||||
## Usage
|
||||
|
||||
You can start with your OpenArbor IDE-based example project for Deos
|
||||
with the network stack (lwip) to integrate wolfSSL source code.
|
||||
You can start with your OpenArbor IDE-based example project for Deos with the network stack (lwip) to integrate wolfSSL source code.
|
||||
|
||||
wolfSSL supports a compile-time user configurable options in the
|
||||
`IDE/ECLIPSE/DEOS/user_settings.h` file.
|
||||
wolfSSL supports a compile-time user configurable options in the `IDE/ECLIPSE/DEOS/user_settings.h` file.
|
||||
|
||||
### Importing the project
|
||||
The `tls_wolfssl.c` example application provides a simple function to run the selected examples at compile time through the following four #defines in user_settings.h. You can undefine any of these macro options to run a test.
|
||||
```
|
||||
1. #undef NO_CRYPT_TEST
|
||||
2. #undef NO_CRYPT_BENCHMARK
|
||||
3. #undef NO_WOLFSSL_CLIENT
|
||||
4. #undef NO_WOLFSSL_SERVER
|
||||
```
|
||||
Do one of the following steps for building and running wolfSSL with the Deos kernel examples, which are included in the DDS release:
|
||||
If you want to create a project from scratch, skip the Importing the project section and follow the steps in the other sections.
|
||||
|
||||
If you want to use an pre-configured example project, go to the Importing the project section, skip the other sections and follow the Building and Running section.
|
||||
|
||||
#### Importing the project
|
||||
In this section you will import a pre-configured example project.
|
||||
|
||||
Note: To work wolfssl directory must not be under the workspace directory.
|
||||
|
||||
1. Launch the OpenArbor IDE as an administrator
|
||||
2. In the Workspace Launcher dialog, in the Workspace field, enter
|
||||
your workspace
|
||||
2. In the Workspace Launcher dialog, in the Workspace field, enter your
|
||||
workspace
|
||||
3. Right-click in the Project Explorer view and select Import
|
||||
4. In the Import dialog, select General > Existing Projects into
|
||||
Workspace, then click Next.
|
||||
5. In the Import Projects dialog, select `Select root directory` and
|
||||
browse to `IDE/ECLIPSE/DEOS/deos_wolfssl` and select the wolfssl
|
||||
project
|
||||
4. In the Import dialog, select General > Existing Projects into Workspace, then click Next.
|
||||
5. In the Import Projects dialog, select Select archive file, then browse to `IDE/ECLIPSE/DEOS/` and double-click `deosWolfssl.zip` file
|
||||
6. In the Import Projects dialog, click Finish
|
||||
|
||||
#### Dependencies
|
||||
|
||||
* ansi
|
||||
* gnu-language
|
||||
* deos-time
|
||||
|
||||
### Setting up a Deos project with wolfSSL
|
||||
|
||||
The `tls_wolfssl.c` example application provides a simple function to
|
||||
run the selected examples at compile time through the following four
|
||||
`#defines` in `user_settings.h`. You can undefine any of these macro
|
||||
options to run a test.
|
||||
|
||||
#### Setting up a Deos project with wolfSSL
|
||||
1. Download the wolfSSL source code or a zip file from GitHub. You can remove all of the files except for these folders and its contents. The top folder for this example is wolfsslPort.
|
||||
```
|
||||
#undef NO_CRYPT_TEST
|
||||
#undef NO_CRYPT_BENCHMARK
|
||||
#undef NO_WOLFSSL_CLIENT
|
||||
#undef NO_WOLFSSL_SERVER
|
||||
wolfsslPort
|
||||
|-- IDE
|
||||
| -- ECLIPSE
|
||||
| -- DEOS
|
||||
|-- src
|
||||
|-- wolfcrypt
|
||||
| -- benchmark
|
||||
| -- src
|
||||
| -- test
|
||||
|-- wolfssl
|
||||
|-- openssl
|
||||
|-- wolfcrypt
|
||||
|-- port
|
||||
```
|
||||
2. Remove these two platform specific assembly source files:
|
||||
- wolfsslPort/wolfcrypt/src/aes_asm.asm
|
||||
- wolfsslPort/wolfcrypt/src/aes_asm.S
|
||||
|
||||
1. Launch the OpenArbor IDE
|
||||
3. Launch the OpenArbor IDE as an administrator
|
||||
4. Create a DDC-I Deos example project. In the main menu, go to File >DDC-I Deos example project > socket > udp-vs-tcp
|
||||
5. Import the `wolfSSLPort` source code into your project.
|
||||
- Right-click the ` udp-vs-tcp` project and choose File -> Import.
|
||||
- Expand the General folder and select File System, then click Next. You should now see the Import File system dialog.
|
||||
- Browse to the location containing the wolfSSL code and choose OK. Select the `wolfsslPort` folder and check the `Create top-level folder` button, then select Finish. You should see the folder hierarchy the same as wolfSSL folder structures.
|
||||
6. Review the configuration in $(PROJECT_DIR)/wolfsslPort/IDE/ECLIPSE/DEOS/user_setting.h
|
||||
|
||||
2. Create a DDC-I Deos example project. In the main menu, go to File >
|
||||
DDC-I Deos example project > socket > udp-vs-tcp
|
||||
|
||||
3. Customize your config/udp-vs-tcp.pd.xml with the following changes:
|
||||
7. Review the custom malloc/realloc/free configuration $(PROJECT_DIR)/wolfsslPort/IDE/ECLIPSE/DEOS/deos_malloc.c . Memory allocated with malloc() is never freed.
|
||||
|
||||
#### Configuring the Deos Project
|
||||
1. Customize your config/udp-vs-tcp.pd.xml with the following changes:
|
||||
```
|
||||
<processTemplate
|
||||
mutexQuota = "5"
|
||||
@ -83,54 +90,35 @@ options to run a test.
|
||||
|
||||
</processTemplate>
|
||||
```
|
||||
Depending on your configuration, wolfSSL uses upto four mutexes. You also need to configure enough memory for the stack of each threads and the process logical memory pool.
|
||||
|
||||
Depending on your configuration, wolfSSL uses upto four mutexes. You
|
||||
also need to configure enough memory for the stack of each threads and
|
||||
the process logical memory pool.
|
||||
|
||||
4. Right click on the `udp-vs-tcp` project, select properties and add
|
||||
the following macros in the DDC-I Options > C Compile >
|
||||
Preprocessor
|
||||
|
||||
* WOLFSSL_USER_SETTINGS
|
||||
|
||||
5. Add the following directory paths in the DDC-I Options > C Compile >
|
||||
Directories and in the DDC-I Options > C++ Compile > Directories
|
||||
|
||||
* $(PROJECT_DIR.wolfssl)/../../../..
|
||||
* $(PROJECT_DIR.wolfssl)/..
|
||||
* $(PROJECT_DIR.printx)/code
|
||||
|
||||
6. Add the following library dependencies in the
|
||||
DDC-I Options > Deos > Dependencies
|
||||
|
||||
* math
|
||||
* ansi
|
||||
* deos-time
|
||||
|
||||
For benchmark and test code:
|
||||
|
||||
* printx - You must add printx into your workspace, File >DDC-I
|
||||
Deos example project > training > printx
|
||||
|
||||
7. Edit $(PROJECT_DIR)/wolfsslPort/IDE/ECLIPSE/DEOS/user_setting.h to
|
||||
customize your configuration. For example, you can undef or define
|
||||
these tests.
|
||||
|
||||
* `#undef NO_CRYPT_TEST`
|
||||
* `#undef NO_CRYPT_BENCHMARK`
|
||||
* `#undef NO_WOLFSSL_CLIENT`
|
||||
* `#undef NO_WOLFSSL_SERVER`
|
||||
|
||||
8. Edit your application source file where main() thread is defined
|
||||
and add the following:
|
||||
|
||||
* #include "printx.h"
|
||||
* #include "tls_wolfssl.h"
|
||||
* and a call to `wolfsslRunTests()`
|
||||
|
||||
2. Right click on the `udp-vs-tcp` project, select properties and add the following macros in the DDC-I Options > C Compile > Preprocessor
|
||||
- DEOS_ALLOW_OBSOLETE_DEFINITIONS
|
||||
- WOLFSSL_USER_SETTINGS
|
||||
3. Add the following directory paths in the DDC-I Options > C Compile > Directories and in the DDC-I Options > C++ Compile > Directories
|
||||
- $(PROJECT_DIR)/wolfsslPort
|
||||
- $(PROJECT_DIR)/wolfsslPort/wolfssl
|
||||
- $(PROJECT_DIR)/wolfsslPort/IDE/ECLIPSE/DEOS
|
||||
- $(PROJECT_DIR.printx)/code
|
||||
4. Change the optimization level in the DDC-I Options > C Compile > Code Generation > Optimization level:g
|
||||
- g
|
||||
5. Add the following library dependencies in the DDC-I Options > Deos > Dependencies
|
||||
- math
|
||||
- dart
|
||||
- ansi
|
||||
- printx
|
||||
- You must add printx into your workspace, File >DDC-I Deos example project > training > printx
|
||||
6. Edit $(PROJECT_DIR)/wolfsslPort/IDE/ECLIPSE/DEOS/user_setting.h to customize your configuration. For example, you can undef or define these tests.
|
||||
- #undef NO_CRYPT_TEST
|
||||
- #undef NO_CRYPT_BENCHMARK
|
||||
- #undef NO_WOLFSSL_CLIENT
|
||||
- #undef NO_WOLFSSL_SERVER
|
||||
7. Edit your application source file where main() thread is defined and add the following:
|
||||
- #include "printx.h"
|
||||
- #include "tls_wolfssl.h"
|
||||
- and a call to `wolfsslRunTests()`
|
||||
Here's an example:
|
||||
|
||||
```
|
||||
#include <deos.h>
|
||||
#include <printx.h>
|
||||
@ -149,10 +137,7 @@ int main(void)
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
9. Review `$(PROJECT_DIR)/udp-vs-tcp/mailbox-transport.config`
|
||||
configuration.
|
||||
|
||||
8. Review $(PROJECT_DIR)/udp-vs-tcp/mailbox-transport.config configuration.
|
||||
```
|
||||
transportConfigurationId
|
||||
2 # Client thread quota - for client and server TCP
|
||||
@ -181,62 +166,45 @@ userServiceThread # Server thread template name
|
||||
/
|
||||
```
|
||||
|
||||
#### Building and Running
|
||||
|
||||
1. Build your project, then load and run your image on a target
|
||||
platform. Review the test results on the console output.
|
||||
#### Building and Running
|
||||
1. Build your project, then load and run your image on a target platform. Review the test results on the console output.
|
||||
|
||||
|
||||
### `wolfcrypt_test()`
|
||||
|
||||
`wolfcrypt_test()` prints a message on similar to the following:
|
||||
|
||||
wolfcrypt_test() prints a message on the target console similar to the following output:
|
||||
```
|
||||
error test passed!
|
||||
base64 test passed!
|
||||
asn test passed!
|
||||
...
|
||||
```
|
||||
|
||||
This example doesn't show the whole output.
|
||||
|
||||
### `benchmark_test()`
|
||||
|
||||
`benchmark_test()` prints a message on the similar to the following:
|
||||
benchmark_test() prints a message on the target console similar to the following output.
|
||||
|
||||
```
|
||||
------------------------------------------------------------------------------
|
||||
wolfSSL version 4.6.0
|
||||
wolfSSL version 3.15.5
|
||||
------------------------------------------------------------------------------
|
||||
wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
|
||||
RNG 2 MB took 1.000 seconds, 2.124 MB/s
|
||||
AES-128-CBC-enc 5 MB took 1.000 seconds, 5.127 MB/s
|
||||
AES-128-CBC-dec 5 MB took 1.000 seconds, 4.907 MB/s
|
||||
AES-192-CBC-enc 5 MB took 1.000 seconds, 4.736 MB/s
|
||||
AES-192-CBC-dec 5 MB took 1.000 seconds, 4.761 MB/s
|
||||
RNG 225 KB tooks 1.026 seconds, 219.313 KB/s
|
||||
AES-128-CBC-enc 250 KB toks 1.105 seconds 226.210 KB/s
|
||||
AES-128-CBC-dec 225 KB tooks 1.005 seconds, 223.922 KB/s
|
||||
...
|
||||
```
|
||||
|
||||
This example doesn't show the whole output.
|
||||
|
||||
### `wolfssl_client_test()`
|
||||
|
||||
You can modify the `TCP_SERVER_IP_ADDR` and `TCP_SERVER_PORT` macros
|
||||
in the `tls_wolfssl.c` file to configure the host address and
|
||||
port. You will also need to define the server certificate. The example
|
||||
client uses the GET request to get a web resource from the server at
|
||||
https://google.com.
|
||||
You can modify the `TCP_SERVER_IP_ADDR` and `TCP_SERVER_PORT` macros in the `tls_wolfssl.c` file to configure the host address and port. You will also need to define the server certificate. The example client uses the GET request to get a web resource from the server at https://google.com.
|
||||
|
||||
### `wolfssl_server_test()`
|
||||
|
||||
You can modify the `TLS_SERVER_PORT` in the `tls_wolfssl.c` file to
|
||||
configure the port number to listen on a local-host. Once you start
|
||||
the TLS server and `Listening for client connection` displays on the
|
||||
serial console, the server is ready to accept client connections.
|
||||
|
||||
You can connect to the server using the wolfssl TLS client example
|
||||
from your Linux or Windows host as follows:
|
||||
You can modify the `TLS_SERVER_PORT` in the `tls_wolfssl.c` file to configure the port number to listen on a local-host.
|
||||
Once you start the TLS server and `Listening for client connection` displays on the serial console, the server is ready to accept client connections.
|
||||
|
||||
You can connect to the server using the wolfssl TLS client example from your Linux or Windows host as follows:
|
||||
```
|
||||
$ ./examples/client/client.exe -h TLS_SERVER_IP_ADDRESS
|
||||
|
||||
@ -250,10 +218,8 @@ I hear ya fa shizzle!
|
||||
|
||||
## References
|
||||
|
||||
The following software and tool chains were used for testing:
|
||||
|
||||
- OpenArbor 7.0.0
|
||||
The test results were collected from the qemu-x86 reference platform target with the following software and tool chains:
|
||||
- OpenArbor, eclipse based IDE, toolVersion = "3.31.0"
|
||||
- wolfssl [latest version](https://github.com/wolfSSL/wolfssl)
|
||||
|
||||
For more information or questions, please email
|
||||
[support@wolfssl.com](mailto:support@wolfssl.com)
|
||||
For more information or questions, please email [support@wolfssl.com](mailto:support@wolfssl.com)
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* deos_malloc.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
@ -19,11 +19,27 @@
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
|
||||
*/
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfssl/wolfcrypt/types.h>
|
||||
#include <deos.h>
|
||||
#include <wolfssl/ssl.h>
|
||||
|
||||
#define ROUND_UP(x, align) (((int) (x) + (align - 1)) & ~(align - 1))
|
||||
#define SIZEOF_HEADER sizeof(size_t) /* tracks size of allocated block */
|
||||
|
||||
#define HEAP_SIZE_MAX (1*1024*1024)
|
||||
|
||||
static size_t allocatedMemory = 0;
|
||||
|
||||
size_t getMemAllocatedSize_deos(size_t* size){
|
||||
|
||||
if (size)
|
||||
*size = allocatedMemory;
|
||||
|
||||
return allocatedMemory;
|
||||
}
|
||||
|
||||
/* Simply returns without freeing any memory. */
|
||||
|
||||
void free_deos(void *ptr) {
|
||||
free(ptr);
|
||||
//printf("fake free_deos()\n");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -35,6 +51,10 @@ void *realloc_deos(void *ptr, size_t size) {
|
||||
newptr = malloc_deos(size);
|
||||
|
||||
if (ptr != NULL && newptr != NULL) {
|
||||
|
||||
if ( *((char *)ptr - SIZEOF_HEADER) < *((char *)newptr - SIZEOF_HEADER))
|
||||
size = *((char *)ptr - SIZEOF_HEADER);
|
||||
|
||||
XMEMCPY((char *) newptr, (const char *) ptr, size);
|
||||
free_deos(ptr);
|
||||
}
|
||||
@ -43,5 +63,46 @@ void *realloc_deos(void *ptr, size_t size) {
|
||||
}
|
||||
|
||||
void *malloc_deos(size_t size) {
|
||||
return malloc(size);
|
||||
PDEOS_SYSTEM_INFO systemInfoPtr;
|
||||
static VirtualAddressTYP heapAddr = NULL;
|
||||
static VirtualAddressTYP freeAddr = NULL;
|
||||
VirtualAddressTYP retAddr = NULL;
|
||||
DWORD allocationSize = 0;
|
||||
static int initialized = 0;
|
||||
|
||||
if (size <= 0)
|
||||
return NULL;
|
||||
|
||||
if (!initialized) {
|
||||
systemInfoPtr = (PDEOS_SYSTEM_INFO)getSystemInfoDEOS();
|
||||
freeAddr = (VirtualAddressTYP)getNextLibraryStartAddress();
|
||||
allocationSize = (((HEAP_SIZE_MAX - 1) / systemInfoPtr->dwPageSize) + 1) *
|
||||
systemInfoPtr->dwPageSize;
|
||||
|
||||
if (virtualAllocDEOS(freeAddr, allocationSize) != allocSuccess){
|
||||
printf("ERROR: virtualAllocDEOS failed\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
setNextLibraryStartAddress(freeAddr + allocationSize);
|
||||
heapAddr = freeAddr;
|
||||
|
||||
initialized = 1;
|
||||
}
|
||||
|
||||
size = ROUND_UP(size, sizeof(size_t));
|
||||
|
||||
if ((size + SIZEOF_HEADER) > (HEAP_SIZE_MAX - (freeAddr - heapAddr))){
|
||||
printf("ERROR: malloc_deos cannot allocate from heap memory anymore\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
*freeAddr = size;
|
||||
freeAddr += SIZEOF_HEADER;
|
||||
retAddr = freeAddr;
|
||||
XMEMSET(retAddr, 0, size);
|
||||
freeAddr += size;
|
||||
allocatedMemory += size;
|
||||
|
||||
return retAddr;
|
||||
}
|
||||
|
@ -1,344 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
||||
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
||||
<cconfiguration id="org.eclipse.cdt.core.default.config.472844465">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.core.defaultConfigDataProvider" id="org.eclipse.cdt.core.default.config.472844465" moduleId="org.eclipse.cdt.core.settings" name="Configuration">
|
||||
<externalSettings/>
|
||||
<extensions/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.pathentry">
|
||||
<pathentry base-path="C:/DDC-I/desk/ppc/include" include="./" kind="inc" path="" system="true"/>
|
||||
<pathentry base-path="C:/DDC-I/desk/include" include="./" kind="inc" path="" system="true"/>
|
||||
<pathentry base-path="C:/" include="./" kind="inc" path="" system="true"/>
|
||||
<pathentry kind="mac" name="DIAGNOSTIC" path="" value=""/>
|
||||
<pathentry kind="mac" name="WOLFSSL_USER_SETTINGS" path="" value=""/>
|
||||
<pathentry kind="mac" name="__OpenArbor_editor" path="" value=""/>
|
||||
<pathentry kind="mac" name="__DBL_MIN_EXP__" path="" value="(-1021)"/>
|
||||
<pathentry kind="mac" name="__FLT32X_MAX_EXP__" path="" value="1024"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvmsubmsp" path="" value="__builtin_vsx_xvmsubsp"/>
|
||||
<pathentry kind="mac" name="__UINT_LEAST16_MAX__" path="" value="0xffff"/>
|
||||
<pathentry kind="mac" name="__ATOMIC_ACQUIRE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__FLT_MIN__" path="" value="1.1754943508222875e-38F"/>
|
||||
<pathentry kind="mac" name="__GCC_IEC_559_COMPLEX" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__UINT_LEAST8_TYPE__" path="" value="unsigned char"/>
|
||||
<pathentry kind="mac" name="__INTMAX_C(c)" path="" value="c ## LL"/>
|
||||
<pathentry kind="mac" name="__CHAR_BIT__" path="" value="8"/>
|
||||
<pathentry kind="mac" name="__UINT8_MAX__" path="" value="0xff"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvnmaddadp" path="" value="__builtin_vsx_xvnmadddp"/>
|
||||
<pathentry kind="mac" name="__WINT_MAX__" path="" value="0xffffffffU"/>
|
||||
<pathentry kind="mac" name="__FLT32_MIN_EXP__" path="" value="(-125)"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xxlnor" path="" value="__builtin_vec_nor"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvnmsubmdp" path="" value="__builtin_vsx_xvnmsubdp"/>
|
||||
<pathentry kind="mac" name="__ORDER_LITTLE_ENDIAN__" path="" value="1234"/>
|
||||
<pathentry kind="mac" name="__SIZE_MAX__" path="" value="0xffffffffU"/>
|
||||
<pathentry kind="mac" name="__WCHAR_MAX__" path="" value="0x7fffffffL"/>
|
||||
<pathentry kind="mac" name="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__DBL_DENORM_MIN__" path="" value="((double)4.9406564584124654e-324L)"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_CHAR_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__GCC_IEC_559" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__FLT32X_DECIMAL_DIG__" path="" value="17"/>
|
||||
<pathentry kind="mac" name="__FLT_EVAL_METHOD__" path="" value="0"/>
|
||||
<pathentry kind="mac" name="__unix__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT64_DECIMAL_DIG__" path="" value="17"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_CHAR32_T_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="pixel" path="" value="pixel"/>
|
||||
<pathentry kind="mac" name="bool" path="" value="bool"/>
|
||||
<pathentry kind="mac" name="__UINT_FAST64_MAX__" path="" value="0xffffffffffffffffULL"/>
|
||||
<pathentry kind="mac" name="__SIG_ATOMIC_TYPE__" path="" value="int"/>
|
||||
<pathentry kind="mac" name="__DBL_MIN_10_EXP__" path="" value="(-307)"/>
|
||||
<pathentry kind="mac" name="__FINITE_MATH_ONLY__" path="" value="0"/>
|
||||
<pathentry kind="mac" name="__GNUC_PATCHLEVEL__" path="" value="0"/>
|
||||
<pathentry kind="mac" name="__FLT32_HAS_DENORM__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvnmaddasp" path="" value="__builtin_vsx_xvnmaddsp"/>
|
||||
<pathentry kind="mac" name="__UINT_FAST8_MAX__" path="" value="0xffffffffU"/>
|
||||
<pathentry kind="mac" name="__has_include(STR)" path="" value="__has_include__(STR)"/>
|
||||
<pathentry kind="mac" name="__DEC64_MAX_EXP__" path="" value="385"/>
|
||||
<pathentry kind="mac" name="__INT8_C(c)" path="" value="c"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST8_WIDTH__" path="" value="8"/>
|
||||
<pathentry kind="mac" name="__UINT_LEAST64_MAX__" path="" value="0xffffffffffffffffULL"/>
|
||||
<pathentry kind="mac" name="__SHRT_MAX__" path="" value="0x7fff"/>
|
||||
<pathentry kind="mac" name="__LDBL_MAX__" path="" value="1.7976931348623157e+308L"/>
|
||||
<pathentry kind="mac" name="__UINT_LEAST8_MAX__" path="" value="0xff"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_BOOL_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="_ARCH_PPC" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__UINTMAX_TYPE__" path="" value="long long unsigned int"/>
|
||||
<pathentry kind="mac" name="__DEC32_EPSILON__" path="" value="1E-6DF"/>
|
||||
<pathentry kind="mac" name="__FLT_EVAL_METHOD_TS_18661_3__" path="" value="0"/>
|
||||
<pathentry kind="mac" name="__CHAR_UNSIGNED__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__UINT32_MAX__" path="" value="0xffffffffUL"/>
|
||||
<pathentry kind="mac" name="__LDBL_MAX_EXP__" path="" value="1024"/>
|
||||
<pathentry kind="mac" name="__WINT_MIN__" path="" value="0U"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvmaddmdp" path="" value="__builtin_vsx_xvmadddp"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_vperm" path="" value="__builtin_vec_perm"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST16_WIDTH__" path="" value="16"/>
|
||||
<pathentry kind="mac" name="__SCHAR_MAX__" path="" value="0x7f"/>
|
||||
<pathentry kind="mac" name="__WCHAR_MIN__" path="" value="(-__WCHAR_MAX__ - 1)"/>
|
||||
<pathentry kind="mac" name="vector" path="" value="vector"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvnmsubmsp" path="" value="__builtin_vsx_xvnmsubsp"/>
|
||||
<pathentry kind="mac" name="__INT64_C(c)" path="" value="c ## LL"/>
|
||||
<pathentry kind="mac" name="__DBL_DIG__" path="" value="15"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_POINTER_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_INT__" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_POINTER__" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__USER_LABEL_PREFIX__" path="" value=""/>
|
||||
<pathentry kind="mac" name="__STDC_HOSTED__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__LDBL_HAS_INFINITY__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvmaddmsp" path="" value="__builtin_vsx_xvmaddsp"/>
|
||||
<pathentry kind="mac" name="__FLT32_DIG__" path="" value="6"/>
|
||||
<pathentry kind="mac" name="__FLT_EPSILON__" path="" value="1.1920928955078125e-7F"/>
|
||||
<pathentry kind="mac" name="__SHRT_WIDTH__" path="" value="16"/>
|
||||
<pathentry kind="mac" name="_CALL_SYSV" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__LDBL_MIN__" path="" value="2.2250738585072014e-308L"/>
|
||||
<pathentry kind="mac" name="__STDC_UTF_16__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__DEC32_MAX__" path="" value="9.999999E96DF"/>
|
||||
<pathentry kind="mac" name="__FLT32X_HAS_INFINITY__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__INT32_MAX__" path="" value="0x7fffffffL"/>
|
||||
<pathentry kind="mac" name="__INT_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_LONG__" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__UINT16_C(c)" path="" value="c"/>
|
||||
<pathentry kind="mac" name="__PTRDIFF_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__DECIMAL_DIG__" path="" value="17"/>
|
||||
<pathentry kind="mac" name="__FLT64_EPSILON__" path="" value="2.2204460492503131e-16F64"/>
|
||||
<pathentry kind="mac" name="__INTMAX_WIDTH__" path="" value="64"/>
|
||||
<pathentry kind="mac" name="__has_include_next(STR)" path="" value="__has_include_next__(STR)"/>
|
||||
<pathentry kind="mac" name="__LDBL_HAS_QUIET_NAN__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT64_MANT_DIG__" path="" value="53"/>
|
||||
<pathentry kind="mac" name="__GNUC__" path="" value="7"/>
|
||||
<pathentry kind="mac" name="__FLT_HAS_DENORM__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_LONG_DOUBLE__" path="" value="8"/>
|
||||
<pathentry kind="mac" name="__BIGGEST_ALIGNMENT__" path="" value="16"/>
|
||||
<pathentry kind="mac" name="__FLT64_MAX_10_EXP__" path="" value="308"/>
|
||||
<pathentry kind="mac" name="__DBL_MAX__" path="" value="((double)1.7976931348623157e+308L)"/>
|
||||
<pathentry kind="mac" name="__INT_FAST32_MAX__" path="" value="0x7fffffff"/>
|
||||
<pathentry kind="mac" name="__DBL_HAS_INFINITY__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvnmaddmdp" path="" value="__builtin_vsx_xvnmadddp"/>
|
||||
<pathentry kind="mac" name="__DEC32_MIN_EXP__" path="" value="(-94)"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xxlandc" path="" value="__builtin_vec_andc"/>
|
||||
<pathentry kind="mac" name="__INTPTR_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__FLT32X_HAS_DENORM__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__INT_FAST16_TYPE__" path="" value="int"/>
|
||||
<pathentry kind="mac" name="__LDBL_HAS_DENORM__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__DEC128_MAX__" path="" value="9.999999999999999999999999999999999E6144DL"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST32_MAX__" path="" value="0x7fffffffL"/>
|
||||
<pathentry kind="mac" name="__DEC32_MIN__" path="" value="1E-95DF"/>
|
||||
<pathentry kind="mac" name="__DBL_MAX_EXP__" path="" value="1024"/>
|
||||
<pathentry kind="mac" name="__WCHAR_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__FLT32_MAX__" path="" value="3.4028234663852886e+38F32"/>
|
||||
<pathentry kind="mac" name="__DEC128_EPSILON__" path="" value="1E-33DL"/>
|
||||
<pathentry kind="mac" name="__PTRDIFF_MAX__" path="" value="0x7fffffff"/>
|
||||
<pathentry kind="mac" name="__FLT32_HAS_QUIET_NAN__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__LONG_LONG_MAX__" path="" value="0x7fffffffffffffffLL"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_SIZE_T__" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvnmaddmsp" path="" value="__builtin_vsx_xvnmaddsp"/>
|
||||
<pathentry kind="mac" name="__PPC__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_WINT_T__" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__LONG_LONG_WIDTH__" path="" value="64"/>
|
||||
<pathentry kind="mac" name="__FLT32_MAX_EXP__" path="" value="128"/>
|
||||
<pathentry kind="mac" name="__GXX_ABI_VERSION" path="" value="1011"/>
|
||||
<pathentry kind="mac" name="__FLT_MIN_EXP__" path="" value="(-125)"/>
|
||||
<pathentry kind="mac" name="__INT_FAST64_TYPE__" path="" value="long long int"/>
|
||||
<pathentry kind="mac" name="__FP_FAST_FMAF" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FP_FAST_FMAL" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT64_DENORM_MIN__" path="" value="4.9406564584124654e-324F64"/>
|
||||
<pathentry kind="mac" name="__DBL_MIN__" path="" value="((double)2.2250738585072014e-308L)"/>
|
||||
<pathentry kind="mac" name="__FLT32X_EPSILON__" path="" value="2.2204460492503131e-16F32x"/>
|
||||
<pathentry kind="mac" name="__FLT64_MIN_EXP__" path="" value="(-1021)"/>
|
||||
<pathentry kind="mac" name="__FLT64_MIN_10_EXP__" path="" value="(-307)"/>
|
||||
<pathentry kind="mac" name="__DEC128_MIN__" path="" value="1E-6143DL"/>
|
||||
<pathentry kind="mac" name="__REGISTER_PREFIX__" path="" value=""/>
|
||||
<pathentry kind="mac" name="__UINT16_MAX__" path="" value="0xffff"/>
|
||||
<pathentry kind="mac" name="__DBL_HAS_DENORM__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xxland" path="" value="__builtin_vec_and"/>
|
||||
<pathentry kind="mac" name="__FLT32_MIN__" path="" value="1.1754943508222875e-38F32"/>
|
||||
<pathentry kind="mac" name="__UINT8_TYPE__" path="" value="unsigned char"/>
|
||||
<pathentry kind="mac" name="__NO_INLINE__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT_MANT_DIG__" path="" value="24"/>
|
||||
<pathentry kind="mac" name="__LDBL_DECIMAL_DIG__" path="" value="17"/>
|
||||
<pathentry kind="mac" name="__VERSION__" path="" value=""7.3.0""/>
|
||||
<pathentry kind="mac" name="__UINT64_C(c)" path="" value="c ## ULL"/>
|
||||
<pathentry kind="mac" name="__BIG_ENDIAN__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_INT_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__pixel" path="" value="__attribute__((altivec(pixel__))) unsigned short"/>
|
||||
<pathentry kind="mac" name="__FLT32_MANT_DIG__" path="" value="24"/>
|
||||
<pathentry kind="mac" name="__FLOAT_WORD_ORDER__" path="" value="__ORDER_BIG_ENDIAN__"/>
|
||||
<pathentry kind="mac" name="__SCHAR_WIDTH__" path="" value="8"/>
|
||||
<pathentry kind="mac" name="__INT32_C(c)" path="" value="c ## L"/>
|
||||
<pathentry kind="mac" name="__DEC64_EPSILON__" path="" value="1E-15DD"/>
|
||||
<pathentry kind="mac" name="__ORDER_PDP_ENDIAN__" path="" value="3412"/>
|
||||
<pathentry kind="mac" name="__DEC128_MIN_EXP__" path="" value="(-6142)"/>
|
||||
<pathentry kind="mac" name="__FLT32_MAX_10_EXP__" path="" value="38"/>
|
||||
<pathentry kind="mac" name="__INT_FAST32_TYPE__" path="" value="int"/>
|
||||
<pathentry kind="mac" name="__UINT_LEAST16_TYPE__" path="" value="short unsigned int"/>
|
||||
<pathentry kind="mac" name="unix" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__INT16_MAX__" path="" value="0x7fff"/>
|
||||
<pathentry kind="mac" name="__SIZE_TYPE__" path="" value="unsigned int"/>
|
||||
<pathentry kind="mac" name="__UINT64_MAX__" path="" value="0xffffffffffffffffULL"/>
|
||||
<pathentry kind="mac" name="__INT8_TYPE__" path="" value="signed char"/>
|
||||
<pathentry kind="mac" name="__ELF__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__HAVE_BSWAP__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT_RADIX__" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST16_TYPE__" path="" value="short int"/>
|
||||
<pathentry kind="mac" name="__LDBL_EPSILON__" path="" value="2.2204460492503131e-16L"/>
|
||||
<pathentry kind="mac" name="__UINTMAX_C(c)" path="" value="c ## ULL"/>
|
||||
<pathentry kind="mac" name="__SIG_ATOMIC_MAX__" path="" value="0x7fffffff"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_WCHAR_T_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_PTRDIFF_T__" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__FLT32X_MANT_DIG__" path="" value="53"/>
|
||||
<pathentry kind="mac" name="__FLT32X_MIN_EXP__" path="" value="(-1021)"/>
|
||||
<pathentry kind="mac" name="__DEC32_SUBNORMAL_MIN__" path="" value="0.000001E-95DF"/>
|
||||
<pathentry kind="mac" name="__INT_FAST16_MAX__" path="" value="0x7fffffff"/>
|
||||
<pathentry kind="mac" name="__vector" path="" value="__attribute__((altivec(vector__)))"/>
|
||||
<pathentry kind="mac" name="__FLT64_DIG__" path="" value="15"/>
|
||||
<pathentry kind="mac" name="__UINT_FAST32_MAX__" path="" value="0xffffffffU"/>
|
||||
<pathentry kind="mac" name="__UINT_LEAST64_TYPE__" path="" value="long long unsigned int"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvmsubadp" path="" value="__builtin_vsx_xvmsubdp"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xxsel" path="" value="__builtin_vec_sel"/>
|
||||
<pathentry kind="mac" name="__FLT_HAS_QUIET_NAN__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__bool" path="" value="__attribute__((altivec(bool__))) unsigned"/>
|
||||
<pathentry kind="mac" name="__FLT_MAX_10_EXP__" path="" value="38"/>
|
||||
<pathentry kind="mac" name="__LONG_MAX__" path="" value="0x7fffffffL"/>
|
||||
<pathentry kind="mac" name="__DEC128_SUBNORMAL_MIN__" path="" value="0.000000000000000000000000000000001E-6143DL"/>
|
||||
<pathentry kind="mac" name="__FLT_HAS_INFINITY__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__unix" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__UINT_FAST16_TYPE__" path="" value="unsigned int"/>
|
||||
<pathentry kind="mac" name="__DEC64_MAX__" path="" value="9.999999999999999E384DD"/>
|
||||
<pathentry kind="mac" name="__INT_FAST32_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__CHAR16_TYPE__" path="" value="short unsigned int"/>
|
||||
<pathentry kind="mac" name="__PRAGMA_REDEFINE_EXTNAME" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__SIZE_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST16_MAX__" path="" value="0x7fff"/>
|
||||
<pathentry kind="mac" name="__DEC64_MANT_DIG__" path="" value="16"/>
|
||||
<pathentry kind="mac" name="__INT64_MAX__" path="" value="0x7fffffffffffffffLL"/>
|
||||
<pathentry kind="mac" name="__UINT_LEAST32_MAX__" path="" value="0xffffffffUL"/>
|
||||
<pathentry kind="mac" name="__FLT32_DENORM_MIN__" path="" value="1.4012984643248171e-45F32"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_LONG_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__SIG_ATOMIC_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST64_TYPE__" path="" value="long long int"/>
|
||||
<pathentry kind="mac" name="__INT16_TYPE__" path="" value="short int"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST8_TYPE__" path="" value="signed char"/>
|
||||
<pathentry kind="mac" name="__STDC_VERSION__" path="" value="201112L"/>
|
||||
<pathentry kind="mac" name="__DEC32_MAX_EXP__" path="" value="97"/>
|
||||
<pathentry kind="mac" name="_BIG_ENDIAN" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__INT_FAST8_MAX__" path="" value="0x7fffffff"/>
|
||||
<pathentry kind="mac" name="__INTPTR_MAX__" path="" value="0x7fffffff"/>
|
||||
<pathentry kind="mac" name="__FLT64_HAS_QUIET_NAN__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__PPC" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT32_MIN_10_EXP__" path="" value="(-37)"/>
|
||||
<pathentry kind="mac" name="__FLT32X_DIG__" path="" value="15"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvmsubasp" path="" value="__builtin_vsx_xvmsubsp"/>
|
||||
<pathentry kind="mac" name="__LDBL_MANT_DIG__" path="" value="53"/>
|
||||
<pathentry kind="mac" name="__svr4__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__DBL_HAS_QUIET_NAN__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT64_HAS_INFINITY__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__SIG_ATOMIC_MIN__" path="" value="(-__SIG_ATOMIC_MAX__ - 1)"/>
|
||||
<pathentry kind="mac" name="__INTPTR_TYPE__" path="" value="int"/>
|
||||
<pathentry kind="mac" name="__UINT16_TYPE__" path="" value="short unsigned int"/>
|
||||
<pathentry kind="mac" name="__WCHAR_TYPE__" path="" value="long int"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_FLOAT__" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__UINTPTR_MAX__" path="" value="0xffffffffU"/>
|
||||
<pathentry kind="mac" name="__INT_FAST64_WIDTH__" path="" value="64"/>
|
||||
<pathentry kind="mac" name="__DEC64_MIN_EXP__" path="" value="(-382)"/>
|
||||
<pathentry kind="mac" name="__FLT32_DECIMAL_DIG__" path="" value="9"/>
|
||||
<pathentry kind="mac" name="__INT_FAST64_MAX__" path="" value="0x7fffffffffffffffLL"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_TEST_AND_SET_TRUEVAL" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT_DIG__" path="" value="6"/>
|
||||
<pathentry kind="mac" name="__FLT32_HAS_INFINITY__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__UINT_FAST64_TYPE__" path="" value="long long unsigned int"/>
|
||||
<pathentry kind="mac" name="__INT_MAX__" path="" value="0x7fffffff"/>
|
||||
<pathentry kind="mac" name="__INT64_TYPE__" path="" value="long long int"/>
|
||||
<pathentry kind="mac" name="__FLT_MAX_EXP__" path="" value="128"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xxlor" path="" value="__builtin_vec_or"/>
|
||||
<pathentry kind="mac" name="__DBL_MANT_DIG__" path="" value="53"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST64_MAX__" path="" value="0x7fffffffffffffffLL"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_CHAR16_T_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xxlxor" path="" value="__builtin_vec_xor"/>
|
||||
<pathentry kind="mac" name="__DEC64_MIN__" path="" value="1E-383DD"/>
|
||||
<pathentry kind="mac" name="__WINT_TYPE__" path="" value="unsigned int"/>
|
||||
<pathentry kind="mac" name="__UINT_LEAST32_TYPE__" path="" value="long unsigned int"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_SHORT__" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__LDBL_MIN_EXP__" path="" value="(-1021)"/>
|
||||
<pathentry kind="mac" name="__FLT64_MAX__" path="" value="1.7976931348623157e+308F64"/>
|
||||
<pathentry kind="mac" name="__WINT_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST8_MAX__" path="" value="0x7f"/>
|
||||
<pathentry kind="mac" name="__FLT32X_MAX_10_EXP__" path="" value="308"/>
|
||||
<pathentry kind="mac" name="__LDBL_MAX_10_EXP__" path="" value="308"/>
|
||||
<pathentry kind="mac" name="__ATOMIC_RELAXED" path="" value="0"/>
|
||||
<pathentry kind="mac" name="__DBL_EPSILON__" path="" value="((double)2.2204460492503131e-16L)"/>
|
||||
<pathentry kind="mac" name="__UINT8_C(c)" path="" value="c"/>
|
||||
<pathentry kind="mac" name="PPC" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT64_MAX_EXP__" path="" value="1024"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST32_TYPE__" path="" value="long int"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_WCHAR_T__" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__UINT64_TYPE__" path="" value="long long unsigned int"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvnmsubadp" path="" value="__builtin_vsx_xvnmsubdp"/>
|
||||
<pathentry kind="mac" name="__INT_FAST8_TYPE__" path="" value="int"/>
|
||||
<pathentry kind="mac" name="__GNUC_STDC_INLINE__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT64_HAS_DENORM__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT32_EPSILON__" path="" value="1.1920928955078125e-7F32"/>
|
||||
<pathentry kind="mac" name="__DBL_DECIMAL_DIG__" path="" value="17"/>
|
||||
<pathentry kind="mac" name="__STDC_UTF_32__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__INT_FAST8_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__DEC_EVAL_METHOD__" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__FLT32X_MAX__" path="" value="1.7976931348623157e+308F32x"/>
|
||||
<pathentry kind="mac" name="__VEC_ELEMENT_REG_ORDER__" path="" value="__ORDER_BIG_ENDIAN__"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvmaddadp" path="" value="__builtin_vsx_xvmadddp"/>
|
||||
<pathentry kind="mac" name="__ORDER_BIG_ENDIAN__" path="" value="4321"/>
|
||||
<pathentry kind="mac" name="__UINT32_C(c)" path="" value="c ## UL"/>
|
||||
<pathentry kind="mac" name="__INTMAX_MAX__" path="" value="0x7fffffffffffffffLL"/>
|
||||
<pathentry kind="mac" name="__BYTE_ORDER__" path="" value="__ORDER_BIG_ENDIAN__"/>
|
||||
<pathentry kind="mac" name="__FLT_DENORM_MIN__" path="" value="1.4012984643248171e-45F"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvnmsubasp" path="" value="__builtin_vsx_xvnmsubsp"/>
|
||||
<pathentry kind="mac" name="__INT8_MAX__" path="" value="0x7f"/>
|
||||
<pathentry kind="mac" name="__LONG_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__UINT_FAST32_TYPE__" path="" value="unsigned int"/>
|
||||
<pathentry kind="mac" name="__CHAR32_TYPE__" path="" value="long unsigned int"/>
|
||||
<pathentry kind="mac" name="__FLT_MAX__" path="" value="3.4028234663852886e+38F"/>
|
||||
<pathentry kind="mac" name="__FP_FAST_FMA" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__INT32_TYPE__" path="" value="long int"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_DOUBLE__" path="" value="8"/>
|
||||
<pathentry kind="mac" name="__FLT_MIN_10_EXP__" path="" value="(-37)"/>
|
||||
<pathentry kind="mac" name="__FLT64_MIN__" path="" value="2.2250738585072014e-308F64"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST32_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__INTMAX_TYPE__" path="" value="long long int"/>
|
||||
<pathentry kind="mac" name="__DEC128_MAX_EXP__" path="" value="6145"/>
|
||||
<pathentry kind="mac" name="__FLT32X_HAS_QUIET_NAN__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__ATOMIC_CONSUME" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__GNUC_MINOR__" path="" value="3"/>
|
||||
<pathentry kind="mac" name="__INT_FAST16_WIDTH__" path="" value="32"/>
|
||||
<pathentry kind="mac" name="__UINTMAX_MAX__" path="" value="0xffffffffffffffffULL"/>
|
||||
<pathentry kind="mac" name="__DEC32_MANT_DIG__" path="" value="7"/>
|
||||
<pathentry kind="mac" name="__FLT32X_DENORM_MIN__" path="" value="4.9406564584124654e-324F32x"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvmaddasp" path="" value="__builtin_vsx_xvmaddsp"/>
|
||||
<pathentry kind="mac" name="__DBL_MAX_10_EXP__" path="" value="308"/>
|
||||
<pathentry kind="mac" name="__LDBL_DENORM_MIN__" path="" value="4.9406564584124654e-324L"/>
|
||||
<pathentry kind="mac" name="__INT16_C(c)" path="" value="c"/>
|
||||
<pathentry kind="mac" name="__STDC__" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__builtin_vsx_xvmsubmdp" path="" value="__builtin_vsx_xvmsubdp"/>
|
||||
<pathentry kind="mac" name="__PTRDIFF_TYPE__" path="" value="int"/>
|
||||
<pathentry kind="mac" name="__ATOMIC_SEQ_CST" path="" value="5"/>
|
||||
<pathentry kind="mac" name="__UINT32_TYPE__" path="" value="long unsigned int"/>
|
||||
<pathentry kind="mac" name="__FLT32X_MIN_10_EXP__" path="" value="(-307)"/>
|
||||
<pathentry kind="mac" name="__UINTPTR_TYPE__" path="" value="unsigned int"/>
|
||||
<pathentry kind="mac" name="__DEC64_SUBNORMAL_MIN__" path="" value="0.000000000000001E-383DD"/>
|
||||
<pathentry kind="mac" name="__DEC128_MANT_DIG__" path="" value="34"/>
|
||||
<pathentry kind="mac" name="__LDBL_MIN_10_EXP__" path="" value="(-307)"/>
|
||||
<pathentry kind="mac" name="__SIZEOF_LONG_LONG__" path="" value="8"/>
|
||||
<pathentry kind="mac" name="_Bool" path="" value="_Bool"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_LLONG_LOCK_FREE" path="" value="1"/>
|
||||
<pathentry kind="mac" name="__FLT32X_MIN__" path="" value="2.2250738585072014e-308F32x"/>
|
||||
<pathentry kind="mac" name="__LDBL_DIG__" path="" value="15"/>
|
||||
<pathentry kind="mac" name="__FLT_DECIMAL_DIG__" path="" value="9"/>
|
||||
<pathentry kind="mac" name="__UINT_FAST16_MAX__" path="" value="0xffffffffU"/>
|
||||
<pathentry kind="mac" name="__GCC_ATOMIC_SHORT_LOCK_FREE" path="" value="2"/>
|
||||
<pathentry kind="mac" name="__INT_LEAST64_WIDTH__" path="" value="64"/>
|
||||
<pathentry kind="mac" name="__UINT_FAST8_TYPE__" path="" value="unsigned int"/>
|
||||
<pathentry kind="mac" name="__ATOMIC_ACQ_REL" path="" value="4"/>
|
||||
<pathentry kind="mac" name="__ATOMIC_RELEASE" path="" value="3"/>
|
||||
</storageModule>
|
||||
</cproject>
|
@ -1,36 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<project xmlns="http://www.ddci.com/DEOS_SHARED_OBJECToptions" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ddci:/xsd/DEOS_SHARED_OBJECT.xsd http://www.ddci.com/DEOS_SHARED_OBJECToptions">
|
||||
<version>26</version>
|
||||
<targetArch>ppc</targetArch>
|
||||
<variant>diagnostic</variant>
|
||||
<depend>kernel</depend>
|
||||
<depend variant="diagnostic">video</depend>
|
||||
<depend>ansi</depend>
|
||||
<depend>math</depend>
|
||||
<depend>deos-time</depend>
|
||||
<depend>sal</depend>
|
||||
<depend>mtl</depend>
|
||||
<depend>printx</depend>
|
||||
<depend>gnu-language</depend>
|
||||
<kernelFile kfs="hypstart">lib$(PROJECT_NAME).so</kernelFile>
|
||||
<copyToAppbin>$(BINARY)</copyToAppbin>
|
||||
<copyToAppbin>$(BINARY).dbg</copyToAppbin>
|
||||
<gccCCompileDirectories targetArch="arm">$(DESK_DIR)/arm/include</gccCCompileDirectories>
|
||||
<gccCCompileDirectories targetArch="ppc">$(DESK_DIR)/ppc/include</gccCCompileDirectories>
|
||||
<gccCCompileDirectories targetArch="x86">$(DESK_DIR)/x86/include</gccCCompileDirectories>
|
||||
<gccCCompileDirectories>$(DESK_DIR)/include</gccCCompileDirectories>
|
||||
<gccCCompileDirectories>$(PROJECT_DIR)/../../../..</gccCCompileDirectories>
|
||||
<gccCCompileDirectories>$(PROJECT_DIR)/../../../../fips</gccCCompileDirectories>
|
||||
<gccCCompileDirectories>$(PROJECT_DIR)/..</gccCCompileDirectories>
|
||||
<gccCCompileDirectories>$(PROJECT_DIR.printx)/code</gccCCompileDirectories>
|
||||
<gccCCompileDefinedMacros>WOLFSSL_USER_SETTINGS</gccCCompileDefinedMacros>
|
||||
<gccCppLinkDirectories targetArch="arm">$(DESK_DIR)/arm/appbin</gccCppLinkDirectories>
|
||||
<gccCppLinkDirectories targetArch="ppc">$(DESK_DIR)/ppc/appbin</gccCppLinkDirectories>
|
||||
<gccCppLinkDirectories targetArch="x86">$(DESK_DIR)/x86/appbin</gccCppLinkDirectories>
|
||||
<gccCppLinkUseIntermediateArchive>true</gccCppLinkUseIntermediateArchive>
|
||||
<gccCppLinkAdditionalOptions>-L $(PROJECT_DIR.printx)/output/powerpc-motorola-elf/diagnostic</gccCppLinkAdditionalOptions>
|
||||
<fpuType>none</fpuType>
|
||||
<ignore>fips.c</ignore>
|
||||
<ignore>fips_test.c</ignore>
|
||||
<ignore>selftest.c</ignore>
|
||||
</project>
|
@ -1,619 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>wolfssl</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>com.ddci.common.ide.Builder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>com.ddci.common.ide.DdciNature</nature>
|
||||
<nature>com.ddci.common.ide.ExecutableNature</nature>
|
||||
<nature>com.ddci.deos.common.deosLoadListNature</nature>
|
||||
<nature>com.ddci.common.ide.DEOS_SHARED_OBJECT</nature>
|
||||
<nature>org.eclipse.cdt.core.cnature</nature>
|
||||
</natures>
|
||||
<linkedResources>
|
||||
<link>
|
||||
<name>deos_malloc.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/IDE/ECLIPSE/DEOS/deos_malloc.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>fips.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/fips/fips.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>fips_test.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/fips/fips_test.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>selftest.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/fips/selftest.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>user_settings.h</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/IDE/ECLIPSE/DEOS/user_settings.h</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfssl</name>
|
||||
<type>2</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfssl</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/crl.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/crl.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/internal.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/internal.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/keys.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/keys.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/ocsp.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/ocsp.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/sniffer.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/sniffer.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/ssl.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/ssl.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/tls.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/tls.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/tls13.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/tls13.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>src/wolfio.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/src/wolfio.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/benchmark</name>
|
||||
<type>2</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/benchmark</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/test</name>
|
||||
<type>2</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/test</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/aes.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/aes.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/arc4.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/arc4.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/asm.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/asm.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/asn.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/asn.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/blake2b.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/blake2b.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/blake2s.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/blake2s.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/camellia.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/camellia.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/chacha.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/chacha.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/chacha20_poly1305.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/chacha20_poly1305.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/cmac.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/cmac.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/coding.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/coding.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/compress.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/compress.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/cpuid.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/cpuid.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/cryptocb.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/cryptocb.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/curve25519.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/curve25519.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/curve448.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/curve448.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/des3.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/des3.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/dh.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/dh.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/dsa.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/dsa.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/ecc.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/ecc.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/ecc_fp.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/ecc_fp.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/ed25519.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/ed25519.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/ed448.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/ed448.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/error.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/error.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fe_448.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fe_448.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fe_low_mem.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fe_low_mem.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fe_operations.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fe_operations.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fe_x25519_128.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fe_x25519_128.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mont_small.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mont_small.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_12.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_12.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_17.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_17.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_20.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_20.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_24.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_24.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_28.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_28.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_3.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_3.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_32.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_32.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_4.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_4.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_48.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_48.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_6.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_6.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_64.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_64.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_7.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_7.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_8.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_8.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_9.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_9.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_mul_comba_small_set.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_mul_comba_small_set.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_12.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_12.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_17.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_17.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_20.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_20.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_24.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_24.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_28.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_28.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_3.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_3.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_32.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_32.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_4.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_4.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_48.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_48.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_6.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_6.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_64.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_64.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_7.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_7.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_8.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_8.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_9.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_9.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/fp_sqr_comba_small_set.i</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/fp_sqr_comba_small_set.i</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/ge_448.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/ge_448.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/ge_low_mem.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/ge_low_mem.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/ge_operations.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/ge_operations.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/kdf.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/kdf.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/hash.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/hash.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/hmac.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/hmac.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/integer.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/integer.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/logging.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/logging.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/md2.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/md2.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/md4.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/md4.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/md5.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/md5.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/memory.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/memory.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/pkcs12.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/pkcs12.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/pkcs7.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/pkcs7.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/poly1305.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/poly1305.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/pwdbased.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/pwdbased.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/random.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/random.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/rc2.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/rc2.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/ripemd.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/ripemd.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/rsa.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/rsa.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sha.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sha.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sha256.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sha256.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sha3.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sha3.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sha512.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sha512.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/signature.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/signature.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_arm32.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_arm32.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_arm64.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_arm64.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_armthumb.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_armthumb.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_c32.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_c32.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_c64.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_c64.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_cortexm.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_cortexm.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_dsp32.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_dsp32.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_int.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_int.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/sp_x86_64.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/sp_x86_64.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/srp.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/srp.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/tfm.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/tfm.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/wc_dsp.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/wc_dsp.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/wc_encrypt.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/wc_encrypt.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/wc_pkcs11.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/wc_pkcs11.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/wc_port.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/wc_port.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/wolfevent.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/wolfevent.c</locationURI>
|
||||
</link>
|
||||
<link>
|
||||
<name>wolfcrypt/src/wolfmath.c</name>
|
||||
<type>1</type>
|
||||
<locationURI>WOLFSSL_ROOT/wolfcrypt/src/wolfmath.c</locationURI>
|
||||
</link>
|
||||
</linkedResources>
|
||||
<variableList>
|
||||
<variable>
|
||||
<name>WOLFSSL_ROOT</name>
|
||||
<value>$%7BPARENT-4-PROJECT_LOC%7D</value>
|
||||
</variable>
|
||||
</variableList>
|
||||
</projectDescription>
|
@ -7,7 +7,4 @@ EXTRA_DIST += \
|
||||
IDE/ECLIPSE/DEOS/user_settings.h \
|
||||
IDE/ECLIPSE/DEOS/tls_wolfssl.h \
|
||||
IDE/ECLIPSE/DEOS/tls_wolfssl.c \
|
||||
IDE/ECLIPSE/DEOS/deos_malloc.c \
|
||||
IDE/ECLIPSE/DEOS/deos_wolfssl/.cproject \
|
||||
IDE/ECLIPSE/DEOS/deos_wolfssl/.options \
|
||||
IDE/ECLIPSE/DEOS/deos_wolfssl/.project
|
||||
IDE/ECLIPSE/DEOS/deos_malloc.c
|
@ -1,6 +1,6 @@
|
||||
/* tls_wolfssl.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
@ -31,19 +31,19 @@ int setupTransport(clientConnectionHandleType* connectionHandle,
|
||||
char* connectionId) {
|
||||
int ret, error;
|
||||
void * sendBuffer;
|
||||
size_t bufferSizeInBytes;
|
||||
DWORD bufferSizeInBytes;
|
||||
|
||||
if ((ret = socketTransportInitialize("mailbox-transport.config",
|
||||
"transportConfigurationId",
|
||||
waitIndefinitely,&error)) != transportSuccess)
|
||||
(DWORD)waitIndefinitely,&error)) != transportSuccess)
|
||||
printf("Initialize 0x%x, error=%d\n", ret, error);
|
||||
|
||||
else if ((ret = socketTransportClientInitialize(waitIndefinitely,
|
||||
else if ((ret = socketTransportClientInitialize((DWORD)waitIndefinitely,
|
||||
&error)) != transportSuccess)
|
||||
printf("ClientInitialize 0x%x, error=%d\n", ret, error);
|
||||
|
||||
else if ((ret = socketTransportCreateConnection(connectionId,
|
||||
waitIndefinitely,
|
||||
(DWORD)waitIndefinitely,
|
||||
COMPATIBILITY_ID_2,
|
||||
connectionHandle,
|
||||
&sendBuffer,
|
||||
@ -53,7 +53,7 @@ int setupTransport(clientConnectionHandleType* connectionHandle,
|
||||
|
||||
else if ((ret = socketTransportSetConnectionForThread(currentThreadHandle(),
|
||||
*connectionHandle,
|
||||
waitIndefinitely,
|
||||
(DWORD)waitIndefinitely,
|
||||
&error)) != transportSuccess)
|
||||
printf("SetConnectionForThread 0x%x, error=%d\n", ret, error);
|
||||
|
||||
@ -162,7 +162,7 @@ void wolfssl_client_test(uintData_t statusPtr) {
|
||||
TCP_SERVER_IP_ADDR, TCP_SERVER_PORT);
|
||||
|
||||
server_addr.sin_family = AF_INET;
|
||||
server_addr.sin_addr.s_addr = inet_addr(TCP_SERVER_IP_ADDR);
|
||||
server_addr.sin_addr = inet_addr(TCP_SERVER_IP_ADDR);
|
||||
server_addr.sin_port = htons(TCP_SERVER_PORT);
|
||||
|
||||
printf("Calling connect on socket\n");
|
||||
@ -380,7 +380,10 @@ void wolfssl_server_test(uintData_t statusPtr)
|
||||
int socketAddrLen=sizeof(sockaddr);
|
||||
char rx_buf[RX_BUF_SIZE];
|
||||
char tx_buf[TX_BUF_SIZE];
|
||||
unsigned char attempt_conn;
|
||||
clientConnectionHandleType TCPserverHandle;
|
||||
void * sendBuffer;
|
||||
DWORD bufferSizeInBytes;
|
||||
|
||||
WOLFSSL * ssl;
|
||||
WOLFSSL_CTX * ctx;
|
||||
@ -407,7 +410,7 @@ void wolfssl_server_test(uintData_t statusPtr)
|
||||
|
||||
printf("Setting up server_addr struct\n");
|
||||
server_addr.sin_family = AF_INET;
|
||||
server_addr.sin_addr.s_addr = INADDR_ANY;
|
||||
server_addr.sin_addr = INADDR_ANY;
|
||||
server_addr.sin_port = htons(TLS_SERVER_PORT);
|
||||
|
||||
bindStatus = bind(sock_listen, (sockaddr *) &server_addr, sizeof(server_addr));
|
||||
@ -510,7 +513,7 @@ void wolfssl_server_test(uintData_t statusPtr)
|
||||
wolfSSL_CTX_free(ctx);
|
||||
return;
|
||||
}
|
||||
/* goToSleep() for 500 milliseconds */
|
||||
/* goToSleep() for 500 milli sec*/
|
||||
}
|
||||
} while ((ret != SSL_SUCCESS) && (error == SSL_ERROR_WANT_READ));
|
||||
|
||||
@ -569,6 +572,7 @@ int wolfsslRunTests (void)
|
||||
{
|
||||
thread_handle_t TCPhandle;
|
||||
threadStatus ts;
|
||||
int ret;
|
||||
|
||||
#if !defined(NO_CRYPT_TEST)
|
||||
wolfcrypt_test(NULL);
|
||||
@ -580,14 +584,14 @@ int wolfsslRunTests (void)
|
||||
ts = createThread("TCPclient", "TCPThreadTemplate", wolfssl_client_test,
|
||||
0, &TCPhandle );
|
||||
if (ts != threadSuccess) {
|
||||
printf("Unable to create TCP client thread, %i ", (size_t)ts);
|
||||
printf("Unable to create TCP client thread, %i ", (DWORD)ts);
|
||||
}
|
||||
#endif
|
||||
#if !defined(NO_WOLFSSL_SERVER)
|
||||
ts = createThread("TCPserver", "TCPThreadTemplate", wolfssl_server_test,
|
||||
0, &TCPhandle );
|
||||
if (ts != threadSuccess) {
|
||||
printf("Unable to create TCP server thread, %i ", (size_t)ts);
|
||||
printf("Unable to create TCP server thread, %i ", (DWORD)ts);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* tls_wolfssl.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* user_setting.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
@ -26,141 +26,73 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
/* RTEMS */
|
||||
#define WOLFSSL_DEOS_RTEMS
|
||||
#define WOLFSSL_DEOS
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <netinet/in.h>
|
||||
#include <sys/socket.h>
|
||||
#include <pthread.h>
|
||||
#include <stdint.h>
|
||||
#include <stddef.h> /* for size_t */
|
||||
#include <stdlib.h> /* for malloc/free */
|
||||
/* You can select none or all of the following tests
|
||||
using #define instead of #undef.
|
||||
By default, all four tests run*/
|
||||
|
||||
#if (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
|
||||
#define BIG_ENDIAN_ORDER
|
||||
#else
|
||||
#undef BIG_ENDIAN_ORDER
|
||||
#define LITTLE_ENDIAN_ORDER
|
||||
#endif
|
||||
#else
|
||||
/* DEOS Native */
|
||||
#define WOLFSSL_DEOS
|
||||
|
||||
#include <deos.h>
|
||||
#include <timeout.h>
|
||||
#include <socketapi.h>
|
||||
#include <lwip-socket.h>
|
||||
#include <mem.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h> /* for rand_r: pseudo-random number generator */
|
||||
#include <stdio.h> /* for snprintf */
|
||||
#endif
|
||||
|
||||
/* Porting */
|
||||
#undef NO_CRYPT_TEST
|
||||
#undef NO_CRYPT_BENCHMARK
|
||||
#undef NO_WOLFSSL_CLIENT
|
||||
#undef NO_WOLFSSL_SERVER
|
||||
|
||||
/* adjust CURRENT_UNIX_TIMESTAMP to seconds since Jan 01 1970. (UTC)
|
||||
You can get the current time from https://www.unixtimestamp.com/ */
|
||||
#define CURRENT_UNIX_TIMESTAMP 1663020069
|
||||
You can get the current time from https://www.unixtimestamp.com/
|
||||
*/
|
||||
#define CURRENT_UNIX_TIMESTAMP 1545864916
|
||||
|
||||
#define BENCH_EMBEDDED /* use kB instead of mB for embedded benchmarking */
|
||||
#define WOLFSSL_IGNORE_FILE_WARN /* ignore warning for include of files not required */
|
||||
|
||||
/* Math */
|
||||
#define USE_FAST_MATH
|
||||
#define FP_MAX_BITS (4096*2)
|
||||
#define NO_FILESYSTEM
|
||||
#define SIZEOF_LONG_LONG 8
|
||||
#define TFM_TIMING_RESISTANT
|
||||
#define ECC_TIMING_RESISTANT
|
||||
#define WC_RSA_BLINDING
|
||||
|
||||
/* Wolf Single Precision Math */
|
||||
#undef WOLFSSL_SP
|
||||
#if 1
|
||||
#define WOLFSSL_HAVE_SP_RSA
|
||||
#define WOLFSSL_HAVE_SP_DH
|
||||
#define WOLFSSL_HAVE_SP_ECC
|
||||
#define WOLFSSL_SP_4096 /* Enable RSA/RH 4096-bit support */
|
||||
#define WOLFSSL_SP_384 /* Enable ECC 384-bit SECP384R1 support */
|
||||
/* prevents from including multiple definition of main() */
|
||||
#define NO_MAIN_DRIVER
|
||||
#define NO_TESTSUITE_MAIN_DRIVER
|
||||
|
||||
//#define WOLFSSL_SP_CACHE_RESISTANT
|
||||
#define WOLFSSL_SP_MATH /* only SP math - disables integer.c/tfm.c */
|
||||
//#define WOLFSSL_SP_MATH_ALL /* use SP math for all key sizes and curves */
|
||||
/* includes certificate test buffers via header files */
|
||||
#define USE_CERT_BUFFERS_2048
|
||||
|
||||
#define WOLFSSL_SP_NO_MALLOC
|
||||
//#define WOLFSSL_SP_DIV_32 /* do not use 64-bit divides */
|
||||
/*use kB instead of mB for embedded benchmarking*/
|
||||
#define BENCH_EMBEDDED
|
||||
|
||||
/* use smaller version of code */
|
||||
#define WOLFSSL_SP_SMALL
|
||||
#endif
|
||||
#define NO_WRITE_TEMP_FILES
|
||||
|
||||
/* Algorithms */
|
||||
#undef NO_RSA
|
||||
#undef NO_DH
|
||||
#define WOLFSSL_DH_CONST
|
||||
#define HAVE_ECC
|
||||
#define ECC_USER_CURVES
|
||||
#define HAVE_ECC384
|
||||
|
||||
#if 1
|
||||
#define HAVE_CURVE25519
|
||||
#define HAVE_ED25519
|
||||
#define CURVED25519_SMALL
|
||||
#endif
|
||||
|
||||
#undef NO_SHA
|
||||
#undef NO_MD5
|
||||
#undef NO_SHA256
|
||||
#define HAVE_AESGCM
|
||||
#define WOLFSSL_SHA384
|
||||
#define WOLFSSL_SHA512
|
||||
#define HAVE_ECC
|
||||
#define HAVE_CURVE25519
|
||||
#define CURVE25519_SMALL
|
||||
#define HAVE_ED25519
|
||||
#define ED25519_SMALL
|
||||
|
||||
/* TLS */
|
||||
#define HAVE_TLS_EXTENSIONS
|
||||
#define HAVE_SUPPORTED_CURVES
|
||||
#define HAVE_EXTENDED_MASTER
|
||||
#define HAVE_ENCRYPT_THEN_MAC
|
||||
|
||||
//#define WOLFSSL_DTLS
|
||||
//#define WOLFSSL_DTLS13
|
||||
//#define WOLFSSL_NO_TLS12
|
||||
|
||||
/* TLS 1.3 */
|
||||
#if 0
|
||||
/* TLS 1.3 */
|
||||
#define WOLFSSL_TLS13
|
||||
#define WC_RSA_PSS
|
||||
#define HAVE_HKDF
|
||||
#define HAVE_FFDHE_2048
|
||||
#define HAVE_FFDHE_3072
|
||||
#define HAVE_FFDHE_4096
|
||||
#define HAVE_AEAD
|
||||
#endif
|
||||
|
||||
/* wolfSentry */
|
||||
#if 0
|
||||
#define WOLFSSL_WOLFSENTRY_HOOKS
|
||||
#define HAVE_EX_DATA
|
||||
#define HAVE_EX_DATA_CLEANUP_HOOKS
|
||||
|
||||
/* You can use your own custom random generator function with
|
||||
no input parameters and a `CUSTOM_RAND_TYPE` return type*/
|
||||
|
||||
#ifndef CUSTOM_RAND_GENERATE
|
||||
#define CUSTOM_RAND_TYPE int
|
||||
#define CUSTOM_RAND_GENERATE yourRandGenFunc
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
/* compatibility layer */
|
||||
#if 0
|
||||
#define OPENSSL_EXTRA
|
||||
#endif
|
||||
|
||||
/* Random */
|
||||
#ifdef WOLFSSL_DEOS_RTEMS
|
||||
extern int rtems_wolf_seed(unsigned char* output, unsigned int sz);
|
||||
#define CUSTOM_RAND_GENERATE_SEED rtems_wolf_seed
|
||||
#endif
|
||||
|
||||
/* custom heap handling */
|
||||
#ifdef WOLFSSL_DEOS
|
||||
#define WOLFSSL_NO_MALLOC
|
||||
#if 1
|
||||
#undef XMALLOC_OVERRIDE
|
||||
#define XMALLOC_OVERRIDE
|
||||
|
||||
/* prototypes for user heap override functions */
|
||||
|
||||
#include <stddef.h> /* for size_t */
|
||||
|
||||
extern void *malloc_deos(size_t size);
|
||||
extern void free_deos(void *ptr);
|
||||
extern void *realloc_deos(void *ptr, size_t size);
|
||||
@ -168,39 +100,10 @@ You can get the current time from https://www.unixtimestamp.com/ */
|
||||
#define XMALLOC(n, h, t) malloc_deos(n)
|
||||
#define XFREE(p, h, t) free_deos(p)
|
||||
#define XREALLOC(p, n, h, t) realloc_deos(p, n)
|
||||
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#define DEBUG_WOLFSSL
|
||||
#endif
|
||||
|
||||
/* You can select none or all of the following tests
|
||||
* using #define instead of #undef.
|
||||
* By default, all four tests run*/
|
||||
#define NO_CRYPT_TEST
|
||||
#define NO_CRYPT_BENCHMARK
|
||||
#undef NO_WOLFSSL_CLIENT
|
||||
#undef NO_WOLFSSL_SERVER
|
||||
|
||||
/* file system has not been ported since it is a separate product */
|
||||
#define NO_FILESYSTEM
|
||||
#define NO_WOLFSSL_DIR
|
||||
#define NO_WRITEV
|
||||
#define NO_WRITE_TEMP_FILES
|
||||
|
||||
/* disable old protocols and algorithms */
|
||||
#define NO_OLD_TLS
|
||||
#define NO_PSK
|
||||
#define NO_DSA
|
||||
#define NO_RC4
|
||||
#define NO_MD4
|
||||
|
||||
#define NO_PWDBASED
|
||||
|
||||
/* prevents from including multiple definition of main() */
|
||||
#define NO_MAIN_DRIVER
|
||||
#define NO_TESTSUITE_MAIN_DRIVER
|
||||
|
||||
#define printf printx
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
# Micrium μC/OS-III Port
|
||||
## Overview
|
||||
You can enable the wolfSSL support for Micrium μC/OS-III RTOS available [here](http://www.micrium.com/) using the define `MICRIUM`.
|
||||
You can enable the wolfSSL support for Micrium μC/OS-III RTOS available [here](http://www.micriums.com/) using the define `MICRIUM`.
|
||||
|
||||
## Usage
|
||||
|
||||
@ -40,7 +40,7 @@ The folder hierarchy is the same as the wolfSSL folders with an exception of the
|
||||
|
||||
4. Right click on each folders, add or link all the source code in the corresponding folder in wolfSSL.
|
||||
|
||||
5. Remove non-C platform dependent files from your build. At the moment, only aes_asm.asm, aes_gcm_asm.asm and aes_asm.s must be removed from your wolfssl/wolfcrypt/src folder.
|
||||
5. Remove non-C platform dependent files from your build. At the moment, only aes_asm.asm and aes_asm.s must be removed from your wolfssl/wolfcrypt/src folder.
|
||||
|
||||
6. In your C/C++ compiler preprocessor settings, add the wolfSSL directories to your include paths.
|
||||
Here's an example of the paths that must be added.
|
||||
@ -72,7 +72,7 @@ The test results below were collected from the NXP Kinetis K70 (Freescale TWR-K7
|
||||
|
||||
- IAR Embedded Workbench IDE - ARM 8.32.1 (IAR ELF Linker V8.32.1.169/W32 for ARM)
|
||||
|
||||
- The starting project is based on an IAR EWARM project from Micrium download center at [micrium_twr-k70f120m-os3/](https://www.micrium.com/download/micrium_twr-k70f120m-os3/) but the K70X_FLASH.icf linker script file was slightly modified to configure the stack and heap sizes to 16KB and 20KB. The test was run on a 1 MBytes of program flash and 128 KBytes of static RAM. ([Similar TCP version](https://www.micrium.com/download/twr-k70f120m_os3-tcpip-wifi-lib/))
|
||||
- The starting project is based on an IAR EWARM project from Micrium download center at [micrium_twr-k70f120m-os3/](https://www.micrium.com/download/micrium_twr-k70f120m-os3/) but the K70X_FLASH.icf linker script file was slightly modified to configure the stack and heap sizes to 16KB and 20KB. The test was run on a 1 MBytes of program flash and 128 KBytes of static RAM.
|
||||
|
||||
- wolfssl [latest version](https://github.com/wolfSSL/wolfssl)
|
||||
|
||||
@ -93,6 +93,8 @@ HMAC-SHA test passed!
|
||||
HAC-SHA256 test passed!
|
||||
HMAC-SHA512 test passed!
|
||||
GMC test passed!
|
||||
HC-128 test passed!
|
||||
Rabbit test passed!
|
||||
DS test passed!
|
||||
DS3 test passed!
|
||||
AES test passed!
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* client_wolfssl.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* client_wolfssl.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* server_wolfssl.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* server_wolfssl.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* user_setting.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* wolfsslRunTests.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,173 +0,0 @@
|
||||
# RT-Thread Port
|
||||
## Overview
|
||||
You can enable the wolfSSL support for RT-Thread available [here](https://www.rt-thread.io) using the define `RTTHREAD`.
|
||||
|
||||
## Usage
|
||||
|
||||
wolfSSL supports a compile-time user configurable options in the `IDE/ECLIPSE/RTTHREAD/user_settings.h` file.
|
||||
|
||||
The `wolfssl_test.c` example application provides a simple function to run the test and benchmark.
|
||||
|
||||
1. Open your IDE-based example project for RT-Thread.
|
||||
|
||||
2. Create the following folder and sub-folders structures in your project.
|
||||
```
|
||||
wolfssl
|
||||
|src
|
||||
|wolfcrypt
|
||||
|benchmark
|
||||
|src
|
||||
|test
|
||||
|wolfssl
|
||||
|openssl
|
||||
|wolfcrypt
|
||||
|example
|
||||
```
|
||||
The folder hierarchy is the same as the wolfSSL folders with an exception of the example folder.
|
||||
|
||||
3. Add or link all of the header and source files in `IDE/ECLIPSE/RTTHREAD/` folder into the example folder.
|
||||
|
||||
4. Add or link all the source code in the corresponding folder in wolfSSL.
|
||||
|
||||
5. Remove non-C platform dependent files from your build.
|
||||
|
||||
6. In your C/C++ compiler preprocessor settings, add the wolfSSL directories to your include paths.
|
||||
Here's an example of the paths that must be added.
|
||||
|
||||
```
|
||||
$PROJ_DIR$\...
|
||||
$PROJ_DIR$\...\wolfcrypt
|
||||
$PROJ_DIR$\...\wolfssl
|
||||
$PROJ_DIR$\...\IDE\ECLIPSE\RTTHREAD
|
||||
```
|
||||
|
||||
7. In your C/C++ compiler preprocessor settings, define the WOLFSSL_USER_SETTINGS symbol to add user_settings.h file in your project.
|
||||
|
||||
8. Add a call to `wolfssl_test()` from your startup task. Here's an example:
|
||||
|
||||
```c
|
||||
static void test_task (void *p_arg)
|
||||
{
|
||||
...
|
||||
while (1) {
|
||||
wolfssl_test();
|
||||
rt_thread_mdelay(500);
|
||||
}
|
||||
}
|
||||
```
|
||||
9. Rebuild all your project.
|
||||
|
||||
10. Now you are ready to download and debug your image on the board.
|
||||
|
||||
|
||||
The test results below were collected from the RT-Thread ART-Pi with the following software and tool chains:
|
||||
|
||||
- STM32H750XBH6
|
||||
|
||||
- RT-Thread Studio (Version: 2.0.0)
|
||||
|
||||
- GNU ARM Cross C Compiler (Optimization level: -O0)
|
||||
|
||||
- The starting project is based on [RT-Thread ART-Pi SDK](https://github.com/RT-Thread-Studio/sdk-bsp-stm32h750-realthread-artpi) (./projects/art_pi_wifi)
|
||||
|
||||
- wolfssl [latest version](https://github.com/wolfSSL/wolfssl)
|
||||
|
||||
|
||||
### `WOLFSSL_WOLFCRYPT_TEST` output of wolfcrypt_test()
|
||||
```
|
||||
error test passed!
|
||||
MEMORY test passed!
|
||||
base64 test passed!
|
||||
asn test passed!
|
||||
RANDOM test passed!
|
||||
MD5 test passed!
|
||||
MD4 test passed!
|
||||
SHA test passed!
|
||||
SHA-256 test passed!
|
||||
SHA-512 test passed!
|
||||
Hash test passed!
|
||||
HMAC-MD5 test passed!
|
||||
HMAC-SHA test passed!
|
||||
HMAC-SHA256 test passed!
|
||||
HMAC-SHA512 test passed!
|
||||
X963-KDF test passed!
|
||||
GMAC test passed!
|
||||
ARC4 test passed!
|
||||
DES test passed!
|
||||
DES3 test passed!
|
||||
AES test passed!
|
||||
AES192 test passed!
|
||||
AES256 test passed!
|
||||
AES-GCM test passed!
|
||||
AES Key Wrap test passed!
|
||||
RSA test passed!
|
||||
DH test passed!
|
||||
DSA test passed!
|
||||
PWDBASED test passed!
|
||||
ECC test passed!
|
||||
ECC buffer test passed!
|
||||
CURVE25519 test passed!
|
||||
ED25519 test passed!
|
||||
PKCS7encrypted test passed!
|
||||
PKCS7signed test passed!
|
||||
PKCS7enveloped test passed!
|
||||
PKCS7authenveloped test passed!
|
||||
logging test passed!
|
||||
mutex test passed!
|
||||
memcb test passed!
|
||||
```
|
||||
### `WOLFSSL_BENCHMARK_TEST` output of benchmark_test()
|
||||
```
|
||||
------------------------------------------------------------------------------
|
||||
wolfSSL version 4.5.0
|
||||
------------------------------------------------------------------------------
|
||||
wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
|
||||
RNG 50 KB took 1.000 seconds, 50.000 KB/s
|
||||
AES-128-CBC-enc 2 MB took 1.000 seconds, 2.075 MB/s
|
||||
AES-128-CBC-dec 2 MB took 1.000 seconds, 1.611 MB/s
|
||||
AES-192-CBC-enc 2 MB took 1.000 seconds, 2.002 MB/s
|
||||
AES-192-CBC-dec 2 MB took 1.000 seconds, 1.514 MB/s
|
||||
AES-256-CBC-enc 2 MB took 1.000 seconds, 1.855 MB/s
|
||||
AES-256-CBC-dec 1 MB took 1.000 seconds, 1.465 MB/s
|
||||
AES-128-GCM-enc 700 KB took 1.000 seconds, 700.000 KB/s
|
||||
AES-128-GCM-dec 675 KB took 1.000 seconds, 675.000 KB/s
|
||||
AES-192-GCM-enc 675 KB took 1.000 seconds, 675.000 KB/s
|
||||
AES-192-GCM-dec 675 KB took 1.000 seconds, 675.000 KB/s
|
||||
AES-256-GCM-enc 650 KB took 1.000 seconds, 650.000 KB/s
|
||||
AES-256-GCM-dec 650 KB took 1.000 seconds, 650.000 KB/s
|
||||
AES-128-ECB-enc 2 MB took 1.000 seconds, 1.902 MB/s
|
||||
AES-128-ECB-dec 2 MB took 1.000 seconds, 1.521 MB/s
|
||||
AES-192-ECB-enc 2 MB took 1.000 seconds, 1.780 MB/s
|
||||
AES-192-ECB-dec 1 MB took 1.000 seconds, 1.433 MB/s
|
||||
AES-256-ECB-enc 2 MB took 1.000 seconds, 1.638 MB/s
|
||||
AES-256-ECB-dec 1 MB took 1.000 seconds, 1.405 MB/s
|
||||
ARC4 5 MB took 1.000 seconds, 4.956 MB/s
|
||||
RABBIT 6 MB took 1.000 seconds, 6.470 MB/s
|
||||
3DES 750 KB took 1.000 seconds, 750.000 KB/s
|
||||
MD5 12 MB took 1.000 seconds, 12.061 MB/s
|
||||
SHA 4 MB took 1.000 seconds, 3.979 MB/s
|
||||
SHA-256 2 MB took 1.000 seconds, 1.782 MB/s
|
||||
SHA-512 1 MB took 1.000 seconds, 1.001 MB/s
|
||||
HMAC-MD5 12 MB took 1.000 seconds, 12.329 MB/s
|
||||
HMAC-SHA 4 MB took 1.000 seconds, 3.662 MB/s
|
||||
HMAC-SHA256 2 MB took 1.000 seconds, 1.758 MB/s
|
||||
HMAC-SHA512 1 MB took 1.000 seconds, 1.001 MB/s
|
||||
PBKDF2 224 bytes took 1.000 seconds, 224.000 bytes/s
|
||||
RSA 2048 public 20 ops took 1.000 sec, avg 50.000 ms, 20.000 ops/sec
|
||||
RSA 2048 private 2 ops took 1.000 sec, avg 500.000 ms, 2.000 ops/sec
|
||||
DH 2048 key gen 4 ops took 1.000 sec, avg 250.000 ms, 4.000 ops/sec
|
||||
DH 2048 agree 4 ops took 1.000 sec, avg 250.000 ms, 4.000 ops/sec
|
||||
ECC 256 key gen 6 ops took 1.000 sec, avg 166.667 ms, 6.000 ops/sec
|
||||
ECDHE 256 agree 6 ops took 1.000 sec, avg 166.667 ms, 6.000 ops/sec
|
||||
ECDSA 256 sign 6 ops took 1.000 sec, avg 166.667 ms, 6.000 ops/sec
|
||||
ECDSA 256 verify 4 ops took 1.000 sec, avg 250.000 ms, 4.000 ops/sec
|
||||
CURVE 25519 key gen 4 ops took 1.000 sec, avg 250.000 ms, 4.000 ops/sec
|
||||
CURVE 25519 agree 2 ops took 1.000 sec, avg 500.000 ms, 2.000 ops/sec
|
||||
ED 25519 key gen 4 ops took 1.000 sec, avg 250.000 ms, 4.000 ops/sec
|
||||
ED 25519 sign 2 ops took 1.000 sec, avg 500.000 ms, 2.000 ops/sec
|
||||
ED 25519 verify 2 ops took 1.000 sec, avg 500.000 ms, 2.000 ops/sec
|
||||
```
|
||||
|
||||
## References
|
||||
|
||||
For more information please contact info@wolfssl.com.
|
@ -1,8 +0,0 @@
|
||||
# vim:ft=automake
|
||||
# included from Top Level Makefile.am
|
||||
# All paths should be given relative to the root
|
||||
|
||||
EXTRA_DIST += \
|
||||
IDE/ECLIPSE/RTTHREAD/README.md \
|
||||
IDE/ECLIPSE/RTTHREAD/user_settings.h \
|
||||
IDE/ECLIPSE/RTTHREAD/wolfssl_test.c
|
@ -1,81 +0,0 @@
|
||||
/* user_setting.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 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
|
||||
*/
|
||||
|
||||
#ifndef WOLFSSL_USER_SETTINGS_H_
|
||||
#define WOLFSSL_USER_SETTINGS_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define RTTHREAD
|
||||
|
||||
/* You can select one or all of the following tests */
|
||||
#define WOLFSSL_WOLFCRYPT_TEST
|
||||
#define WOLFSSL_BENCHMARK_TEST
|
||||
#define WOLFSSL_CLIENT_TEST
|
||||
#define WOLFSSL_SERVER_TEST
|
||||
#define USE_TEST_GENSEED
|
||||
#define NO_DEV_RANDOM
|
||||
#define HAVE_PKCS7
|
||||
#define HAVE_AES_KEYWRAP
|
||||
#define HAVE_X963_KDF
|
||||
#define WOLFSSL_AES_DIRECT
|
||||
/* adjust CURRENT_UNIX_TS to seconds since Jan 01 1970. (UTC)
|
||||
You can get the current time from https://www.unixtimestamp.com/
|
||||
*/
|
||||
#define CURRENT_UNIX_TS 1542605837UL
|
||||
|
||||
/* When using Windows simulator, you must define USE_WINDOWS_API for test.h to build */
|
||||
#ifdef _WIN32
|
||||
#define USE_WINDOWS_API
|
||||
#endif
|
||||
|
||||
#define NO_FILESYSTEM
|
||||
#define SIZEOF_LONG_LONG 8
|
||||
|
||||
/* prevents from including multiple definition of main() */
|
||||
#define NO_MAIN_DRIVER
|
||||
#define NO_TESTSUITE_MAIN_DRIVER
|
||||
|
||||
/* includes certificate test buffers via header files */
|
||||
#define USE_CERT_BUFFERS_2048
|
||||
/*use kB instead of mB for embedded benchmarking*/
|
||||
#define BENCH_EMBEDDED
|
||||
|
||||
#define NO_WRITE_TEMP_FILES
|
||||
|
||||
#define XSNPRINTF snprintf
|
||||
#define NO_WRITEV
|
||||
|
||||
#define HAVE_AESGCM
|
||||
#define WOLFSSL_SHA512
|
||||
#define HAVE_ECC
|
||||
#define HAVE_CURVE25519
|
||||
#define CURVE25519_SMALL
|
||||
#define HAVE_ED25519
|
||||
#define ED25519_SMALL
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif
|
@ -1,33 +0,0 @@
|
||||
/* wolfsslRunTests.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 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
|
||||
*/
|
||||
#include <stdint.h>
|
||||
#include <wolfcrypt/test/test.h>
|
||||
#include <wolfcrypt/benchmark/benchmark.h>
|
||||
|
||||
int wolfssl_test(void) {
|
||||
#if !defined(NO_CRYPT_TEST)
|
||||
wolfcrypt_test(NULL);
|
||||
#endif
|
||||
#if !defined(NO_CRYPT_BENCHMARK)
|
||||
benchmark_test(NULL);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
@ -1,37 +1,30 @@
|
||||
# ESP-IDF port
|
||||
|
||||
NOTICE: These Espressif examples have been created and tested with the latest stable release branch of
|
||||
[ESP-IDF V4](https://docs.espressif.com/projects/esp-idf/en/v4.4.1/esp32/get-started/index.html)
|
||||
and have not yet been upgraded to the master branch V5.
|
||||
See the latest [migration guides](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/migration-guides/index.html).
|
||||
|
||||
## Overview
|
||||
ESP-IDF development framework with wolfSSL by setting *WOLFSSL_ESPIDF* definition
|
||||
|
||||
Including the following examples:
|
||||
|
||||
* Simple [TLS client](./examples/wolfssl_client/)/[server](./examples/wolfssl_server/)
|
||||
* Cryptographic [test](./examples/wolfssl_test/)
|
||||
* Cryptographic [benchmark](./examples/wolfssl_benchmark/)
|
||||
* simple tls_client/server
|
||||
* crypt test
|
||||
* crypt benchmark
|
||||
|
||||
The *user_settings.h* file enables some of the hardened settings.
|
||||
|
||||
## Requirements
|
||||
1. [ESP-IDF development framework](https://docs.espressif.com/projects/esp-idf/en/latest/get-started/)
|
||||
1. ESP-IDF development framework
|
||||
[https://docs.espressif.com/projects/esp-idf/en/latest/get-started/]
|
||||
|
||||
## Setup for Linux
|
||||
1. Run `setup.sh` at _/path/to_`/wolfssl/IDE/Espressif/ESP-IDF/` to deploy files into ESP-IDF tree
|
||||
2. Find Wolfssl files at _/path/to/esp_`/esp-idf/components/wolfssl/`
|
||||
3. Find [Example programs](https://github.com/wolfSSL/wolfssl/tree/master/IDE/Espressif/ESP-IDF/examples) under _/path/to/esp_`/esp-idf/examples/protocols/wolfssl_xxx` (where xxx is the project name)
|
||||
Note: This expects to use Linux version.
|
||||
|
||||
## Setup for Windows
|
||||
1. Run ESP-IDF Command Prompt (cmd.exe) or Run ESP-IDF PowerShell Environment
|
||||
2. Run `setup_win.bat` at `.\IDE\Espressif\ESP-IDF\`
|
||||
3. Find Wolfssl files at _/path/to/esp_`/esp-idf/components/wolfssl/`
|
||||
4. Find [Example programs](https://github.com/wolfSSL/wolfssl/tree/master/IDE/Espressif/ESP-IDF/examples) under _/path/to/esp_`/esp-idf/examples/protocols/wolfssl_xxx` (where xxx is the project name)
|
||||
## Setup
|
||||
1. Run *setup.sh* to deploy files into ESP-IDF tree
|
||||
2. Find Wolfssl files at /path/to/esp-idf/components/wolfssl/
|
||||
3. Find Example programs under /path/to/esp-idf/examples/protocols/wolfssl_xxx
|
||||
4. Uncomment out #define WOLFSSL_ESPIDF in /path/to/wolfssl/wolfssl/wolfcrypt/settings.h
|
||||
Uncomment out #define WOLFSSL_ESPWROOM32 in /path/to/wolfssl/wolfssl/wolfcrypt/settings.h
|
||||
|
||||
## Configuration
|
||||
1. The `user_settings.h` can be found in _/path/to/esp_`/esp-idf/components/wolfssl/include/user_settings.h`
|
||||
1. The *user_settings.h* can be found in /path/to/esp-idf/components/wolfssl/include/user_settings.h
|
||||
|
||||
## Build examples
|
||||
1. See README in each example folder
|
||||
@ -39,7 +32,4 @@ Including the following examples:
|
||||
## Support
|
||||
For question please email [support@wolfssl.com]
|
||||
|
||||
Note: This is tested with :
|
||||
- OS: Ubuntu 20.04.3 LTS and Microsoft Windows 10 Pro 10.0.19041 and well as WSL Ubuntu
|
||||
- ESP-IDF: ESP-IDF v4.3.2
|
||||
- Module : ESP32-WROOM-32
|
||||
Note: This is tested with "Ubuntu 18.04.1 LTS" and ESP32-WROOM-32.
|
||||
|
@ -1,31 +1,35 @@
|
||||
# DEMO program with ATECC608A on ESP-WROOM-32SE
|
||||
## Overview
|
||||
Running demo programs with ATECC608A on 32SE by setting `WOLFSSL_ESPWROOM32SE` definition
|
||||
Running demo programs with ATECC608A on 32SE by setting *WOLFSSL_ESPWROOM32SE* definition
|
||||
|
||||
Including the following examples:
|
||||
|
||||
* simple `TLS client`/`server`
|
||||
* simple tls_client/tls_server
|
||||
* crypt benchmark
|
||||
|
||||
The `user_settings.h` file enables some of the hardened settings.
|
||||
|
||||
The *user_settings.h* file enables some of the hardened settings.
|
||||
|
||||
## Requirements
|
||||
1. ESP-IDF development framework: https://docs.espressif.com/projects/esp-idf/en/latest/get-started/
|
||||
|
||||
2. Microchip CryptoAuthentication Library: https://github.com/MicrochipTech/cryptoauthlib
|
||||
1. ESP-IDF development framework
|
||||
[https://docs.espressif.com/projects/esp-idf/en/latest/get-started/]
|
||||
|
||||
2. Microchip CryptoAuthentication Library
|
||||
[https://github.com/MicrochipTech/cryptoauthlib]
|
||||
|
||||
## Setup
|
||||
1. Comment out `#define WOLFSSL_ESPWROOM32` in `/path/to/wolfssl/IDE/Espressif/ESP-IDF/user_settings.h`\
|
||||
Uncomment out `#define WOLFSSL_ESPWROOM32SE` in `/path/to/wolfssl/IDE/Espressif/ESP-IDF/user_settings.h`
|
||||
* **Note:** crypt test will fail if enabled `WOLFSSL_ESPWROOM32SE`
|
||||
3. wolfSSL under ESP-IDF. Please see [README.md](https://github.com/wolfSSL/wolfssl/blob/master/IDE/Espressif/ESP-IDF/README.md)
|
||||
4. CryptoAuthentication Library under ESP-IDF. Please see [README.md](https://github.com/miyazakh/cryptoauthlib_esp_idf/blob/master/README.md)
|
||||
|
||||
1. wolfSSL under ESP-IDF. Please see [README.md](https://github.com/wolfSSL/wolfssl/blob/master/IDE/Espressif/ESP-IDF/README.md)
|
||||
2. CryptoAuthentication Library under ESP-IDF. Please see [README.md](https://github.com/miyazakh/cryptoauthlib_esp_idf/blob/master/README.md)
|
||||
|
||||
3. Uncomment out #define WOLFSSL_ESPWROOM32SE in /path/to/wolfssl/wolfssl/wolfcrypt/settings.h
|
||||
|
||||
Note : Need to enable WOLFSSL_ESPIDF
|
||||
Note : crypt test will fail if enabled WOLFSSL_ESPWROOM32SE
|
||||
|
||||
## Configuration
|
||||
1. The `user_settings.h` can be found in `/path/to/esp-idf/components/wolfssl/include/user_settings.h`
|
||||
1. The *user_settings.h* can be found in /path/to/esp-idf/components/wolfssl/include/user_settings.h
|
||||
|
||||
## Build examples
|
||||
1. See `README` in each example folder
|
||||
1. See README in each example folder
|
||||
|
||||
## Benchmark
|
||||
w/o atecc608a
|
||||
@ -44,11 +48,11 @@ ECDSA 256 verify 14 ops took 1.079 sec, avg 77.071 ms, 12.975 ops/sec
|
||||
```
|
||||
|
||||
## Support
|
||||
For question please email [support@wolfssl.com](mailto:support@wolfssl.com)
|
||||
For question please email [support@wolfssl.com]
|
||||
|
||||
Note: This is tested with the following condition:
|
||||
|
||||
- Model : ESP32-WROOM-32SE
|
||||
- ESP-IDF : v3.3-beta1-39-g6cb37ecc5(commit hash : 6cb37ecc5)
|
||||
Note: This is tested with the following condition:
|
||||
|
||||
- Model : ESP32-WROOM-32SE
|
||||
- ESP-IDF : v3.3-beta1-39-g6cb37ecc5(commit hash : 6cb37ecc5)
|
||||
- CryptAuthLib: commit hash : c6b176e
|
||||
- OS : Ubuntu 18.04.1 LTS (Bionic Beaver)
|
||||
|
@ -1,23 +0,0 @@
|
||||
# Espressif Updates
|
||||
|
||||
See [#5795]()
|
||||
|
||||
## Changes in November 2022
|
||||
|
||||
Updates to Espressif ESP-IDF wolfssl_benchmark and wolfssl_test examples:
|
||||
|
||||
- Benchmark example no longer runs tests.
|
||||
- Fixed Test example that was missing code files. (no longer installed locally)
|
||||
- Rename `benchmark/main` and `test/main` filenames from `helper.c` to `main.c`, cleaned up.
|
||||
- Added `main.h`
|
||||
- Revised `main/CMakeLists.txt` to use only `main.c`
|
||||
- Set components `main` and `wolfssl` for project `CMakeLists.txt`
|
||||
- Update wolfcrypt esp32_sha.c and sha256.c to now report unexpected reentry as verbose log rather than error message.
|
||||
- `wolfcrypt/test.c` now returns `args.return_code` when `WOLFSSL_ESPIDF` is defined.
|
||||
- `wolfcrypt/test.h` now declares `int wolf_test_task(void)` when `WOLFSSL_ESPIDF` is defined.
|
||||
- `setup.sh` no longer copies benchmark.c(.h) to local project directory.
|
||||
- Added `libs/Tigard.cfg` file for Tigard JTAG debugger.
|
||||
- Update `sdkconfig.defaults` with compiler optimizations and stack check.
|
||||
- Added VisualGDB Project file & Visual Studio solution file.
|
||||
- Added optional `time_helper` for wolfssl_test
|
||||
- Exclude `ssl_misc.c` in component cmake to fix warning: #warning ssl_misc.c does not need to be compiled separately from ssl.c
|
@ -1,111 +0,0 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# testing script: compileAllExamples
|
||||
#
|
||||
# This script will compile all the local examples, optionally installing wolfSSL in the ESP-IDF components directory.
|
||||
#
|
||||
# Example usage:
|
||||
# cd wolfssl && docker run --rm -v $PWD:/project -w /project espressif/idf:latest IDE/Espressif/ESP-IDF/compileAllExamples.sh
|
||||
#
|
||||
# Parameter option to also run the ./setup.sh to install the wolfSSL component in ESP-IDF and test for multiple installs:
|
||||
#
|
||||
# --run-setup
|
||||
#
|
||||
# Note that once installed, the wolfSSL component will need to be manually removed to successfully run this script.
|
||||
#
|
||||
if [[ "$IDF_PATH" == "" ]]; then
|
||||
echo "Error: $IDF_PATH not found; run Espressif export.sh"
|
||||
exit 1
|
||||
fi
|
||||
SCRIPT_DIR=$(builtin cd ${BASH_SOURCE%/*}; pwd)
|
||||
RUN_SETUP=$1
|
||||
THIS_ERR=0
|
||||
|
||||
echo "Found IDF_PATH = $IDF_PATH"
|
||||
|
||||
# Regular tests of wolfSSL in local component directories of each project:
|
||||
#
|
||||
# Note these tests should FAIL if wolfSSL is already installed in ESP-IDF
|
||||
#
|
||||
for file in "benchmark" "client" "server" "test"; do
|
||||
pushd ${SCRIPT_DIR}/examples/wolfssl_${file}/ && idf.py fullclean build;
|
||||
THIS_ERR=$?
|
||||
popd
|
||||
if [ $THIS_ERR -ne 0 ]; then
|
||||
echo "Failed in ${file}"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
# Check for option to also install wolfSSL.
|
||||
#
|
||||
# When doing so, we'll run a check that multiple installs should cause build failure.
|
||||
if [[ "$RUN_SETUP" == "--run-setup" ]]; then
|
||||
echo "Running wolfSSL setup.sh"
|
||||
|
||||
# install wolfSSL into EDP-IDF shared components directory.
|
||||
./setup.sh --verbose
|
||||
|
||||
THIS_ERR=$?
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Failed running setup.sh"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check ESP-IDF install:
|
||||
#
|
||||
# The wolfssl_test_idf should NOT have a local components/wolfssl when testing!
|
||||
# This test is to confirm the ESP-IDF component build properly after setup.
|
||||
#
|
||||
echo ""
|
||||
echo "Testing a build of wolfSSL in ESP-IDF components directory"
|
||||
echo ""
|
||||
for file in "test_idf"; do
|
||||
pushd ${SCRIPT_DIR}/examples/wolfssl_${file}/ && idf.py fullclean build;
|
||||
THIS_ERR=$?
|
||||
popd
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Failed in ${file}"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
# Check multiple installs: the wolfSSL component in ESP-IDF and local directory:
|
||||
#
|
||||
# The wolfssl_test project already has a local wolfSSL component directory.
|
||||
#
|
||||
# Once wolfssl has been installed to ESP-IDF components, the local
|
||||
# component build SHOULD fail:
|
||||
echo ""
|
||||
echo "Testing a build of wolfSSL in both local and ESP-IDF components directory"
|
||||
echo ""
|
||||
for file in "test"; do
|
||||
pushd ${SCRIPT_DIR}/examples/wolfssl_${file}/ && idf.py fullclean build;
|
||||
THIS_ERR=$?
|
||||
popd
|
||||
if [ $THIS_ERR -ne 0 ]; then
|
||||
echo ""
|
||||
echo "Success: Confirmed build fails when wolfSSL found in ESP-IDF and local project."
|
||||
echo ""
|
||||
else
|
||||
echo "Error: build should have failed when wolfSSL found in ESP-IDF and local project."
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
else
|
||||
echo "Skipping ESP-IDF install tests. For these tests, use parameter: --run-setup"
|
||||
fi
|
||||
|
||||
|
||||
# Show a reminder that wolfSSL was installed as a shared component.
|
||||
if [[ "$RUN_SETUP" == "--run-setup" ]]; then
|
||||
echo ""
|
||||
echo "wolfSSL was installed as an ESP-IDF component. This will be in conflict with any project that has a local component."
|
||||
echo ""
|
||||
echo "Delete the installed component before re-running this test."
|
||||
echo ""
|
||||
fi
|
||||
|
||||
# Done
|
||||
echo "Completed compileAllExamples in $SCRIPT_DIR"
|
@ -1,6 +1,6 @@
|
||||
/* config.h - dummy
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,25 +0,0 @@
|
||||
/* wolfcrypt/test/test_paths.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 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
|
||||
*/
|
||||
|
||||
#ifndef NO_FILESYSTEM
|
||||
#define CERT_PREFIX "@abs_top_srcdir@/"
|
||||
#define CERT_WRITE_TEMP_DIR "@abs_top_builddir@/"
|
||||
#endif /* NO_FILESYSTEM */
|
@ -3,10 +3,4 @@
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
||||
|
||||
set(COMPONENTS
|
||||
main
|
||||
wolfssl
|
||||
) # set components
|
||||
|
||||
project(wolfssl_benchmark)
|
||||
|
@ -1,8 +1,8 @@
|
||||
# wolfSSL Benchmark Example
|
||||
#wolfSSL Example
|
||||
|
||||
The Example contains of wolfSSL benchmark program.
|
||||
|
||||
1. `idf.py menuconfig` to configure the program.
|
||||
1. "make menuconfig" to configure the program.
|
||||
1-1. Example Configuration ->
|
||||
|
||||
BENCH_ARG : argument that you want to use. Default is "-lng 0"
|
||||
@ -10,181 +10,7 @@ The Example contains of wolfSSL benchmark program.
|
||||
|
||||
When you want to run the benchmark program
|
||||
|
||||
1. `idf.py -p <PORT> flash` to compile and load the firmware
|
||||
2. `idf.py monitor` to see the message
|
||||
1. "make flash" to compile and load the firmware
|
||||
2. "make monitor" to see the message
|
||||
|
||||
See the README.md file in the upper level 'examples' directory for more information about examples.
|
||||
|
||||
## Performance
|
||||
|
||||
Reminder than when building on WSL in `/mnt/c` there will be a noticeable performance degradation at compile time. Using `~/` will be faster at the cost of shared filesystems.
|
||||
|
||||
Example build on WSL:
|
||||
|
||||
```
|
||||
Optionally install wolfSSL component
|
||||
# cd /mnt/c/workspace/wolfssl/IDE/Espressif/ESP-IDF
|
||||
./setup.sh
|
||||
|
||||
cd /mnt/c/workspace/wolfssl/IDE/Espressif/ESP-IDF/examples/wolfssl_benchmark
|
||||
|
||||
# Pick ESP-IDF install directory, this one for v4.4.2 in VisualGDB
|
||||
. /mnt/c/SysGCC/esp32/esp-idf/v4.4.2/export.sh
|
||||
|
||||
|
||||
idf.py build flash -p /dev/ttyS20 -b 921600 monitor
|
||||
```
|
||||
|
||||
## Example Output
|
||||
|
||||
Note the default wolfSSL `user_settings.h` is configured by default to be the most
|
||||
compatible across the widest ranges of targets. Contact wolfSSL at support@wolfssl.com
|
||||
for help in optimizing for your particular application, or see the
|
||||
[docs](https://www.wolfssl.com/documentation/manuals/wolfssl/index.html).
|
||||
|
||||
Compiled and flashed with `idf.py build flash -p /dev/ttyS7 -b 921600 monitor`:
|
||||
|
||||
```
|
||||
--- idf_monitor on /dev/ttyS7 115200 ---
|
||||
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
|
||||
(377) cpu_start: Starting scheduler ets Jun 8 2016 00:22:57
|
||||
|
||||
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
|
||||
configsip: 0, SPIWP:0xee
|
||||
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
|
||||
mode:DIO, clock div:2
|
||||
load:0x3fff0030,len:6664
|
||||
load:0x40078000,len:14848
|
||||
load:0x40080400,len:3792
|
||||
0x40080400: _init at ??:?
|
||||
|
||||
entry 0x40080694
|
||||
I (27) boot: ESP-IDF v4.4.2-dirty 2nd stage bootloader
|
||||
I (27) boot: compile time 13:41:41
|
||||
I (27) boot: chip revision: 1
|
||||
I (30) boot_comm: chip revision: 1, min. bootloader chip revision: 0
|
||||
I (37) boot.esp32: SPI Speed : 40MHz
|
||||
I (42) boot.esp32: SPI Mode : DIO
|
||||
I (46) boot.esp32: SPI Flash Size : 2MB
|
||||
I (51) boot: Enabling RNG early entropy source...
|
||||
I (56) boot: Partition Table:
|
||||
I (60) boot: ## Label Usage Type ST Offset Length
|
||||
I (67) boot: 0 nvs WiFi data 01 02 00009000 00006000
|
||||
I (75) boot: 1 phy_init RF data 01 01 0000f000 00001000
|
||||
I (82) boot: 2 factory factory app 00 00 00010000 00100000
|
||||
I (90) boot: End of partition table
|
||||
I (94) boot_comm: chip revision: 1, min. application chip revision: 0
|
||||
I (101) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=12bf4h ( 76788) map
|
||||
I (137) esp_image: segment 1: paddr=00022c1c vaddr=3ffb0000 size=02420h ( 9248) load
|
||||
I (141) esp_image: segment 2: paddr=00025044 vaddr=40080000 size=0afd4h ( 45012) load
|
||||
I (161) esp_image: segment 3: paddr=00030020 vaddr=400d0020 size=33148h (209224) map
|
||||
I (237) esp_image: segment 4: paddr=00063170 vaddr=4008afd4 size=00550h ( 1360) load
|
||||
I (238) esp_image: segment 5: paddr=000636c8 vaddr=50000000 size=00010h ( 16) load
|
||||
I (249) boot: Loaded app from partition at offset 0x10000
|
||||
I (249) boot: Disabling RNG early entropy source...
|
||||
I (266) cpu_start: Pro cpu up.
|
||||
I (266) cpu_start: Starting app cpu, entry point is 0x40081098
|
||||
0x40081098: call_start_cpu1 at /mnt/c/SysGCC/esp32/esp-idf/v4.4.2/components/esp_system/port/cpu_start.c:160
|
||||
|
||||
I (0) cpu_start: App cpu up.
|
||||
I (280) cpu_start: Pro cpu start user code
|
||||
I (280) cpu_start: cpu freq: 240000000
|
||||
I (280) cpu_start: Application information:
|
||||
I (285) cpu_start: Project name: wolfssl_benchmark
|
||||
I (291) cpu_start: App version: v5.5.3-stable-108-gbd7b442df-di
|
||||
I (298) cpu_start: Compile time: Nov 17 2022 14:10:03
|
||||
I (304) cpu_start: ELF file SHA256: fbb520f5bbf963a0...
|
||||
I (310) cpu_start: ESP-IDF: v4.4.2-dirty
|
||||
I (316) heap_init: Initializing. RAM available for dynamic allocation:
|
||||
I (323) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
|
||||
I (329) heap_init: At 3FFB3DE8 len 0002C218 (176 KiB): DRAM
|
||||
I (335) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
|
||||
I (341) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
|
||||
I (348) heap_init: At 4008B524 len 00014ADC (82 KiB): IRAM
|
||||
I (355) spi_flash: detected chip: generic
|
||||
I (359) spi_flash: flash io: dio
|
||||
W (362) spi_flash: Detected size(4096k) larger than the size in the binary image header(2048k). Using the size in the binary image header.
|
||||
I (377) cpu_start: Starting scheduler on PRO CPU.
|
||||
I (0) cpu_start: Starting scheduler on APP CPU.
|
||||
I (391) wolfssl_benchmark: app_main CONFIG_BENCH_ARGV = -lng 0
|
||||
I (397) wolfssl_benchmark: construct_argv arg:-lng 0
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
wolfSSL version 5.5.3
|
||||
------------------------------------------------------------------------------
|
||||
wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
|
||||
RNG 1 MiB took 1.017 seconds, 1.320 MiB/s
|
||||
AES-128-CBC-enc 6 MiB took 1.002 seconds, 5.726 MiB/s
|
||||
AES-128-CBC-dec 5 MiB took 1.000 seconds, 5.347 MiB/s
|
||||
AES-192-CBC-enc 6 MiB took 1.004 seconds, 5.714 MiB/s
|
||||
AES-192-CBC-dec 5 MiB took 1.001 seconds, 5.341 MiB/s
|
||||
AES-256-CBC-enc 6 MiB took 1.000 seconds, 5.713 MiB/s
|
||||
AES-256-CBC-dec 5 MiB took 1.002 seconds, 5.336 MiB/s
|
||||
AES-128-GCM-enc 300 KiB took 1.004 seconds, 298.805 KiB/s
|
||||
AES-128-GCM-dec 300 KiB took 1.004 seconds, 298.805 KiB/s
|
||||
AES-192-GCM-enc 300 KiB took 1.007 seconds, 297.915 KiB/s
|
||||
AES-192-GCM-dec 300 KiB took 1.008 seconds, 297.619 KiB/s
|
||||
AES-256-GCM-enc 300 KiB took 1.011 seconds, 296.736 KiB/s
|
||||
AES-256-GCM-dec 300 KiB took 1.011 seconds, 296.736 KiB/s
|
||||
GMAC Default 403 KiB took 1.002 seconds, 402.196 KiB/s
|
||||
3DES 450 KiB took 1.028 seconds, 437.743 KiB/s
|
||||
MD5 14 MiB took 1.001 seconds, 13.756 MiB/s
|
||||
SHA 14 MiB took 1.001 seconds, 14.463 MiB/s
|
||||
SHA-256 14 MiB took 1.000 seconds, 14.233 MiB/s
|
||||
SHA-512 17 MiB took 1.000 seconds, 16.626 MiB/s
|
||||
HMAC-MD5 14 MiB took 1.000 seconds, 13.599 MiB/s
|
||||
HMAC-SHA 14 MiB took 1.000 seconds, 13.989 MiB/s
|
||||
HMAC-SHA256 14 MiB took 1.000 seconds, 13.940 MiB/s
|
||||
HMAC-SHA512 16 MiB took 1.000 seconds, 16.064 MiB/s
|
||||
PBKDF2 640 bytes took 1.009 seconds, 634.291 bytes/s
|
||||
RSA 2048 public 52 ops took 1.022 sec, avg 19.654 ms, 50.881 ops/sec
|
||||
RSA 2048 private 4 ops took 1.056 sec, avg 264.000 ms, 3.788 ops/sec
|
||||
ECC [ SECP256R1] 256 key gen 4 ops took 1.216 sec, avg 304.000 ms, 3.289 ops/sec
|
||||
ECDHE [ SECP256R1] 256 agree 4 ops took 1.215 sec, avg 303.750 ms, 3.292 ops/sec
|
||||
ECDSA [ SECP256R1] 256 sign 4 ops took 1.226 sec, avg 306.500 ms, 3.263 ops/sec
|
||||
ECDSA [ SECP256R1] 256 verify 2 ops took 1.172 sec, avg 586.000 ms, 1.706 ops/sec
|
||||
CURVE 25519 key gen 3 ops took 1.279 sec, avg 426.333 ms, 2.346 ops/sec
|
||||
CURVE 25519 agree 4 ops took 1.701 sec, avg 425.250 ms, 2.352 ops/sec
|
||||
ED 25519 key gen 46 ops took 1.008 sec, avg 21.913 ms, 45.635 ops/sec
|
||||
ED 25519 sign 42 ops took 1.038 sec, avg 24.714 ms, 40.462 ops/sec
|
||||
ED 25519 verify 26 ops took 1.009 sec, avg 38.808 ms, 25.768 ops/sec
|
||||
Benchmark complete
|
||||
```
|
||||
|
||||
## Known Issues and Common Issues
|
||||
|
||||
### Permission denied
|
||||
|
||||
Delete project directory `build`, `.visualgdb` and `.vs` directories. Ensure no other build
|
||||
process is using the same files in Windows, WSL, Visual Studio, VSCode, etc.
|
||||
|
||||
Example message:
|
||||
|
||||
```
|
||||
-- Building ESP-IDF components for target esp32
|
||||
CMake Error at /mnt/c/SysGCC/esp32/esp-idf/v4.4.2/tools/cmake/component.cmake:131 (file):
|
||||
file failed to open for writing (Permission denied):
|
||||
|
||||
/mnt/c/workspace-pr/wolfssl/IDE/Espressif/ESP-IDF/examples/wolfssl_test/build/bootloader/component_properties.temp.cmake
|
||||
```
|
||||
|
||||
|
||||
### user_settings.h: No such file or directory
|
||||
|
||||
Ensure wolfSSL is installed in the ESP-IDF or local project `components` directory.
|
||||
|
||||
Example message:
|
||||
|
||||
```
|
||||
esp-idf/main/CMakeFiles/__idf_main.dir/main.c.obj -c ../main/main.c
|
||||
../main/main.c:27:10: fatal error: user_settings.h: No such file or directory
|
||||
#include <user_settings.h>
|
||||
^~~~~~~~~~~~~~~~~
|
||||
compilation terminated.
|
||||
```
|
||||
|
||||
A 'clean` may be needed after freshly installing a new component:
|
||||
|
||||
```
|
||||
idf.py clean build flash -p /dev/ttyS7 -b 921600 monitor
|
||||
```
|
@ -1,58 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.33027.164
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{803FD0C6-D64E-4E16-9DC3-1DAEC859A3D2}") = "wolfssl_benchmark", "wolfssl_benchmark_IDF_v4.4_ESP32.vgdbproj", "{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{51FEFEA9-C2BA-43A1-8B36-9140367E5AAF}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\..\..\..\..\..\wolfcrypt\benchmark\benchmark.c = ..\..\..\..\..\..\wolfcrypt\benchmark\benchmark.c
|
||||
..\..\..\..\..\..\wolfcrypt\benchmark\benchmark.h = ..\..\..\..\..\..\wolfcrypt\benchmark\benchmark.h
|
||||
..\sdkconfig.defaults = ..\sdkconfig.defaults
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "wolfssl", "wolfssl", "{E0C1A3C6-D2E2-4E10-890C-3468B1B8834C}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\components\wolfssl\CMakeLists.txt = ..\components\wolfssl\CMakeLists.txt
|
||||
..\components\wolfssl\component.mk = ..\components\wolfssl\component.mk
|
||||
..\..\..\..\..\..\wolfcrypt\src\sha.c = ..\..\..\..\..\..\wolfcrypt\src\sha.c
|
||||
..\..\..\..\..\..\wolfcrypt\src\sha256.c = ..\..\..\..\..\..\wolfcrypt\src\sha256.c
|
||||
..\..\..\..\..\..\wolfcrypt\src\sha3.c = ..\..\..\..\..\..\wolfcrypt\src\sha3.c
|
||||
..\..\..\..\..\..\wolfcrypt\src\sha512.c = ..\..\..\..\..\..\wolfcrypt\src\sha512.c
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "include", "include", "{530960D7-4FAB-4683-9C83-35ADE6C00358}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\components\wolfssl\include\config.h = ..\components\wolfssl\include\config.h
|
||||
..\components\wolfssl\include\user_settings.h = ..\components\wolfssl\include\user_settings.h
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|VisualGDB = Debug|VisualGDB
|
||||
Release|VisualGDB = Release|VisualGDB
|
||||
Tests (Debug)|VisualGDB = Tests (Debug)|VisualGDB
|
||||
Tests (Release)|VisualGDB = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Debug|VisualGDB.ActiveCfg = Debug|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Debug|VisualGDB.Build.0 = Debug|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Release|VisualGDB.ActiveCfg = Release|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Release|VisualGDB.Build.0 = Release|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Debug)|VisualGDB.ActiveCfg = Tests (Debug)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Debug)|VisualGDB.Build.0 = Tests (Debug)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Release)|VisualGDB.ActiveCfg = Tests (Release)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Release)|VisualGDB.Build.0 = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{E0C1A3C6-D2E2-4E10-890C-3468B1B8834C} = {51FEFEA9-C2BA-43A1-8B36-9140367E5AAF}
|
||||
{530960D7-4FAB-4683-9C83-35ADE6C00358} = {E0C1A3C6-D2E2-4E10-890C-3468B1B8834C}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {668EEFC0-010C-4688-916F-A628190717D4}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -1,269 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<VisualGDBProjectSettings2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<Project xsi:type="com.visualgdb.project.external.esp-idf">
|
||||
<CustomSourceDirectories>
|
||||
<Directories />
|
||||
<PathStyle>Unknown</PathStyle>
|
||||
</CustomSourceDirectories>
|
||||
<AutoProgramSPIFFSPartition>true</AutoProgramSPIFFSPartition>
|
||||
<ProjectModeSettings>
|
||||
<ProjectGUID>7bbd1486-d457-4e49-92ba-0cfc9d80849e</ProjectGUID>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<HeaderScanMode>SourceDirs</HeaderScanMode>
|
||||
</ProjectModeSettings>
|
||||
</Project>
|
||||
<Build xsi:type="com.visualgdb.build.cmake">
|
||||
<BuildLogMode xsi:nil="true" />
|
||||
<ToolchainID>
|
||||
<ID>com.visualgdb.xtensa-esp32-elf</ID>
|
||||
<Version>
|
||||
<GCC>8.4.0</GCC>
|
||||
<GDB>8.1.0</GDB>
|
||||
<Revision>9</Revision>
|
||||
</Version>
|
||||
</ToolchainID>
|
||||
<RelativeSourceDirectory>..</RelativeSourceDirectory>
|
||||
<ConfigurationType>DEBUG</ConfigurationType>
|
||||
<BinaryDirectory>build/$(PlatformName)/$(ConfigurationName)</BinaryDirectory>
|
||||
<MakeCommandTemplate>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(ToolchainNinja)</Command>
|
||||
<WorkingDirectory>$(BuildDir)</WorkingDirectory>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</MakeCommandTemplate>
|
||||
<CMakeCommand>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(SYSPROGS_CMAKE_PATH)</Command>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</CMakeCommand>
|
||||
<UpdateSourcesInCMakeFile>true</UpdateSourcesInCMakeFile>
|
||||
<ExportCompileCommands>false</ExportCompileCommands>
|
||||
<DisableToolchainFile>false</DisableToolchainFile>
|
||||
<CMakeMakefileType>Ninja</CMakeMakefileType>
|
||||
<DeployAsRoot>false</DeployAsRoot>
|
||||
<CMakeCleanMode>RemoveBuildDirectory</CMakeCleanMode>
|
||||
<UseCCache>false</UseCCache>
|
||||
<ProjectModeSettings>
|
||||
<ProjectItemSettings>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<GroupTargetsByPaths>true</GroupTargetsByPaths>
|
||||
<FollowCMakeSourceGroups>false</FollowCMakeSourceGroups>
|
||||
<AutoRefreshProject>true</AutoRefreshProject>
|
||||
<AlwaysConsiderOutdated>false</AlwaysConsiderOutdated>
|
||||
<SortTargetsByName>true</SortTargetsByName>
|
||||
<RedundantTargetMode>HideOuterProjectTargets</RedundantTargetMode>
|
||||
<SortSourcesByName>true</SortSourcesByName>
|
||||
<BuildAllTargetsInSubdir>false</BuildAllTargetsInSubdir>
|
||||
<FoldSingleItemPathLevels>true</FoldSingleItemPathLevels>
|
||||
</ProjectItemSettings>
|
||||
<TargetSpecificSettings />
|
||||
<SetLDLibraryPathFromDependentArtifacts>true</SetLDLibraryPathFromDependentArtifacts>
|
||||
<ProjectGUID>eadcc9ab-72b3-4b51-a838-593e5d80ddf7</ProjectGUID>
|
||||
<VirtualFolders />
|
||||
<ConfigurationNameCase>Upper</ConfigurationNameCase>
|
||||
<DefaultHeaderDiscoveryMode>HeaderDirectoryAndSubdirectories</DefaultHeaderDiscoveryMode>
|
||||
<EnableFastUpToDateCheck>true</EnableFastUpToDateCheck>
|
||||
<ESPIDFExtension>
|
||||
<IDFCheckout>
|
||||
<Version>v4.4.1</Version>
|
||||
<Subdirectory>esp-idf/v4.4.1</Subdirectory>
|
||||
<Type>ESPIDF</Type>
|
||||
</IDFCheckout>
|
||||
<COMPort>COM20</COMPort>
|
||||
<SuppressTestPrerequisiteChecks>false</SuppressTestPrerequisiteChecks>
|
||||
<UseCCache>false</UseCCache>
|
||||
<DeviceID>ESP32</DeviceID>
|
||||
</ESPIDFExtension>
|
||||
</ProjectModeSettings>
|
||||
</Build>
|
||||
<CustomBuild>
|
||||
<PreSyncActions />
|
||||
<PreBuildActions />
|
||||
<PostBuildActions />
|
||||
<PreCleanActions />
|
||||
<PostCleanActions />
|
||||
</CustomBuild>
|
||||
<CustomDebug>
|
||||
<PreDebugActions />
|
||||
<PostDebugActions />
|
||||
<DebugStopActions />
|
||||
<BreakMode>Default</BreakMode>
|
||||
</CustomDebug>
|
||||
<DeviceTerminalSettings>
|
||||
<Connection xsi:type="com.sysprogs.terminal.connection.serial">
|
||||
<ComPortName>COM20</ComPortName>
|
||||
<AdvancedSettings>
|
||||
<BaudRate>115200</BaudRate>
|
||||
<DataBits>8</DataBits>
|
||||
<Parity>None</Parity>
|
||||
<StopBits>One</StopBits>
|
||||
<FlowControl>None</FlowControl>
|
||||
</AdvancedSettings>
|
||||
</Connection>
|
||||
<LastConnectionTime>0</LastConnectionTime>
|
||||
<EchoTypedCharacters>false</EchoTypedCharacters>
|
||||
<ClearContentsWhenReconnecting>false</ClearContentsWhenReconnecting>
|
||||
<ReconnectAutomatically>false</ReconnectAutomatically>
|
||||
<DisplayMode>ASCII</DisplayMode>
|
||||
<Colors>
|
||||
<Background>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>0</Red>
|
||||
<Green>0</Green>
|
||||
<Blue>0</Blue>
|
||||
</Background>
|
||||
<Disconnected>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Disconnected>
|
||||
<Text>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>211</Red>
|
||||
<Green>211</Green>
|
||||
<Blue>211</Blue>
|
||||
</Text>
|
||||
<Echo>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>144</Red>
|
||||
<Green>238</Green>
|
||||
<Blue>144</Blue>
|
||||
</Echo>
|
||||
<Inactive>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Inactive>
|
||||
</Colors>
|
||||
<HexSettings>
|
||||
<MaximumBytesPerLine>16</MaximumBytesPerLine>
|
||||
<ShowTextView>true</ShowTextView>
|
||||
<BreaksAroundEcho>true</BreaksAroundEcho>
|
||||
<AutoSend>true</AutoSend>
|
||||
<SendAsHex>true</SendAsHex>
|
||||
<TimeoutForAutoBreak>0</TimeoutForAutoBreak>
|
||||
</HexSettings>
|
||||
<LineEnding>LF</LineEnding>
|
||||
<TreatLFAsCRLF>false</TreatLFAsCRLF>
|
||||
<KeepOpenAfterExit>false</KeepOpenAfterExit>
|
||||
<ShowAfterProgramming>false</ShowAfterProgramming>
|
||||
</DeviceTerminalSettings>
|
||||
<CustomShortcuts>
|
||||
<Shortcuts />
|
||||
<ShowMessageAfterExecuting>true</ShowMessageAfterExecuting>
|
||||
</CustomShortcuts>
|
||||
<UserDefinedVariables />
|
||||
<ImportedPropertySheets />
|
||||
<CodeSense>
|
||||
<Enabled>Unknown</Enabled>
|
||||
<ExtraSettings>
|
||||
<HideErrorsInSystemHeaders>true</HideErrorsInSystemHeaders>
|
||||
<SupportLightweightReferenceAnalysis>true</SupportLightweightReferenceAnalysis>
|
||||
<CheckForClangFormatFiles>true</CheckForClangFormatFiles>
|
||||
<FormattingEngine xsi:nil="true" />
|
||||
</ExtraSettings>
|
||||
<CodeAnalyzerSettings>
|
||||
<Enabled>false</Enabled>
|
||||
</CodeAnalyzerSettings>
|
||||
</CodeSense>
|
||||
<Configurations>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Debug</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Release</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
</Configurations>
|
||||
<ProgramArgumentsSuggestions />
|
||||
<Debug xsi:type="com.visualgdb.debug.embedded">
|
||||
<AdditionalStartupCommands />
|
||||
<AdditionalGDBSettings>
|
||||
<Features>
|
||||
<DisableAutoDetection>false</DisableAutoDetection>
|
||||
<UseFrameParameter>false</UseFrameParameter>
|
||||
<SimpleValuesFlagSupported>false</SimpleValuesFlagSupported>
|
||||
<ListLocalsSupported>false</ListLocalsSupported>
|
||||
<ByteLevelMemoryCommandsAvailable>false</ByteLevelMemoryCommandsAvailable>
|
||||
<ThreadInfoSupported>false</ThreadInfoSupported>
|
||||
<PendingBreakpointsSupported>false</PendingBreakpointsSupported>
|
||||
<SupportTargetCommand>false</SupportTargetCommand>
|
||||
<ReliableBreakpointNotifications>false</ReliableBreakpointNotifications>
|
||||
</Features>
|
||||
<EnableSmartStepping>false</EnableSmartStepping>
|
||||
<FilterSpuriousStoppedNotifications>false</FilterSpuriousStoppedNotifications>
|
||||
<ForceSingleThreadedMode>false</ForceSingleThreadedMode>
|
||||
<UseAppleExtensions>false</UseAppleExtensions>
|
||||
<CanAcceptCommandsWhileRunning>false</CanAcceptCommandsWhileRunning>
|
||||
<MakeLogFile>false</MakeLogFile>
|
||||
<IgnoreModuleEventsWhileStepping>true</IgnoreModuleEventsWhileStepping>
|
||||
<UseRelativePathsOnly>false</UseRelativePathsOnly>
|
||||
<ExitAction>None</ExitAction>
|
||||
<DisableDisassembly>false</DisableDisassembly>
|
||||
<ExamineMemoryWithXCommand>false</ExamineMemoryWithXCommand>
|
||||
<StepIntoNewInstanceEntry>app_main</StepIntoNewInstanceEntry>
|
||||
<ExamineRegistersInRawFormat>true</ExamineRegistersInRawFormat>
|
||||
<DisableSignals>false</DisableSignals>
|
||||
<EnableAsyncExecutionMode>false</EnableAsyncExecutionMode>
|
||||
<AsyncModeSupportsBreakpoints>true</AsyncModeSupportsBreakpoints>
|
||||
<TemporaryBreakConsolidationTimeout>0</TemporaryBreakConsolidationTimeout>
|
||||
<EnableNonStopMode>false</EnableNonStopMode>
|
||||
<MaxBreakpointLimit>0</MaxBreakpointLimit>
|
||||
<EnableVerboseMode>true</EnableVerboseMode>
|
||||
<EnablePrettyPrinters>false</EnablePrettyPrinters>
|
||||
</AdditionalGDBSettings>
|
||||
<DebugMethod>
|
||||
<ID>openocd</ID>
|
||||
<Configuration xsi:type="com.visualgdb.edp.openocd.settings.esp32">
|
||||
<CommandLine>-f interface/tigard.cfg -c "adapter_khz 15000" -f target/esp32.cfg</CommandLine>
|
||||
<ExtraParameters>
|
||||
<Frequency xsi:nil="true" />
|
||||
<BoostedFrequency xsi:nil="true" />
|
||||
<ConnectUnderReset>false</ConnectUnderReset>
|
||||
</ExtraParameters>
|
||||
<LoadProgressGUIThreshold>131072</LoadProgressGUIThreshold>
|
||||
<ProgramMode>Enabled</ProgramMode>
|
||||
<StartupCommands>
|
||||
<string>set remotetimeout 60</string>
|
||||
<string>target remote :$$SYS:GDB_PORT$$</string>
|
||||
<string>mon gdb_breakpoint_override hard</string>
|
||||
<string>mon reset halt</string>
|
||||
<string>load</string>
|
||||
</StartupCommands>
|
||||
<ProgramFLASHUsingExternalTool>false</ProgramFLASHUsingExternalTool>
|
||||
<PreferredGDBPort>0</PreferredGDBPort>
|
||||
<PreferredTelnetPort>0</PreferredTelnetPort>
|
||||
<AlwaysPassSerialNumber>false</AlwaysPassSerialNumber>
|
||||
<SelectedCoreIndex xsi:nil="true" />
|
||||
<LiveMemoryTimeout>5000</LiveMemoryTimeout>
|
||||
<SuggestionLogicRevision>1</SuggestionLogicRevision>
|
||||
<CheckFLASHSize>true</CheckFLASHSize>
|
||||
<FLASHSettings>
|
||||
<Size>size2MB</Size>
|
||||
<Frequency>freq40M</Frequency>
|
||||
<Mode>DIO</Mode>
|
||||
</FLASHSettings>
|
||||
<PatchBootloader>true</PatchBootloader>
|
||||
</Configuration>
|
||||
</DebugMethod>
|
||||
<AutoDetectRTOS>true</AutoDetectRTOS>
|
||||
<SemihostingSupport>Disabled</SemihostingSupport>
|
||||
<SemihostingPollingDelay>0</SemihostingPollingDelay>
|
||||
<StepIntoEntryPoint>false</StepIntoEntryPoint>
|
||||
<ReloadFirmwareOnReset>false</ReloadFirmwareOnReset>
|
||||
<ValidateEndOfStackAddress>true</ValidateEndOfStackAddress>
|
||||
<StopAtEntryPoint>false</StopAtEntryPoint>
|
||||
<EnableVirtualHalts>false</EnableVirtualHalts>
|
||||
<DynamicAnalysisSettings />
|
||||
<EndOfStackSymbol>_estack</EndOfStackSymbol>
|
||||
<TimestampProviderTicksPerSecond>0</TimestampProviderTicksPerSecond>
|
||||
<KeepConsoleAfterExit>false</KeepConsoleAfterExit>
|
||||
<UnusedStackFillPattern xsi:nil="true" />
|
||||
<CheckInterfaceDrivers>true</CheckInterfaceDrivers>
|
||||
</Debug>
|
||||
</VisualGDBProjectSettings2>
|
@ -1,59 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.5.33516.290
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{803FD0C6-D64E-4E16-9DC3-1DAEC859A3D2}") = "wolfssl_benchmark_IDF_v5_ESP32", "wolfssl_benchmark_IDF_v5_ESP32.vgdbproj", "{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "wolfssl", "wolfssl", "{BDD063E3-67C1-437F-9F9B-7175E36EE6EE}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\components\wolfssl\CMakeLists.txt = ..\components\wolfssl\CMakeLists.txt
|
||||
..\components\wolfssl\include\config.h = ..\components\wolfssl\include\config.h
|
||||
..\components\wolfssl\Kconfig = ..\components\wolfssl\Kconfig
|
||||
..\components\wolfssl\include\user_settings.h = ..\components\wolfssl\include\user_settings.h
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{E25A35EF-64B9-48AA-939B-49340C2A4B03}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\sdkconfig = ..\sdkconfig
|
||||
..\build\VisualGDB\Debug\config\sdkconfig.h = ..\build\VisualGDB\Debug\config\sdkconfig.h
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "wolfcrypt", "wolfcrypt", "{68571B42-6509-475F-A79D-FB5F6188753B}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\..\..\..\..\..\wolfssl\wolfcrypt\port\Espressif\esp32-crypt.h = ..\..\..\..\..\..\wolfssl\wolfcrypt\port\Espressif\esp32-crypt.h
|
||||
..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_aes.c = ..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_aes.c
|
||||
..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_mp.c = ..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_mp.c
|
||||
..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_sha.c = ..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_sha.c
|
||||
..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_util.c = ..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_util.c
|
||||
..\..\..\..\..\..\wolfcrypt\src\port\Espressif\README.md = ..\..\..\..\..\..\wolfcrypt\src\port\Espressif\README.md
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|VisualGDB = Debug|VisualGDB
|
||||
Release|VisualGDB = Release|VisualGDB
|
||||
Tests (Debug)|VisualGDB = Tests (Debug)|VisualGDB
|
||||
Tests (Release)|VisualGDB = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Debug|VisualGDB.ActiveCfg = Debug|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Debug|VisualGDB.Build.0 = Debug|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Release|VisualGDB.ActiveCfg = Release|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Release|VisualGDB.Build.0 = Release|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Debug)|VisualGDB.ActiveCfg = Tests (Debug)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Debug)|VisualGDB.Build.0 = Tests (Debug)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Release)|VisualGDB.ActiveCfg = Tests (Release)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Release)|VisualGDB.Build.0 = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{BDD063E3-67C1-437F-9F9B-7175E36EE6EE} = {E25A35EF-64B9-48AA-939B-49340C2A4B03}
|
||||
{68571B42-6509-475F-A79D-FB5F6188753B} = {E25A35EF-64B9-48AA-939B-49340C2A4B03}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {DED328BF-3A3C-47F4-A536-4554945B865B}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -1,269 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<VisualGDBProjectSettings2 xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<Project xsi:type="com.visualgdb.project.external.esp-idf">
|
||||
<CustomSourceDirectories>
|
||||
<Directories />
|
||||
<PathStyle>Unknown</PathStyle>
|
||||
</CustomSourceDirectories>
|
||||
<AutoProgramSPIFFSPartition>true</AutoProgramSPIFFSPartition>
|
||||
<ProjectModeSettings>
|
||||
<ProjectGUID>7bbd1486-d457-4e49-92ba-0cfc9d80849e</ProjectGUID>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<HeaderScanMode>SourceDirs</HeaderScanMode>
|
||||
</ProjectModeSettings>
|
||||
</Project>
|
||||
<Build xsi:type="com.visualgdb.build.cmake">
|
||||
<BuildLogMode xsi:nil="true" />
|
||||
<ToolchainID>
|
||||
<ID>com.visualgdb.xtensa-esp32-elf</ID>
|
||||
<Version>
|
||||
<GCC>11.2.0</GCC>
|
||||
<GDB>9.2.90</GDB>
|
||||
<Revision>2</Revision>
|
||||
</Version>
|
||||
</ToolchainID>
|
||||
<RelativeSourceDirectory>..</RelativeSourceDirectory>
|
||||
<ConfigurationType>DEBUG</ConfigurationType>
|
||||
<BinaryDirectory>build/$(PlatformName)/$(ConfigurationName)</BinaryDirectory>
|
||||
<MakeCommandTemplate>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(ToolchainNinja)</Command>
|
||||
<WorkingDirectory>$(BuildDir)</WorkingDirectory>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</MakeCommandTemplate>
|
||||
<CMakeCommand>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(SYSPROGS_CMAKE_PATH)</Command>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</CMakeCommand>
|
||||
<UpdateSourcesInCMakeFile>true</UpdateSourcesInCMakeFile>
|
||||
<ExportCompileCommands>false</ExportCompileCommands>
|
||||
<DisableToolchainFile>false</DisableToolchainFile>
|
||||
<CMakeMakefileType>Ninja</CMakeMakefileType>
|
||||
<DeployAsRoot>false</DeployAsRoot>
|
||||
<CMakeCleanMode>RemoveBuildDirectory</CMakeCleanMode>
|
||||
<UseCCache>false</UseCCache>
|
||||
<ProjectModeSettings>
|
||||
<ProjectItemSettings>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<GroupTargetsByPaths>true</GroupTargetsByPaths>
|
||||
<FollowCMakeSourceGroups>false</FollowCMakeSourceGroups>
|
||||
<AutoRefreshProject>true</AutoRefreshProject>
|
||||
<AlwaysConsiderOutdated>false</AlwaysConsiderOutdated>
|
||||
<SortTargetsByName>true</SortTargetsByName>
|
||||
<RedundantTargetMode>HideOuterProjectTargets</RedundantTargetMode>
|
||||
<SortSourcesByName>true</SortSourcesByName>
|
||||
<BuildAllTargetsInSubdir>false</BuildAllTargetsInSubdir>
|
||||
<FoldSingleItemPathLevels>true</FoldSingleItemPathLevels>
|
||||
</ProjectItemSettings>
|
||||
<TargetSpecificSettings />
|
||||
<SetLDLibraryPathFromDependentArtifacts>true</SetLDLibraryPathFromDependentArtifacts>
|
||||
<ProjectGUID>eadcc9ab-72b3-4b51-a838-593e5d80ddf7</ProjectGUID>
|
||||
<VirtualFolders />
|
||||
<ConfigurationNameCase>Upper</ConfigurationNameCase>
|
||||
<DefaultHeaderDiscoveryMode>HeaderDirectoryAndSubdirectories</DefaultHeaderDiscoveryMode>
|
||||
<EnableFastUpToDateCheck>true</EnableFastUpToDateCheck>
|
||||
<ESPIDFExtension>
|
||||
<IDFCheckout>
|
||||
<Version>release/v5.0</Version>
|
||||
<Subdirectory>esp-idf/v5.0</Subdirectory>
|
||||
<Type>ESPIDF</Type>
|
||||
</IDFCheckout>
|
||||
<COMPort>COM20</COMPort>
|
||||
<SuppressTestPrerequisiteChecks>false</SuppressTestPrerequisiteChecks>
|
||||
<UseCCache>false</UseCCache>
|
||||
<DeviceID>ESP32</DeviceID>
|
||||
</ESPIDFExtension>
|
||||
</ProjectModeSettings>
|
||||
</Build>
|
||||
<CustomBuild>
|
||||
<PreSyncActions />
|
||||
<PreBuildActions />
|
||||
<PostBuildActions />
|
||||
<PreCleanActions />
|
||||
<PostCleanActions />
|
||||
</CustomBuild>
|
||||
<CustomDebug>
|
||||
<PreDebugActions />
|
||||
<PostDebugActions />
|
||||
<DebugStopActions />
|
||||
<BreakMode>Default</BreakMode>
|
||||
</CustomDebug>
|
||||
<DeviceTerminalSettings>
|
||||
<Connection xsi:type="com.sysprogs.terminal.connection.serial">
|
||||
<ComPortName>COM9</ComPortName>
|
||||
<AdvancedSettings>
|
||||
<BaudRate>115200</BaudRate>
|
||||
<DataBits>8</DataBits>
|
||||
<Parity>None</Parity>
|
||||
<StopBits>One</StopBits>
|
||||
<FlowControl>None</FlowControl>
|
||||
</AdvancedSettings>
|
||||
</Connection>
|
||||
<LastConnectionTime>0</LastConnectionTime>
|
||||
<EchoTypedCharacters>false</EchoTypedCharacters>
|
||||
<ClearContentsWhenReconnecting>false</ClearContentsWhenReconnecting>
|
||||
<ReconnectAutomatically>false</ReconnectAutomatically>
|
||||
<DisplayMode>ASCII</DisplayMode>
|
||||
<Colors>
|
||||
<Background>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>0</Red>
|
||||
<Green>0</Green>
|
||||
<Blue>0</Blue>
|
||||
</Background>
|
||||
<Disconnected>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Disconnected>
|
||||
<Text>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>211</Red>
|
||||
<Green>211</Green>
|
||||
<Blue>211</Blue>
|
||||
</Text>
|
||||
<Echo>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>144</Red>
|
||||
<Green>238</Green>
|
||||
<Blue>144</Blue>
|
||||
</Echo>
|
||||
<Inactive>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Inactive>
|
||||
</Colors>
|
||||
<HexSettings>
|
||||
<MaximumBytesPerLine>16</MaximumBytesPerLine>
|
||||
<ShowTextView>true</ShowTextView>
|
||||
<BreaksAroundEcho>true</BreaksAroundEcho>
|
||||
<AutoSend>true</AutoSend>
|
||||
<SendAsHex>true</SendAsHex>
|
||||
<TimeoutForAutoBreak>0</TimeoutForAutoBreak>
|
||||
</HexSettings>
|
||||
<LineEnding>LF</LineEnding>
|
||||
<TreatLFAsCRLF>false</TreatLFAsCRLF>
|
||||
<KeepOpenAfterExit>false</KeepOpenAfterExit>
|
||||
<ShowAfterProgramming>false</ShowAfterProgramming>
|
||||
</DeviceTerminalSettings>
|
||||
<CustomShortcuts>
|
||||
<Shortcuts />
|
||||
<ShowMessageAfterExecuting>true</ShowMessageAfterExecuting>
|
||||
</CustomShortcuts>
|
||||
<UserDefinedVariables />
|
||||
<ImportedPropertySheets />
|
||||
<CodeSense>
|
||||
<Enabled>Unknown</Enabled>
|
||||
<ExtraSettings>
|
||||
<HideErrorsInSystemHeaders>true</HideErrorsInSystemHeaders>
|
||||
<SupportLightweightReferenceAnalysis>true</SupportLightweightReferenceAnalysis>
|
||||
<CheckForClangFormatFiles>true</CheckForClangFormatFiles>
|
||||
<FormattingEngine xsi:nil="true" />
|
||||
</ExtraSettings>
|
||||
<CodeAnalyzerSettings>
|
||||
<Enabled>false</Enabled>
|
||||
</CodeAnalyzerSettings>
|
||||
</CodeSense>
|
||||
<Configurations>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Debug</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Release</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
</Configurations>
|
||||
<ProgramArgumentsSuggestions />
|
||||
<Debug xsi:type="com.visualgdb.debug.embedded">
|
||||
<AdditionalStartupCommands />
|
||||
<AdditionalGDBSettings>
|
||||
<Features>
|
||||
<DisableAutoDetection>false</DisableAutoDetection>
|
||||
<UseFrameParameter>false</UseFrameParameter>
|
||||
<SimpleValuesFlagSupported>false</SimpleValuesFlagSupported>
|
||||
<ListLocalsSupported>false</ListLocalsSupported>
|
||||
<ByteLevelMemoryCommandsAvailable>false</ByteLevelMemoryCommandsAvailable>
|
||||
<ThreadInfoSupported>false</ThreadInfoSupported>
|
||||
<PendingBreakpointsSupported>false</PendingBreakpointsSupported>
|
||||
<SupportTargetCommand>false</SupportTargetCommand>
|
||||
<ReliableBreakpointNotifications>false</ReliableBreakpointNotifications>
|
||||
</Features>
|
||||
<EnableSmartStepping>false</EnableSmartStepping>
|
||||
<FilterSpuriousStoppedNotifications>false</FilterSpuriousStoppedNotifications>
|
||||
<ForceSingleThreadedMode>false</ForceSingleThreadedMode>
|
||||
<UseAppleExtensions>false</UseAppleExtensions>
|
||||
<CanAcceptCommandsWhileRunning>false</CanAcceptCommandsWhileRunning>
|
||||
<MakeLogFile>false</MakeLogFile>
|
||||
<IgnoreModuleEventsWhileStepping>true</IgnoreModuleEventsWhileStepping>
|
||||
<UseRelativePathsOnly>false</UseRelativePathsOnly>
|
||||
<ExitAction>None</ExitAction>
|
||||
<DisableDisassembly>false</DisableDisassembly>
|
||||
<ExamineMemoryWithXCommand>false</ExamineMemoryWithXCommand>
|
||||
<StepIntoNewInstanceEntry>app_main</StepIntoNewInstanceEntry>
|
||||
<ExamineRegistersInRawFormat>true</ExamineRegistersInRawFormat>
|
||||
<DisableSignals>false</DisableSignals>
|
||||
<EnableAsyncExecutionMode>false</EnableAsyncExecutionMode>
|
||||
<AsyncModeSupportsBreakpoints>true</AsyncModeSupportsBreakpoints>
|
||||
<TemporaryBreakConsolidationTimeout>0</TemporaryBreakConsolidationTimeout>
|
||||
<EnableNonStopMode>false</EnableNonStopMode>
|
||||
<MaxBreakpointLimit>0</MaxBreakpointLimit>
|
||||
<EnableVerboseMode>true</EnableVerboseMode>
|
||||
<EnablePrettyPrinters>false</EnablePrettyPrinters>
|
||||
</AdditionalGDBSettings>
|
||||
<DebugMethod>
|
||||
<ID>openocd</ID>
|
||||
<Configuration xsi:type="com.visualgdb.edp.openocd.settings.esp32">
|
||||
<CommandLine>-f interface/ftdi/tigard.cfg -c "adapter_khz 15000" -f target/esp32.cfg</CommandLine>
|
||||
<ExtraParameters>
|
||||
<Frequency xsi:nil="true" />
|
||||
<BoostedFrequency xsi:nil="true" />
|
||||
<ConnectUnderReset>false</ConnectUnderReset>
|
||||
</ExtraParameters>
|
||||
<LoadProgressGUIThreshold>131072</LoadProgressGUIThreshold>
|
||||
<ProgramMode>Enabled</ProgramMode>
|
||||
<StartupCommands>
|
||||
<string>set remotetimeout 60</string>
|
||||
<string>target remote :$$SYS:GDB_PORT$$</string>
|
||||
<string>mon gdb_breakpoint_override hard</string>
|
||||
<string>mon reset halt</string>
|
||||
<string>load</string>
|
||||
</StartupCommands>
|
||||
<ProgramFLASHUsingExternalTool>false</ProgramFLASHUsingExternalTool>
|
||||
<PreferredGDBPort>0</PreferredGDBPort>
|
||||
<PreferredTelnetPort>0</PreferredTelnetPort>
|
||||
<AlwaysPassSerialNumber>false</AlwaysPassSerialNumber>
|
||||
<SelectedCoreIndex xsi:nil="true" />
|
||||
<LiveMemoryTimeout>5000</LiveMemoryTimeout>
|
||||
<SuggestionLogicRevision>1</SuggestionLogicRevision>
|
||||
<CheckFLASHSize>true</CheckFLASHSize>
|
||||
<FLASHSettings>
|
||||
<Size>size2MB</Size>
|
||||
<Frequency>freq40M</Frequency>
|
||||
<Mode>DIO</Mode>
|
||||
</FLASHSettings>
|
||||
<PatchBootloader>true</PatchBootloader>
|
||||
</Configuration>
|
||||
</DebugMethod>
|
||||
<AutoDetectRTOS>true</AutoDetectRTOS>
|
||||
<SemihostingSupport>Disabled</SemihostingSupport>
|
||||
<SemihostingPollingDelay>0</SemihostingPollingDelay>
|
||||
<StepIntoEntryPoint>false</StepIntoEntryPoint>
|
||||
<ReloadFirmwareOnReset>false</ReloadFirmwareOnReset>
|
||||
<ValidateEndOfStackAddress>true</ValidateEndOfStackAddress>
|
||||
<StopAtEntryPoint>false</StopAtEntryPoint>
|
||||
<EnableVirtualHalts>false</EnableVirtualHalts>
|
||||
<DynamicAnalysisSettings />
|
||||
<EndOfStackSymbol>_estack</EndOfStackSymbol>
|
||||
<TimestampProviderTicksPerSecond>0</TimestampProviderTicksPerSecond>
|
||||
<KeepConsoleAfterExit>false</KeepConsoleAfterExit>
|
||||
<UnusedStackFillPattern xsi:nil="true" />
|
||||
<CheckInterfaceDrivers>true</CheckInterfaceDrivers>
|
||||
</Debug>
|
||||
</VisualGDBProjectSettings2>
|
@ -1,63 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.33027.164
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{803FD0C6-D64E-4E16-9DC3-1DAEC859A3D2}") = "wolfssl_benchmark_IDF_v5_ESP32C3", "wolfssl_benchmark_IDF_v5_ESP32C3.vgdbproj", "{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{68202294-86F7-471F-BBBF-47F6B3E3137C}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\..\..\..\..\..\wolfcrypt\benchmark\benchmark.c = ..\..\..\..\..\..\wolfcrypt\benchmark\benchmark.c
|
||||
..\..\..\..\..\..\wolfcrypt\benchmark\benchmark.h = ..\..\..\..\..\..\wolfcrypt\benchmark\benchmark.h
|
||||
..\components\wolfssl\include\config.h = ..\components\wolfssl\include\config.h
|
||||
..\components\wolfssl\include\user_settings.h = ..\components\wolfssl\include\user_settings.h
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "wolfcrypt", "wolfcrypt", "{35897992-1F28-4AB1-B432-7F7D76D61162}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\..\..\..\..\..\wolfcrypt\src\sha.c = ..\..\..\..\..\..\wolfcrypt\src\sha.c
|
||||
..\..\..\..\..\..\wolfssl\openssl\sha.h = ..\..\..\..\..\..\wolfssl\openssl\sha.h
|
||||
..\..\..\..\..\..\wolfssl\wolfcrypt\sha.h = ..\..\..\..\..\..\wolfssl\wolfcrypt\sha.h
|
||||
..\..\..\..\..\..\wolfcrypt\src\sha256.c = ..\..\..\..\..\..\wolfcrypt\src\sha256.c
|
||||
..\..\..\..\..\..\wolfssl\wolfcrypt\sha256.h = ..\..\..\..\..\..\wolfssl\wolfcrypt\sha256.h
|
||||
..\..\..\..\..\..\wolfcrypt\src\sha512.c = ..\..\..\..\..\..\wolfcrypt\src\sha512.c
|
||||
..\..\..\..\..\..\wolfssl\wolfcrypt\sha512.h = ..\..\..\..\..\..\wolfssl\wolfcrypt\sha512.h
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Espressif Port", "Espressif Port", "{66DEEB01-9378-4714-9EF7-23A0CA65A996}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\..\..\..\..\..\wolfssl\wolfcrypt\port\Espressif\esp32-crypt.h = ..\..\..\..\..\..\wolfssl\wolfcrypt\port\Espressif\esp32-crypt.h
|
||||
..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_sha.c = ..\..\..\..\..\..\wolfcrypt\src\port\Espressif\esp32_sha.c
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "config", "config", "{3BA29EA8-68C5-4144-B471-33BA380C323E}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|VisualGDB = Debug|VisualGDB
|
||||
Release|VisualGDB = Release|VisualGDB
|
||||
Tests (Debug)|VisualGDB = Tests (Debug)|VisualGDB
|
||||
Tests (Release)|VisualGDB = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Debug|VisualGDB.ActiveCfg = Debug|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Debug|VisualGDB.Build.0 = Debug|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Release|VisualGDB.ActiveCfg = Release|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Release|VisualGDB.Build.0 = Release|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Debug)|VisualGDB.ActiveCfg = Tests (Debug)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Debug)|VisualGDB.Build.0 = Tests (Debug)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Release)|VisualGDB.ActiveCfg = Tests (Release)|VisualGDB
|
||||
{EADCC9AB-72B3-4B51-A838-593E5D80DDF7}.Tests (Release)|VisualGDB.Build.0 = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{35897992-1F28-4AB1-B432-7F7D76D61162} = {68202294-86F7-471F-BBBF-47F6B3E3137C}
|
||||
{66DEEB01-9378-4714-9EF7-23A0CA65A996} = {68202294-86F7-471F-BBBF-47F6B3E3137C}
|
||||
{3BA29EA8-68C5-4144-B471-33BA380C323E} = {68202294-86F7-471F-BBBF-47F6B3E3137C}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {8F3E87F6-73E7-446B-A5B7-ADB94756C9D4}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -1,271 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<VisualGDBProjectSettings2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<Project xsi:type="com.visualgdb.project.external.esp-idf">
|
||||
<CustomSourceDirectories>
|
||||
<Directories />
|
||||
<PathStyle>Unknown</PathStyle>
|
||||
</CustomSourceDirectories>
|
||||
<AutoProgramSPIFFSPartition>true</AutoProgramSPIFFSPartition>
|
||||
<ProjectModeSettings>
|
||||
<ProjectGUID>7bbd1486-d457-4e49-92ba-0cfc9d80849e</ProjectGUID>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<HeaderScanMode>SourceDirs</HeaderScanMode>
|
||||
</ProjectModeSettings>
|
||||
</Project>
|
||||
<Build xsi:type="com.visualgdb.build.cmake">
|
||||
<BuildLogMode xsi:nil="true" />
|
||||
<ToolchainID>
|
||||
<ID>com.visualgdb.xtensa-esp32-elf</ID>
|
||||
<Version>
|
||||
<GCC>11.2.0</GCC>
|
||||
<GDB>9.2.90</GDB>
|
||||
<Revision>2</Revision>
|
||||
</Version>
|
||||
</ToolchainID>
|
||||
<RelativeSourceDirectory>..</RelativeSourceDirectory>
|
||||
<ConfigurationType>DEBUG</ConfigurationType>
|
||||
<BinaryDirectory>build/$(PlatformName)/$(ConfigurationName)</BinaryDirectory>
|
||||
<MakeCommandTemplate>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(ToolchainNinja)</Command>
|
||||
<WorkingDirectory>$(BuildDir)</WorkingDirectory>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</MakeCommandTemplate>
|
||||
<CMakeCommand>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(SYSPROGS_CMAKE_PATH)</Command>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</CMakeCommand>
|
||||
<UpdateSourcesInCMakeFile>true</UpdateSourcesInCMakeFile>
|
||||
<ExportCompileCommands>false</ExportCompileCommands>
|
||||
<DisableToolchainFile>false</DisableToolchainFile>
|
||||
<CMakeMakefileType>Ninja</CMakeMakefileType>
|
||||
<DeployAsRoot>false</DeployAsRoot>
|
||||
<CMakeCleanMode>RemoveBuildDirectory</CMakeCleanMode>
|
||||
<UseCCache>false</UseCCache>
|
||||
<ProjectModeSettings>
|
||||
<ProjectItemSettings>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<GroupTargetsByPaths>true</GroupTargetsByPaths>
|
||||
<FollowCMakeSourceGroups>false</FollowCMakeSourceGroups>
|
||||
<AutoRefreshProject>true</AutoRefreshProject>
|
||||
<AlwaysConsiderOutdated>false</AlwaysConsiderOutdated>
|
||||
<SortTargetsByName>true</SortTargetsByName>
|
||||
<RedundantTargetMode>HideOuterProjectTargets</RedundantTargetMode>
|
||||
<SortSourcesByName>true</SortSourcesByName>
|
||||
<BuildAllTargetsInSubdir>false</BuildAllTargetsInSubdir>
|
||||
<FoldSingleItemPathLevels>true</FoldSingleItemPathLevels>
|
||||
</ProjectItemSettings>
|
||||
<TargetSpecificSettings />
|
||||
<SetLDLibraryPathFromDependentArtifacts>true</SetLDLibraryPathFromDependentArtifacts>
|
||||
<ProjectGUID>eadcc9ab-72b3-4b51-a838-593e5d80ddf7</ProjectGUID>
|
||||
<VirtualFolders />
|
||||
<ConfigurationNameCase>Upper</ConfigurationNameCase>
|
||||
<DefaultHeaderDiscoveryMode>HeaderDirectoryAndSubdirectories</DefaultHeaderDiscoveryMode>
|
||||
<EnableFastUpToDateCheck>true</EnableFastUpToDateCheck>
|
||||
<ESPIDFExtension>
|
||||
<IDFCheckout>
|
||||
<Version>release/v5.0</Version>
|
||||
<Subdirectory>esp-idf/v5.0</Subdirectory>
|
||||
<Type>ESPIDF</Type>
|
||||
</IDFCheckout>
|
||||
<COMPort>COM23</COMPort>
|
||||
<SuppressTestPrerequisiteChecks>false</SuppressTestPrerequisiteChecks>
|
||||
<UseCCache>false</UseCCache>
|
||||
<DeviceID>ESP32C3</DeviceID>
|
||||
</ESPIDFExtension>
|
||||
</ProjectModeSettings>
|
||||
</Build>
|
||||
<CustomBuild>
|
||||
<PreSyncActions />
|
||||
<PreBuildActions />
|
||||
<PostBuildActions />
|
||||
<PreCleanActions />
|
||||
<PostCleanActions />
|
||||
</CustomBuild>
|
||||
<CustomDebug>
|
||||
<PreDebugActions />
|
||||
<PostDebugActions />
|
||||
<DebugStopActions />
|
||||
<BreakMode>Default</BreakMode>
|
||||
</CustomDebug>
|
||||
<DeviceTerminalSettings>
|
||||
<Connection xsi:type="com.sysprogs.terminal.connection.serial">
|
||||
<ComPortName>COM24</ComPortName>
|
||||
<AdvancedSettings>
|
||||
<BaudRate>115200</BaudRate>
|
||||
<DataBits>8</DataBits>
|
||||
<Parity>None</Parity>
|
||||
<StopBits>One</StopBits>
|
||||
<FlowControl>None</FlowControl>
|
||||
</AdvancedSettings>
|
||||
</Connection>
|
||||
<LastConnectionTime>0</LastConnectionTime>
|
||||
<EchoTypedCharacters>false</EchoTypedCharacters>
|
||||
<ClearContentsWhenReconnecting>false</ClearContentsWhenReconnecting>
|
||||
<ReconnectAutomatically>false</ReconnectAutomatically>
|
||||
<DisplayMode>ASCII</DisplayMode>
|
||||
<Colors>
|
||||
<Background>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>0</Red>
|
||||
<Green>0</Green>
|
||||
<Blue>0</Blue>
|
||||
</Background>
|
||||
<Disconnected>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Disconnected>
|
||||
<Text>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>211</Red>
|
||||
<Green>211</Green>
|
||||
<Blue>211</Blue>
|
||||
</Text>
|
||||
<Echo>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>144</Red>
|
||||
<Green>238</Green>
|
||||
<Blue>144</Blue>
|
||||
</Echo>
|
||||
<Inactive>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Inactive>
|
||||
</Colors>
|
||||
<HexSettings>
|
||||
<MaximumBytesPerLine>16</MaximumBytesPerLine>
|
||||
<ShowTextView>true</ShowTextView>
|
||||
<BreaksAroundEcho>true</BreaksAroundEcho>
|
||||
<AutoSend>true</AutoSend>
|
||||
<SendAsHex>true</SendAsHex>
|
||||
<TimeoutForAutoBreak>0</TimeoutForAutoBreak>
|
||||
</HexSettings>
|
||||
<LineEnding>LF</LineEnding>
|
||||
<TreatLFAsCRLF>false</TreatLFAsCRLF>
|
||||
<KeepOpenAfterExit>false</KeepOpenAfterExit>
|
||||
<ShowAfterProgramming>false</ShowAfterProgramming>
|
||||
</DeviceTerminalSettings>
|
||||
<CustomShortcuts>
|
||||
<Shortcuts />
|
||||
<ShowMessageAfterExecuting>true</ShowMessageAfterExecuting>
|
||||
</CustomShortcuts>
|
||||
<UserDefinedVariables />
|
||||
<ImportedPropertySheets />
|
||||
<CodeSense>
|
||||
<Enabled>Unknown</Enabled>
|
||||
<ExtraSettings>
|
||||
<HideErrorsInSystemHeaders>true</HideErrorsInSystemHeaders>
|
||||
<SupportLightweightReferenceAnalysis>true</SupportLightweightReferenceAnalysis>
|
||||
<CheckForClangFormatFiles>true</CheckForClangFormatFiles>
|
||||
<FormattingEngine xsi:nil="true" />
|
||||
</ExtraSettings>
|
||||
<CodeAnalyzerSettings>
|
||||
<Enabled>false</Enabled>
|
||||
</CodeAnalyzerSettings>
|
||||
</CodeSense>
|
||||
<Configurations>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Debug</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Release</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
</Configurations>
|
||||
<ProgramArgumentsSuggestions />
|
||||
<Debug xsi:type="com.visualgdb.debug.embedded">
|
||||
<AdditionalStartupCommands />
|
||||
<AdditionalGDBSettings>
|
||||
<Features>
|
||||
<DisableAutoDetection>false</DisableAutoDetection>
|
||||
<UseFrameParameter>true</UseFrameParameter>
|
||||
<SimpleValuesFlagSupported>true</SimpleValuesFlagSupported>
|
||||
<ListLocalsSupported>true</ListLocalsSupported>
|
||||
<ByteLevelMemoryCommandsAvailable>true</ByteLevelMemoryCommandsAvailable>
|
||||
<ThreadInfoSupported>true</ThreadInfoSupported>
|
||||
<PendingBreakpointsSupported>true</PendingBreakpointsSupported>
|
||||
<SupportTargetCommand>true</SupportTargetCommand>
|
||||
<ReliableBreakpointNotifications>true</ReliableBreakpointNotifications>
|
||||
</Features>
|
||||
<EnableSmartStepping>false</EnableSmartStepping>
|
||||
<FilterSpuriousStoppedNotifications>false</FilterSpuriousStoppedNotifications>
|
||||
<ForceSingleThreadedMode>false</ForceSingleThreadedMode>
|
||||
<UseAppleExtensions>false</UseAppleExtensions>
|
||||
<CanAcceptCommandsWhileRunning>false</CanAcceptCommandsWhileRunning>
|
||||
<MakeLogFile>false</MakeLogFile>
|
||||
<IgnoreModuleEventsWhileStepping>true</IgnoreModuleEventsWhileStepping>
|
||||
<UseRelativePathsOnly>false</UseRelativePathsOnly>
|
||||
<ExitAction>Disconnect</ExitAction>
|
||||
<DisableDisassembly>false</DisableDisassembly>
|
||||
<ExamineMemoryWithXCommand>false</ExamineMemoryWithXCommand>
|
||||
<StepIntoNewInstanceEntry>app_main</StepIntoNewInstanceEntry>
|
||||
<ExamineRegistersInRawFormat>true</ExamineRegistersInRawFormat>
|
||||
<DisableSignals>false</DisableSignals>
|
||||
<EnableAsyncExecutionMode>false</EnableAsyncExecutionMode>
|
||||
<AsyncModeSupportsBreakpoints>true</AsyncModeSupportsBreakpoints>
|
||||
<TemporaryBreakConsolidationTimeout>0</TemporaryBreakConsolidationTimeout>
|
||||
<EnableNonStopMode>false</EnableNonStopMode>
|
||||
<MaxBreakpointLimit>0</MaxBreakpointLimit>
|
||||
<EnableVerboseMode>true</EnableVerboseMode>
|
||||
<EnablePrettyPrinters>false</EnablePrettyPrinters>
|
||||
</AdditionalGDBSettings>
|
||||
<DebugMethod>
|
||||
<ID>openocd</ID>
|
||||
<InterfaceID>esp_usb_jtag</InterfaceID>
|
||||
<InterfaceSerialNumber>60:55:F9:BC:29:94</InterfaceSerialNumber>
|
||||
<Configuration xsi:type="com.visualgdb.edp.openocd.settings.esp32">
|
||||
<CommandLine>-f interface/esp_usb_jtag.cfg -c "adapter_khz 3000" -f target/esp32c3.cfg</CommandLine>
|
||||
<ExtraParameters>
|
||||
<Frequency xsi:nil="true" />
|
||||
<BoostedFrequency xsi:nil="true" />
|
||||
<ConnectUnderReset>false</ConnectUnderReset>
|
||||
</ExtraParameters>
|
||||
<LoadProgressGUIThreshold>131072</LoadProgressGUIThreshold>
|
||||
<ProgramMode>Enabled</ProgramMode>
|
||||
<StartupCommands>
|
||||
<string>set remotetimeout 60</string>
|
||||
<string>target remote :$$SYS:GDB_PORT$$</string>
|
||||
<string>mon gdb_breakpoint_override hard</string>
|
||||
<string>mon reset halt</string>
|
||||
<string>load</string>
|
||||
</StartupCommands>
|
||||
<ProgramFLASHUsingExternalTool>false</ProgramFLASHUsingExternalTool>
|
||||
<PreferredGDBPort>0</PreferredGDBPort>
|
||||
<PreferredTelnetPort>0</PreferredTelnetPort>
|
||||
<AlwaysPassSerialNumber>false</AlwaysPassSerialNumber>
|
||||
<SelectedCoreIndex xsi:nil="true" />
|
||||
<LiveMemoryTimeout>5000</LiveMemoryTimeout>
|
||||
<SuggestionLogicRevision>1</SuggestionLogicRevision>
|
||||
<CheckFLASHSize>true</CheckFLASHSize>
|
||||
<FLASHSettings>
|
||||
<Size>size2MB</Size>
|
||||
<Frequency>freq40M</Frequency>
|
||||
<Mode>DIO</Mode>
|
||||
</FLASHSettings>
|
||||
<PatchBootloader>true</PatchBootloader>
|
||||
</Configuration>
|
||||
</DebugMethod>
|
||||
<AutoDetectRTOS>true</AutoDetectRTOS>
|
||||
<SemihostingSupport>Disabled</SemihostingSupport>
|
||||
<SemihostingPollingDelay>0</SemihostingPollingDelay>
|
||||
<StepIntoEntryPoint>false</StepIntoEntryPoint>
|
||||
<ReloadFirmwareOnReset>false</ReloadFirmwareOnReset>
|
||||
<ValidateEndOfStackAddress>true</ValidateEndOfStackAddress>
|
||||
<StopAtEntryPoint>false</StopAtEntryPoint>
|
||||
<EnableVirtualHalts>false</EnableVirtualHalts>
|
||||
<DynamicAnalysisSettings />
|
||||
<EndOfStackSymbol>_estack</EndOfStackSymbol>
|
||||
<TimestampProviderTicksPerSecond>0</TimestampProviderTicksPerSecond>
|
||||
<KeepConsoleAfterExit>false</KeepConsoleAfterExit>
|
||||
<UnusedStackFillPattern xsi:nil="true" />
|
||||
<CheckInterfaceDrivers>true</CheckInterfaceDrivers>
|
||||
</Debug>
|
||||
</VisualGDBProjectSettings2>
|
@ -1,54 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.33027.164
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{CD9E73EC-27FB-49E4-B3A3-B0502C20A818}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "wolfSSL", "wolfSSL", "{20662F9E-D386-4839-B855-857D7F922C99}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\components\wolfssl\CMakeLists.txt = ..\components\wolfssl\CMakeLists.txt
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "include", "include", "{89279333-68BD-4E6A-B970-E645967CE5FA}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\components\wolfssl\include\config.h = ..\components\wolfssl\include\config.h
|
||||
..\components\wolfssl\include\user_settings.h = ..\components\wolfssl\include\user_settings.h
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lib", "lib", "{E9586E44-7821-4956-9F72-A79B988B3211}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\..\..\user_settings.h = ..\..\..\user_settings.h
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{803FD0C6-D64E-4E16-9DC3-1DAEC859A3D2}") = "wolfssl_benchmark_IDF_v5_ESP32S3", "wolfssl_benchmark_IDF_v5_ESP32S3.vgdbproj", "{870D7357-61DA-432A-806F-041A23BC8532}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|VisualGDB = Debug|VisualGDB
|
||||
Release|VisualGDB = Release|VisualGDB
|
||||
Tests (Debug)|VisualGDB = Tests (Debug)|VisualGDB
|
||||
Tests (Release)|VisualGDB = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{870D7357-61DA-432A-806F-041A23BC8532}.Debug|VisualGDB.ActiveCfg = Debug|VisualGDB
|
||||
{870D7357-61DA-432A-806F-041A23BC8532}.Debug|VisualGDB.Build.0 = Debug|VisualGDB
|
||||
{870D7357-61DA-432A-806F-041A23BC8532}.Release|VisualGDB.ActiveCfg = Release|VisualGDB
|
||||
{870D7357-61DA-432A-806F-041A23BC8532}.Release|VisualGDB.Build.0 = Release|VisualGDB
|
||||
{870D7357-61DA-432A-806F-041A23BC8532}.Tests (Debug)|VisualGDB.ActiveCfg = Tests (Debug)|VisualGDB
|
||||
{870D7357-61DA-432A-806F-041A23BC8532}.Tests (Debug)|VisualGDB.Build.0 = Tests (Debug)|VisualGDB
|
||||
{870D7357-61DA-432A-806F-041A23BC8532}.Tests (Release)|VisualGDB.ActiveCfg = Tests (Release)|VisualGDB
|
||||
{870D7357-61DA-432A-806F-041A23BC8532}.Tests (Release)|VisualGDB.Build.0 = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{20662F9E-D386-4839-B855-857D7F922C99} = {CD9E73EC-27FB-49E4-B3A3-B0502C20A818}
|
||||
{89279333-68BD-4E6A-B970-E645967CE5FA} = {20662F9E-D386-4839-B855-857D7F922C99}
|
||||
{E9586E44-7821-4956-9F72-A79B988B3211} = {CD9E73EC-27FB-49E4-B3A3-B0502C20A818}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {7F8E1DC0-55AD-4DF8-B65A-CD65B60E17F9}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -1,271 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<VisualGDBProjectSettings2 xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<Project xsi:type="com.visualgdb.project.external.esp-idf">
|
||||
<CustomSourceDirectories>
|
||||
<Directories />
|
||||
<PathStyle>Unknown</PathStyle>
|
||||
</CustomSourceDirectories>
|
||||
<AutoProgramSPIFFSPartition>true</AutoProgramSPIFFSPartition>
|
||||
<ProjectModeSettings>
|
||||
<ProjectGUID>35e5525f-318a-466e-a8c7-36548547d801</ProjectGUID>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<HeaderScanMode>SourceDirs</HeaderScanMode>
|
||||
</ProjectModeSettings>
|
||||
</Project>
|
||||
<Build xsi:type="com.visualgdb.build.cmake">
|
||||
<BuildLogMode xsi:nil="true" />
|
||||
<ToolchainID>
|
||||
<ID>com.visualgdb.xtensa-esp32-elf</ID>
|
||||
<Version>
|
||||
<GCC>11.2.0</GCC>
|
||||
<GDB>9.2.90</GDB>
|
||||
<Revision>2</Revision>
|
||||
</Version>
|
||||
</ToolchainID>
|
||||
<RelativeSourceDirectory>..</RelativeSourceDirectory>
|
||||
<ConfigurationType>DEBUG</ConfigurationType>
|
||||
<BinaryDirectory>build/$(PlatformName)/$(ConfigurationName)</BinaryDirectory>
|
||||
<MakeCommandTemplate>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(ToolchainNinja)</Command>
|
||||
<WorkingDirectory>$(BuildDir)</WorkingDirectory>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</MakeCommandTemplate>
|
||||
<CMakeCommand>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(SYSPROGS_CMAKE_PATH)</Command>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</CMakeCommand>
|
||||
<UpdateSourcesInCMakeFile>true</UpdateSourcesInCMakeFile>
|
||||
<ExportCompileCommands>false</ExportCompileCommands>
|
||||
<DisableToolchainFile>false</DisableToolchainFile>
|
||||
<CMakeMakefileType>Ninja</CMakeMakefileType>
|
||||
<DeployAsRoot>false</DeployAsRoot>
|
||||
<CMakeCleanMode>RemoveBuildDirectory</CMakeCleanMode>
|
||||
<UseCCache>false</UseCCache>
|
||||
<ProjectModeSettings>
|
||||
<ProjectItemSettings>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<GroupTargetsByPaths>true</GroupTargetsByPaths>
|
||||
<FollowCMakeSourceGroups>false</FollowCMakeSourceGroups>
|
||||
<AutoRefreshProject>true</AutoRefreshProject>
|
||||
<AlwaysConsiderOutdated>false</AlwaysConsiderOutdated>
|
||||
<SortTargetsByName>true</SortTargetsByName>
|
||||
<RedundantTargetMode>HideOuterProjectTargets</RedundantTargetMode>
|
||||
<SortSourcesByName>true</SortSourcesByName>
|
||||
<BuildAllTargetsInSubdir>false</BuildAllTargetsInSubdir>
|
||||
<FoldSingleItemPathLevels>true</FoldSingleItemPathLevels>
|
||||
</ProjectItemSettings>
|
||||
<TargetSpecificSettings />
|
||||
<SetLDLibraryPathFromDependentArtifacts>true</SetLDLibraryPathFromDependentArtifacts>
|
||||
<ProjectGUID>eadcc9ab-72b3-4b51-a838-593e5d80ddf7</ProjectGUID>
|
||||
<VirtualFolders />
|
||||
<ConfigurationNameCase>Upper</ConfigurationNameCase>
|
||||
<DefaultHeaderDiscoveryMode>HeaderDirectoryAndSubdirectories</DefaultHeaderDiscoveryMode>
|
||||
<EnableFastUpToDateCheck>true</EnableFastUpToDateCheck>
|
||||
<ESPIDFExtension>
|
||||
<IDFCheckout>
|
||||
<Version>release/v5.0</Version>
|
||||
<Subdirectory>esp-idf/v5.0</Subdirectory>
|
||||
<Type>ESPIDF</Type>
|
||||
</IDFCheckout>
|
||||
<COMPort>COM17</COMPort>
|
||||
<SuppressTestPrerequisiteChecks>false</SuppressTestPrerequisiteChecks>
|
||||
<UseCCache>false</UseCCache>
|
||||
<DeviceID>ESP32S3</DeviceID>
|
||||
</ESPIDFExtension>
|
||||
</ProjectModeSettings>
|
||||
</Build>
|
||||
<CustomBuild>
|
||||
<PreSyncActions />
|
||||
<PreBuildActions />
|
||||
<PostBuildActions />
|
||||
<PreCleanActions />
|
||||
<PostCleanActions />
|
||||
</CustomBuild>
|
||||
<CustomDebug>
|
||||
<PreDebugActions />
|
||||
<PostDebugActions />
|
||||
<DebugStopActions />
|
||||
<BreakMode>Default</BreakMode>
|
||||
</CustomDebug>
|
||||
<DeviceTerminalSettings>
|
||||
<Connection xsi:type="com.sysprogs.terminal.connection.serial">
|
||||
<ComPortName>COM17</ComPortName>
|
||||
<AdvancedSettings>
|
||||
<BaudRate>115200</BaudRate>
|
||||
<DataBits>8</DataBits>
|
||||
<Parity>None</Parity>
|
||||
<StopBits>One</StopBits>
|
||||
<FlowControl>None</FlowControl>
|
||||
</AdvancedSettings>
|
||||
</Connection>
|
||||
<LastConnectionTime>0</LastConnectionTime>
|
||||
<EchoTypedCharacters>false</EchoTypedCharacters>
|
||||
<ClearContentsWhenReconnecting>true</ClearContentsWhenReconnecting>
|
||||
<ReconnectAutomatically>false</ReconnectAutomatically>
|
||||
<DisplayMode>ASCII</DisplayMode>
|
||||
<Colors>
|
||||
<Background>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>0</Red>
|
||||
<Green>0</Green>
|
||||
<Blue>0</Blue>
|
||||
</Background>
|
||||
<Disconnected>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Disconnected>
|
||||
<Text>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>211</Red>
|
||||
<Green>211</Green>
|
||||
<Blue>211</Blue>
|
||||
</Text>
|
||||
<Echo>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>144</Red>
|
||||
<Green>238</Green>
|
||||
<Blue>144</Blue>
|
||||
</Echo>
|
||||
<Inactive>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Inactive>
|
||||
</Colors>
|
||||
<HexSettings>
|
||||
<MaximumBytesPerLine>16</MaximumBytesPerLine>
|
||||
<ShowTextView>true</ShowTextView>
|
||||
<BreaksAroundEcho>true</BreaksAroundEcho>
|
||||
<AutoSend>true</AutoSend>
|
||||
<SendAsHex>true</SendAsHex>
|
||||
<TimeoutForAutoBreak>0</TimeoutForAutoBreak>
|
||||
</HexSettings>
|
||||
<LineEnding>LF</LineEnding>
|
||||
<TreatLFAsCRLF>false</TreatLFAsCRLF>
|
||||
<KeepOpenAfterExit>false</KeepOpenAfterExit>
|
||||
<ShowAfterProgramming>false</ShowAfterProgramming>
|
||||
</DeviceTerminalSettings>
|
||||
<CustomShortcuts>
|
||||
<Shortcuts />
|
||||
<ShowMessageAfterExecuting>true</ShowMessageAfterExecuting>
|
||||
</CustomShortcuts>
|
||||
<UserDefinedVariables />
|
||||
<ImportedPropertySheets />
|
||||
<CodeSense>
|
||||
<Enabled>Unknown</Enabled>
|
||||
<ExtraSettings>
|
||||
<HideErrorsInSystemHeaders>true</HideErrorsInSystemHeaders>
|
||||
<SupportLightweightReferenceAnalysis>true</SupportLightweightReferenceAnalysis>
|
||||
<CheckForClangFormatFiles>true</CheckForClangFormatFiles>
|
||||
<FormattingEngine xsi:nil="true" />
|
||||
</ExtraSettings>
|
||||
<CodeAnalyzerSettings>
|
||||
<Enabled>false</Enabled>
|
||||
</CodeAnalyzerSettings>
|
||||
</CodeSense>
|
||||
<Configurations>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Debug</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Release</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
</Configurations>
|
||||
<ProgramArgumentsSuggestions />
|
||||
<Debug xsi:type="com.visualgdb.debug.embedded">
|
||||
<AdditionalStartupCommands />
|
||||
<AdditionalGDBSettings>
|
||||
<Features>
|
||||
<DisableAutoDetection>false</DisableAutoDetection>
|
||||
<UseFrameParameter>false</UseFrameParameter>
|
||||
<SimpleValuesFlagSupported>false</SimpleValuesFlagSupported>
|
||||
<ListLocalsSupported>false</ListLocalsSupported>
|
||||
<ByteLevelMemoryCommandsAvailable>false</ByteLevelMemoryCommandsAvailable>
|
||||
<ThreadInfoSupported>false</ThreadInfoSupported>
|
||||
<PendingBreakpointsSupported>false</PendingBreakpointsSupported>
|
||||
<SupportTargetCommand>false</SupportTargetCommand>
|
||||
<ReliableBreakpointNotifications>false</ReliableBreakpointNotifications>
|
||||
</Features>
|
||||
<EnableSmartStepping>false</EnableSmartStepping>
|
||||
<FilterSpuriousStoppedNotifications>false</FilterSpuriousStoppedNotifications>
|
||||
<ForceSingleThreadedMode>false</ForceSingleThreadedMode>
|
||||
<UseAppleExtensions>false</UseAppleExtensions>
|
||||
<CanAcceptCommandsWhileRunning>false</CanAcceptCommandsWhileRunning>
|
||||
<MakeLogFile>false</MakeLogFile>
|
||||
<IgnoreModuleEventsWhileStepping>true</IgnoreModuleEventsWhileStepping>
|
||||
<UseRelativePathsOnly>false</UseRelativePathsOnly>
|
||||
<ExitAction>None</ExitAction>
|
||||
<DisableDisassembly>false</DisableDisassembly>
|
||||
<ExamineMemoryWithXCommand>false</ExamineMemoryWithXCommand>
|
||||
<StepIntoNewInstanceEntry>app_main</StepIntoNewInstanceEntry>
|
||||
<ExamineRegistersInRawFormat>true</ExamineRegistersInRawFormat>
|
||||
<DisableSignals>false</DisableSignals>
|
||||
<EnableAsyncExecutionMode>false</EnableAsyncExecutionMode>
|
||||
<AsyncModeSupportsBreakpoints>true</AsyncModeSupportsBreakpoints>
|
||||
<TemporaryBreakConsolidationTimeout>0</TemporaryBreakConsolidationTimeout>
|
||||
<EnableNonStopMode>false</EnableNonStopMode>
|
||||
<MaxBreakpointLimit>0</MaxBreakpointLimit>
|
||||
<EnableVerboseMode>true</EnableVerboseMode>
|
||||
<EnablePrettyPrinters>false</EnablePrettyPrinters>
|
||||
</AdditionalGDBSettings>
|
||||
<DebugMethod>
|
||||
<ID>openocd</ID>
|
||||
<InterfaceID>esp_usb_jtag</InterfaceID>
|
||||
<InterfaceSerialNumber>7C:00:00:00:00:00</InterfaceSerialNumber>
|
||||
<Configuration xsi:type="com.visualgdb.edp.openocd.settings.esp32">
|
||||
<CommandLine>-f interface/esp_usb_jtag.cfg -f target/esp32s3.cfg</CommandLine>
|
||||
<ExtraParameters>
|
||||
<Frequency xsi:nil="true" />
|
||||
<BoostedFrequency xsi:nil="true" />
|
||||
<ConnectUnderReset>false</ConnectUnderReset>
|
||||
</ExtraParameters>
|
||||
<LoadProgressGUIThreshold>131072</LoadProgressGUIThreshold>
|
||||
<ProgramMode>Enabled</ProgramMode>
|
||||
<StartupCommands>
|
||||
<string>set remotetimeout 60</string>
|
||||
<string>target remote :$$SYS:GDB_PORT$$</string>
|
||||
<string>mon gdb_breakpoint_override hard</string>
|
||||
<string>mon reset halt</string>
|
||||
<string>load</string>
|
||||
</StartupCommands>
|
||||
<ProgramFLASHUsingExternalTool>false</ProgramFLASHUsingExternalTool>
|
||||
<PreferredGDBPort>0</PreferredGDBPort>
|
||||
<PreferredTelnetPort>0</PreferredTelnetPort>
|
||||
<AlwaysPassSerialNumber>false</AlwaysPassSerialNumber>
|
||||
<SelectedCoreIndex xsi:nil="true" />
|
||||
<LiveMemoryTimeout>5000</LiveMemoryTimeout>
|
||||
<SuggestionLogicRevision>1</SuggestionLogicRevision>
|
||||
<CheckFLASHSize>true</CheckFLASHSize>
|
||||
<FLASHSettings>
|
||||
<Size>size2MB</Size>
|
||||
<Frequency>freq40M</Frequency>
|
||||
<Mode>DIO</Mode>
|
||||
</FLASHSettings>
|
||||
<PatchBootloader>true</PatchBootloader>
|
||||
</Configuration>
|
||||
</DebugMethod>
|
||||
<AutoDetectRTOS>true</AutoDetectRTOS>
|
||||
<SemihostingSupport>Auto</SemihostingSupport>
|
||||
<SemihostingPollingDelay>0</SemihostingPollingDelay>
|
||||
<StepIntoEntryPoint>false</StepIntoEntryPoint>
|
||||
<ReloadFirmwareOnReset>false</ReloadFirmwareOnReset>
|
||||
<ValidateEndOfStackAddress>true</ValidateEndOfStackAddress>
|
||||
<StopAtEntryPoint>false</StopAtEntryPoint>
|
||||
<EnableVirtualHalts>false</EnableVirtualHalts>
|
||||
<DynamicAnalysisSettings />
|
||||
<EndOfStackSymbol>_estack</EndOfStackSymbol>
|
||||
<TimestampProviderTicksPerSecond>0</TimestampProviderTicksPerSecond>
|
||||
<KeepConsoleAfterExit>false</KeepConsoleAfterExit>
|
||||
<UnusedStackFillPattern xsi:nil="true" />
|
||||
<CheckInterfaceDrivers>true</CheckInterfaceDrivers>
|
||||
</Debug>
|
||||
</VisualGDBProjectSettings2>
|
@ -1,232 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2006-2023 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
|
||||
#
|
||||
# cmake for wolfssl
|
||||
#
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWOLFSSL_USER_SETTINGS")
|
||||
set(CMAKE_CURRENT_SOURCE_DIR ".")
|
||||
|
||||
# We are currently in [root]/IDE/Espressif/ESP-IDF/examples/wolfssl_test/components/wolfssl
|
||||
# The root of wolfSSL is 7 directories up from here:
|
||||
get_filename_component(WOLFSSL_ROOT "../../../../../../../" ABSOLUTE)
|
||||
|
||||
# Espressif may take several passes through this makefile. Check to see if we found IDF
|
||||
string(COMPARE EQUAL "${PROJECT_SOURCE_DIR}" "" WOLFSSL_FOUND_IDF)
|
||||
|
||||
if($WOLFSSL_FOUND_IDF)
|
||||
message(STATUS "IDF_PATH = $ENV{IDF_PATH}")
|
||||
message(STATUS "WOLFSSL_ROOT = ${WOLFSSL_ROOT}")
|
||||
message(STATUS "PROJECT_SOURCE_DIR = ${PROJECT_SOURCE_DIR}")
|
||||
endif()
|
||||
|
||||
# get a list of all wolfcrypt assembly files; we'll exclude them as they don't target Xtensa
|
||||
FILE(GLOB EXCLUDE_ASM *.S)
|
||||
file(GLOB_RECURSE EXCLUDE_ASM ${CMAKE_SOURCE_DIR} "${WOLFSSL_ROOT}/wolfcrypt/src/*.S")
|
||||
|
||||
if(NOT CMAKE_BUILD_EARLY_EXPANSION)
|
||||
message(STATUS "EXCLUDE_ASM = ${EXCLUDE_ASM}")
|
||||
endif()
|
||||
|
||||
set(INCLUDE_PATH ${WOLFSSL_ROOT})
|
||||
|
||||
set(COMPONENT_SRCDIRS "${WOLFSSL_ROOT}/src/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/port/Espressif/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/port/atmel/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/benchmark/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/test/"
|
||||
)
|
||||
|
||||
set(COMPONENT_REQUIRES lwip)
|
||||
|
||||
|
||||
# check to see if there's both a local copy and EDP-IDF copy of the wolfssl and/or wolfssh components
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/" AND EXISTS "$ENV{IDF_PATH}/components/wolfssl/" )
|
||||
#
|
||||
# wolfSSL found in both ESP-IDF and local project - needs to be resolved by user
|
||||
#
|
||||
message(STATUS "")
|
||||
message(STATUS "**************************************************************************************")
|
||||
message(STATUS "")
|
||||
message(STATUS "Error: Found components/wolfssl in both local project and IDF_PATH")
|
||||
message(STATUS "")
|
||||
message(STATUS "To proceed: ")
|
||||
message(STATUS "")
|
||||
message(STATUS "Remove either the local project component: ${CMAKE_HOME_DIRECTORY}/components/wolfssl/ ")
|
||||
message(STATUS "or the Espressif shared component installed at: $ENV{IDF_PATH}/components/wolfssl/ ")
|
||||
message(STATUS "")
|
||||
message(FATAL_ERROR "Please use wolfSSL in either local project or Espressif components, but not both.")
|
||||
message(STATUS "")
|
||||
message(STATUS "**************************************************************************************")
|
||||
message(STATUS "")
|
||||
|
||||
# Optional: if you change the above FATAL_ERROR to STATUS you can warn at runtime with this macro definition:
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWOLFSSL_MULTI_INSTALL_WARNING")
|
||||
|
||||
else()
|
||||
if( EXISTS "$ENV{IDF_PATH}/components/wolfssl/" )
|
||||
#
|
||||
# wolfSSL found in ESP-IDF components and is assumed to be already configured in user_settings.h via setup.
|
||||
#
|
||||
message(STATUS "")
|
||||
message(STATUS "Using components/wolfssl in IDF_PATH = $ENV{IDF_PATH}")
|
||||
message(STATUS "")
|
||||
else()
|
||||
#
|
||||
# wolfSSL is not an ESP-IDF component. We need to now determine if it is local and if so if it is part of the wolfSSL repo
|
||||
# or if wolfSSL is simply installed as a local component.
|
||||
#
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/" )
|
||||
#
|
||||
# wolfSSL found in local project.
|
||||
#
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/include/" )
|
||||
message(STATUS "")
|
||||
message(STATUS "Using installed project ./components/wolfssl in CMAKE_HOME_DIRECTORY = $ENV{CMAKE_HOME_DIRECTORY}")
|
||||
message(STATUS "")
|
||||
#
|
||||
# Note we already checked above and confirmed there's not another wolfSSL installed in the ESP-IDF components.
|
||||
#
|
||||
# We won't do anything else here, as it will be assumed the original install completed successfully.
|
||||
#
|
||||
else()
|
||||
#
|
||||
# This is the developer repo mode. wolfSSL will be assume to be not installed to ESP-IDF nor local project
|
||||
# In this configuration, we are likely running a wolfSSL example found directly in the repo.
|
||||
#
|
||||
message(STATUS "")
|
||||
message(STATUS "Using developer repo ./components/wolfssl in CMAKE_HOME_DIRECTORY = $ENV{CMAKE_HOME_DIRECTORY}")
|
||||
message(STATUS "")
|
||||
|
||||
message(STATUS "************************************************************************************************")
|
||||
# When in developer mode, we are typically running wolfSSL examples such as benchmark or test directories.
|
||||
# However, the as-cloned or distributed wolfSSL does not have the ./include/ directory, so we'll add it as needed.
|
||||
#
|
||||
# first check if there's a [root]/include/user_settings.h
|
||||
if( EXISTS "${WOLFSSL_ROOT}/include/user_settings.h" )
|
||||
# we won't overwrite an existing user settings file, just note that we already have one:
|
||||
message(STATUS "Found wolfSSL user_settings.h in ${WOLFSSL_ROOT}/include/user_settings.h")
|
||||
else()
|
||||
message(STATUS "Installing wolfSSL user_settings.h to ${WOLFSSL_ROOT}/include/user_settings.h")
|
||||
file(COPY "${WOLFSSL_ROOT}/IDE/Espressif/ESP-IDF/user_settings.h" DESTINATION "${WOLFSSL_ROOT}/include/")
|
||||
endif() # user_settings.h
|
||||
|
||||
# next check if there's a [root]/include/config.h
|
||||
if( EXISTS "${WOLFSSL_ROOT}/include/config.h" )
|
||||
message(STATUS "Found wolfSSL config.h in ${WOLFSSL_ROOT}/include/config.h")
|
||||
else()
|
||||
message(STATUS "Installing wolfSSL config.h to ${WOLFSSL_ROOT}/include/config.h")
|
||||
file(COPY "${WOLFSSL_ROOT}/IDE/Espressif/ESP-IDF/dummy_config_h" DESTINATION "${WOLFSSL_ROOT}/include/")
|
||||
file(RENAME "${WOLFSSL_ROOT}/include/dummy_config_h" "${WOLFSSL_ROOT}/include/config.h")
|
||||
endif() # config.h
|
||||
message(STATUS "************************************************************************************************")
|
||||
message(STATUS "")
|
||||
endif()
|
||||
|
||||
else()
|
||||
# we did not find a ./components/wolfssl/include/ directory from this pass of cmake.
|
||||
if($WOLFSSL_FOUND_IDF)
|
||||
message(STATUS "")
|
||||
message(STATUS "WARNING: wolfSSL not found.")
|
||||
message(STATUS "")
|
||||
else()
|
||||
# probably needs to be re-parsed by Espressif
|
||||
message(STATUS "wolfSSL found IDF. Project Source:${PROJECT_SOURCE_DIR}")
|
||||
endif() # else we have not found ESP-IDF yet
|
||||
endif() # else not a local wolfSSL component
|
||||
|
||||
endif() #else not an ESP-IDF component
|
||||
endif() # else not local copy and EDP-IDF wolfSSL
|
||||
|
||||
|
||||
# RTOS_IDF_PATH is typically:
|
||||
# "/Users/{username}/Desktop/esp-idf/components/freertos/include/freertos"
|
||||
# depending on the environment, we may need to swap backslashes with forward slashes
|
||||
string(REPLACE "\\" "/" RTOS_IDF_PATH "$ENV{IDF_PATH}/components/freertos/include/freertos")
|
||||
|
||||
# ESP-IDF after version 4.4x has a different RTOS directory structure
|
||||
string(REPLACE "\\" "/" RTOS_IDF_PATH5 "$ENV{IDF_PATH}/components/freertos/FreeRTOS-Kernel/include/freertos")
|
||||
|
||||
if(IS_DIRECTORY ${IDF_PATH}/components/freertos/FreeRTOS-Kernel/)
|
||||
set(COMPONENT_ADD_INCLUDEDIRS
|
||||
"."
|
||||
"${WOLFSSL_ROOT}/include"
|
||||
"${RTOS_IDF_PATH5}"
|
||||
"${WOLFSSL_ROOT}"
|
||||
)
|
||||
else()
|
||||
|
||||
set(COMPONENT_ADD_INCLUDEDIRS
|
||||
"."
|
||||
"${WOLFSSL_ROOT}/include"
|
||||
"${RTOS_IDF_PATH}"
|
||||
"${WOLFSSL_ROOT}"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(IS_DIRECTORY ${IDF_PATH}/components/cryptoauthlib)
|
||||
list(APPEND COMPONENT_ADD_INCLUDEDIRS "../cryptoauthlib/lib")
|
||||
endif()
|
||||
|
||||
set(COMPONENT_SRCEXCLUDE
|
||||
"${WOLFSSL_ROOT}/src/bio.c"
|
||||
"${WOLFSSL_ROOT}/src/conf.c"
|
||||
"${WOLFSSL_ROOT}/src/misc.c"
|
||||
"${WOLFSSL_ROOT}/src/pk.c"
|
||||
"${WOLFSSL_ROOT}/src/ssl_asn1.c" # included by ssl.c
|
||||
"${WOLFSSL_ROOT}/src/ssl_bn.c" # included by ssl.c
|
||||
"${WOLFSSL_ROOT}/src/ssl_misc.c" # included by ssl.c
|
||||
"${WOLFSSL_ROOT}/src/x509.c"
|
||||
"${WOLFSSL_ROOT}/src/x509_str.c"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/evp.c"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/misc.c"
|
||||
"${EXCLUDE_ASM}"
|
||||
)
|
||||
set(COMPONENT_PRIV_INCLUDEDIRS ${IDF_PATH}/components/driver/include)
|
||||
|
||||
register_component()
|
||||
|
||||
# some optional diagnostics
|
||||
if (0)
|
||||
get_cmake_property(_variableNames VARIABLES)
|
||||
list (SORT _variableNames)
|
||||
message(STATUS "")
|
||||
message(STATUS "ALL VARIABLES BEGIN")
|
||||
message(STATUS "")
|
||||
foreach (_variableName ${_variableNames})
|
||||
message(STATUS "${_variableName}=${${_variableName}}")
|
||||
endforeach()
|
||||
message(STATUS "")
|
||||
message(STATUS "ALL VARIABLES END")
|
||||
message(STATUS "")
|
||||
endif()
|
||||
|
||||
# check to see if there's both a local copy and EDP-IDF copy of the wolfssl components
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/" AND EXISTS "$ENV{IDF_PATH}/components/wolfssl/" )
|
||||
message(STATUS "")
|
||||
message(STATUS "")
|
||||
message(STATUS "********************************************************************")
|
||||
message(STATUS "WARNING: Found components/wolfssl in both local project and IDF_PATH")
|
||||
message(STATUS "********************************************************************")
|
||||
message(STATUS "")
|
||||
endif()
|
||||
# end multiple component check
|
||||
|
||||
|
@ -4,72 +4,7 @@
|
||||
#
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWOLFSSL_USER_SETTINGS")
|
||||
|
||||
set(COMPONENT_SRCS main.c)
|
||||
set(COMPONENT_SRCS "benchmark.c" "helper.c")
|
||||
set(COMPONENT_ADD_INCLUDEDIRS ".")
|
||||
|
||||
set (git_cmd "git")
|
||||
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/" AND EXISTS "$ENV{IDF_PATH}/components/wolfssl/" )
|
||||
#
|
||||
# wolfSSL found in both ESP-IDF and local project - needs to be resolved by user
|
||||
#
|
||||
message(STATUS "")
|
||||
message(STATUS "WARNING: Found components/wolfssl in both local project and IDF_PATH")
|
||||
message(STATUS "")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWOLFSSL_MULTI_INSTALL_WARNING")
|
||||
endif()
|
||||
|
||||
register_component()
|
||||
|
||||
#
|
||||
# LIBWOLFSSL_SAVE_INFO(VAR_OUPUT THIS_VAR VAR_RESULT)
|
||||
#
|
||||
# Save the THIS_VAR as a string in a macro called VAR_OUPUT
|
||||
#
|
||||
# VAR_OUPUT: the name of the macro to define
|
||||
# THIS_VAR: the OUTPUT_VARIABLE result from a execute_process()
|
||||
# VAR_RESULT: the RESULT_VARIABLE from a execute_process(); "0" if successful.
|
||||
#
|
||||
function ( LIBWOLFSSL_SAVE_INFO VAR_OUPUT THIS_VAR VAR_RESULT )
|
||||
# is the RESULT_VARIABLE output value 0? If so, IS_VALID_VALUE is true.
|
||||
string(COMPARE EQUAL "${VAR_RESULT}" "0" IS_VALID_VALUE)
|
||||
|
||||
# if we had a successful operation, save the THIS_VAR in VAR_OUPUT
|
||||
if(${IS_VALID_VALUE})
|
||||
# strip newline chars in THIS_VAR parameter and save in VAR_VALUE
|
||||
string(REPLACE "\n" "" VAR_VALUE ${THIS_VAR})
|
||||
|
||||
# we'll could percolate the value to the parent for possible later use
|
||||
# set(${VAR_OUPUT} ${VAR_VALUE} PARENT_SCOPE)
|
||||
|
||||
# but we're only using it here in this function
|
||||
set(${VAR_OUPUT} ${VAR_VALUE})
|
||||
|
||||
# we'll print what we found to the console
|
||||
message(STATUS "Found ${VAR_OUPUT}=${VAR_VALUE}")
|
||||
|
||||
# the interesting part is defining the VAR_OUPUT name a value to use in the app
|
||||
add_definitions(-D${VAR_OUPUT}=\"${VAR_VALUE}\")
|
||||
else()
|
||||
# if we get here, check the execute_process command and parameters.
|
||||
message(STATUS "LIBWOLFSSL_SAVE_INFO encountered a non-zero VAR_RESULT")
|
||||
set(${VAR_OUPUT} "Unknown")
|
||||
endif()
|
||||
endfunction() # LIBWOLFSSL_SAVE_INFO
|
||||
|
||||
if(NOT CMAKE_BUILD_EARLY_EXPANSION)
|
||||
# LIBWOLFSSL_VERSION_GIT_HASH
|
||||
execute_process(COMMAND ${git_cmd} "rev-parse" "HEAD" OUTPUT_VARIABLE TMP_OUT RESULT_VARIABLE TMP_RES ERROR_QUIET )
|
||||
LIBWOLFSSL_SAVE_INFO(LIBWOLFSSL_VERSION_GIT_HASH "${TMP_OUT}" "${TMP_RES}")
|
||||
|
||||
# LIBWOLFSSL_VERSION_GIT_SHORT_HASH
|
||||
execute_process(COMMAND ${git_cmd} "rev-parse" "--short" "HEAD" OUTPUT_VARIABLE TMP_OUT RESULT_VARIABLE TMP_RES ERROR_QUIET )
|
||||
LIBWOLFSSL_SAVE_INFO(LIBWOLFSSL_VERSION_GIT_SHORT_HASH "${TMP_OUT}" "${TMP_RES}")
|
||||
|
||||
# LIBWOLFSSL_VERSION_GIT_HASH_DATE
|
||||
execute_process(COMMAND ${git_cmd} "show" "--no-patch" "--no-notes" "--pretty=\'\%cd\'" OUTPUT_VARIABLE TMP_OUT RESULT_VARIABLE TMP_RES )
|
||||
LIBWOLFSSL_SAVE_INFO(LIBWOLFSSL_VERSION_GIT_HASH_DATE "${TMP_OUT}" "${TMP_RES}")
|
||||
endif()
|
||||
|
||||
message(STATUS "")
|
||||
|
||||
|
172
IDE/Espressif/ESP-IDF/examples/wolfssl_benchmark/main/helper.c
Normal file
172
IDE/Espressif/ESP-IDF/examples/wolfssl_benchmark/main/helper.c
Normal file
@ -0,0 +1,172 @@
|
||||
/* helper.c
|
||||
*
|
||||
* Copyright (C) 2006-2019 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
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <wolfcrypt/benchmark/benchmark.h>
|
||||
|
||||
#include "sdkconfig.h"
|
||||
#include "esp_log.h"
|
||||
|
||||
#define WOLFSSL_BENCH_ARGV CONFIG_BENCH_ARGV
|
||||
|
||||
/* proto-type */
|
||||
extern void wolf_benchmark_task();
|
||||
static const char* const TAG = "wolfbenchmark";
|
||||
char* __argv[22];
|
||||
|
||||
#if defined(WOLFSSL_ESPWROOM32SE) && defined(HAVE_PK_CALLBACKS) \
|
||||
&& defined(WOLFSSL_ATECC508A)
|
||||
|
||||
#include "wolfssl/wolfcrypt/port/atmel/atmel.h"
|
||||
|
||||
/* when you need to use a custom slot allocation, */
|
||||
/* enable the definition CUSTOM_SLOT_ALLOCAION. */
|
||||
#if defined(CUSTOM_SLOT_ALLOCATION)
|
||||
|
||||
static byte mSlotList[ATECC_MAX_SLOT];
|
||||
|
||||
/* initialize slot array */
|
||||
void my_atmel_slotInit()
|
||||
{
|
||||
int i;
|
||||
for(i = 0;i < ATECC_MAX_SLOT;i++) {
|
||||
mSlotList[i] = ATECC_INVALID_SLOT;
|
||||
}
|
||||
}
|
||||
|
||||
/* allocate slot depending on slotType */
|
||||
int my_atmel_alloc(int slotType)
|
||||
{
|
||||
int i, slot = -1;
|
||||
|
||||
switch(slotType){
|
||||
case ATMEL_SLOT_ENCKEY:
|
||||
slot = 4;
|
||||
break;
|
||||
case ATMEL_SLOT_DEVICE:
|
||||
slot = 0;
|
||||
break;
|
||||
case ATMEL_SLOT_ECDHE:
|
||||
slot = 0;
|
||||
break;
|
||||
case ATMEL_SLOT_ECDHE_ENC:
|
||||
slot = 4;
|
||||
break;
|
||||
case ATMEL_SLOT_ANY:
|
||||
for(i = 0;i < ATECC_MAX_SLOT;i++){
|
||||
if(mSlotList[i] == ATECC_INVALID_SLOT){
|
||||
slot = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return slot;
|
||||
}
|
||||
|
||||
/* free slot array */
|
||||
void my_atmel_free(int slotId)
|
||||
{
|
||||
if(slotId >= 0 && slotId < ATECC_MAX_SLOT){
|
||||
mSlotList[slotId] = ATECC_INVALID_SLOT;
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* CUSTOM_SLOT_ALLOCATION */
|
||||
#endif /* WOLFSSL_ESPWROOM32SE && HAVE_PK_CALLBACK && WOLFSSL_ATECC508A */
|
||||
|
||||
int construct_argv()
|
||||
{
|
||||
int cnt = 0;
|
||||
int i = 0;
|
||||
int len = 0;
|
||||
char *_argv; /* buffer for copying the string */
|
||||
char *ch; /* char pointer to trace the string */
|
||||
char buff[16] = { 0 }; /* buffer for a argument copy */
|
||||
|
||||
printf("arg:%s\n", CONFIG_BENCH_ARGV);
|
||||
len = strlen(CONFIG_BENCH_ARGV);
|
||||
_argv = (char*)malloc(len + 1);
|
||||
if (!_argv) {
|
||||
return -1;
|
||||
}
|
||||
memset(_argv, 0, len+1);
|
||||
memcpy(_argv, CONFIG_BENCH_ARGV, len);
|
||||
_argv[len] = '\0';
|
||||
ch = _argv;
|
||||
|
||||
__argv[cnt] = malloc(10);
|
||||
sprintf(__argv[cnt], "benchmark");
|
||||
__argv[9] = '\0';
|
||||
cnt = 1;
|
||||
|
||||
while (*ch != '\0')
|
||||
{
|
||||
/* skip white-space */
|
||||
while (*ch == ' ') { ++ch; }
|
||||
|
||||
memset(buff, 0, sizeof(buff));
|
||||
/* copy each args into buffer */
|
||||
i = 0;
|
||||
while ((*ch != ' ') && (*ch != '\0') && (i < 16)) {
|
||||
buff[i] = *ch;
|
||||
++i;
|
||||
++ch;
|
||||
}
|
||||
/* copy the string into argv */
|
||||
__argv[cnt] = (char*)malloc(i + 1);
|
||||
memset(__argv[cnt], 0, i + 1);
|
||||
memcpy(__argv[cnt], buff, i + 1);
|
||||
/* next args */
|
||||
++cnt;
|
||||
}
|
||||
|
||||
free(_argv);
|
||||
|
||||
return (cnt);
|
||||
}
|
||||
|
||||
/* entry point */
|
||||
void app_main(void)
|
||||
{
|
||||
(void) TAG;
|
||||
#ifndef NO_CRYPT_BENCHMARK
|
||||
|
||||
/* when using atecc608a on esp32-wroom-32se */
|
||||
#if defined(WOLFSSL_ESPWROOM32SE) && defined(HAVE_PK_CALLBACKS) \
|
||||
&& defined(WOLFSSL_ATECC508A)
|
||||
#if defined(CUSTOM_SLOT_ALLOCATION)
|
||||
my_atmel_slotInit();
|
||||
/* to register the callback, it needs to be initialized. */
|
||||
if ((wolfCrypt_Init()) != 0) {
|
||||
ESP_LOGE(TAG, "wolfCrypt_Init failed");
|
||||
return;
|
||||
}
|
||||
atmel_set_slot_allocator(my_atmel_alloc, my_atmel_free);
|
||||
#endif
|
||||
#endif
|
||||
wolf_benchmark_task();
|
||||
#else
|
||||
#endif /* NO_CRYPT_BENCHMARK */
|
||||
}
|
@ -1,266 +0,0 @@
|
||||
/* benchmark main.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 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
|
||||
*/
|
||||
/* ESP-IDF */
|
||||
#include <esp_log.h>
|
||||
#include "sdkconfig.h"
|
||||
|
||||
/* wolfSSL */
|
||||
#include <wolfssl/wolfcrypt/settings.h>
|
||||
#include <user_settings.h>
|
||||
#include <wolfssl/version.h>
|
||||
#ifndef WOLFSSL_ESPIDF
|
||||
#warning "problem with wolfSSL user_settings. Check components/wolfssl/include"
|
||||
#endif
|
||||
|
||||
#include <wolfssl/wolfcrypt/types.h>
|
||||
#include <wolfcrypt/benchmark/benchmark.h>
|
||||
|
||||
/* check BENCH_ARGV in sdkconfig to determine need to set WOLFSSL_BENCH_ARGV */
|
||||
#ifdef CONFIG_BENCH_ARGV
|
||||
#define WOLFSSL_BENCH_ARGV CONFIG_BENCH_ARGV
|
||||
#define WOLFSSL_BENCH_ARGV_MAX_ARGUMENTS 22 /* arbitrary number of max args */
|
||||
#endif
|
||||
|
||||
/*
|
||||
** the wolfssl component can be installed in either:
|
||||
**
|
||||
** - the ESP-IDF component directory
|
||||
**
|
||||
** ** OR **
|
||||
**
|
||||
** - the local project component directory
|
||||
**
|
||||
** it is not recommended to install in both.
|
||||
**
|
||||
*/
|
||||
|
||||
#include "main.h"
|
||||
|
||||
static const char* const TAG = "wolfssl_benchmark";
|
||||
|
||||
#if defined(WOLFSSL_ESPWROOM32SE) && defined(HAVE_PK_CALLBACKS) \
|
||||
&& defined(WOLFSSL_ATECC508A)
|
||||
|
||||
#include "wolfssl/wolfcrypt/port/atmel/atmel.h"
|
||||
|
||||
/* when you need to use a custom slot allocation, */
|
||||
/* enable the definition CUSTOM_SLOT_ALLOCAION. */
|
||||
#if defined(CUSTOM_SLOT_ALLOCATION)
|
||||
|
||||
static byte mSlotList[ATECC_MAX_SLOT];
|
||||
|
||||
/* initialize slot array */
|
||||
void my_atmel_slotInit()
|
||||
{
|
||||
int i;
|
||||
for(i = 0;i < ATECC_MAX_SLOT;i++) {
|
||||
mSlotList[i] = ATECC_INVALID_SLOT;
|
||||
}
|
||||
}
|
||||
|
||||
/* allocate slot depending on slotType */
|
||||
int my_atmel_alloc(int slotType)
|
||||
{
|
||||
int i, slot = -1;
|
||||
|
||||
switch(slotType){
|
||||
case ATMEL_SLOT_ENCKEY:
|
||||
slot = 4;
|
||||
break;
|
||||
case ATMEL_SLOT_DEVICE:
|
||||
slot = 0;
|
||||
break;
|
||||
case ATMEL_SLOT_ECDHE:
|
||||
slot = 0;
|
||||
break;
|
||||
case ATMEL_SLOT_ECDHE_ENC:
|
||||
slot = 4;
|
||||
break;
|
||||
case ATMEL_SLOT_ANY:
|
||||
for(i = 0;i < ATECC_MAX_SLOT;i++){
|
||||
if(mSlotList[i] == ATECC_INVALID_SLOT){
|
||||
slot = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return slot;
|
||||
}
|
||||
|
||||
/* free slot array */
|
||||
void my_atmel_free(int slotId)
|
||||
{
|
||||
if(slotId >= 0 && slotId < ATECC_MAX_SLOT){
|
||||
mSlotList[slotId] = ATECC_INVALID_SLOT;
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* CUSTOM_SLOT_ALLOCATION */
|
||||
#endif /* WOLFSSL_ESPWROOM32SE && HAVE_PK_CALLBACK && WOLFSSL_ATECC508A */
|
||||
|
||||
/* the following are needed by benchmark.c with args */
|
||||
#ifdef WOLFSSL_BENCH_ARGV
|
||||
char* __argv[WOLFSSL_BENCH_ARGV_MAX_ARGUMENTS];
|
||||
|
||||
int construct_argv()
|
||||
{
|
||||
int cnt = 0;
|
||||
int i = 0;
|
||||
int len = 0;
|
||||
char *_argv; /* buffer for copying the string */
|
||||
char *ch; /* char pointer to trace the string */
|
||||
char buff[16] = { 0 }; /* buffer for a argument copy */
|
||||
|
||||
ESP_LOGI(TAG, "construct_argv arg:%s\n", CONFIG_BENCH_ARGV);
|
||||
len = strlen(CONFIG_BENCH_ARGV);
|
||||
_argv = (char*)malloc(len + 1);
|
||||
if (!_argv) {
|
||||
return -1;
|
||||
}
|
||||
memset(_argv, 0, len + 1);
|
||||
memcpy(_argv, CONFIG_BENCH_ARGV, len);
|
||||
_argv[len] = '\0';
|
||||
ch = _argv;
|
||||
|
||||
__argv[cnt] = malloc(10);
|
||||
sprintf(__argv[cnt], "benchmark");
|
||||
__argv[cnt][9] = '\0';
|
||||
cnt = 1;
|
||||
|
||||
while (*ch != '\0') {
|
||||
/* check that we don't overflow manual arg assembly */
|
||||
if (cnt >= (WOLFSSL_BENCH_ARGV_MAX_ARGUMENTS)) {
|
||||
ESP_LOGE(TAG, "Abort construct_argv;"
|
||||
"Reached maximum defined arguments = %d",
|
||||
WOLFSSL_BENCH_ARGV_MAX_ARGUMENTS);
|
||||
break;
|
||||
}
|
||||
|
||||
/* skip white-space */
|
||||
while (*ch == ' ') { ++ch; }
|
||||
|
||||
memset(buff, 0, sizeof(buff));
|
||||
/* copy each args into buffer */
|
||||
i = 0;
|
||||
while ((*ch != ' ') && (*ch != '\0') && (i < 16)) {
|
||||
buff[i] = *ch;
|
||||
++i;
|
||||
++ch;
|
||||
}
|
||||
/* copy the string into argv */
|
||||
__argv[cnt] = (char*)malloc(i + 1);
|
||||
memset(__argv[cnt], 0, i + 1);
|
||||
memcpy(__argv[cnt], buff, i + 1);
|
||||
/* next args */
|
||||
++cnt;
|
||||
}
|
||||
|
||||
free(_argv);
|
||||
|
||||
return (cnt);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* entry point */
|
||||
void app_main(void)
|
||||
{
|
||||
ESP_LOGI(TAG, "--------------------------------------------------------");
|
||||
ESP_LOGI(TAG, "--------------------------------------------------------");
|
||||
ESP_LOGI(TAG, "---------------------- BEGIN MAIN ----------------------");
|
||||
ESP_LOGI(TAG, "--------------------------------------------------------");
|
||||
ESP_LOGI(TAG, "--------------------------------------------------------");
|
||||
ESP_LOGI(TAG, "CONFIG_IDF_TARGET = %s", CONFIG_IDF_TARGET);
|
||||
ESP_LOGI(TAG, "LIBWOLFSSL_VERSION_STRING = %s", LIBWOLFSSL_VERSION_STRING);
|
||||
|
||||
#if defined(WOLFSSL_MULTI_INSTALL_WARNING)
|
||||
ESP_LOGI(TAG, "");
|
||||
ESP_LOGI(TAG, "WARNING: Multiple wolfSSL installs found.");
|
||||
ESP_LOGI(TAG, "Check ESP-IDF and local project [components] directory.");
|
||||
ESP_LOGI(TAG, "");
|
||||
#endif
|
||||
|
||||
#if defined(LIBWOLFSSL_VERSION_GIT_HASH)
|
||||
ESP_LOGI(TAG, "LIBWOLFSSL_VERSION_GIT_HASH = %s", LIBWOLFSSL_VERSION_GIT_HASH);
|
||||
#endif
|
||||
|
||||
#if defined(LIBWOLFSSL_VERSION_GIT_SHORT_HASH )
|
||||
ESP_LOGI(TAG, "LIBWOLFSSL_VERSION_GIT_SHORT_HASH = %s", LIBWOLFSSL_VERSION_GIT_SHORT_HASH);
|
||||
#endif
|
||||
|
||||
#if defined(LIBWOLFSSL_VERSION_GIT_HASH_DATE)
|
||||
ESP_LOGI(TAG, "LIBWOLFSSL_VERSION_GIT_HASH_DATE = %s", LIBWOLFSSL_VERSION_GIT_HASH_DATE);
|
||||
#endif
|
||||
|
||||
|
||||
/* some interesting settings are target specific (ESP32, -C3, -S3, etc */
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32C3)
|
||||
/* not available for C3 at this time */
|
||||
#elif defined(CONFIG_IDF_TARGET_ESP32S3)
|
||||
ESP_LOGI(TAG, "CONFIG_ESP32S3_DEFAULT_CPU_FREQ_MHZ = %u MHz",
|
||||
CONFIG_ESP32S3_DEFAULT_CPU_FREQ_MHZ
|
||||
);
|
||||
ESP_LOGI(TAG, "Xthal_have_ccount = %u", Xthal_have_ccount);
|
||||
#else
|
||||
ESP_LOGI(TAG, "CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ = %u MHz",
|
||||
CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ
|
||||
);
|
||||
ESP_LOGI(TAG, "Xthal_have_ccount = %u", Xthal_have_ccount);
|
||||
#endif
|
||||
|
||||
/* all platforms: stack high water mark check */
|
||||
ESP_LOGI(TAG, "Stack HWM: %d\n", uxTaskGetStackHighWaterMark(NULL));
|
||||
ESP_LOGI(TAG, "app_main CONFIG_BENCH_ARGV = %s", WOLFSSL_BENCH_ARGV);
|
||||
|
||||
/* when using atecc608a on esp32-wroom-32se */
|
||||
#if defined(WOLFSSL_ESPWROOM32SE) && defined(HAVE_PK_CALLBACKS) \
|
||||
&& defined(WOLFSSL_ATECC508A)
|
||||
#if defined(CUSTOM_SLOT_ALLOCATION)
|
||||
my_atmel_slotInit();
|
||||
/* to register the callback, it needs to be initialized. */
|
||||
if ((wolfCrypt_Init()) != 0) {
|
||||
ESP_LOGE(TAG, "wolfCrypt_Init failed");
|
||||
return;
|
||||
}
|
||||
atmel_set_slot_allocator(my_atmel_alloc, my_atmel_free);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef NO_CRYPT_BENCHMARK
|
||||
ESP_LOGI(TAG, "NO_CRYPT_BENCHMARK defined, skipping wolf_benchmark_task")
|
||||
#else
|
||||
|
||||
/* although wolfCrypt_Init() may be explicitly called above,
|
||||
** note it is still always called in wolf_benchmark_task.
|
||||
*/
|
||||
wolf_benchmark_task();
|
||||
/* wolfCrypt_Cleanup should always be called at completion,
|
||||
** and is called in wolf_benchmark_task().
|
||||
*/
|
||||
ESP_LOGI(TAG, "Stack HWM: %d\n", uxTaskGetStackHighWaterMark(NULL));
|
||||
|
||||
/* after the test, we'll just wait */
|
||||
while (1) {
|
||||
/* nothing */
|
||||
}
|
||||
|
||||
#endif /* NO_CRYPT_BENCHMARK */
|
||||
} /* main */
|
@ -1,29 +0,0 @@
|
||||
#pragma once
|
||||
/* benchmark main.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 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
|
||||
*/
|
||||
|
||||
void app_main(void);
|
||||
|
||||
/* see wolfssl/wolfcrypt/benchmark/benchmark.h */
|
||||
extern void wolf_benchmark_task();
|
||||
|
||||
|
||||
|
@ -1,44 +1,6 @@
|
||||
CONFIG_BENCH_ARGV="-lng 0"
|
||||
CONFIG_MAIN_TASK_STACK_SIZE=7000
|
||||
CONFIG_FREERTOS_HZ=1000
|
||||
CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU0=
|
||||
CONFIG_ESP32_DEFAULT_CPU_FREQ_240=y
|
||||
|
||||
#
|
||||
# Default main stack size
|
||||
#
|
||||
# This is typically way bigger than needed for stack size. See user_settings.h
|
||||
#
|
||||
CONFIG_ESP_MAIN_TASK_STACK_SIZE=55500
|
||||
|
||||
# Legacy stack size for older ESP-IDF versions
|
||||
CONFIG_MAIN_TASK_STACK_SIZE=55500
|
||||
|
||||
#
|
||||
# Watchdog Timers
|
||||
#
|
||||
# We don't want to have the watchdog timeout during tests
|
||||
#
|
||||
CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0=n
|
||||
CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1=n
|
||||
|
||||
#
|
||||
# Compiler options
|
||||
#
|
||||
CONFIG_COMPILER_OPTIMIZATION_DEFAULT=y
|
||||
CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE=y
|
||||
CONFIG_COMPILER_OPTIMIZATION_ASSERTION_LEVEL=2
|
||||
CONFIG_COMPILER_HIDE_PATHS_MACROS=y
|
||||
CONFIG_COMPILER_STACK_CHECK_MODE_NORM=y
|
||||
CONFIG_COMPILER_STACK_CHECK=y
|
||||
|
||||
#
|
||||
# Partition Table
|
||||
#
|
||||
# CONFIG_PARTITION_TABLE_SINGLE_APP is not set
|
||||
CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE=y
|
||||
# CONFIG_PARTITION_TABLE_TWO_OTA is not set
|
||||
# CONFIG_PARTITION_TABLE_CUSTOM is not set
|
||||
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv"
|
||||
CONFIG_PARTITION_TABLE_FILENAME="partitions_singleapp_large.csv"
|
||||
CONFIG_PARTITION_TABLE_OFFSET=0x8000
|
||||
CONFIG_PARTITION_TABLE_MD5=y
|
||||
# end of Partition Table
|
||||
170 CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ=240
|
||||
|
@ -2,26 +2,21 @@
|
||||
|
||||
The Example contains of wolfSSL tls client demo.
|
||||
|
||||
1. `idf.py menuconfig` to config the project
|
||||
1. "make menuconfig" to config the project
|
||||
1-1. Example Configuration ->
|
||||
|
||||
1-1. Example Configuration ->
|
||||
|
||||
Target host ip address : the host that you want to connect to.(default is 127.0.0.1)
|
||||
|
||||
1-2. Example Connection Configuration ->
|
||||
|
||||
WIFI SSID: your own WIFI, which is connected to the Internet.(default is "myssid")
|
||||
WIFI Password: WIFI password, and default is "mypassword"
|
||||
|
||||
WIFI Password: WIFI password, and default is "mypassword"
|
||||
Target host ip address : the host that you want to connect to.(default is 127.0.0.1)
|
||||
|
||||
Note: the example program uses 11111 port. If you want to use different port
|
||||
, you need to modify DEFAULT_PORT definition in the code.
|
||||
|
||||
When you want to test the wolfSSL client
|
||||
|
||||
1. `idf.py -p <PORT> flash` and then `idf.py monitor` to load the firmware and see the context
|
||||
1. "make flash monitor" to load the firmware and see the context
|
||||
2. You can use <wolfssl>/examples/server/server program for test.
|
||||
|
||||
e.g. Launch ./examples/server/server -v 4 -b -i -d
|
||||
e.g. Launch ./examples/server/server -v 4 -b -i
|
||||
|
||||
See the README.md file in the upper level 'examples' directory for more information about examples.
|
||||
|
@ -1,31 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.33027.164
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{803FD0C6-D64E-4E16-9DC3-1DAEC859A3D2}") = "VisualGDB_wolfssl_client", "VisualGDB_wolfssl_client.vgdbproj", "{E903E9CC-1A23-4B00-8914-7E45EC21E351}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|VisualGDB = Debug|VisualGDB
|
||||
Release|VisualGDB = Release|VisualGDB
|
||||
Tests (Debug)|VisualGDB = Tests (Debug)|VisualGDB
|
||||
Tests (Release)|VisualGDB = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{E903E9CC-1A23-4B00-8914-7E45EC21E351}.Debug|VisualGDB.ActiveCfg = Debug|VisualGDB
|
||||
{E903E9CC-1A23-4B00-8914-7E45EC21E351}.Debug|VisualGDB.Build.0 = Debug|VisualGDB
|
||||
{E903E9CC-1A23-4B00-8914-7E45EC21E351}.Release|VisualGDB.ActiveCfg = Release|VisualGDB
|
||||
{E903E9CC-1A23-4B00-8914-7E45EC21E351}.Release|VisualGDB.Build.0 = Release|VisualGDB
|
||||
{E903E9CC-1A23-4B00-8914-7E45EC21E351}.Tests (Debug)|VisualGDB.ActiveCfg = Tests (Debug)|VisualGDB
|
||||
{E903E9CC-1A23-4B00-8914-7E45EC21E351}.Tests (Debug)|VisualGDB.Build.0 = Tests (Debug)|VisualGDB
|
||||
{E903E9CC-1A23-4B00-8914-7E45EC21E351}.Tests (Release)|VisualGDB.ActiveCfg = Tests (Release)|VisualGDB
|
||||
{E903E9CC-1A23-4B00-8914-7E45EC21E351}.Tests (Release)|VisualGDB.Build.0 = Tests (Release)|VisualGDB
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {D510376F-F313-4EF6-8EF5-248D1949DFEB}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -1,269 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<VisualGDBProjectSettings2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<Project xsi:type="com.visualgdb.project.external.esp-idf">
|
||||
<CustomSourceDirectories>
|
||||
<Directories />
|
||||
<PathStyle>Unknown</PathStyle>
|
||||
</CustomSourceDirectories>
|
||||
<AutoProgramSPIFFSPartition>true</AutoProgramSPIFFSPartition>
|
||||
<ProjectModeSettings>
|
||||
<ProjectGUID>bdbba681-1213-45f8-a44e-4652fe489fe3</ProjectGUID>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<HeaderScanMode>SourceDirs</HeaderScanMode>
|
||||
</ProjectModeSettings>
|
||||
</Project>
|
||||
<Build xsi:type="com.visualgdb.build.cmake">
|
||||
<BuildLogMode xsi:nil="true" />
|
||||
<ToolchainID>
|
||||
<ID>com.visualgdb.xtensa-esp32-elf</ID>
|
||||
<Version>
|
||||
<GCC>11.2.0</GCC>
|
||||
<GDB>9.2.90</GDB>
|
||||
<Revision>2</Revision>
|
||||
</Version>
|
||||
</ToolchainID>
|
||||
<RelativeSourceDirectory>..</RelativeSourceDirectory>
|
||||
<ConfigurationType>DEBUG</ConfigurationType>
|
||||
<BinaryDirectory>build/$(PlatformName)/$(ConfigurationName)</BinaryDirectory>
|
||||
<MakeCommandTemplate>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(ToolchainNinja)</Command>
|
||||
<WorkingDirectory>$(BuildDir)</WorkingDirectory>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</MakeCommandTemplate>
|
||||
<CMakeCommand>
|
||||
<SkipWhenRunningCommandList>false</SkipWhenRunningCommandList>
|
||||
<Command>$(SYSPROGS_CMAKE_PATH)</Command>
|
||||
<BackgroundMode xsi:nil="true" />
|
||||
</CMakeCommand>
|
||||
<UpdateSourcesInCMakeFile>true</UpdateSourcesInCMakeFile>
|
||||
<ExportCompileCommands>false</ExportCompileCommands>
|
||||
<DisableToolchainFile>false</DisableToolchainFile>
|
||||
<CMakeMakefileType>Ninja</CMakeMakefileType>
|
||||
<DeployAsRoot>false</DeployAsRoot>
|
||||
<CMakeCleanMode>RemoveBuildDirectory</CMakeCleanMode>
|
||||
<UseCCache>false</UseCCache>
|
||||
<ProjectModeSettings>
|
||||
<ProjectItemSettings>
|
||||
<GroupSourcesByTypes>true</GroupSourcesByTypes>
|
||||
<GroupSourcesByPaths>true</GroupSourcesByPaths>
|
||||
<GroupTargetsByPaths>true</GroupTargetsByPaths>
|
||||
<FollowCMakeSourceGroups>false</FollowCMakeSourceGroups>
|
||||
<AutoRefreshProject>true</AutoRefreshProject>
|
||||
<AlwaysConsiderOutdated>false</AlwaysConsiderOutdated>
|
||||
<SortTargetsByName>true</SortTargetsByName>
|
||||
<RedundantTargetMode>HideOuterProjectTargets</RedundantTargetMode>
|
||||
<SortSourcesByName>true</SortSourcesByName>
|
||||
<BuildAllTargetsInSubdir>false</BuildAllTargetsInSubdir>
|
||||
<FoldSingleItemPathLevels>true</FoldSingleItemPathLevels>
|
||||
</ProjectItemSettings>
|
||||
<TargetSpecificSettings />
|
||||
<SetLDLibraryPathFromDependentArtifacts>true</SetLDLibraryPathFromDependentArtifacts>
|
||||
<ProjectGUID>e903e9cc-1a23-4b00-8914-7e45ec21e351</ProjectGUID>
|
||||
<VirtualFolders />
|
||||
<ConfigurationNameCase>Upper</ConfigurationNameCase>
|
||||
<DefaultHeaderDiscoveryMode>HeaderDirectoryAndSubdirectories</DefaultHeaderDiscoveryMode>
|
||||
<EnableFastUpToDateCheck>true</EnableFastUpToDateCheck>
|
||||
<ESPIDFExtension>
|
||||
<IDFCheckout>
|
||||
<Version>release/v5.0</Version>
|
||||
<Subdirectory>esp-idf/v5.0</Subdirectory>
|
||||
<Type>ESPIDF</Type>
|
||||
</IDFCheckout>
|
||||
<COMPort>COM20</COMPort>
|
||||
<SuppressTestPrerequisiteChecks>false</SuppressTestPrerequisiteChecks>
|
||||
<UseCCache>false</UseCCache>
|
||||
<DeviceID>ESP32</DeviceID>
|
||||
</ESPIDFExtension>
|
||||
</ProjectModeSettings>
|
||||
</Build>
|
||||
<CustomBuild>
|
||||
<PreSyncActions />
|
||||
<PreBuildActions />
|
||||
<PostBuildActions />
|
||||
<PreCleanActions />
|
||||
<PostCleanActions />
|
||||
</CustomBuild>
|
||||
<CustomDebug>
|
||||
<PreDebugActions />
|
||||
<PostDebugActions />
|
||||
<DebugStopActions />
|
||||
<BreakMode>Default</BreakMode>
|
||||
</CustomDebug>
|
||||
<DeviceTerminalSettings>
|
||||
<Connection xsi:type="com.sysprogs.terminal.connection.serial">
|
||||
<ComPortName>COM20</ComPortName>
|
||||
<AdvancedSettings>
|
||||
<BaudRate>115200</BaudRate>
|
||||
<DataBits>8</DataBits>
|
||||
<Parity>None</Parity>
|
||||
<StopBits>One</StopBits>
|
||||
<FlowControl>None</FlowControl>
|
||||
</AdvancedSettings>
|
||||
</Connection>
|
||||
<LastConnectionTime>0</LastConnectionTime>
|
||||
<EchoTypedCharacters>false</EchoTypedCharacters>
|
||||
<ClearContentsWhenReconnecting>false</ClearContentsWhenReconnecting>
|
||||
<ReconnectAutomatically>false</ReconnectAutomatically>
|
||||
<DisplayMode>ASCII</DisplayMode>
|
||||
<Colors>
|
||||
<Background>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>0</Red>
|
||||
<Green>0</Green>
|
||||
<Blue>0</Blue>
|
||||
</Background>
|
||||
<Disconnected>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Disconnected>
|
||||
<Text>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>211</Red>
|
||||
<Green>211</Green>
|
||||
<Blue>211</Blue>
|
||||
</Text>
|
||||
<Echo>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>144</Red>
|
||||
<Green>238</Green>
|
||||
<Blue>144</Blue>
|
||||
</Echo>
|
||||
<Inactive>
|
||||
<Alpha>255</Alpha>
|
||||
<Red>169</Red>
|
||||
<Green>169</Green>
|
||||
<Blue>169</Blue>
|
||||
</Inactive>
|
||||
</Colors>
|
||||
<HexSettings>
|
||||
<MaximumBytesPerLine>16</MaximumBytesPerLine>
|
||||
<ShowTextView>true</ShowTextView>
|
||||
<BreaksAroundEcho>true</BreaksAroundEcho>
|
||||
<AutoSend>true</AutoSend>
|
||||
<SendAsHex>true</SendAsHex>
|
||||
<TimeoutForAutoBreak>0</TimeoutForAutoBreak>
|
||||
</HexSettings>
|
||||
<LineEnding>LF</LineEnding>
|
||||
<TreatLFAsCRLF>false</TreatLFAsCRLF>
|
||||
<KeepOpenAfterExit>false</KeepOpenAfterExit>
|
||||
<ShowAfterProgramming>false</ShowAfterProgramming>
|
||||
</DeviceTerminalSettings>
|
||||
<CustomShortcuts>
|
||||
<Shortcuts />
|
||||
<ShowMessageAfterExecuting>true</ShowMessageAfterExecuting>
|
||||
</CustomShortcuts>
|
||||
<UserDefinedVariables />
|
||||
<ImportedPropertySheets />
|
||||
<CodeSense>
|
||||
<Enabled>Unknown</Enabled>
|
||||
<ExtraSettings>
|
||||
<HideErrorsInSystemHeaders>true</HideErrorsInSystemHeaders>
|
||||
<SupportLightweightReferenceAnalysis>true</SupportLightweightReferenceAnalysis>
|
||||
<CheckForClangFormatFiles>true</CheckForClangFormatFiles>
|
||||
<FormattingEngine xsi:nil="true" />
|
||||
</ExtraSettings>
|
||||
<CodeAnalyzerSettings>
|
||||
<Enabled>false</Enabled>
|
||||
</CodeAnalyzerSettings>
|
||||
</CodeSense>
|
||||
<Configurations>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Debug</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
<VisualGDBConfiguration>
|
||||
<Name>Release</Name>
|
||||
<BuildSettingsExtension xsi:type="com.visualgdb.build.external.esp-idf.cmake.extension" />
|
||||
</VisualGDBConfiguration>
|
||||
</Configurations>
|
||||
<ProgramArgumentsSuggestions />
|
||||
<Debug xsi:type="com.visualgdb.debug.embedded">
|
||||
<AdditionalStartupCommands />
|
||||
<AdditionalGDBSettings>
|
||||
<Features>
|
||||
<DisableAutoDetection>false</DisableAutoDetection>
|
||||
<UseFrameParameter>false</UseFrameParameter>
|
||||
<SimpleValuesFlagSupported>false</SimpleValuesFlagSupported>
|
||||
<ListLocalsSupported>false</ListLocalsSupported>
|
||||
<ByteLevelMemoryCommandsAvailable>false</ByteLevelMemoryCommandsAvailable>
|
||||
<ThreadInfoSupported>false</ThreadInfoSupported>
|
||||
<PendingBreakpointsSupported>false</PendingBreakpointsSupported>
|
||||
<SupportTargetCommand>false</SupportTargetCommand>
|
||||
<ReliableBreakpointNotifications>false</ReliableBreakpointNotifications>
|
||||
</Features>
|
||||
<EnableSmartStepping>false</EnableSmartStepping>
|
||||
<FilterSpuriousStoppedNotifications>false</FilterSpuriousStoppedNotifications>
|
||||
<ForceSingleThreadedMode>false</ForceSingleThreadedMode>
|
||||
<UseAppleExtensions>false</UseAppleExtensions>
|
||||
<CanAcceptCommandsWhileRunning>false</CanAcceptCommandsWhileRunning>
|
||||
<MakeLogFile>false</MakeLogFile>
|
||||
<IgnoreModuleEventsWhileStepping>true</IgnoreModuleEventsWhileStepping>
|
||||
<UseRelativePathsOnly>false</UseRelativePathsOnly>
|
||||
<ExitAction>None</ExitAction>
|
||||
<DisableDisassembly>false</DisableDisassembly>
|
||||
<ExamineMemoryWithXCommand>false</ExamineMemoryWithXCommand>
|
||||
<StepIntoNewInstanceEntry>app_main</StepIntoNewInstanceEntry>
|
||||
<ExamineRegistersInRawFormat>true</ExamineRegistersInRawFormat>
|
||||
<DisableSignals>false</DisableSignals>
|
||||
<EnableAsyncExecutionMode>false</EnableAsyncExecutionMode>
|
||||
<AsyncModeSupportsBreakpoints>true</AsyncModeSupportsBreakpoints>
|
||||
<TemporaryBreakConsolidationTimeout>0</TemporaryBreakConsolidationTimeout>
|
||||
<EnableNonStopMode>false</EnableNonStopMode>
|
||||
<MaxBreakpointLimit>0</MaxBreakpointLimit>
|
||||
<EnableVerboseMode>true</EnableVerboseMode>
|
||||
<EnablePrettyPrinters>false</EnablePrettyPrinters>
|
||||
</AdditionalGDBSettings>
|
||||
<DebugMethod>
|
||||
<ID>openocd</ID>
|
||||
<Configuration xsi:type="com.visualgdb.edp.openocd.settings.esp32">
|
||||
<CommandLine>-f interface/tigard.cfg -c "adapter_khz 3000" -f target/esp32.cfg</CommandLine>
|
||||
<ExtraParameters>
|
||||
<Frequency xsi:nil="true" />
|
||||
<BoostedFrequency xsi:nil="true" />
|
||||
<ConnectUnderReset>false</ConnectUnderReset>
|
||||
</ExtraParameters>
|
||||
<LoadProgressGUIThreshold>131072</LoadProgressGUIThreshold>
|
||||
<ProgramMode>Enabled</ProgramMode>
|
||||
<StartupCommands>
|
||||
<string>set remotetimeout 60</string>
|
||||
<string>target remote :$$SYS:GDB_PORT$$</string>
|
||||
<string>mon gdb_breakpoint_override hard</string>
|
||||
<string>mon reset halt</string>
|
||||
<string>load</string>
|
||||
</StartupCommands>
|
||||
<ProgramFLASHUsingExternalTool>false</ProgramFLASHUsingExternalTool>
|
||||
<PreferredGDBPort>0</PreferredGDBPort>
|
||||
<PreferredTelnetPort>0</PreferredTelnetPort>
|
||||
<AlwaysPassSerialNumber>false</AlwaysPassSerialNumber>
|
||||
<SelectedCoreIndex xsi:nil="true" />
|
||||
<LiveMemoryTimeout>5000</LiveMemoryTimeout>
|
||||
<SuggestionLogicRevision>1</SuggestionLogicRevision>
|
||||
<CheckFLASHSize>true</CheckFLASHSize>
|
||||
<FLASHSettings>
|
||||
<Size>size2MB</Size>
|
||||
<Frequency>freq40M</Frequency>
|
||||
<Mode>DIO</Mode>
|
||||
</FLASHSettings>
|
||||
<PatchBootloader>true</PatchBootloader>
|
||||
</Configuration>
|
||||
</DebugMethod>
|
||||
<AutoDetectRTOS>true</AutoDetectRTOS>
|
||||
<SemihostingSupport>Auto</SemihostingSupport>
|
||||
<SemihostingPollingDelay>0</SemihostingPollingDelay>
|
||||
<StepIntoEntryPoint>false</StepIntoEntryPoint>
|
||||
<ReloadFirmwareOnReset>false</ReloadFirmwareOnReset>
|
||||
<ValidateEndOfStackAddress>true</ValidateEndOfStackAddress>
|
||||
<StopAtEntryPoint>false</StopAtEntryPoint>
|
||||
<EnableVirtualHalts>false</EnableVirtualHalts>
|
||||
<DynamicAnalysisSettings />
|
||||
<EndOfStackSymbol>_estack</EndOfStackSymbol>
|
||||
<TimestampProviderTicksPerSecond>0</TimestampProviderTicksPerSecond>
|
||||
<KeepConsoleAfterExit>false</KeepConsoleAfterExit>
|
||||
<UnusedStackFillPattern xsi:nil="true" />
|
||||
<CheckInterfaceDrivers>true</CheckInterfaceDrivers>
|
||||
</Debug>
|
||||
</VisualGDBProjectSettings2>
|
@ -1,229 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2006-2023 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
|
||||
#
|
||||
# cmake for wolfssl
|
||||
#
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWOLFSSL_USER_SETTINGS")
|
||||
set(CMAKE_CURRENT_SOURCE_DIR ".")
|
||||
|
||||
# We are currently in [root]/IDE/Espressif/ESP-IDF/examples/wolfssl_test/components/wolfssl
|
||||
# The root of wolfSSL is 7 directories up from here:
|
||||
get_filename_component(WOLFSSL_ROOT "../../../../../../../" ABSOLUTE)
|
||||
|
||||
# Espressif may take several passes through this makefile. Check to see if we found IDF
|
||||
string(COMPARE EQUAL "${PROJECT_SOURCE_DIR}" "" WOLFSSL_FOUND_IDF)
|
||||
|
||||
if($WOLFSSL_FOUND_IDF)
|
||||
message(STATUS "IDF_PATH = $ENV{IDF_PATH}")
|
||||
message(STATUS "WOLFSSL_ROOT = ${WOLFSSL_ROOT}")
|
||||
message(STATUS "PROJECT_SOURCE_DIR = ${PROJECT_SOURCE_DIR}")
|
||||
endif()
|
||||
|
||||
# get a list of all wolfcrypt assembly files; we'll exclude them as they don't target Xtensa
|
||||
FILE(GLOB EXCLUDE_ASM *.S)
|
||||
file(GLOB_RECURSE EXCLUDE_ASM ${CMAKE_SOURCE_DIR} "${WOLFSSL_ROOT}/wolfcrypt/src/*.S")
|
||||
|
||||
if(NOT CMAKE_BUILD_EARLY_EXPANSION)
|
||||
message(STATUS "EXCLUDE_ASM = ${EXCLUDE_ASM}")
|
||||
endif()
|
||||
|
||||
set(INCLUDE_PATH ${WOLFSSL_ROOT})
|
||||
|
||||
set(COMPONENT_SRCDIRS "${WOLFSSL_ROOT}/src/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/port/Espressif/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/port/atmel/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/benchmark/"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/test/"
|
||||
)
|
||||
|
||||
set(COMPONENT_REQUIRES lwip)
|
||||
|
||||
|
||||
# check to see if there's both a local copy and EDP-IDF copy of the wolfssl and/or wolfssh components
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/" AND EXISTS "$ENV{IDF_PATH}/components/wolfssl/" )
|
||||
#
|
||||
# wolfSSL found in both ESP-IDF and local project - needs to be resolved by user
|
||||
#
|
||||
message(STATUS "")
|
||||
message(STATUS "**************************************************************************************")
|
||||
message(STATUS "")
|
||||
message(STATUS "Error: Found components/wolfssl in both local project and IDF_PATH")
|
||||
message(STATUS "")
|
||||
message(STATUS "To proceed: ")
|
||||
message(STATUS "")
|
||||
message(STATUS "Remove either the local project component: ${CMAKE_HOME_DIRECTORY}/components/wolfssl/ ")
|
||||
message(STATUS "or the Espressif shared component installed at: $ENV{IDF_PATH}/components/wolfssl/ ")
|
||||
message(STATUS "")
|
||||
message(FATAL_ERROR "Please use wolfSSL in either local project or Espressif components, but not both.")
|
||||
message(STATUS "")
|
||||
message(STATUS "**************************************************************************************")
|
||||
message(STATUS "")
|
||||
|
||||
# Optional: if you change the above FATAL_ERROR to STATUS you can warn at runtime with this macro definition:
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWOLFSSL_MULTI_INSTALL_WARNING")
|
||||
|
||||
else()
|
||||
if( EXISTS "$ENV{IDF_PATH}/components/wolfssl/" )
|
||||
#
|
||||
# wolfSSL found in ESP-IDF components and is assumed to be already configured in user_settings.h via setup.
|
||||
#
|
||||
message(STATUS "")
|
||||
message(STATUS "Using components/wolfssl in IDF_PATH = $ENV{IDF_PATH}")
|
||||
message(STATUS "")
|
||||
else()
|
||||
#
|
||||
# wolfSSL is not an ESP-IDF component. We need to now determine if it is local and if so if it is part of the wolfSSL repo
|
||||
# or if wolfSSL is simply installed as a local component.
|
||||
#
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/" )
|
||||
#
|
||||
# wolfSSL found in local project.
|
||||
#
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/include/" )
|
||||
message(STATUS "")
|
||||
message(STATUS "Using installed project ./components/wolfssl in CMAKE_HOME_DIRECTORY = $ENV{CMAKE_HOME_DIRECTORY}")
|
||||
message(STATUS "")
|
||||
#
|
||||
# Note we already checked above and confirmed there's not another wolfSSL installed in the ESP-IDF components.
|
||||
#
|
||||
# We won't do anything else here, as it will be assumed the original install completed successfully.
|
||||
#
|
||||
else()
|
||||
#
|
||||
# This is the developer repo mode. wolfSSL will be assume to be not installed to ESP-IDF nor local project
|
||||
# In this configuration, we are likely running a wolfSSL example found directly in the repo.
|
||||
#
|
||||
message(STATUS "")
|
||||
message(STATUS "Using developer repo ./components/wolfssl in CMAKE_HOME_DIRECTORY = $ENV{CMAKE_HOME_DIRECTORY}")
|
||||
message(STATUS "")
|
||||
|
||||
message(STATUS "************************************************************************************************")
|
||||
# When in developer mode, we are typically running wolfSSL examples such as benchmark or test directories.
|
||||
# However, the as-cloned or distributed wolfSSL does not have the ./include/ directory, so we'll add it as needed.
|
||||
#
|
||||
# first check if there's a [root]/include/user_settings.h
|
||||
if( EXISTS "${WOLFSSL_ROOT}/include/user_settings.h" )
|
||||
# we won't overwrite an existing user settings file, just note that we already have one:
|
||||
message(STATUS "Found wolfSSL user_settings.h in ${WOLFSSL_ROOT}/include/user_settings.h")
|
||||
else()
|
||||
message(STATUS "Installing wolfSSL user_settings.h to ${WOLFSSL_ROOT}/include/user_settings.h")
|
||||
file(COPY "${WOLFSSL_ROOT}/IDE/Espressif/ESP-IDF/user_settings.h" DESTINATION "${WOLFSSL_ROOT}/include/")
|
||||
endif() # user_settings.h
|
||||
|
||||
# next check if there's a [root]/include/config.h
|
||||
if( EXISTS "${WOLFSSL_ROOT}/include/config.h" )
|
||||
message(STATUS "Found wolfSSL config.h in ${WOLFSSL_ROOT}/include/config.h")
|
||||
else()
|
||||
message(STATUS "Installing wolfSSL config.h to ${WOLFSSL_ROOT}/include/config.h")
|
||||
file(COPY "${WOLFSSL_ROOT}/IDE/Espressif/ESP-IDF/dummy_config_h" DESTINATION "${WOLFSSL_ROOT}/include/")
|
||||
file(RENAME "${WOLFSSL_ROOT}/include/dummy_config_h" "${WOLFSSL_ROOT}/include/config.h")
|
||||
endif() # config.h
|
||||
message(STATUS "************************************************************************************************")
|
||||
message(STATUS "")
|
||||
endif()
|
||||
|
||||
else()
|
||||
# we did not find a ./components/wolfssl/include/ directory from this pass of cmake.
|
||||
if($WOLFSSL_FOUND_IDF)
|
||||
message(STATUS "")
|
||||
message(STATUS "WARNING: wolfSSL not found.")
|
||||
message(STATUS "")
|
||||
else()
|
||||
# probably needs to be re-parsed by Espressif
|
||||
message(STATUS "wolfSSL found IDF. Project Source:${PROJECT_SOURCE_DIR}")
|
||||
endif() # else we have not found ESP-IDF yet
|
||||
endif() # else not a local wolfSSL component
|
||||
|
||||
endif() #else not an ESP-IDF component
|
||||
endif() # else not local copy and EDP-IDF wolfSSL
|
||||
|
||||
|
||||
# RTOS_IDF_PATH is typically:
|
||||
# "/Users/{username}/Desktop/esp-idf/components/freertos/include/freertos"
|
||||
# depending on the environment, we may need to swap backslashes with forward slashes
|
||||
string(REPLACE "\\" "/" RTOS_IDF_PATH "$ENV{IDF_PATH}/components/freertos/include/freertos")
|
||||
|
||||
# ESP-IDF after version 4.4x has a different RTOS directory structure
|
||||
string(REPLACE "\\" "/" RTOS_IDF_PATH5 "$ENV{IDF_PATH}/components/freertos/FreeRTOS-Kernel/include/freertos")
|
||||
|
||||
if(IS_DIRECTORY ${IDF_PATH}/components/freertos/FreeRTOS-Kernel/)
|
||||
set(COMPONENT_ADD_INCLUDEDIRS
|
||||
"."
|
||||
"${WOLFSSL_ROOT}/include"
|
||||
"${RTOS_IDF_PATH5}"
|
||||
"${WOLFSSL_ROOT}"
|
||||
)
|
||||
else()
|
||||
|
||||
set(COMPONENT_ADD_INCLUDEDIRS
|
||||
"."
|
||||
"${WOLFSSL_ROOT}/include"
|
||||
"${RTOS_IDF_PATH}"
|
||||
"${WOLFSSL_ROOT}"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(IS_DIRECTORY ${IDF_PATH}/components/cryptoauthlib)
|
||||
list(APPEND COMPONENT_ADD_INCLUDEDIRS "../cryptoauthlib/lib")
|
||||
endif()
|
||||
|
||||
set(COMPONENT_SRCEXCLUDE
|
||||
"${WOLFSSL_ROOT}/src/bio.c"
|
||||
"${WOLFSSL_ROOT}/src/conf.c"
|
||||
"${WOLFSSL_ROOT}/src/misc.c"
|
||||
"${WOLFSSL_ROOT}/src/pk.c"
|
||||
"${WOLFSSL_ROOT}/src/ssl_misc.c" # included by ssl.c
|
||||
"${WOLFSSL_ROOT}/src/x509.c"
|
||||
"${WOLFSSL_ROOT}/src/x509_str.c"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/evp.c"
|
||||
"${WOLFSSL_ROOT}/wolfcrypt/src/misc.c"
|
||||
"${EXCLUDE_ASM}"
|
||||
)
|
||||
|
||||
register_component()
|
||||
|
||||
# some optional diagnostics
|
||||
if (0)
|
||||
get_cmake_property(_variableNames VARIABLES)
|
||||
list (SORT _variableNames)
|
||||
message(STATUS "")
|
||||
message(STATUS "ALL VARIABLES BEGIN")
|
||||
message(STATUS "")
|
||||
foreach (_variableName ${_variableNames})
|
||||
message(STATUS "${_variableName}=${${_variableName}}")
|
||||
endforeach()
|
||||
message(STATUS "")
|
||||
message(STATUS "ALL VARIABLES END")
|
||||
message(STATUS "")
|
||||
endif()
|
||||
|
||||
# check to see if there's both a local copy and EDP-IDF copy of the wolfssl components
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/" AND EXISTS "$ENV{IDF_PATH}/components/wolfssl/" )
|
||||
message(STATUS "")
|
||||
message(STATUS "")
|
||||
message(STATUS "********************************************************************")
|
||||
message(STATUS "WARNING: Found components/wolfssl in both local project and IDF_PATH")
|
||||
message(STATUS "********************************************************************")
|
||||
message(STATUS "")
|
||||
endif()
|
||||
# end multiple component check
|
||||
|
||||
|
@ -7,69 +7,4 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWOLFSSL_USER_SETTINGS")
|
||||
set(COMPONENT_SRCS "client-tls.c" "wifi_connect.c")
|
||||
set(COMPONENT_ADD_INCLUDEDIRS "." "./include")
|
||||
|
||||
set (git_cmd "git")
|
||||
|
||||
if( EXISTS "${CMAKE_HOME_DIRECTORY}/components/wolfssl/" AND EXISTS "$ENV{IDF_PATH}/components/wolfssl/" )
|
||||
#
|
||||
# wolfSSL found in both ESP-IDF and local project - needs to be resolved by user
|
||||
#
|
||||
message(STATUS "")
|
||||
message(STATUS "WARNING: Found components/wolfssl in both local project and IDF_PATH")
|
||||
message(STATUS "")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWOLFSSL_MULTI_INSTALL_WARNING")
|
||||
endif()
|
||||
|
||||
register_component()
|
||||
|
||||
#
|
||||
# LIBWOLFSSL_SAVE_INFO(VAR_OUPUT THIS_VAR VAR_RESULT)
|
||||
#
|
||||
# Save the THIS_VAR as a string in a macro called VAR_OUPUT
|
||||
#
|
||||
# VAR_OUPUT: the name of the macro to define
|
||||
# THIS_VAR: the OUTPUT_VARIABLE result from a execute_process()
|
||||
# VAR_RESULT: the RESULT_VARIABLE from a execute_process(); "0" if successful.
|
||||
#
|
||||
function ( LIBWOLFSSL_SAVE_INFO VAR_OUPUT THIS_VAR VAR_RESULT )
|
||||
# is the RESULT_VARIABLE output value 0? If so, IS_VALID_VALUE is true.
|
||||
string(COMPARE EQUAL "${VAR_RESULT}" "0" IS_VALID_VALUE)
|
||||
|
||||
# if we had a successful operation, save the THIS_VAR in VAR_OUPUT
|
||||
if(${IS_VALID_VALUE})
|
||||
# strip newline chars in THIS_VAR parameter and save in VAR_VALUE
|
||||
string(REPLACE "\n" "" VAR_VALUE ${THIS_VAR})
|
||||
|
||||
# we'll could percolate the value to the parent for possible later use
|
||||
# set(${VAR_OUPUT} ${VAR_VALUE} PARENT_SCOPE)
|
||||
|
||||
# but we're only using it here in this function
|
||||
set(${VAR_OUPUT} ${VAR_VALUE})
|
||||
|
||||
# we'll print what we found to the console
|
||||
message(STATUS "Found ${VAR_OUPUT}=${VAR_VALUE}")
|
||||
|
||||
# the interesting part is defining the VAR_OUPUT name a value to use in the app
|
||||
add_definitions(-D${VAR_OUPUT}=\"${VAR_VALUE}\")
|
||||
else()
|
||||
# if we get here, check the execute_process command and parameters.
|
||||
message(STATUS "LIBWOLFSSL_SAVE_INFO encountered a non-zero VAR_RESULT")
|
||||
set(${VAR_OUPUT} "Unknown")
|
||||
endif()
|
||||
endfunction() # LIBWOLFSSL_SAVE_INFO
|
||||
|
||||
if(NOT CMAKE_BUILD_EARLY_EXPANSION)
|
||||
# LIBWOLFSSL_VERSION_GIT_HASH
|
||||
execute_process(COMMAND ${git_cmd} "rev-parse" "HEAD" OUTPUT_VARIABLE TMP_OUT RESULT_VARIABLE TMP_RES ERROR_QUIET )
|
||||
LIBWOLFSSL_SAVE_INFO(LIBWOLFSSL_VERSION_GIT_HASH "${TMP_OUT}" "${TMP_RES}")
|
||||
|
||||
# LIBWOLFSSL_VERSION_GIT_SHORT_HASH
|
||||
execute_process(COMMAND ${git_cmd} "rev-parse" "--short" "HEAD" OUTPUT_VARIABLE TMP_OUT RESULT_VARIABLE TMP_RES ERROR_QUIET )
|
||||
LIBWOLFSSL_SAVE_INFO(LIBWOLFSSL_VERSION_GIT_SHORT_HASH "${TMP_OUT}" "${TMP_RES}")
|
||||
|
||||
# LIBWOLFSSL_VERSION_GIT_HASH_DATE
|
||||
execute_process(COMMAND ${git_cmd} "show" "--no-patch" "--no-notes" "--pretty=\'\%cd\'" OUTPUT_VARIABLE TMP_OUT RESULT_VARIABLE TMP_RES )
|
||||
LIBWOLFSSL_SAVE_INFO(LIBWOLFSSL_VERSION_GIT_HASH_DATE "${TMP_OUT}" "${TMP_RES}")
|
||||
endif()
|
||||
|
||||
message(STATUS "")
|
||||
|
||||
|
@ -1,5 +1,17 @@
|
||||
menu "Example Configuration"
|
||||
|
||||
config WIFI_SSID
|
||||
string "WiFi SSID"
|
||||
default "myssid"
|
||||
help
|
||||
SSID (network name) for the example to connect to.
|
||||
|
||||
config WIFI_PASSWORD
|
||||
string "WiFi Password"
|
||||
default "mypassword"
|
||||
help
|
||||
WiFi password (WPA or WPA2) for the example to use.
|
||||
|
||||
config TARGET_HOST
|
||||
string "Target host"
|
||||
default "127.0.01.1"
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* client-tls-callback.c
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* user_settings.h
|
||||
*
|
||||
* Copyright (C) 2006-2023 wolfSSL Inc.
|
||||
* Copyright (C) 2006-2019 wolfSSL Inc.
|
||||
*
|
||||
* This file is part of wolfSSL.
|
||||
*
|
||||
@ -24,10 +24,10 @@
|
||||
#include "esp_idf_version.h"
|
||||
#include "esp_log.h"
|
||||
#include "esp_wifi.h"
|
||||
#if ESP_IDF_VERSION_MAJOR >= 4
|
||||
#include "esp_event.h"
|
||||
#if ESP_IDF_VERSION_MAJOR >= 4 && ESP_IDF_VERSION_MINOR >= 1
|
||||
#include "esp_event.h"
|
||||
#else
|
||||
#include "esp_event_loop.h"
|
||||
#include "esp_event_loop.h"
|
||||
#endif
|
||||
|
||||
#define DEFAULT_PORT 11111
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user