Skip to content

Commit 93cd9b2

Browse files
committed
forbid PUB_KEY_ID with GET_KEY_PAIR_INFO or SET_KEY_PAIR_INFO
Signed-off-by: Jiewen Yao <[email protected]>
1 parent 9c0deab commit 93cd9b2

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

library/spdm_requester_lib/libspdm_req_get_capabilities.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ static bool validate_responder_capability(uint32_t capabilities_flag, uint8_t ve
4242
const uint8_t event_cap = (uint8_t)(capabilities_flag >> 25) & 0x01;
4343
const uint8_t multi_key_cap = (uint8_t)(capabilities_flag >> 26) & 0x03;
4444
const uint8_t get_key_pair_info_cap = (uint8_t)(capabilities_flag >> 28) & 0x01;
45-
/* const uint8_t set_key_pair_info_cap = (uint8_t)(capabilities_flag >> 29) & 0x01; */
45+
const uint8_t set_key_pair_info_cap = (uint8_t)(capabilities_flag >> 29) & 0x01;
4646

4747
/* Checks common to all SPDM versions. */
4848

@@ -164,8 +164,11 @@ static bool validate_responder_capability(uint32_t capabilities_flag, uint8_t ve
164164
return false;
165165
}
166166
/* check multi-key and pub_key_id */
167-
if ((multi_key_cap != 0) && (pub_key_id_cap == 1)) {
168-
return false;
167+
if (pub_key_id_cap == 1) {
168+
if ((multi_key_cap != 0) || (get_key_pair_info_cap == 1) ||
169+
(set_key_pair_info_cap == 1)) {
170+
return false;
171+
}
169172
}
170173
}
171174

0 commit comments

Comments
 (0)