- CitrineOS core extracted (CSMS OCPP 2.0.1) - OpenOCPP extracted (firmware OCPP 1.6J/2.0.1) - ShapeShifter library installed (pip install -e) - ShapeShifter specification extracted - EVerest extracted TODO updated with progress
162 lines
3.5 KiB
CMake
162 lines
3.5 KiB
CMake
find_package(OpenSSL 3)
|
|
|
|
set(TLS_TEST_FILES
|
|
alt_openssl-pki.conf
|
|
iso_pkey.asn1
|
|
openssl-pki.conf
|
|
ocsp_response.der
|
|
pki.sh
|
|
pki-tpm.sh
|
|
)
|
|
|
|
add_custom_command(
|
|
OUTPUT ${TLS_TEST_FILES}
|
|
COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/pki
|
|
COMMAND cd pki && cp ${TLS_TEST_FILES} ${CMAKE_CURRENT_BINARY_DIR}/
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
)
|
|
|
|
add_custom_target(tls_test_files_target
|
|
DEPENDS ${TLS_TEST_FILES}
|
|
)
|
|
|
|
set(TLS_GTEST_NAME tls_test)
|
|
add_executable(${TLS_GTEST_NAME})
|
|
add_dependencies(${TLS_GTEST_NAME} tls_test_files_target)
|
|
|
|
target_include_directories(${TLS_GTEST_NAME} PRIVATE
|
|
..
|
|
../include
|
|
)
|
|
|
|
target_compile_definitions(${TLS_GTEST_NAME} PRIVATE
|
|
-DUNIT_TEST
|
|
-DLIBEVSE_CRYPTO_SUPPLIER_OPENSSL
|
|
)
|
|
|
|
target_sources(${TLS_GTEST_NAME} PRIVATE
|
|
gtest_main.cpp
|
|
crypto_test.cpp
|
|
openssl_util_test.cpp
|
|
tls_test.cpp
|
|
tls_connection_test.cpp
|
|
../extensions/helpers.cpp
|
|
../extensions/status_request.cpp
|
|
../extensions/trusted_ca_keys.cpp
|
|
../src/openssl_conv.cpp
|
|
../src/openssl_util.cpp
|
|
../src/tls.cpp
|
|
)
|
|
|
|
if(USING_TPM2)
|
|
target_sources(${TLS_GTEST_NAME} PRIVATE
|
|
tls_connection_test_tpm.cpp
|
|
)
|
|
target_compile_definitions(${TLS_GTEST_NAME} PRIVATE
|
|
USING_TPM2
|
|
)
|
|
endif()
|
|
|
|
target_link_libraries(${TLS_GTEST_NAME}
|
|
PRIVATE
|
|
GTest::gtest
|
|
OpenSSL::SSL
|
|
OpenSSL::Crypto
|
|
everest::evse_security
|
|
everest::util
|
|
)
|
|
|
|
set(TLS_MAIN_NAME tls_server)
|
|
add_executable(${TLS_MAIN_NAME})
|
|
add_dependencies(${TLS_MAIN_NAME} tls_test_files_target)
|
|
|
|
target_include_directories(${TLS_MAIN_NAME} PRIVATE
|
|
..
|
|
../include
|
|
)
|
|
|
|
target_compile_definitions(${TLS_MAIN_NAME} PRIVATE
|
|
-DUNIT_TEST
|
|
)
|
|
|
|
target_sources(${TLS_MAIN_NAME} PRIVATE
|
|
tls_main.cpp
|
|
../extensions/helpers.cpp
|
|
../extensions/status_request.cpp
|
|
../extensions/trusted_ca_keys.cpp
|
|
../src/openssl_util.cpp
|
|
../src/tls.cpp
|
|
)
|
|
|
|
target_link_libraries(${TLS_MAIN_NAME}
|
|
PRIVATE
|
|
OpenSSL::SSL
|
|
OpenSSL::Crypto
|
|
everest::evse_security
|
|
everest::util
|
|
)
|
|
|
|
set(TLS_CLIENT_NAME tls_client)
|
|
add_executable(${TLS_CLIENT_NAME})
|
|
add_dependencies(${TLS_CLIENT_NAME} tls_test_files_target)
|
|
|
|
target_include_directories(${TLS_CLIENT_NAME} PRIVATE
|
|
..
|
|
../include
|
|
)
|
|
|
|
target_compile_definitions(${TLS_CLIENT_NAME} PRIVATE
|
|
-DUNIT_TEST
|
|
)
|
|
|
|
target_sources(${TLS_CLIENT_NAME} PRIVATE
|
|
tls_client_main.cpp
|
|
../extensions/helpers.cpp
|
|
../extensions/status_request.cpp
|
|
../extensions/trusted_ca_keys.cpp
|
|
../src/openssl_util.cpp
|
|
../src/tls.cpp
|
|
)
|
|
|
|
target_link_libraries(${TLS_CLIENT_NAME}
|
|
PRIVATE
|
|
OpenSSL::SSL
|
|
OpenSSL::Crypto
|
|
everest::evse_security
|
|
everest::util
|
|
)
|
|
|
|
set(TLS_PATCH_NAME patched_test)
|
|
add_executable(${TLS_PATCH_NAME})
|
|
add_dependencies(${TLS_PATCH_NAME} tls_test_files_target)
|
|
|
|
target_include_directories(${TLS_PATCH_NAME} PRIVATE
|
|
..
|
|
../include
|
|
)
|
|
|
|
target_compile_definitions(${TLS_PATCH_NAME} PRIVATE
|
|
-DUNIT_TEST
|
|
)
|
|
|
|
target_sources(${TLS_PATCH_NAME} PRIVATE
|
|
patched_test.cpp
|
|
../extensions/helpers.cpp
|
|
../extensions/status_request.cpp
|
|
../extensions/trusted_ca_keys.cpp
|
|
../src/openssl_util.cpp
|
|
../src/tls.cpp
|
|
)
|
|
|
|
target_link_libraries(${TLS_PATCH_NAME}
|
|
PRIVATE
|
|
GTest::gtest_main
|
|
OpenSSL::SSL
|
|
OpenSSL::Crypto
|
|
everest::evse_security
|
|
everest::util
|
|
)
|
|
|
|
add_test(${TLS_GTEST_NAME} ${TLS_GTEST_NAME})
|
|
ev_register_test_target(${TLS_GTEST_NAME})
|