]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
Merge pull request #24368 from poettering/tpm2-json-pcr-array-rework
authorLennart Poettering <lennart@poettering.net>
Fri, 19 Aug 2022 19:51:47 +0000 (21:51 +0200)
committerGitHub <noreply@github.com>
Fri, 19 Aug 2022 19:51:47 +0000 (21:51 +0200)
tpm2: add helpers for building/parsing JSON arrays of PCR indexes

1  2 
src/shared/tpm2-util.c
src/shared/tpm2-util.h

Simple merge
index c62a0843bad8c3f9f641c4cd7c0f50acd4a7fafd,3e9464ea6746c350c19288283440ac42a1d200f1..4030f2a80497aeca3452bbe38c9747d198e2f491
@@@ -54,13 -54,12 +54,16 @@@ int tpm2_find_device_auto(int log_level
  
  int tpm2_parse_pcrs(const char *s, uint32_t *ret);
  
+ int tpm2_make_pcr_json_array(uint32_t pcr_mask, JsonVariant **ret);
+ int tpm2_parse_pcr_json_array(JsonVariant *v, uint32_t *ret);
  int tpm2_make_luks2_json(int keyslot, uint32_t pcr_mask, uint16_t pcr_bank, uint16_t primary_alg, const void *blob, size_t blob_size, const void *policy_hash, size_t policy_hash_size, TPM2Flags flags, JsonVariant **ret);
  
 -#define TPM2_PCRS_MAX 24
 +#define TPM2_PCRS_MAX 24U
 +
 +static inline bool TPM2_PCR_MASK_VALID(uint64_t pcr_mask) {
 +        return pcr_mask < (UINT64_C(1) << TPM2_PCRS_MAX); /* Support 24 PCR banks */
 +}
  
  /* Default to PCR 7 only */
  #define TPM2_PCR_MASK_DEFAULT (UINT32_C(1) << 7)