Skip to content

Commit

Permalink
Enforce non-zero measurement count
Browse files Browse the repository at this point in the history
Fix #2727.

Signed-off-by: Steven Bellock <[email protected]>
  • Loading branch information
steven-bellock authored and jyao1 committed Jul 14, 2024
1 parent 79b52fd commit 2d4c531
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions library/spdm_responder_lib/libspdm_rsp_measurements.c
Original file line number Diff line number Diff line change
Expand Up @@ -252,9 +252,6 @@ libspdm_return_t libspdm_get_response_measurements(libspdm_context_t *spdm_conte
measurements,
&measurements_size);

LIBSPDM_ASSERT(measurements_size <= SPDM_MAX_MEASUREMENT_RECORD_LENGTH);
LIBSPDM_ASSERT(measurements_size <= meas_opaque_buffer_size);

if (LIBSPDM_STATUS_IS_ERROR(status)) {
if (status == LIBSPDM_STATUS_MEAS_INVALID_INDEX) {
libspdm_reset_message_m(spdm_context, session_info);
Expand All @@ -269,6 +266,11 @@ libspdm_return_t libspdm_get_response_measurements(libspdm_context_t *spdm_conte
}
}

LIBSPDM_ASSERT(measurements_count != 0);
LIBSPDM_ASSERT((measurements_index == 0) || (measurements_size > 0));
LIBSPDM_ASSERT(measurements_size <= SPDM_MAX_MEASUREMENT_RECORD_LENGTH);
LIBSPDM_ASSERT(measurements_size <= meas_opaque_buffer_size);

if (measurements_index == 0) {
measurements_size = 0;
}
Expand Down

0 comments on commit 2d4c531

Please sign in to comment.