diff --git a/library/spdm_requester_lib/libspdm_req_negotiate_algorithms.c b/library/spdm_requester_lib/libspdm_req_negotiate_algorithms.c index cf46793b5d2..0bdc1ff8de8 100644 --- a/library/spdm_requester_lib/libspdm_req_negotiate_algorithms.c +++ b/library/spdm_requester_lib/libspdm_req_negotiate_algorithms.c @@ -580,6 +580,11 @@ static libspdm_return_t libspdm_try_negotiate_algorithms(libspdm_context_t *spdm status = LIBSPDM_STATUS_INVALID_MSG_FIELD; goto receive_done; } + } else { + if (spdm_context->connection_info.algorithm.mel_spec != 0) { + status = LIBSPDM_STATUS_INVALID_MSG_FIELD; + goto receive_done; + } } } }