@@ -3648,10 +3648,10 @@ index 344e7f2ea..72f743137 100644
36483648 12 /* X509 */,
36493649 402 /* X509v3 AC Targeting */,
36503650diff --git a/crypto/obj/obj_mac.num b/crypto/obj/obj_mac.num
3651- index 82d0a3db0..2a46adfe8 100644
3651+ index 82d0a3db0..e768101da 100644
36523652--- a/crypto/obj/obj_mac.num
36533653+++ b/crypto/obj/obj_mac.num
3654- @@ -952,5 +952,7 @@ X448 961
3654+ @@ -952,5 +952,8 @@ X448 961
36553655 sha512_256 962
36563656 hkdf 963
36573657 X25519Kyber768Draft00 964
@@ -3661,6 +3661,7 @@ index 82d0a3db0..2a46adfe8 100644
36613661+ P256Kyber768Draft00 966
36623662+ X25519Kyber768Draft00Old 967
36633663+ X25519MLKEM768 968
3664+ + MLKEM1024 969
36643665diff --git a/crypto/obj/objects.txt b/crypto/obj/objects.txt
36653666index a38969bc4..14859cb4c 100644
36663667--- a/crypto/obj/objects.txt
@@ -3892,10 +3893,10 @@ index 000000000..745defefd
38923893+
38933894+ #endif // OPENSSL_HEADER_CRYPTO_KYBER_INTERNAL_H
38943895diff --git a/include/openssl/nid.h b/include/openssl/nid.h
3895- index 7f018ceec..6dfd090e6 100644
3896+ index 7f018ceec..a71e719d9 100644
38963897--- a/include/openssl/nid.h
38973898+++ b/include/openssl/nid.h
3898- @@ -4213,8 +4213,17 @@ extern "C" {
3899+ @@ -4213,11 +4213,20 @@ extern "C" {
38993900 #define SN_X25519Kyber768Draft00 "X25519Kyber768Draft00"
39003901 #define NID_X25519Kyber768Draft00 964
39013902
@@ -3913,7 +3914,11 @@ index 7f018ceec..6dfd090e6 100644
39133914+ #define NID_X25519MLKEM768 968
39143915
39153916 #define SN_MLKEM1024 "MLKEM1024"
3916- #define NID_MLKEM1024 966
3917+ - #define NID_MLKEM1024 966
3918+ + #define NID_MLKEM1024 969
3919+
3920+
3921+ #if defined(__cplusplus)
39173922diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h
39183923index eb9ef2d87..fde43d5dd 100644
39193924--- a/include/openssl/ssl.h
@@ -3943,20 +3948,20 @@ index 1366cc825..2631944e3 100644
39433948 case SSL_GROUP_MLKEM1024:
39443949 return true;
39453950diff --git a/ssl/internal.h b/ssl/internal.h
3946- index f623e2dc8..ea0d825e4 100644
3951+ index f623e2dc8..c4eafca7b 100644
39473952--- a/ssl/internal.h
39483953+++ b/ssl/internal.h
39493954@@ -964,7 +964,7 @@ struct NamedGroup {
39503955 Span<const NamedGroup> NamedGroups();
39513956
39523957 // kNumNamedGroups is the number of supported groups.
39533958- constexpr size_t kNumNamedGroups = 7u;
3954- + constexpr size_t kNumNamedGroups = 9u ;
3959+ + constexpr size_t kNumNamedGroups = 10u ;
39553960
39563961 // DefaultSupportedGroupIds returns the list of IDs for the default groups that
39573962 // are supported when the caller hasn't explicitly configured supported groups.
39583963diff --git a/ssl/ssl_key_share.cc b/ssl/ssl_key_share.cc
3959- index 94d07ff95..51eba7fb2 100644
3964+ index 94d07ff95..89b7ae7d6 100644
39603965--- a/ssl/ssl_key_share.cc
39613966+++ b/ssl/ssl_key_share.cc
39623967@@ -26,14 +26,15 @@
@@ -4582,7 +4587,7 @@ index 94d07ff95..51eba7fb2 100644
45824587 };
45834588
45844589 // draft-ietf-tls-mlkem-04
4585- @@ -440,10 +783,16 @@ constexpr NamedGroup kNamedGroups[] = {
4590+ @@ -440,10 +783,17 @@ constexpr NamedGroup kNamedGroups[] = {
45864591 {NID_secp384r1, SSL_GROUP_SECP384R1, "P-384", "secp384r1"},
45874592 {NID_secp521r1, SSL_GROUP_SECP521R1, "P-521", "secp521r1"},
45884593 {NID_X25519, SSL_GROUP_X25519, "X25519", "x25519"},
@@ -4598,11 +4603,12 @@ index 94d07ff95..51eba7fb2 100644
45984603+ {NID_P256Kyber768Draft00, SSL_GROUP_P256_KYBER768_DRAFT00,
45994604+ "P256Kyber768Draft00", "P256Kyber768D00"},
46004605+ {NID_X25519MLKEM768, SSL_GROUP_X25519_MLKEM768,
4601- + "X25519MLKEM768", "X25519MLKEM768"}
4606+ + "X25519MLKEM768", "X25519MLKEM768"},
4607+ + {NID_MLKEM1024, SSL_GROUP_MLKEM1024, "MLKEM1024", ""}
46024608 };
46034609
46044610 static_assert(std::size(kNamedGroups) == kNumNamedGroups,
4605- @@ -455,9 +804 ,14 @@ Span<const NamedGroup> NamedGroups() { return kNamedGroups; }
4611+ @@ -455,9 +805 ,14 @@ Span<const NamedGroup> NamedGroups() { return kNamedGroups; }
46064612
46074613 Span<const uint16_t> DefaultSupportedGroupIds() {
46084614 static const uint16_t kDefaultSupportedGroupIds[] = {
@@ -4620,7 +4626,7 @@ index 94d07ff95..51eba7fb2 100644
46204626 };
46214627 return Span(kDefaultSupportedGroupIds);
46224628 }
4623- @@ -472,10 +826 ,16 @@ UniquePtr<SSLKeyShare> SSLKeyShare::Create(uint16_t group_id) {
4629+ @@ -472,10 +827 ,16 @@ UniquePtr<SSLKeyShare> SSLKeyShare::Create(uint16_t group_id) {
46244630 return MakeUnique<ECKeyShare>(EC_group_p521(), SSL_GROUP_SECP521R1);
46254631 case SSL_GROUP_X25519:
46264632 return MakeUnique<X25519KeyShare>();
0 commit comments