summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Antonov <anton.antonov@arm.com>2021-10-22 13:44:55 +0100
committerArmin Kuster <akuster808@gmail.com>2021-10-24 11:08:07 -0700
commit14e1db4ce8861d5672a6e42c31845fd5fc69ca67 (patch)
treec791ac6fb0e692e5be86375321b23e50c9bfff0e
parent2bc849ada34e935f21a6dec9b6fc67bb8e982be9 (diff)
downloadmeta-security-14e1db4ce8861d5672a6e42c31845fd5fc69ca67.tar.gz
Parsec service. Update PACKAGECONFIG definitions and README.md
Signed-off-by: Anton Antonov <Anton.Antonov@arm.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta-parsec/README.md23
-rw-r--r--meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.bb10
2 files changed, 23 insertions, 10 deletions
diff --git a/meta-parsec/README.md b/meta-parsec/README.md
index aeb48a6..c5635d3 100644
--- a/meta-parsec/README.md
+++ b/meta-parsec/README.md
@@ -1,8 +1,7 @@
1meta-parsec layer 1meta-parsec layer
2============== 2==============
3 3
4This layer contains recipes for the Parsec service with Mbed-Crypto, 4This layer contains recipes for the Parsec service and parsec tools.
5Pkcs11 and TPM providers and parsec tools.
6 5
7Dependencies 6Dependencies
8============ 7============
@@ -43,9 +42,16 @@ local.conf:
43 42
44 IMAGE_INSTALL:append = " parsec-service" 43 IMAGE_INSTALL:append = " parsec-service"
45 44
46 The Parsec service will be deployed into the image built with all the supported 45 By default the Parsec service will be deployed into the image with
47providers and with the default config file from the Parsec repository: 46TPM, PKCS11, MBED-CRYPTO and CRYPTOAUTHLIB providers build in
47and with the default config file from the Parsec repository:
48https://github.com/parallaxsecond/parsec/blob/main/config.toml 48https://github.com/parallaxsecond/parsec/blob/main/config.toml
49
50 You can use PACKAGECONFIG for Parsec servic recipe to define
51what providers should be built in. For example,
52
53 PACKAGECONFIG:pn-parsec-service = "TPM"
54
49 The default Parsec service config file contains the MbedCrypto provider 55 The default Parsec service config file contains the MbedCrypto provider
50enabled. The config file needs to be updated to use the Parsec service 56enabled. The config file needs to be updated to use the Parsec service
51with other providers like TPM or PKCS11. The required procedures are 57with other providers like TPM or PKCS11. The required procedures are
@@ -80,12 +86,19 @@ manual testing of the Parsec service:
80to test the Parsec service base functionality: 86to test the Parsec service base functionality:
81https://www.youtube.com/watch?v=ido0CyUdMHM&list=PLKjl7IFAwc4S7WQqqphCsyy6DPDxJ2Skg&index=4 87https://www.youtube.com/watch?v=ido0CyUdMHM&list=PLKjl7IFAwc4S7WQqqphCsyy6DPDxJ2Skg&index=4
82 88
89 The parsec-tool recipe also includes `parsec-cli-tests.sh` script
90which runs e2e tests against all providers enabled and configured
91in Parsec service.
92
83 You can use runqemu to start a VM with a built image file and run 93 You can use runqemu to start a VM with a built image file and run
84manual tests with parsec-tool. 94manual tests with parsec-tool.
85 95
96Enabling Parsec providers for manual testing
97============================================
98
861. MbedCrypto provider 991. MbedCrypto provider
87 The default Parsec service config file contains the MbedCrypto provider 100 The default Parsec service config file contains the MbedCrypto provider
88enabled. No changes required for manual testing. 101enabled. No changes required.
89 102
902. PKCS11 provider 1032. PKCS11 provider
91 The Software HSM can be used for manual testing of the provider by 104 The Software HSM can be used for manual testing of the provider by
diff --git a/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.bb b/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.bb
index b8bfa98..9161872 100644
--- a/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.bb
+++ b/meta-parsec/recipes-parsec/parsec-service/parsec-service_0.8.1.bb
@@ -13,15 +13,15 @@ SRC_URI += "crate://crates.io/parsec-service/${PV} \
13DEPENDS = "clang-native" 13DEPENDS = "clang-native"
14 14
15PACKAGECONFIG ??= "TPM PKCS11 MBED-CRYPTO CRYPTOAUTHLIB" 15PACKAGECONFIG ??= "TPM PKCS11 MBED-CRYPTO CRYPTOAUTHLIB"
16PACKAGECONFIG[ALL] = "all-providers,,tpm2-tss libts,libts" 16PACKAGECONFIG[ALL] = "all-providers cryptoki/generate-bindings tss-esapi/generate-bindings,,tpm2-tss libts,libts"
17PACKAGECONFIG[TPM] = "tpm-provider,,tpm2-tss" 17PACKAGECONFIG[TPM] = "tpm-provider tss-esapi/generate-bindings,,tpm2-tss"
18PACKAGECONFIG[PKCS11] = "pkcs11-provider," 18PACKAGECONFIG[PKCS11] = "pkcs11-provider cryptoki/generate-bindings,"
19PACKAGECONFIG[MBED-CRYPTO] = "mbed-crypto-provider," 19PACKAGECONFIG[MBED-CRYPTO] = "mbed-crypto-provider,"
20PACKAGECONFIG[CRYPTOAUTHLIB] = "cryptoauthlib-provider," 20PACKAGECONFIG[CRYPTOAUTHLIB] = "cryptoauthlib-provider,"
21PACKAGECONFIG[TS] = "trusted-service-provider,,libts,libts" 21PACKAGECONFIG[TS] = "trusted-service-provider,,libts,libts"
22 22
23PARSEC_PROVIDERS = "${@d.getVar('PACKAGECONFIG_CONFARGS',True).replace(' ', ',')}" 23PARSEC_FEATURES = "${@d.getVar('PACKAGECONFIG_CONFARGS',True).strip().replace(' ', ',')}"
24CARGO_BUILD_FLAGS += " --features ${PARSEC_PROVIDERS},cryptoki/generate-bindings,tss-esapi/generate-bindings" 24CARGO_BUILD_FLAGS += " --features ${PARSEC_FEATURES}"
25 25
26inherit systemd 26inherit systemd
27SYSTEMD_SERVICE:${PN} = "parsec.service" 27SYSTEMD_SERVICE:${PN} = "parsec.service"