Add attestation service provider and client
Adds the attestation service provider with a packed-c serializer. A
client that implements the PSA Attestation C API is also added. To
allow for service level testing in a PC environment, a standalone
service context has beed added for the attestation service.
Signed-off-by: Julian Hall <julian.hall@arm.com>
Change-Id: I468e8be122472b5cfff4b9a56569a08b193a14e9
diff --git a/deployments/component-test/component-test.cmake b/deployments/component-test/component-test.cmake
index 075538d..bb52dd5 100644
--- a/deployments/component-test/component-test.cmake
+++ b/deployments/component-test/component-test.cmake
@@ -41,6 +41,8 @@
"components/service/locator/standalone/services/internal-trusted-storage"
"components/service/locator/standalone/services/protected-storage"
"components/service/locator/standalone/services/test-runner"
+ "components/service/locator/standalone/services/attestation"
+ "components/service/attestation/include"
"components/service/attestation/claims"
"components/service/attestation/claims/sources/preloaded"
"components/service/attestation/claims/sources/event_log"
@@ -48,7 +50,12 @@
"components/service/attestation/claims/sources/event_log/test"
"components/service/attestation/reporter/psa"
"components/service/attestation/key_mngr"
+ "components/service/attestation/provider"
+ "components/service/attestation/provider/serializer/packed-c"
+ "components/service/attestation/client/psa"
+ "components/service/attestation/test/common"
"components/service/attestation/test/component"
+ "components/service/attestation/test/service"
"components/service/crypto/client/cpp"
"components/service/crypto/client/cpp/protobuf"
"components/service/crypto/client/cpp/packed-c"
diff --git a/deployments/libts/linux-pc/CMakeLists.txt b/deployments/libts/linux-pc/CMakeLists.txt
index f6ac33d..d1a96ae 100644
--- a/deployments/libts/linux-pc/CMakeLists.txt
+++ b/deployments/libts/linux-pc/CMakeLists.txt
@@ -31,6 +31,7 @@
COMPONENTS
"components/rpc/direct"
"components/common/tlv"
+ "components/common/endian"
"components/service/common/include"
"components/service/common/serializer/protobuf"
"components/service/common/provider"
@@ -39,6 +40,16 @@
"components/service/locator/standalone/services/internal-trusted-storage"
"components/service/locator/standalone/services/protected-storage"
"components/service/locator/standalone/services/test-runner"
+ "components/service/locator/standalone/services/attestation"
+ "components/service/attestation/include"
+ "components/service/attestation/claims"
+ "components/service/attestation/claims/sources/preloaded"
+ "components/service/attestation/claims/sources/event_log"
+ "components/service/attestation/claims/sources/event_log/mock"
+ "components/service/attestation/reporter/psa"
+ "components/service/attestation/key_mngr"
+ "components/service/attestation/provider"
+ "components/service/attestation/provider/serializer/packed-c"
"components/service/crypto/provider/mbedcrypto"
"components/service/crypto/provider/mbedcrypto/trng_adapter/linux"
"components/service/crypto/provider/serializer/protobuf"
@@ -80,6 +91,14 @@
include(${TS_ROOT}/external/MbedTLS/MbedTLS.cmake)
target_link_libraries(ts PRIVATE mbedcrypto)
+# Qcbor
+include(${TS_ROOT}/external/qcbor/qcbor.cmake)
+target_link_libraries(ts PRIVATE qcbor)
+
+# t_cose
+include(${TS_ROOT}/external/t_cose/t_cose.cmake)
+target_link_libraries(ts PRIVATE t_cose)
+
#-------------------------------------------------------------------------------
# Test executable (libts-test) for testing libts static library
#
diff --git a/deployments/ts-service-test/linux-pc/CMakeLists.txt b/deployments/ts-service-test/linux-pc/CMakeLists.txt
index 4a86c87..ac4c237 100644
--- a/deployments/ts-service-test/linux-pc/CMakeLists.txt
+++ b/deployments/ts-service-test/linux-pc/CMakeLists.txt
@@ -80,6 +80,9 @@
COMPONENTS
"components/service/test_runner/client/cpp"
"components/service/test_runner/test/service"
+ "components/service/attestation/include"
+ "components/service/attestation/client/psa"
+ "components/service/attestation/test/service"
)
#-------------------------------------------------------------------------------