Skip to content

Commit f1708ab

Browse files
deps: Bump boringssl -> 0.20260413.0 (#44446)
Created by Envoy dependency bot for @phlax Fix #44436 Signed-off-by: dependency-envoy[bot] <148525496+dependency-envoy[bot]@users.noreply.github.com> --------- Signed-off-by: dependency-envoy[bot] <148525496+dependency-envoy[bot]@users.noreply.github.com> Signed-off-by: Jonh Wendell <jwendell@redhat.com> Co-authored-by: dependency-envoy[bot] <148525496+dependency-envoy[bot]@users.noreply.github.com> Co-authored-by: Jonh Wendell <jwendell@redhat.com>
1 parent de123b5 commit f1708ab

6 files changed

Lines changed: 50 additions & 49 deletions

File tree

bazel/deps.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ boringssl:
5353
project_name: "BoringSSL"
5454
project_desc: "Minimal OpenSSL fork"
5555
project_url: "https://github.com/google/boringssl"
56-
release_date: "2026-03-30"
56+
release_date: "2026-04-14"
5757
use_category:
5858
- controlplane
5959
- dataplane_core

bazel/repository_locations.bzl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ REPOSITORY_LOCATIONS_SPEC = dict(
6161
boringssl = dict(
6262
# To update BoringSSL, which tracks BCR tags, open https://registry.bazel.build/modules/boringssl
6363
# and select an appropriate tag for the new version.
64-
version = "0.20260327.0",
65-
sha256 = "6af7037a8891d0e3d097dd61de6d195f6c2b532ed69d138a16da47c06a6cd022",
64+
version = "0.20260413.0",
65+
sha256 = "3560f7dd3f08e16b9f84d877a5be21ec62071564783009571af5fcc6fad734d2",
6666
strip_prefix = "boringssl-{version}",
6767
urls = ["https://github.com/google/boringssl/archive/{version}.tar.gz"],
6868
),

compat/openssl/BUILD

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -502,6 +502,7 @@ mapping_func_filegroup(
502502
"EVP_PKEY_assign_RSA",
503503
"EVP_PKEY_bits",
504504
"EVP_PKEY_cmp",
505+
"EVP_PKEY_eq",
505506
"EVP_PKEY_CTX_set_rsa_mgf1_md",
506507
"EVP_PKEY_CTX_set_rsa_padding",
507508
"EVP_PKEY_free",
@@ -812,6 +813,7 @@ mapping_func_filegroup(
812813
"X509_getm_notAfter",
813814
"X509_getm_notBefore",
814815
"X509_INFO_free",
816+
"X509_NAME_add_entry_by_NID",
815817
"X509_NAME_add_entry_by_txt",
816818
"X509_NAME_cmp",
817819
"X509_NAME_digest",

compat/openssl/patch/crypto/x509/x509_test.cc.patch

Lines changed: 43 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -3,64 +3,61 @@
33
@@ -1535,6 +1535,9 @@
44
Verify(root_cross_signed.get(), {cross_signing_root.get()}, {},
55
/*crls=*/{}, /*flags=*/0, configure_callback));
6-
6+
77
+#ifdef BSSL_COMPAT // This next check fails for negative depths on OpenSSL
88
+ if (depth < 0) continue;
99
+#endif
1010
// An explicitly trusted self-signed certificate is unaffected by depth
1111
// checks.
1212
EXPECT_EQ(X509_V_OK,
13-
@@ -2290,9 +2293,20 @@
13+
@@ -2310,7 +2313,18 @@
1414
{GEN_URI, "foo:///not-a-url", "not-a-url",
15-
- X509_V_ERR_UNSUPPORTED_NAME_SYNTAX, X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
15+
- X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
1616
+#ifdef BSSL_COMPAT
1717
+ // OpenSSL considers "foo:///not-a-url" to be a valid URI
18-
+ X509_V_ERR_PERMITTED_VIOLATION, X509_V_ERR_EXCLUDED_VIOLATION},
18+
+ X509_V_ERR_PERMITTED_VIOLATION, SpecialCase::kExcludedViolation},
1919
+#else // BSSL_COMPAT
20-
+ X509_V_ERR_UNSUPPORTED_NAME_SYNTAX, X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
20+
+ X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
2121
+#endif // BSSL_COMPAT
2222
{GEN_URI, "foo://:not-a-url", "not-a-url",
23-
X509_V_ERR_UNSUPPORTED_NAME_SYNTAX, X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
24-
- {GEN_URI, "foo://", "not-a-url", X509_V_ERR_UNSUPPORTED_NAME_SYNTAX,
25-
- X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
23+
X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
24+
- {GEN_URI, "foo://", "not-a-url", X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
2625
+#ifdef BSSL_COMPAT
2726
+ // OpenSSL considers "foo://" to be a valid URI
28-
+ {GEN_URI, "foo://", "not-a-url", X509_V_ERR_PERMITTED_VIOLATION,
29-
+ X509_V_ERR_EXCLUDED_VIOLATION},
27+
+ {GEN_URI, "foo://", "not-a-url",
28+
+ X509_V_ERR_PERMITTED_VIOLATION, SpecialCase::kExcludedViolation},
3029
+#else // BSSL_COMPAT
31-
+ {GEN_URI, "foo://", "not-a-url", X509_V_ERR_UNSUPPORTED_NAME_SYNTAX,
32-
+ X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
30+
+ {GEN_URI, "foo://", "not-a-url", X509_V_ERR_UNSUPPORTED_NAME_SYNTAX},
3331
+#endif // BSSL_COMPAT
3432
// Hosts are an exact match.
35-
{GEN_URI, "foo://example.com", "example.com", X509_V_OK,
36-
X509_V_ERR_EXCLUDED_VIOLATION},
37-
@@ -2363,6 +2374,12 @@
33+
{GEN_URI, "foo://example.com", "example.com", X509_V_OK},
34+
@@ -2384,6 +2398,12 @@
3835
+#ifdef BSSL_COMPAT // FIXME: See StackTest.test4
39-
+ auto rule =
40-
+ exclude ? &nc->excludedSubtrees : &nc->permittedSubtrees;
41-
+ *rule = reinterpret_cast<std::remove_reference_t<decltype(*rule)>>(sk_GENERAL_SUBTREE_new_null());
36+
+ auto rule =
37+
+ exclude ? &nc->excludedSubtrees : &nc->permittedSubtrees;
38+
+ *rule = reinterpret_cast<std::remove_reference_t<decltype(*rule)>>(sk_GENERAL_SUBTREE_new_null());
4239
+#else
43-
STACK_OF(GENERAL_SUBTREE) **rule =
44-
exclude ? &nc->excludedSubtrees : &nc->permittedSubtrees;
45-
- *rule = sk_GENERAL_SUBTREE_new_null();
46-
+ *rule = sk_GENERAL_SUBTREE_new_null();
40+
STACK_OF(GENERAL_SUBTREE) **rule =
41+
exclude ? &nc->excludedSubtrees : &nc->permittedSubtrees;
42+
- *rule = sk_GENERAL_SUBTREE_new_null();
43+
+ *rule = sk_GENERAL_SUBTREE_new_null();
4744
+#endif
48-
ASSERT_TRUE(*rule);
49-
UniquePtr<GENERAL_SUBTREE> subtree(GENERAL_SUBTREE_new());
50-
ASSERT_TRUE(subtree);
51-
@@ -2371,6 +2393,10 @@
52-
subtree->base = MakeGeneralName(t.type, t.constraint).release();
53-
ASSERT_TRUE(subtree->base);
54-
- ASSERT_TRUE(PushToStack(*rule, std::move(subtree)));
45+
ASSERT_TRUE(*rule);
46+
UniquePtr<GENERAL_SUBTREE> subtree(GENERAL_SUBTREE_new());
47+
ASSERT_TRUE(subtree);
48+
@@ -2392,6 +2412,10 @@
49+
subtree->base = MakeGeneralName(t.type, t.constraint).release();
50+
ASSERT_TRUE(subtree->base);
51+
- ASSERT_TRUE(PushToStack(*rule, std::move(subtree)));
5552
+#ifdef BSSL_COMPAT // FIXME:
56-
+ ASSERT_TRUE(PushToStack(reinterpret_cast<STACK_OF(GENERAL_SUBTREE)*>(*rule), std::move(subtree)));
53+
+ ASSERT_TRUE(PushToStack(reinterpret_cast<STACK_OF(GENERAL_SUBTREE)*>(*rule), std::move(subtree)));
5754
+#else
58-
+ ASSERT_TRUE(PushToStack(*rule, std::move(subtree)));
55+
+ ASSERT_TRUE(PushToStack(*rule, std::move(subtree)));
5956
+#endif
60-
61-
UniquePtr<X509> root =
62-
MakeTestCert("Root", "Root", key.get(), /*is_ca=*/true);
63-
@@ -3476,11 +3497,13 @@
57+
58+
UniquePtr<X509> root =
59+
MakeTestCert("Root", "Root", key.get(), /*is_ca=*/true);
60+
@@ -3476,11 +3500,13 @@
6461
// |X509_check_purpose| with |X509_PURPOSE_ANY| and purpose -1 do not check
6562
// basicConstraints, but other purpose types do. (This is redundant with the
6663
// actual basicConstraints check, but |X509_check_purpose| is public API.)
@@ -72,33 +69,33 @@
7269
/*ca=*/1));
7370
+#endif // BSSL_COMPAT
7471
}
75-
72+
7673
TEST(X509Test, NoBasicConstraintsNetscapeCA) {
77-
@@ -4374,6 +4397,7 @@
74+
@@ -4374,6 +4400,7 @@
7875
t6uPxHrmpUY=
7976
-----END CERTIFICATE-----
8077
)";
8178
+#ifndef BSSL_COMPAT
8279
static const char kP256InvalidParam[] = R"(
8380
-----BEGIN CERTIFICATE-----
8481
MIIBMTCBz6ADAgECAgIE0jATBggqhkjOPQQDAgQHZ2FyYmFnZTAPMQ0wCwYDVQQD
85-
@@ -4385,6 +4409,7 @@
82+
@@ -4385,6 +4412,7 @@
8683
fLULTZnynuQUULQkRcF7S7T2WpIL
8784
-----END CERTIFICATE-----
8885
)";
8986
+#endif
9087
static const char kRSANoParam[] = R"(
9188
-----BEGIN CERTIFICATE-----
9289
MIIBWzCBx6ADAgECAgIE0jALBgkqhkiG9w0BAQswDzENMAsGA1UEAxMEVGVzdDAg
93-
@@ -4409,6 +4434,7 @@
90+
@@ -4409,6 +4437,7 @@
9491
SwmQUz4bRpckRBj+sIyp1We+pg==
9592
-----END CERTIFICATE-----
9693
)";
9794
+#ifndef BSSL_COMPAT
9895
static const char kRSAInvalidParam[] = R"(
9996
-----BEGIN CERTIFICATE-----
10097
MIIBbTCB0KADAgECAgIE0jAUBgkqhkiG9w0BAQsEB2dhcmJhZ2UwDzENMAsGA1UE
101-
@@ -4421,7 +4447,7 @@
98+
@@ -4421,7 +4450,7 @@
10299
5OMNZ/ajVwOssw61GcAlScRqEHkZFBoGp7e+QpgB2tf9
103100
-----END CERTIFICATE-----
104101
)";
@@ -107,24 +104,24 @@
107104
TEST(X509Test, AlgorithmParameters) {
108105
// P-256 parameters should be omitted, but we accept NULL ones.
109106
UniquePtr<EVP_PKEY> key = PrivateKeyFromPEM(kP256Key);
110-
@@ -4435,11 +4461,13 @@
107+
@@ -4435,11 +4464,13 @@
111108
ASSERT_TRUE(cert);
112109
EXPECT_TRUE(X509_verify(cert.get(), key.get()));
113-
110+
114111
+#ifndef BSSL_COMPAT
115112
cert = CertFromPEM(kP256InvalidParam);
116113
ASSERT_TRUE(cert);
117114
EXPECT_FALSE(X509_verify(cert.get(), key.get()));
118115
EXPECT_TRUE(
119116
ErrorEquals(ERR_get_error(), ERR_LIB_X509, X509_R_INVALID_PARAMETER));
120117
+#endif
121-
118+
122119
// RSA parameters should be NULL, but we accept omitted ones.
123120
key = PrivateKeyFromPEM(kRSAKey);
124-
@@ -4453,11 +4481,13 @@
121+
@@ -4453,11 +4484,13 @@
125122
ASSERT_TRUE(cert);
126123
EXPECT_TRUE(X509_verify(cert.get(), key.get()));
127-
124+
128125
+#ifndef BSSL_COMPAT
129126
cert = CertFromPEM(kRSAInvalidParam);
130127
ASSERT_TRUE(cert);
@@ -133,5 +130,5 @@
133130
ErrorEquals(ERR_get_error(), ERR_LIB_X509, X509_R_INVALID_PARAMETER));
134131
+#endif
135132
}
136-
133+
137134
TEST(X509Test, GeneralName) {

compat/openssl/patch/include/openssl/evp.h.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ uncomment.sh "$1" --comment -h \
77
--uncomment-func-decl EVP_PKEY_free \
88
--uncomment-func-decl EVP_PKEY_up_ref \
99
--uncomment-func-decl EVP_PKEY_cmp \
10+
--uncomment-func-decl EVP_PKEY_eq \
1011
--uncomment-func-decl EVP_PKEY_id \
1112
--uncomment-func-decl EVP_PKEY_assign_RSA \
1213
--uncomment-func-decl EVP_PKEY_get0_RSA \

compat/openssl/patch/include/openssl/x509.h.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ uncomment.sh "$1" --comment -h \
3737
--uncomment-func-decl X509_NAME_entry_count \
3838
--uncomment-func-decl X509_NAME_get_index_by_NID \
3939
--uncomment-func-decl X509_NAME_get_entry \
40+
--uncomment-func-decl X509_NAME_add_entry_by_NID \
4041
--uncomment-func-decl X509_NAME_add_entry_by_txt \
4142
--uncomment-func-decl X509_NAME_ENTRY_set \
4243
--uncomment-func-decl X509_EXTENSION_get_data \

0 commit comments

Comments
 (0)