1
0
mirror of https://github.com/systemd/systemd.git synced 2025-02-04 21:47:31 +03:00

tpm2: in validator functions, return false instead of assert failure

This commit is contained in:
Dan Streetman 2023-08-21 10:48:20 -04:00
parent 3cd4145f34
commit 064ac95d81

View File

@ -1524,7 +1524,8 @@ size_t tpm2_tpml_pcr_selection_weight(const TPML_PCR_SELECTION *l) {
bool tpm2_pcr_value_valid(const Tpm2PCRValue *pcr_value) {
int r;
assert(pcr_value);
if (!pcr_value)
return false;
if (!TPM2_PCR_INDEX_VALID(pcr_value->index)) {
log_debug("PCR index %u invalid.", pcr_value->index);
@ -1551,9 +1552,12 @@ bool tpm2_pcr_value_valid(const Tpm2PCRValue *pcr_value) {
*
* 1) all entries must be sorted in ascending order (e.g. using tpm2_sort_pcr_values())
* 2) all entries must be unique, i.e. there cannot be 2 entries with the same hash and index
*
* Returns true if all entries are valid (or if no entries are provided), false otherwise.
*/
bool tpm2_pcr_values_valid(const Tpm2PCRValue *pcr_values, size_t n_pcr_values) {
assert(pcr_values || n_pcr_values == 0);
if (!pcr_values && n_pcr_values > 0)
return false;
for (size_t i = 0; i < n_pcr_values; i++) {
const Tpm2PCRValue *v = &pcr_values[i];