Update to wolfSSL v5.5.0, wolfMQTT v1.14.1, wolfTPM v2.6.0 (#26620)

* Update to wolfSSLv5.5.0.

* Update to wolfMQTT v1.14.1

* Update to wolfTPM v2.6.0. Add wolfSSL build options for custom OID's in CSR.
This commit is contained in:
David Garske 2022-09-02 10:46:35 -07:00 committed by GitHub
parent 1f7e50198e
commit 369f642fa0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 97 additions and 118 deletions

View File

@ -1,11 +1,10 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO wolfssl/wolfmqtt
REF v1.14.0
SHA512 9449d87c543e823b3517a4605343a92207499812e75c950a2e8fb3d969333d39579dac69657e298826ba65017a8208c28934d7c6a4abbb4bf308514047273191
REF v1.14.1
SHA512 ea7657e1c5045996c24bf479fc0c2db7d7d3f588e998d4d236f9d5d43564f80a1fa8ec0710bf87d7b785ffb29d96d539e5b7e7bea5574f0c3843dc00062dbb11
HEAD_REF master
PATCHES
wolfmqtt_pr305.diff
)
vcpkg_cmake_configure(SOURCE_PATH ${SOURCE_PATH}

View File

@ -1,6 +1,6 @@
{
"name": "wolfmqtt",
"version": "1.14.0",
"version": "1.14.1",
"description": "MQTT library used with wolfSSL library for many platforms",
"homepage": "https://wolfssl.com",
"license": "GPL-2.0-or-later",

View File

@ -1,55 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d5f0f408..a436f51c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -94,6 +94,11 @@ target_compile_definitions(wolfmqtt PRIVATE
"BUILDING_WOLFMQTT"
)
+ # Tell mqtt_types.h we are using a ./configure like output / options.h
+target_compile_definitions(wolfmqtt PRIVATE
+ "BUILDING_CMAKE"
+ )
+
#TODO generate options file
configure_file(wolfmqtt/options.h.in wolfmqtt/options.h)
diff --git a/wolfmqtt/mqtt_types.h b/wolfmqtt/mqtt_types.h
index f8e8f4d7..f7e33280 100644
--- a/wolfmqtt/mqtt_types.h
+++ b/wolfmqtt/mqtt_types.h
@@ -65,7 +65,8 @@
#endif
#ifdef ENABLE_MQTT_TLS
- #if !defined(WOLFSSL_USER_SETTINGS) && !defined(USE_WINDOWS_API)
+ #if !defined(WOLFSSL_USER_SETTINGS) && \
+ (!defined(USE_WINDOWS_API) || defined(BUILDING_CMAKE))
#include <wolfssl/options.h>
#endif
#include <wolfssl/wolfcrypt/settings.h>
diff --git a/wolfmqtt/vs_settings.h b/wolfmqtt/vs_settings.h
index a385c4e0..9d8231a0 100644
--- a/wolfmqtt/vs_settings.h
+++ b/wolfmqtt/vs_settings.h
@@ -4,8 +4,9 @@
#ifndef _WOLFMQTT_VS_SETTINGS_
#define _WOLFMQTT_VS_SETTINGS_
-/* Don't include this if using autoconf cross-compile */
-#ifndef HAVE_CONFIG_H
+/* Don't include this if using autoconf cross-compile or cmake */
+#if !defined(HAVE_CONFIG_H) && !defined(BUILDING_CMAKE)
+
/* TLS Support */
#undef ENABLE_MQTT_TLS
@@ -58,6 +59,7 @@
#undef WOLFMQTT_NO_ERROR_STRINGS
//#define WOLFMQTT_NO_ERROR_STRINGS
-#endif /* !HAVE_CONFIG_H */
+
+#endif /* !HAVE_CONFIG_H && !BUILDING_CMAKE */
#endif /* _WOLFMQTT_VS_SETTINGS_ */

View File

@ -1,11 +1,11 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO wolfssl/wolfssl
REF v5.4.0-stable
SHA512 e43560f83f6c62d78b10c4df7db21f02386f22b893688b98d2f3432e3b3946a4e80960c7402404a8c0486c87b1dde5b7a3827f9d4d3be13f87f370dfc1179c78
REF v5.5.0-stable
SHA512 1f9ffd8e83b26f97c3685315790f3f2b451a23e9dad9e2f09142a3e1e136012293ca2d04f46c267f8275ac9e60894c46c7875353765df6d4fdd93ba666228459
HEAD_REF master
PATCHES
wolfssl_pr5401.diff
wolfssl_pr5529.diff
)
vcpkg_cmake_configure(
@ -22,7 +22,7 @@ vcpkg_cmake_configure(
-DWOLFSSL_OCSPSTAPLING_V2=yes
-DWOLFSSL_CRL=yes
-DWOLFSSL_DES3=yes
-DCMAKE_C_FLAGS='-DWOLFSSL_ALT_CERT_CHAINS\ -DWOLFSSL_DES_ECB'
-DCMAKE_C_FLAGS='-DWOLFSSL_ALT_CERT_CHAINS\ -DWOLFSSL_DES_ECB\ -DWOLFSSL_CUSTOM_OID\ -DHAVE_OID_ENCODING\ -DWOLFSSL_CERT_GEN\ -DWOLFSSL_ASN_TEMPLATE\ -DWOLFSSL_KEY_GEN\ -DHAVE_PKCS7\ -DHAVE_AES_KEYWRAP\ -DWOLFSSL_AES_DIRECT\ -DHAVE_X963_KDF'
OPTIONS_DEBUG
-DWOLFSSL_DEBUG=yes)

View File

@ -1,6 +1,6 @@
{
"name": "wolfssl",
"version": "5.4.0",
"version": "5.5.0",
"description": "TLS and Cryptographic library for many platforms",
"homepage": "https://wolfssl.com",
"license": "GPL-2.0-or-later",

View File

@ -1,17 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f2da855cce3..467f4b79725 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2044,7 +2044,11 @@ endif()
if(NOT BUILD_SP)
list(APPEND HEADER_EXCLUDE
- "wolfssl/wolfcrypt/sp.h"
+ "wolfssl/wolfcrypt/sp.h")
+endif()
+
+if(NOT BUILD_SP_INT)
+ list(APPEND HEADER_EXCLUDE
"wolfssl/wolfcrypt/sp_int.h")
endif()

View File

@ -0,0 +1,68 @@
From f7482d96e640ebedaf0dc79e22901012f466b161 Mon Sep 17 00:00:00 2001
From: Anthony Hu <anthony@wolfssl.com>
Date: Wed, 31 Aug 2022 09:05:00 -0400
Subject: [PATCH] Windows cl.exe does not support -Wextra other flags
---
CMakeLists.txt | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3937a6fab..c6f0ae5b6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -169,7 +169,12 @@ find_package(Threads)
# Example for map file and custom linker script
#set(CMAKE_EXE_LINKER_FLAGS " -Xlinker -Map=output.map -T\"${CMAKE_CURRENT_SOURCE_DIR}/linker.ld\"")
+if(WIN32)
+# Windows cl.exe does not support the -Wextra, -Wno-unused and -Werror flags.
+set(CMAKE_C_FLAGS "-Wall ${CMAKE_C_FLAGS}")
+else()
set(CMAKE_C_FLAGS "-Wall -Wextra -Wno-unused -Werror ${CMAKE_C_FLAGS}")
+endif()
####################################################
# Build Options
--
2.37.0
From f0812fa21fb702ca823292d31e0cf28aacdf4d2c Mon Sep 17 00:00:00 2001
From: David Garske <david@wolfssl.com>
Date: Wed, 31 Aug 2022 11:41:43 -0700
Subject: [PATCH] Added vcpkg instructions to the INSTALL file.
---
INSTALL | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/INSTALL b/INSTALL
index 49421ba6a..79d40e3a5 100644
--- a/INSTALL
+++ b/INSTALL
@@ -233,3 +233,22 @@
environments. All OIDs and codepoints are temporary and expected to
change in the future. You should have no expectation of backwards
compatibility.
+
+16. Building with vcpkg
+
+# Building wolfssl - Using vcpkg
+
+ You can download and install wolfssl using the [vcpkg](https://github.com/Microsoft/vcpkg):
+
+ git clone https://github.com/Microsoft/vcpkg.git
+ cd vcpkg
+ ./bootstrap-vcpkg.sh
+ OR for Windows
+ bootstrap-vcpkg.bat
+
+ ./vcpkg integrate install
+ ./vcpkg install wolfssl
+
+The wolfssl port in vcpkg is kept up to date by wolfSSL.
+
+We also have vcpkg ports for wolftpm, wolfmqtt and curl.
--
2.37.0

View File

@ -1,11 +1,10 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO wolfssl/wolftpm
REF v2.5.0
SHA512 4047671171fda4115a4e94bbd2362642752efbaf30531b1f55f6fe66e2e90bdf3b5549c6ddf4e53dce3b6f44c59e792217b2be4c5650857d28193aa5466919fc
REF v2.6.0
SHA512 1339806859d6fb0e6aef37e6f87be2e49462eccb01d5ca51fdf98bc3b3a1af75f78abe9c8e302b6f9251196e033e639198e980d2500b839403fe6cb10a07743c
HEAD_REF master
PATCHES
wolftpm_pr235.diff
)
vcpkg_cmake_configure(SOURCE_PATH ${SOURCE_PATH}

View File

@ -1,6 +1,6 @@
{
"name": "wolftpm",
"version": "2.5.0",
"version": "2.6.0",
"description": "TPM library used with wolfSSL library for many platforms",
"homepage": "https://wolfssl.com",
"license": "GPL-2.0-or-later",

View File

@ -1,30 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d642a06..157b000 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -194,7 +194,24 @@ endfunction()
add_definitions(${WOLFTPM_DEFINITIONS})
# generate options file
-set(OPTION_FILE "wolftpm/options.h")
+message("Generating user options header...")
+if (${CMAKE_DISABLE_SOURCE_CHANGES})
+ set(WOLFTPM_BUILD_OUT_OF_TREE_DEFAULT "${CMAKE_DISABLE_SOURCE_CHANGES}")
+else()
+ set(WOLFTPM_BUILD_OUT_OF_TREE_DEFAULT "no")
+endif()
+
+set(WOLFTPM_BUILD_OUT_OF_TREE "${WOLFTPM_BUILD_OUT_OF_TREE_DEFAULT}" CACHE STRING
+ "Don't generate files in the source tree (default: ${WOLFTPM_BUILD_OUT_OF_TREE_DEFAULT})")
+set_property(CACHE WOLFTPM_BUILD_OUT_OF_TREE
+ PROPERTY STRINGS "yes;no")
+
+if (${WOLFTPM_BUILD_OUT_OF_TREE})
+ set(WOLFTPM_OUTPUT_BASE ${CMAKE_CURRENT_BINARY_DIR})
+else()
+ set(WOLFTPM_OUTPUT_BASE ${CMAKE_CURRENT_SOURCE_DIR})
+endif()
+set(OPTION_FILE "${WOLFTPM_OUTPUT_BASE}/wolftpm/options.h")
file(REMOVE ${OPTION_FILE})

View File

@ -7741,15 +7741,15 @@
"port-version": 3
},
"wolfmqtt": {
"baseline": "1.14.0",
"baseline": "1.14.1",
"port-version": 0
},
"wolfssl": {
"baseline": "5.4.0",
"baseline": "5.5.0",
"port-version": 0
},
"wolftpm": {
"baseline": "2.5.0",
"baseline": "2.6.0",
"port-version": 0
},
"wordnet": {

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "37b49de24795f47490a870aa721aceeb545a07ce",
"version": "1.14.1",
"port-version": 0
},
{
"git-tree": "3cc2bb0123d6f9ea038bf52190ba1c6c2154b02b",
"version": "1.14.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "051a3dc2339554716a11e8e90e9ecea1c366ad31",
"version": "5.5.0",
"port-version": 0
},
{
"git-tree": "6b522a6326a126579cee52953fe42f597f301a22",
"version": "5.4.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "3f07a1e1aa64eb12e407a202a68370a4e08e9af9",
"version": "2.6.0",
"port-version": 0
},
{
"git-tree": "80998c4f2e20341ac7195103ba9581a8c8e0cd68",
"version": "2.5.0",