Adding PH2 experiment to the client_interceptors_end2end_test suite.
Also adding the Channel Arg wherever we missed it in the earlier PR : https://github.com/grpc/grpc/pull/41399/files
PiperOrigin-RevId: 856102643
This includes two major changes:
1. An additional credentials option `sni_override` with the type `optional<string>`. If `nullopt`, it has no effect, and if set to the empty string it disables sending SNI entirely. Otherwise, the specified string will be sent.
2. The implementation of [gRFC A101](https://github.com/grpc/proposal/blob/master/A101-SNI-setting-and-SNI-SAN-validation.md) using that new option. This includes options to set SNI and to validate SAN values against the set SNI value.
Closes#41051
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41051 from murgatroid99:xds_sni_support 6a1f8667dedc19947532720495b2932889236a12
PiperOrigin-RevId: 855765736
Bypassing 1 test in end2end_test because we want earlier validation of the flakes.
Fixing the bug may take about 2-4 working days. We need to check for the stability of the suite and so we need these to run on Kokoro.
Disabled retries in async_end2end_test , but not enabled the suite because of some timeout failure.
Also, refactored the code to add a new function ApplyCommonChannelArguments
PiperOrigin-RevId: 854186178
streaming_throughput_test is edited to disabled retry interceptor. streaming_throughput_test has NOT been enabled. Have to debug a flake.
PiperOrigin-RevId: 853963781
[PH2][Trivial][BUILD] Adding a util file to cpp end2end folder
Adding some temporary helper functions for that.
Closes#41361
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41361 from tanvi-jagtap:2026_01_07_util_file 0702cb4958f80117f44c8bd796f58fa59ceba0c1
PiperOrigin-RevId: 853164713
When a `std::multimap` has multiple entries with the same key, calling `m.find(key)` returns an unspecified element.
Historically, this returns the first matching element. However, this is not guaranteed, and recent libc++ changes make this return an arbitrary element.
Using `m.equal_range(key)` is a replacement that will preserve the current behavior. The behavior of this is guaranteed to return a range of all matching elements in insertion order, and the beginning of the range is the same element as what's normally returned by `m.find(key)`.
Closes#41279
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41279 from rupprecht:multimap-find 70b116441d03eff80523e010b25336f5a75c70c2
PiperOrigin-RevId: 852844558
This change renames test suites containing EXPECT_DEATH assertions to include "DeathTest" in their name, following GoogleTest best practices for handling death tests.
PiperOrigin-RevId: 852840775
[PH2][Tests] Enable cpp end2end tests that are working
Closes#41339
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41339 from tanvi-jagtap:2026_01_04_bulk_enable_cpp d501d8c35778de3adf59b7e68e876caa7ffd5b45
PiperOrigin-RevId: 852185367
[PH2][Tests] Cpp end to end enabling multiple tests
Closes#41332
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41332 from tanvi-jagtap:2026_01_02_bulk_enable_passing_tests 4976d566fbb0942f1f03202b6f45c5c216846dba
PiperOrigin-RevId: 851511191
[PH2][Tests] Cpp end to end enabling few tests
Closes#41327
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41327 from tanvi-jagtap:2025_12_30_thread_stress_test 5dd5e21feb7425436bd479bf3ca0d62f0a6b63c5
PiperOrigin-RevId: 850655928
This reverts partial changes from https://github.com/grpc/grpc/pull/41240.
As we don't want to maintain a separate copy of BUILD targets for all of the xDS protos, because
(a) this will be a maintenance burden
(b) it could lead to ODR violations if another target depends on both copies of the xDS proto targets.
Closes#41302
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41302 from rishesh007:remove_parse_headers 42134419d292d0b18ca1c1d71e7c3d1611c5115e
PiperOrigin-RevId: 850383567
Fix a few issues when build with OpenSSL versions
OpenSSL1.0.2 - copied some CRL related test code that was not valid assumptions for these tests.
OpenSSL1.1.1 - The regex is too sensitive, only do the regex check for BoringSSL
OpenSSL3 - We though the Invalid UTF8-SAN behavior should cause handshake failures for OpenSSL3 here and included different behavior, but that is still what is breaking. Let's revert that change.
Closes#41205
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41205 from gtcooke94:fix_spiffe_portability 8818df50053944444c1093bdf500944b690422d3
PiperOrigin-RevId: 842526173
<!--
If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.
If your pull request is for a specific language, please add the appropriate
lang label.
-->
Closes#41121
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41121 from pawbhard:temp_check 185a3d8cc4f617d6df66d4f1adc738ef9a4b13f6
PiperOrigin-RevId: 838668301
Pass a MemoryAllocator to the serialize function, so that the write memory can be allocated towards Resource Quota accounting. Add templates for SerializationTraits, to allow implementations to continue using an implementation of Serialize, which does not take the allocator as a parameter. This change is a no-op for now, because all the callers of Serialize pass nullptr for the allocator.
PiperOrigin-RevId: 826159627
This change introduces the ability for LatentSee events to carry additional, type-specific data. This data is stored in a variable-sized manner within the LatentSee bins and can be serialized to JSON as part of the event's arguments. The ZTrace collector is updated to log its events using this new LatentSee extra event mechanism.
PiperOrigin-RevId: 822286249
Skip the regex that is breaking in ossl3 builds
Fix invalid UTF-8 SAN test for OpenSSL 3.0
This change updates the InvalidUtf8San test case in spiffe_ssl_transport_security_test.cc to account for different behavior in OpenSSL 3.0. OpenSSL 3.0 is stricter about invalid UTF-8 in certificate Subject Alternative Names (SANs), causing the handshake to fail. The expectations for server and client success are adjusted accordingly for OpenSSL 3.0+. Additionally, EXPECT_EQ is changed to ASSERT_EQ when extracting the peer to prevent crashes if extraction fails.
Closes#40902
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40902 from gtcooke94:test_fixes e5e88926e2554716b621adaeb7e2af8cf17eea3c
PiperOrigin-RevId: 821934652
gRPC is currently getting formatted with two different clang-format implementations, and due to some weirdness they have different include file orderings. This change introduces clang-format configuration to ensure that the two systems align - it's *highly* expected that this will need some maintenance going forward as the two systems evolve.
Closes#40905
PiperOrigin-RevId: 819606209
See `grpc_check.h`. This code redefines the abseil `CHECK*` macros using custom gRPC macros when building tests. In `bazel test ...` builds, on check failure, `PostMortemEmit()` will dump state to the log before crashing.
Caveat: to prevent circular dependencies, code that `postmortem` relies on cannot use the custom gRPC CHECK macros. This is not much code, ~50 source files. grep for the `absl/log:check` bazel dependency.
Closes#39945
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/39945 from drfloob:grpc_check ca8e46718f2021e0df79aa67a3a0b0c751b3ce44
PiperOrigin-RevId: 807452496
Roll forward #40321 with fixes relating to OpenSSL 1.0.2
This roll forward fixes two things broken by the original commit:
* OpenSSL 1.0.2 compatibility - `X509_up_ref` is not in 1.0.2, so `CRYPTO_add` is used along with compiler directives.
* The macOS tests flatten trust bundles, and two files in different directories were both named `ca.pem` in the new `spiffe_bundle_map_end2end_test.cc`. One was from the existing test that this new test file was modeled after and was not needed, so it was removed from the BUILD file resolving the double naming conflict.
Closes#40476
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40476 from gtcooke94:spiffe_roll_forward e30b7e4c1a873ff62565f557fac90e28225a3f56
PiperOrigin-RevId: 796537764
[Copybara] Making includes uniform . This is for build layering
Closes#40388
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40388 from tanvi-jagtap:ph2_settings bc30d3d013b0ac2b4f55e9040a2d2b8e25b42cdc
PiperOrigin-RevId: 791205698
This change renames the existing interface types to have `Interface` in the name, and prepares the ground for concrete types for the call tracers.
PiperOrigin-RevId: 790173028
Roll forward after rollback of #39708 with the change to move `JsonLoader` impls from the `spiffe_utils.h` to `spiffe_utils.cc`. There was potential to cause a linker issue with the impls in the header.
Closes#40279
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40279 from gtcooke94:spiffe_xds 66fce6de7a546d4cb638d79cacdd0f18718e52b4
PiperOrigin-RevId: 786762336