mirror of
https://github.com/librekeys/pico-keys-sdk.git
synced 2026-07-28 08:01:51 -07:00
Merge branch 'main' into feat/librekeys-patches
This commit is contained in:
@@ -4,3 +4,6 @@
|
||||
[submodule "tinycbor"]
|
||||
path = tinycbor
|
||||
url = https://github.com/intel/tinycbor.git
|
||||
[submodule "mlkem"]
|
||||
path = mlkem
|
||||
url = https://github.com/pq-code-package/mlkem-native/
|
||||
|
||||
+14
-14
@@ -26,7 +26,7 @@ else()
|
||||
include(pico_sdk_import.cmake)
|
||||
endif()
|
||||
|
||||
project(picokey C CXX ASM)
|
||||
project(pico_rescue C CXX ASM)
|
||||
|
||||
set(CMAKE_C_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
@@ -38,7 +38,7 @@ else()
|
||||
add_definitions(-D__FOR_CI)
|
||||
endif()
|
||||
|
||||
add_executable(picokey)
|
||||
add_executable(pico_rescue)
|
||||
endif()
|
||||
|
||||
set(USB_ITF_CCID 1)
|
||||
@@ -53,48 +53,48 @@ set(SOURCES ${SOURCES}
|
||||
${CMAKE_CURRENT_LIST_DIR}/src/version.c
|
||||
)
|
||||
|
||||
SET_VERSION(ver_major ver_minor "${CMAKE_CURRENT_LIST_DIR}/src/pico_keys_version.h" 2)
|
||||
SET_VERSION(ver_major ver_minor "${CMAKE_CURRENT_LIST_DIR}/src/pico_keys_version.h" 3)
|
||||
|
||||
if(ESP_PLATFORM)
|
||||
project(picokey)
|
||||
project(pico_rescue)
|
||||
endif()
|
||||
|
||||
if(NOT ESP_PLATFORM)
|
||||
target_sources(picokey PUBLIC ${SOURCES})
|
||||
target_include_directories(picokey PUBLIC ${INCLUDES})
|
||||
target_sources(pico_rescue PUBLIC ${SOURCES})
|
||||
target_include_directories(pico_rescue PUBLIC ${INCLUDES})
|
||||
|
||||
target_compile_options(picokey PUBLIC
|
||||
target_compile_options(pico_rescue PUBLIC
|
||||
-Wall
|
||||
)
|
||||
if(NOT MSVC)
|
||||
target_compile_options(picokey PUBLIC
|
||||
target_compile_options(pico_rescue PUBLIC
|
||||
-Werror
|
||||
)
|
||||
endif()
|
||||
|
||||
if(ENABLE_EMULATION)
|
||||
if(NOT MSVC)
|
||||
target_compile_options(picokey PUBLIC
|
||||
target_compile_options(pico_rescue PUBLIC
|
||||
-fdata-sections
|
||||
-ffunction-sections
|
||||
)
|
||||
endif()
|
||||
if(APPLE)
|
||||
target_link_options(picokey PUBLIC
|
||||
target_link_options(pico_rescue PUBLIC
|
||||
-Wl,-dead_strip
|
||||
)
|
||||
elseif(MSVC)
|
||||
target_compile_options(picokey PUBLIC
|
||||
target_compile_options(pico_rescue PUBLIC
|
||||
-WX
|
||||
)
|
||||
|
||||
target_link_libraries(picokey PUBLIC wsock32 ws2_32 Bcrypt)
|
||||
target_link_libraries(pico_rescue PUBLIC wsock32 ws2_32 Bcrypt)
|
||||
else()
|
||||
target_link_options(picokey PUBLIC
|
||||
target_link_options(pico_rescue PUBLIC
|
||||
-Wl,--gc-sections
|
||||
)
|
||||
endif(APPLE)
|
||||
target_link_libraries(picokey PRIVATE pthread m)
|
||||
target_link_libraries(pico_rescue PRIVATE pthread m)
|
||||
else()
|
||||
pico_add_extra_outputs(${CMAKE_PROJECT_NAME})
|
||||
endif()
|
||||
|
||||
@@ -1,3 +1,23 @@
|
||||
Unless stated otherwise at the top of a file, all the files of this
|
||||
project are licensed under the GNU Affero General Public License v3
|
||||
(AGPLv3). The full text of this license is reproduced at the bottom of
|
||||
this document.
|
||||
The copyright holders are indicated at the top of each file.
|
||||
|
||||
The project is using the following libraries, sdk or portions of code:
|
||||
- mdebtls, licensed under Apache-2.0 and GPL-2.0-or-later licenses,
|
||||
https://github.com/Mbed-TLS/mbedtls
|
||||
- tinyUSB, licensed under the MIT License,
|
||||
https://github.com/hathach/tinyusb
|
||||
- tinycbor, licensed under the MIT license,
|
||||
https://github.com/intel/tinycbor
|
||||
- mlkem-native, the Apache-2.0 license OR the ISC license OR the MIT
|
||||
license, https://github.com/pq-code-package/mlkem-native
|
||||
- USB CCID from Raspberry Pi (Trading) Ltd, licensed under the BSD
|
||||
license,
|
||||
|
||||
________________________________________________________________________
|
||||
|
||||
GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
Version 3, 19 November 2007
|
||||
|
||||
@@ -658,4 +678,4 @@ specific requirements.
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU AGPL, see
|
||||
<https://www.gnu.org/licenses/>.
|
||||
<https://www.gnu.org/licenses/>.
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
# Pico Keys SDK
|
||||
This is a fork of the community edition of the project located at https://github.com/polhenarejos/pico-keys-sdk
|
||||
|
||||
For licensing information and credits, see the LICENSE file
|
||||
@@ -0,0 +1,23 @@
|
||||
set(MLKEM_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../../mlkem/mlkem)
|
||||
|
||||
file(GLOB_RECURSE MLKEM_SOURCES
|
||||
${MLKEM_DIR}/src/*.c
|
||||
)
|
||||
list(FILTER MLKEM_SOURCES EXCLUDE REGEX "/native/")
|
||||
|
||||
idf_component_register(
|
||||
SRCS ${MLKEM_SOURCES}
|
||||
INCLUDE_DIRS ${MLKEM_DIR}
|
||||
)
|
||||
|
||||
target_compile_definitions(${COMPONENT_LIB} PRIVATE
|
||||
MLK_CONFIG_PARAMETER_SET=1024
|
||||
MLK_CONFIG_MULTILEVEL_NO_SHARED
|
||||
MLK_CONFIG_NAMESPACE_PREFIX=mlkem
|
||||
)
|
||||
|
||||
target_compile_options(${COMPONENT_LIB} PRIVATE
|
||||
-O2
|
||||
-fno-builtin
|
||||
-fno-strict-aliasing
|
||||
)
|
||||
@@ -0,0 +1,23 @@
|
||||
set(MLKEM_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../../mlkem/mlkem)
|
||||
|
||||
file(GLOB_RECURSE MLKEM_SOURCES
|
||||
${MLKEM_DIR}/src/*.c
|
||||
)
|
||||
list(FILTER MLKEM_SOURCES EXCLUDE REGEX "/native/")
|
||||
|
||||
idf_component_register(
|
||||
SRCS ${MLKEM_SOURCES}
|
||||
INCLUDE_DIRS ${MLKEM_DIR}
|
||||
)
|
||||
|
||||
target_compile_definitions(${COMPONENT_LIB} PRIVATE
|
||||
MLK_CONFIG_PARAMETER_SET=512
|
||||
MLK_CONFIG_MULTILEVEL_WITH_SHARED
|
||||
MLK_CONFIG_NAMESPACE_PREFIX=mlkem
|
||||
)
|
||||
|
||||
target_compile_options(${COMPONENT_LIB} PRIVATE
|
||||
-O2
|
||||
-fno-builtin
|
||||
-fno-strict-aliasing
|
||||
)
|
||||
@@ -0,0 +1,23 @@
|
||||
set(MLKEM_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../../mlkem/mlkem)
|
||||
|
||||
file(GLOB_RECURSE MLKEM_SOURCES
|
||||
${MLKEM_DIR}/src/*.c
|
||||
)
|
||||
list(FILTER MLKEM_SOURCES EXCLUDE REGEX "/native/")
|
||||
|
||||
idf_component_register(
|
||||
SRCS ${MLKEM_SOURCES}
|
||||
INCLUDE_DIRS ${MLKEM_DIR}
|
||||
)
|
||||
|
||||
target_compile_definitions(${COMPONENT_LIB} PRIVATE
|
||||
MLK_CONFIG_PARAMETER_SET=768
|
||||
MLK_CONFIG_MULTILEVEL_NO_SHARED
|
||||
MLK_CONFIG_NAMESPACE_PREFIX=mlkem
|
||||
)
|
||||
|
||||
target_compile_options(${COMPONENT_LIB} PRIVATE
|
||||
-O2
|
||||
-fno-builtin
|
||||
-fno-strict-aliasing
|
||||
)
|
||||
@@ -0,0 +1,7 @@
|
||||
set(PICO_KEYS_SDK_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../..)
|
||||
idf_component_register(
|
||||
SRCS ${PICO_KEYS_SOURCES}
|
||||
INCLUDE_DIRS ${PICO_KEYS_SDK_DIR}/src ${PICO_KEYS_SDK_DIR}/src/fs ${PICO_KEYS_SDK_DIR}/src/rng ${PICO_KEYS_SDK_DIR}/src/usb ${PICO_KEYS_SDK_DIR}/src/led ${PICO_KEYS_SDK_DIR}/tinycbor/src ${PICO_KEYS_SDK_DIR}/mlkem/mlkem ${PICO_KEYS_SDK_DIR}/config/mlkem
|
||||
REQUIRES bootloader_support esp_partition esp_tinyusb efuse mbedtls mlkem512 mlkem768 mlkem1024 tinycbor
|
||||
)
|
||||
idf_component_set_property(${COMPONENT_NAME} WHOLE_ARCHIVE ON)
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
set(PICO_KEYS_SDK_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../..)
|
||||
idf_component_register(
|
||||
SRCS ${CBOR_SOURCES}
|
||||
INCLUDE_DIRS ${PICO_KEYS_SDK_DIR}/tinycbor/src
|
||||
)
|
||||
idf_component_set_property(${COMPONENT_NAME} WHOLE_ARCHIVE ON)
|
||||
@@ -330,7 +330,7 @@
|
||||
//#define MBEDTLS_RSA_ALT
|
||||
//#define MBEDTLS_SHA1_ALT
|
||||
#ifdef PICO_RP2350
|
||||
#define MBEDTLS_SHA256_ALT
|
||||
//#define MBEDTLS_SHA256_ALT
|
||||
#endif
|
||||
//#define MBEDTLS_SHA512_ALT
|
||||
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* Copyright (c) The mlkem-native project authors
|
||||
* SPDX-License-Identifier: Apache-2.0 OR ISC OR MIT
|
||||
*/
|
||||
|
||||
#if !defined(MLK_ALL_H)
|
||||
#define MLK_ALL_H
|
||||
|
||||
/* API for MLKEM-512 */
|
||||
#define MLK_CONFIG_PARAMETER_SET 512
|
||||
#include "mlkem_native.h"
|
||||
#undef MLK_CONFIG_PARAMETER_SET
|
||||
#undef MLK_H
|
||||
|
||||
/* API for MLKEM-768 */
|
||||
#define MLK_CONFIG_PARAMETER_SET 768
|
||||
#include "mlkem_native.h"
|
||||
#undef MLK_CONFIG_PARAMETER_SET
|
||||
#undef MLK_H
|
||||
|
||||
/* API for MLKEM-1024 */
|
||||
#define MLK_CONFIG_PARAMETER_SET 1024
|
||||
#include "mlkem_native.h"
|
||||
#undef MLK_CONFIG_PARAMETER_SET
|
||||
#undef MLK_H
|
||||
|
||||
#endif /* !MLK_ALL_H */
|
||||
@@ -0,0 +1,13 @@
|
||||
#pragma once
|
||||
|
||||
/* Disable all native/asm backends */
|
||||
#define MLK_NO_NATIVE_BACKENDS 1
|
||||
|
||||
/* No CBMC */
|
||||
#undef CBMC
|
||||
|
||||
/* Platform characteristics */
|
||||
#define MLK_LITTLE_ENDIAN 1
|
||||
|
||||
/* Memory model */
|
||||
#define MLK_NO_MALLOC 1
|
||||
@@ -286,3 +286,9 @@ int mbedtls_sha256_finish(mbedtls_sha256_context *ctx, unsigned char *output) {
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void mbedtls_sha256_clone(mbedtls_sha256_context *dst,
|
||||
const mbedtls_sha256_context *src)
|
||||
{
|
||||
*dst = *src;
|
||||
}
|
||||
|
||||
@@ -18,7 +18,6 @@
|
||||
#ifndef _SHA256_ALT_H_
|
||||
#define _SHA256_ALT_H_
|
||||
|
||||
#include "pico_keys.h"
|
||||
#include "pico/sha256.h"
|
||||
|
||||
typedef struct mbedtls_sha256_context {
|
||||
|
||||
+19
-4
@@ -10,7 +10,7 @@
|
||||
},
|
||||
"partitions": [
|
||||
{
|
||||
"name": "Pico Keys Firmware",
|
||||
"name": "PicoKeys Firmware",
|
||||
"id": 0,
|
||||
"start": 0,
|
||||
"size": "1024K",
|
||||
@@ -22,10 +22,10 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Pico Keys Data",
|
||||
"name": "PicoKeys Data",
|
||||
"id": 1,
|
||||
"start": "1024K",
|
||||
"size": "3072K",
|
||||
"start": "1032K",
|
||||
"size": "3064K",
|
||||
"families": ["data"],
|
||||
"permissions": {
|
||||
"secure": "rw",
|
||||
@@ -35,6 +35,21 @@
|
||||
"link": ["owner", 0],
|
||||
"ignored_during_arm_boot": true,
|
||||
"ignored_during_riscv_boot": true
|
||||
},
|
||||
{
|
||||
"name": "PicoKeys Binding",
|
||||
"id": 2,
|
||||
"start": "1024K",
|
||||
"size": "8K",
|
||||
"families": ["data"],
|
||||
"permissions": {
|
||||
"secure": "r",
|
||||
"nonsecure": "",
|
||||
"bootloader": "w"
|
||||
},
|
||||
"link": ["owner", 0],
|
||||
"ignored_during_arm_boot": true,
|
||||
"ignored_during_riscv_boot": true
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Submodule
+1
Submodule mlkem added at 1453da5cd1
+104
-24
@@ -64,12 +64,12 @@ if(ESP_PLATFORM)
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED USB_VID)
|
||||
set(USB_VID 0xFEFF)
|
||||
set(USB_VID 0x1D50)
|
||||
endif()
|
||||
add_definitions(-DUSB_VID=${USB_VID})
|
||||
|
||||
if(NOT DEFINED USB_PID)
|
||||
set(USB_PID 0xFCFD)
|
||||
set(USB_PID 0x619B)
|
||||
endif()
|
||||
add_definitions(-DUSB_PID=${USB_PID})
|
||||
|
||||
@@ -126,7 +126,7 @@ if(NOT ESP_PLATFORM)
|
||||
)
|
||||
|
||||
if(ENABLE_EDDSA)
|
||||
set(MBEDTLS_ORIGIN "https://github.com/polhenarejos/mbedtls.git")
|
||||
set(MBEDTLS_ORIGIN "https://github.com/librekeys/mbedtls.git")
|
||||
set(MBEDTLS_REF "mbedtls-3.6-eddsa")
|
||||
|
||||
execute_process(
|
||||
@@ -213,6 +213,14 @@ if(NOT ESP_PLATFORM)
|
||||
endif()
|
||||
endif(NOT ESP_PLATFORM)
|
||||
|
||||
option(ENABLE_PQC "Enable/disable PQC support" OFF)
|
||||
if(ENABLE_PQC)
|
||||
message(STATUS "PQC support:\t\t\t enabled")
|
||||
add_definitions(-DENABLE_PQC)
|
||||
else()
|
||||
message(STATUS "PQC support:\t\t\t disabled")
|
||||
endif(ENABLE_PQC)
|
||||
|
||||
set(MBEDTLS_SOURCES
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/aes.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/asn1parse.c
|
||||
@@ -245,9 +253,12 @@ set(MBEDTLS_SOURCES
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/poly1305.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/ripemd160.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/des.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/x509write.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/x509write_crt.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/x509_create.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/x509write_csr.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/base64.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/pem.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/pk.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/pk_wrap.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/pkwrite.c
|
||||
@@ -260,6 +271,54 @@ if (ENABLE_EDDSA)
|
||||
)
|
||||
endif()
|
||||
|
||||
if(ENABLE_PQC)
|
||||
if (NOT ESP_PLATFORM)
|
||||
file(GLOB_RECURSE MLKEM_SOURCES
|
||||
${CMAKE_CURRENT_LIST_DIR}/mlkem/mlkem/src/*.c
|
||||
)
|
||||
list(FILTER MLKEM_SOURCES EXCLUDE REGEX "/native/")
|
||||
|
||||
add_library(mlkem512 STATIC ${MLKEM_SOURCES})
|
||||
target_include_directories(mlkem512 PRIVATE
|
||||
${CMAKE_CURRENT_LIST_DIR}/mlkem/mlkem/src
|
||||
${CMAKE_CURRENT_LIST_DIR}/config/mlkem
|
||||
)
|
||||
target_compile_definitions(mlkem512 PRIVATE
|
||||
MLK_CONFIG_PARAMETER_SET=512
|
||||
MLK_CONFIG_MULTILEVEL_WITH_SHARED
|
||||
MLK_CONFIG_NAMESPACE_PREFIX=mlkem
|
||||
)
|
||||
|
||||
add_library(mlkem768 STATIC ${MLKEM_SOURCES})
|
||||
target_include_directories(mlkem768 PRIVATE
|
||||
${CMAKE_CURRENT_LIST_DIR}/mlkem/mlkem/src
|
||||
${CMAKE_CURRENT_LIST_DIR}/config/mlkem
|
||||
)
|
||||
target_compile_definitions(mlkem768 PRIVATE
|
||||
MLK_CONFIG_PARAMETER_SET=768
|
||||
MLK_CONFIG_MULTILEVEL_NO_SHARED
|
||||
MLK_CONFIG_NAMESPACE_PREFIX=mlkem
|
||||
)
|
||||
|
||||
add_library(mlkem1024 STATIC ${MLKEM_SOURCES})
|
||||
target_include_directories(mlkem1024 PRIVATE
|
||||
${CMAKE_CURRENT_LIST_DIR}/mlkem/mlkem/src
|
||||
${CMAKE_CURRENT_LIST_DIR}/config/mlkem
|
||||
)
|
||||
target_compile_definitions(mlkem1024 PRIVATE
|
||||
MLK_CONFIG_PARAMETER_SET=1024
|
||||
MLK_CONFIG_MULTILEVEL_NO_SHARED
|
||||
MLK_CONFIG_NAMESPACE_PREFIX=mlkem
|
||||
)
|
||||
endif()
|
||||
|
||||
set(INCLUDES ${INCLUDES}
|
||||
${CMAKE_CURRENT_LIST_DIR}/mlkem/mlkem
|
||||
${CMAKE_CURRENT_LIST_DIR}/config/mlkem
|
||||
)
|
||||
add_definitions(-DMLK_CONFIG_NAMESPACE_PREFIX=mlkem -DMLK_CONFIG_MULTILEVEL_BUILD=1)
|
||||
endif()
|
||||
|
||||
set(PICO_KEYS_SOURCES ${PICO_KEYS_SOURCES}
|
||||
${CMAKE_CURRENT_LIST_DIR}/src/main.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/src/usb/usb.c
|
||||
@@ -318,6 +377,9 @@ if(USB_ITF_HID)
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/pk_wrap.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/mbedtls/library/pkwrite.c
|
||||
)
|
||||
|
||||
endif()
|
||||
|
||||
set(CBOR_SOURCES
|
||||
${CMAKE_CURRENT_LIST_DIR}/tinycbor/src/cborencoder.c
|
||||
${CMAKE_CURRENT_LIST_DIR}/tinycbor/src/cborparser.c
|
||||
@@ -327,19 +389,41 @@ if(USB_ITF_HID)
|
||||
set(INCLUDES ${INCLUDES}
|
||||
${CMAKE_CURRENT_LIST_DIR}/tinycbor/src
|
||||
)
|
||||
set(LIBRARIES
|
||||
mbedtls
|
||||
)
|
||||
|
||||
if (NOT ESP_PLATFORM)
|
||||
add_library(mbedtls STATIC ${MBEDTLS_SOURCES})
|
||||
target_include_directories(mbedtls PUBLIC ${CMAKE_CURRENT_LIST_DIR}/mbedtls/include)
|
||||
if(USB_ITF_HID)
|
||||
add_library(tinycbor STATIC ${CBOR_SOURCES})
|
||||
target_include_directories(tinycbor PUBLIC ${CMAKE_CURRENT_LIST_DIR}/tinycbor/src)
|
||||
set(LIBRARIES ${LIBRARIES} tinycbor)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(LIBRARIES
|
||||
pico_stdlib
|
||||
pico_multicore
|
||||
pico_rand
|
||||
pico_aon_timer
|
||||
hardware_flash
|
||||
pico_unique_id
|
||||
tinyusb_device
|
||||
tinyusb_board
|
||||
hardware_pio
|
||||
)
|
||||
if (PICO_PLATFORM)
|
||||
list(APPEND LIBRARIES
|
||||
pico_stdlib
|
||||
pico_multicore
|
||||
pico_rand
|
||||
pico_aon_timer
|
||||
hardware_flash
|
||||
pico_unique_id
|
||||
tinyusb_device
|
||||
tinyusb_board
|
||||
hardware_pio
|
||||
)
|
||||
endif()
|
||||
|
||||
if (ENABLE_PQC)
|
||||
list(APPEND LIBRARIES
|
||||
mlkem512
|
||||
mlkem768
|
||||
mlkem1024
|
||||
)
|
||||
endif()
|
||||
|
||||
set(IS_CYW43 0)
|
||||
if (PICO_PLATFORM)
|
||||
@@ -403,10 +487,7 @@ else()
|
||||
${CMAKE_CURRENT_LIST_DIR}/src/usb/usb_descriptors.c
|
||||
)
|
||||
endif()
|
||||
set(EXTERNAL_SOURCES ${CBOR_SOURCES})
|
||||
if(NOT ESP_PLATFORM)
|
||||
set(EXTERNAL_SOURCES ${EXTERNAL_SOURCES} ${MBEDTLS_SOURCES})
|
||||
endif()
|
||||
|
||||
if(MSVC)
|
||||
set(
|
||||
CMAKE_C_FLAGS
|
||||
@@ -423,11 +504,6 @@ if(MSVC)
|
||||
_WIN32_WINNT_WIN10_RS5=0
|
||||
_STRALIGN_USE_SECURE_CRT=0
|
||||
NTDDI_WIN11_DT=0)
|
||||
set_source_files_properties(
|
||||
${EXTERNAL_SOURCES}
|
||||
PROPERTIES
|
||||
COMPILE_FLAGS " -W3 -wd4242 -wd4065"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(PICO_PLATFORM)
|
||||
@@ -450,13 +526,17 @@ if(PICO_RP2350)
|
||||
set(INCLUDES ${INCLUDES}
|
||||
${CMAKE_CURRENT_LIST_DIR}/config/rp2350/alt
|
||||
)
|
||||
target_include_directories(mbedtls PRIVATE
|
||||
${CMAKE_CURRENT_LIST_DIR}/config/rp2350/alt
|
||||
)
|
||||
target_link_libraries(mbedtls PRIVATE pico_sha256)
|
||||
set(PICO_KEYS_SOURCES ${PICO_KEYS_SOURCES}
|
||||
${CMAKE_CURRENT_LIST_DIR}/config/rp2350/alt/sha256_alt.c
|
||||
)
|
||||
add_definitions(-DMBEDTLS_SHA256_ALT=1)
|
||||
set(LIBRARIES ${LIBRARIES} pico_sha256)
|
||||
endif()
|
||||
set(INTERNAL_SOURCES ${PICO_KEYS_SOURCES})
|
||||
set(PICO_KEYS_SOURCES ${PICO_KEYS_SOURCES} ${EXTERNAL_SOURCES})
|
||||
|
||||
if(NOT TARGET pico_keys_sdk)
|
||||
if(PICO_PLATFORM)
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
idf_component_register(
|
||||
SRCS ${PICO_KEYS_SOURCES}
|
||||
INCLUDE_DIRS . fs rng usb led ../tinycbor/src
|
||||
REQUIRES bootloader_support esp_partition esp_tinyusb efuse mbedtls
|
||||
)
|
||||
idf_component_set_property(${COMPONENT_NAME} WHOLE_ARCHIVE ON)
|
||||
+1
-1
@@ -30,7 +30,7 @@ uint8_t *rdata_gr = NULL;
|
||||
uint16_t rdata_bk = 0x0;
|
||||
extern uint32_t timeout;
|
||||
bool is_chaining = false;
|
||||
uint8_t chain_buf[4096];
|
||||
uint8_t chain_buf[2038];
|
||||
uint8_t *chain_ptr = NULL;
|
||||
|
||||
int process_apdu() {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user