@@ -348,6 +348,15 @@ typedef struct {
348
348
#define SPDM_NEGOTIATE_ALGORITHMS_STRUCT_TABLE_ALG_TYPE_REQ_BASE_ASYM_ALG 4
349
349
#define SPDM_NEGOTIATE_ALGORITHMS_STRUCT_TABLE_ALG_TYPE_KEY_SCHEDULE 5
350
350
351
+ #define SPDM_NEGOTIATE_ALGORITHMS_ALG_SUPPORTED_DHE_11_MASK 0x003f
352
+ #define SPDM_NEGOTIATE_ALGORITHMS_ALG_SUPPORTED_AEAD_11_MASK 0x0007
353
+ #define SPDM_NEGOTIATE_ALGORITHMS_ALG_SUPPORTED_REQ_BASE_ASYM_ALG_11_MASK 0x01ff
354
+ #define SPDM_NEGOTIATE_ALGORITHMS_ALG_SUPPORTED_KEY_SCHEDULE_11_MASK 0x0001
355
+
356
+ #define SPDM_NEGOTIATE_ALGORITHMS_ALG_SUPPORTED_DHE_12_MASK 0x007f
357
+ #define SPDM_NEGOTIATE_ALGORITHMS_ALG_SUPPORTED_AEAD_12_MASK 0x000f
358
+ #define SPDM_NEGOTIATE_ALGORITHMS_ALG_SUPPORTED_REQ_BASE_ASYM_ALG_12_MASK 0x0fff
359
+
351
360
typedef struct {
352
361
uint8_t alg_type ;
353
362
uint8_t alg_count ;
@@ -366,11 +375,15 @@ typedef struct {
366
375
#define SPDM_ALGORITHMS_BASE_ASYM_ALGO_TPM_ALG_ECDSA_ECC_NIST_P384 0x00000080
367
376
#define SPDM_ALGORITHMS_BASE_ASYM_ALGO_TPM_ALG_ECDSA_ECC_NIST_P521 0x00000100
368
377
378
+ #define SPDM_ALGORITHMS_BASE_ASYM_ALGO_10_MASK 0x000001FF
379
+
369
380
/* SPDM NEGOTIATE_ALGORITHMS request base_asym_algo/REQ_BASE_ASYM_ALG (1.2) */
370
381
#define SPDM_ALGORITHMS_BASE_ASYM_ALGO_TPM_ALG_SM2_ECC_SM2_P256 0x00000200
371
382
#define SPDM_ALGORITHMS_BASE_ASYM_ALGO_EDDSA_ED25519 0x00000400
372
383
#define SPDM_ALGORITHMS_BASE_ASYM_ALGO_EDDSA_ED448 0x00000800
373
384
385
+ #define SPDM_ALGORITHMS_BASE_ASYM_ALGO_12_MASK 0x00000FFF
386
+
374
387
/* SPDM NEGOTIATE_ALGORITHMS request base_hash_algo */
375
388
#define SPDM_ALGORITHMS_BASE_HASH_ALGO_TPM_ALG_SHA_256 0x00000001
376
389
#define SPDM_ALGORITHMS_BASE_HASH_ALGO_TPM_ALG_SHA_384 0x00000002
@@ -379,9 +392,13 @@ typedef struct {
379
392
#define SPDM_ALGORITHMS_BASE_HASH_ALGO_TPM_ALG_SHA3_384 0x00000010
380
393
#define SPDM_ALGORITHMS_BASE_HASH_ALGO_TPM_ALG_SHA3_512 0x00000020
381
394
395
+ #define SPDM_ALGORITHMS_BASE_HASH_ALGO_10_MASK 0x0000003F
396
+
382
397
/* SPDM NEGOTIATE_ALGORITHMS request base_hash_algo (1.2) */
383
398
#define SPDM_ALGORITHMS_BASE_HASH_ALGO_TPM_ALG_SM3_256 0x00000040
384
399
400
+ #define SPDM_ALGORITHMS_BASE_HASH_ALGO_12_MASK 0x0000007F
401
+
385
402
/* SPDM NEGOTIATE_ALGORITHMS request DHE */
386
403
#define SPDM_ALGORITHMS_DHE_NAMED_GROUP_FFDHE_2048 0x00000001
387
404
#define SPDM_ALGORITHMS_DHE_NAMED_GROUP_FFDHE_3072 0x00000002
@@ -442,9 +459,13 @@ typedef struct {
442
459
#define SPDM_ALGORITHMS_MEASUREMENT_HASH_ALGO_TPM_ALG_SHA3_384 0x00000020
443
460
#define SPDM_ALGORITHMS_MEASUREMENT_HASH_ALGO_TPM_ALG_SHA3_512 0x00000040
444
461
462
+ #define SPDM_ALGORITHMS_MEASUREMENT_HASH_ALGO_10_MASK 0x0000007F
463
+
445
464
/* SPDM NEGOTIATE_ALGORITHMS response measurement_hash_algo (1.2) */
446
465
#define SPDM_ALGORITHMS_MEASUREMENT_HASH_ALGO_TPM_ALG_SM3_256 0x00000080
447
466
467
+ #define SPDM_ALGORITHMS_MEASUREMENT_HASH_ALGO_12_MASK 0x000000FF
468
+
448
469
/* SPDM Opaque Data Format (1.2) */
449
470
#define SPDM_ALGORITHMS_OPAQUE_DATA_FORMAT_NONE 0x0
450
471
#define SPDM_ALGORITHMS_OPAQUE_DATA_FORMAT_0 0x1
@@ -715,6 +736,8 @@ typedef struct {
715
736
716
737
#define SPDM_MEASUREMENT_SPECIFICATION_DMTF 0x01
717
738
739
+ #define SPDM_MEASUREMENT_SPECIFICATION_10_MASK 0x01
740
+
718
741
/* SPDM MEASUREMENTS block DMTF header */
719
742
typedef struct {
720
743
uint8_t dmtf_spec_measurement_value_type ;
@@ -813,6 +836,8 @@ typedef struct {
813
836
814
837
#define SPDM_MEL_SPECIFICATION_DMTF 0x01
815
838
839
+ #define SPDM_MEL_SPECIFICATION_13_MASK 0x01
840
+
816
841
/* SPDM ERROR response */
817
842
typedef struct {
818
843
spdm_message_header_t header ;
0 commit comments