Merge branch 'master' into eeify-writes-per-rpc

pull/35763/head
AJ Heller 1 year ago
commit ebb79f7dd6
  1. 1
      .github/labeler.yml
  2. 6
      .github/workflows/pr-auto-fix.yaml
  3. 178
      BUILD
  4. 1443
      CMakeLists.txt
  5. 38
      CONTRIBUTING_STEPS.md
  6. 2
      MAINTAINERS.md
  7. 394
      Makefile
  8. 280
      Package.swift
  9. 2
      _metadata.py
  10. 24
      bazel/experiments.bzl
  11. 1
      bazel/grpc_build_system.bzl
  12. 16
      bazel/grpc_deps.bzl
  13. 11
      bazel/python_rules.bzl
  14. 3061
      build_autogenerated.yaml
  15. 2
      build_config.rb
  16. 6
      build_handwritten.yaml
  17. 254
      config.m4
  18. 252
      config.w32
  19. 56
      doc/command_line_tool.md
  20. 3
      doc/g_stands_for.md
  21. BIN
      doc/images/img/grpc-assignee.png
  22. BIN
      doc/images/img/grpc-compare-and-pull-request.png
  23. BIN
      doc/images/img/grpc-contributor-type.png
  24. BIN
      doc/images/img/grpc-copybara-commit.png
  25. BIN
      doc/images/img/grpc-easycla-authorize.png
  26. BIN
      doc/images/img/grpc-easycla-covered.png
  27. BIN
      doc/images/img/grpc-pr-closed-by-copybara.png
  28. BIN
      doc/images/img/grpc-pull-request-details.png
  29. BIN
      doc/images/img/grpc-review-complete.png
  30. BIN
      doc/images/img/grpc-sign-cla.png
  31. BIN
      doc/images/img/grpc-tests.png
  32. BIN
      doc/images/img/grpc-wait-for-merge.png
  33. 2
      examples/cpp/csm/Dockerfile.client
  34. 24
      examples/cpp/csm/README.md
  35. 170
      examples/cpp/csm/csm_greeter_client.cc
  36. 2
      examples/cpp/csm/csm_greeter_server.cc
  37. 47
      examples/cpp/otel/BUILD
  38. 45
      examples/cpp/otel/README.md
  39. 138
      examples/cpp/otel/greeter_callback_client.cc
  40. 110
      examples/cpp/otel/greeter_callback_server.cc
  41. 27
      examples/python/helloworld/helloworld_pb2.py
  42. 14
      examples/python/helloworld/helloworld_pb2.pyi
  43. 104
      examples/python/helloworld/helloworld_pb2_grpc.py
  44. 1
      examples/python/observability/requirements.txt
  45. 280
      gRPC-C++.podspec
  46. 426
      gRPC-Core.podspec
  47. 2
      gRPC-ProtoRPC.podspec
  48. 2
      gRPC-RxLibrary.podspec
  49. 2
      gRPC.podspec
  50. 1
      grpc.def
  51. 351
      grpc.gemspec
  52. 339
      grpc.gyp
  53. 6
      include/grpc/grpc.h
  54. 42
      include/grpcpp/ext/csm_observability.h
  55. 4
      include/grpcpp/version_info.h
  56. 357
      package.xml
  57. 47
      setup.py
  58. 160
      src/boringssl/boringssl_prefix_symbols.h
  59. 23
      src/compiler/python_generator.cc
  60. 197
      src/core/BUILD
  61. 0
      src/core/client_channel/.clang-format
  62. 0
      src/core/client_channel/README.md
  63. 2
      src/core/client_channel/backend_metric.cc
  64. 8
      src/core/client_channel/backend_metric.h
  65. 2
      src/core/client_channel/backup_poller.cc
  66. 6
      src/core/client_channel/backup_poller.h
  67. 33
      src/core/client_channel/channel_connectivity.cc
  68. 2
      src/core/client_channel/client_channel_channelz.cc
  69. 6
      src/core/client_channel/client_channel_channelz.h
  70. 2
      src/core/client_channel/client_channel_factory.cc
  71. 8
      src/core/client_channel/client_channel_factory.h
  72. 468
      src/core/client_channel/client_channel_filter.cc
  73. 89
      src/core/client_channel/client_channel_filter.h
  74. 12
      src/core/client_channel/client_channel_internal.h
  75. 10
      src/core/client_channel/client_channel_plugin.cc
  76. 4
      src/core/client_channel/client_channel_service_config.cc
  77. 10
      src/core/client_channel/client_channel_service_config.h
  78. 2
      src/core/client_channel/config_selector.cc
  79. 10
      src/core/client_channel/config_selector.h
  80. 6
      src/core/client_channel/connector.h
  81. 2
      src/core/client_channel/dynamic_filters.cc
  82. 6
      src/core/client_channel/dynamic_filters.h
  83. 4
      src/core/client_channel/global_subchannel_pool.cc
  84. 8
      src/core/client_channel/global_subchannel_pool.h
  85. 16
      src/core/client_channel/http_proxy_mapper.cc
  86. 6
      src/core/client_channel/http_proxy_mapper.h
  87. 4
      src/core/client_channel/local_subchannel_pool.cc
  88. 8
      src/core/client_channel/local_subchannel_pool.h
  89. 16
      src/core/client_channel/retry_filter.cc
  90. 16
      src/core/client_channel/retry_filter.h
  91. 15
      src/core/client_channel/retry_filter_legacy_call_data.cc
  92. 21
      src/core/client_channel/retry_filter_legacy_call_data.h
  93. 2
      src/core/client_channel/retry_service_config.cc
  94. 8
      src/core/client_channel/retry_service_config.h
  95. 2
      src/core/client_channel/retry_throttle.cc
  96. 6
      src/core/client_channel/retry_throttle.h
  97. 8
      src/core/client_channel/service_config_channel_arg_filter.cc
  98. 4
      src/core/client_channel/subchannel.cc
  99. 12
      src/core/client_channel/subchannel.h
  100. 10
      src/core/client_channel/subchannel_interface_internal.h
  101. Some files were not shown because too many files have changed in this diff Show More

@ -51,6 +51,7 @@ lang/python:
- all-globs-to-any-file:
- src/python/**
- '!src/python/grpcio/grpc_core_dependencies.py'
- '!src/python/grpcio_observability/observability_lib_deps.py'
lang/ruby:
- changed-files:
- any-glob-to-any-file:

@ -22,7 +22,7 @@ jobs:
with:
format: YYYYWWd
- name: Cache bazel
uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3.3.3
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
env:
cache-name: bazel-cache
with:
@ -38,7 +38,7 @@ jobs:
# Cancel current runs if they're still running
# (saves processing on fast pushes)
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@01ce38bf961b4e243a6342cbade0dbc8ba3f0432 # 0.12.0
uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1
with:
access_token: ${{ github.token }}
# Allow opt-out for some users
@ -90,7 +90,7 @@ jobs:
run: ANDROID_NDK_HOME= ${{ github.workspace }}/tools/distrib/sanitize.sh
# Report back with a PR if things are broken
- name: Create Pull Request
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38 # v5.0.2
uses: peter-evans/create-pull-request@b1ddad2c994a25fbc81a28b3ec0e368bb2021c50 # v6.0.0
with:
delete-branch: true
branch-suffix: short-commit-hash

178
BUILD

@ -211,11 +211,11 @@ config_setting(
python_config_settings()
# This should be updated along with build_handwritten.yaml
g_stands_for = "guardian" # @unused
g_stands_for = "giggle" # @unused
core_version = "38.0.0" # @unused
core_version = "39.0.0" # @unused
version = "1.62.0-dev" # @unused
version = "1.63.0-dev" # @unused
GPR_PUBLIC_HDRS = [
"include/grpc/support/alloc.h",
@ -706,7 +706,6 @@ grpc_cc_library(
"//src/core:lib/gpr/windows/sync.cc",
"//src/core:lib/gpr/windows/time.cc",
"//src/core:lib/gpr/windows/tmpfile.cc",
"//src/core:lib/gpr/wrap_memcpy.cc",
"//src/core:lib/gprpp/crash.cc",
"//src/core:lib/gprpp/fork.cc",
"//src/core:lib/gprpp/host_port.cc",
@ -969,6 +968,7 @@ grpc_cc_library(
"//src/core:grpc_rbac_engine",
"//src/core:json",
"//src/core:json_reader",
"//src/core:load_file",
"//src/core:slice",
"//src/core:slice_refcount",
"//src/core:status_helper",
@ -1321,7 +1321,6 @@ grpc_cc_library(
"//src/core:lib/iomgr/iomgr_posix.cc",
"//src/core:lib/iomgr/iomgr_posix_cfstream.cc",
"//src/core:lib/iomgr/iomgr_windows.cc",
"//src/core:lib/iomgr/load_file.cc",
"//src/core:lib/iomgr/lockfree_event.cc",
"//src/core:lib/iomgr/polling_entity.cc",
"//src/core:lib/iomgr/pollset.cc",
@ -1375,6 +1374,7 @@ grpc_cc_library(
"//src/core:lib/surface/server.cc",
"//src/core:lib/surface/validate_metadata.cc",
"//src/core:lib/surface/version.cc",
"//src/core:lib/surface/wait_for_cq_end_op.cc",
"//src/core:lib/transport/batch_builder.cc",
"//src/core:lib/transport/transport.cc",
"//src/core:lib/transport/transport_op_string.cc",
@ -1414,7 +1414,6 @@ grpc_cc_library(
"//src/core:lib/iomgr/gethostname.h",
"//src/core:lib/iomgr/iocp_windows.h",
"//src/core:lib/iomgr/iomgr.h",
"//src/core:lib/iomgr/load_file.h",
"//src/core:lib/iomgr/lockfree_event.h",
"//src/core:lib/iomgr/nameser.h",
"//src/core:lib/iomgr/polling_entity.h",
@ -1531,9 +1530,9 @@ grpc_cc_library(
"//src/core:arena_promise",
"//src/core:atomic_utils",
"//src/core:bitset",
"//src/core:call_factory",
"//src/core:call_filters",
"//src/core:call_final_info",
"//src/core:call_size_estimator",
"//src/core:call_spine",
"//src/core:cancel_callback",
"//src/core:channel_args",
@ -1575,6 +1574,7 @@ grpc_cc_library(
"//src/core:latch",
"//src/core:loop",
"//src/core:map",
"//src/core:match",
"//src/core:memory_quota",
"//src/core:message",
"//src/core:metadata",
@ -1587,6 +1587,7 @@ grpc_cc_library(
"//src/core:posix_event_engine_base_hdrs",
"//src/core:posix_event_engine_endpoint",
"//src/core:promise_status",
"//src/core:promise_trace",
"//src/core:race",
"//src/core:random_early_detection",
"//src/core:ref_counted",
@ -1984,6 +1985,7 @@ grpc_cc_library(
"//src/core:grpc_transport_inproc",
"//src/core:json",
"//src/core:json_reader",
"//src/core:load_file",
"//src/core:ref_counted",
"//src/core:resource_quota",
"//src/core:slice",
@ -2896,10 +2898,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_service_config_impl",
srcs = [
"//src/core:lib/service_config/service_config_impl.cc",
"//src/core:service_config/service_config_impl.cc",
],
hdrs = [
"//src/core:lib/service_config/service_config_impl.h",
"//src/core:service_config/service_config_impl.h",
],
external_deps = [
"absl/status",
@ -2930,10 +2932,10 @@ grpc_cc_library(
grpc_cc_library(
name = "endpoint_addresses",
srcs = [
"//src/core:lib/resolver/endpoint_addresses.cc",
"//src/core:resolver/endpoint_addresses.cc",
],
hdrs = [
"//src/core:lib/resolver/endpoint_addresses.h",
"//src/core:resolver/endpoint_addresses.h",
],
external_deps = [
"absl/functional:function_ref",
@ -2956,7 +2958,7 @@ grpc_cc_library(
grpc_cc_library(
name = "server_address",
hdrs = [
"//src/core:lib/resolver/server_address.h",
"//src/core:resolver/server_address.h",
],
language = "c++",
visibility = ["@grpc:client_channel"],
@ -2969,13 +2971,13 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver",
srcs = [
"//src/core:lib/resolver/resolver.cc",
"//src/core:lib/resolver/resolver_registry.cc",
"//src/core:resolver/resolver.cc",
"//src/core:resolver/resolver_registry.cc",
],
hdrs = [
"//src/core:lib/resolver/resolver.h",
"//src/core:lib/resolver/resolver_factory.h",
"//src/core:lib/resolver/resolver_registry.h",
"//src/core:resolver/resolver.h",
"//src/core:resolver/resolver_factory.h",
"//src/core:resolver/resolver_registry.h",
],
external_deps = [
"absl/status",
@ -3002,55 +3004,55 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_client_channel",
srcs = [
"//src/core:ext/filters/client_channel/backend_metric.cc",
"//src/core:ext/filters/client_channel/backup_poller.cc",
"//src/core:ext/filters/client_channel/channel_connectivity.cc",
"//src/core:ext/filters/client_channel/client_channel.cc",
"//src/core:ext/filters/client_channel/client_channel_channelz.cc",
"//src/core:ext/filters/client_channel/client_channel_factory.cc",
"//src/core:ext/filters/client_channel/client_channel_plugin.cc",
"//src/core:ext/filters/client_channel/client_channel_service_config.cc",
"//src/core:ext/filters/client_channel/config_selector.cc",
"//src/core:ext/filters/client_channel/dynamic_filters.cc",
"//src/core:ext/filters/client_channel/global_subchannel_pool.cc",
"//src/core:ext/filters/client_channel/http_proxy_mapper.cc",
"//src/core:ext/filters/client_channel/lb_policy/child_policy_handler.cc",
"//src/core:ext/filters/client_channel/lb_policy/oob_backend_metric.cc",
"//src/core:ext/filters/client_channel/local_subchannel_pool.cc",
"//src/core:ext/filters/client_channel/retry_filter.cc",
"//src/core:ext/filters/client_channel/retry_filter_legacy_call_data.cc",
"//src/core:ext/filters/client_channel/retry_service_config.cc",
"//src/core:ext/filters/client_channel/retry_throttle.cc",
"//src/core:ext/filters/client_channel/service_config_channel_arg_filter.cc",
"//src/core:ext/filters/client_channel/subchannel.cc",
"//src/core:ext/filters/client_channel/subchannel_pool_interface.cc",
"//src/core:ext/filters/client_channel/subchannel_stream_client.cc",
"//src/core:client_channel/backend_metric.cc",
"//src/core:client_channel/backup_poller.cc",
"//src/core:client_channel/channel_connectivity.cc",
"//src/core:client_channel/client_channel_channelz.cc",
"//src/core:client_channel/client_channel_factory.cc",
"//src/core:client_channel/client_channel_filter.cc",
"//src/core:client_channel/client_channel_plugin.cc",
"//src/core:client_channel/client_channel_service_config.cc",
"//src/core:client_channel/config_selector.cc",
"//src/core:client_channel/dynamic_filters.cc",
"//src/core:client_channel/global_subchannel_pool.cc",
"//src/core:client_channel/http_proxy_mapper.cc",
"//src/core:client_channel/local_subchannel_pool.cc",
"//src/core:client_channel/retry_filter.cc",
"//src/core:client_channel/retry_filter_legacy_call_data.cc",
"//src/core:client_channel/retry_service_config.cc",
"//src/core:client_channel/retry_throttle.cc",
"//src/core:client_channel/service_config_channel_arg_filter.cc",
"//src/core:client_channel/subchannel.cc",
"//src/core:client_channel/subchannel_pool_interface.cc",
"//src/core:client_channel/subchannel_stream_client.cc",
"//src/core:load_balancing/child_policy_handler.cc",
"//src/core:load_balancing/oob_backend_metric.cc",
],
hdrs = [
"//src/core:ext/filters/client_channel/backend_metric.h",
"//src/core:ext/filters/client_channel/backup_poller.h",
"//src/core:ext/filters/client_channel/client_channel.h",
"//src/core:ext/filters/client_channel/client_channel_channelz.h",
"//src/core:ext/filters/client_channel/client_channel_factory.h",
"//src/core:ext/filters/client_channel/client_channel_internal.h",
"//src/core:ext/filters/client_channel/client_channel_service_config.h",
"//src/core:ext/filters/client_channel/config_selector.h",
"//src/core:ext/filters/client_channel/connector.h",
"//src/core:ext/filters/client_channel/dynamic_filters.h",
"//src/core:ext/filters/client_channel/global_subchannel_pool.h",
"//src/core:ext/filters/client_channel/http_proxy_mapper.h",
"//src/core:ext/filters/client_channel/lb_policy/child_policy_handler.h",
"//src/core:ext/filters/client_channel/lb_policy/oob_backend_metric.h",
"//src/core:ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h",
"//src/core:ext/filters/client_channel/local_subchannel_pool.h",
"//src/core:ext/filters/client_channel/retry_filter.h",
"//src/core:ext/filters/client_channel/retry_filter_legacy_call_data.h",
"//src/core:ext/filters/client_channel/retry_service_config.h",
"//src/core:ext/filters/client_channel/retry_throttle.h",
"//src/core:ext/filters/client_channel/subchannel.h",
"//src/core:ext/filters/client_channel/subchannel_interface_internal.h",
"//src/core:ext/filters/client_channel/subchannel_pool_interface.h",
"//src/core:ext/filters/client_channel/subchannel_stream_client.h",
"//src/core:client_channel/backend_metric.h",
"//src/core:client_channel/backup_poller.h",
"//src/core:client_channel/client_channel_channelz.h",
"//src/core:client_channel/client_channel_factory.h",
"//src/core:client_channel/client_channel_filter.h",
"//src/core:client_channel/client_channel_internal.h",
"//src/core:client_channel/client_channel_service_config.h",
"//src/core:client_channel/config_selector.h",
"//src/core:client_channel/connector.h",
"//src/core:client_channel/dynamic_filters.h",
"//src/core:client_channel/global_subchannel_pool.h",
"//src/core:client_channel/http_proxy_mapper.h",
"//src/core:client_channel/local_subchannel_pool.h",
"//src/core:client_channel/retry_filter.h",
"//src/core:client_channel/retry_filter_legacy_call_data.h",
"//src/core:client_channel/retry_service_config.h",
"//src/core:client_channel/retry_throttle.h",
"//src/core:client_channel/subchannel.h",
"//src/core:client_channel/subchannel_interface_internal.h",
"//src/core:client_channel/subchannel_pool_interface.h",
"//src/core:client_channel/subchannel_stream_client.h",
"//src/core:load_balancing/child_policy_handler.h",
"//src/core:load_balancing/oob_backend_metric.h",
"//src/core:load_balancing/oob_backend_metric_internal.h",
],
external_deps = [
"absl/base:core_headers",
@ -3162,17 +3164,17 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_dns_ares",
srcs = [
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc",
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc",
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc",
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc",
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc",
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc",
"//src/core:resolver/dns/c_ares/dns_resolver_ares.cc",
"//src/core:resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc",
"//src/core:resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc",
"//src/core:resolver/dns/c_ares/grpc_ares_wrapper.cc",
"//src/core:resolver/dns/c_ares/grpc_ares_wrapper_posix.cc",
"//src/core:resolver/dns/c_ares/grpc_ares_wrapper_windows.cc",
],
hdrs = [
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h",
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h",
"//src/core:ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h",
"//src/core:resolver/dns/c_ares/dns_resolver_ares.h",
"//src/core:resolver/dns/c_ares/grpc_ares_ev_driver.h",
"//src/core:resolver/dns/c_ares/grpc_ares_wrapper.h",
],
external_deps = [
"absl/base:core_headers",
@ -3381,6 +3383,7 @@ grpc_cc_library(
"//src/core:arena_promise",
"//src/core:closure",
"//src/core:error",
"//src/core:experiments",
"//src/core:gpr_manual_constructor",
"//src/core:httpcli_ssl_credentials",
"//src/core:iomgr_fwd",
@ -3421,6 +3424,7 @@ grpc_cc_library(
"grpc_security_base",
"//src/core:error",
"//src/core:json",
"//src/core:load_file",
"//src/core:useful",
],
)
@ -3557,6 +3561,7 @@ grpc_cc_library(
external_deps = [
"absl/base:core_headers",
"absl/status",
"absl/status:statusor",
"absl/strings",
"libcrypto",
"libssl",
@ -3578,6 +3583,7 @@ grpc_cc_library(
"//src/core:error",
"//src/core:grpc_crl_provider",
"//src/core:grpc_transport_chttp2_alpn",
"//src/core:load_file",
"//src/core:ref_counted",
"//src/core:slice",
"//src/core:tsi_ssl_types",
@ -3646,10 +3652,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_grpclb_balancer_addresses",
srcs = [
"//src/core:ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc",
"//src/core:load_balancing/grpclb/grpclb_balancer_addresses.cc",
],
hdrs = [
"//src/core:ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h",
"//src/core:load_balancing/grpclb/grpclb_balancer_addresses.h",
],
language = "c++",
visibility = ["@grpc:grpclb"],
@ -3761,8 +3767,8 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_fake",
srcs = ["//src/core:ext/filters/client_channel/resolver/fake/fake_resolver.cc"],
hdrs = ["//src/core:ext/filters/client_channel/resolver/fake/fake_resolver.h"],
srcs = ["//src/core:resolver/fake/fake_resolver.cc"],
hdrs = ["//src/core:resolver/fake/fake_resolver.h"],
external_deps = [
"absl/base:core_headers",
"absl/strings",
@ -4135,6 +4141,24 @@ grpc_cc_library(
],
)
grpc_cc_library(
name = "grpcpp_chaotic_good",
srcs = [
"src/cpp/ext/chaotic_good.cc",
],
hdrs = [
"src/cpp/ext/chaotic_good.h",
],
visibility = ["@grpc:chaotic_good"],
deps = [
"gpr",
"grpc++_public_hdrs",
"grpc_public_hdrs",
"//src/core:chaotic_good_connector",
"//src/core:chaotic_good_server",
],
)
grpc_cc_library(
name = "subprocess",
srcs = [

1443
CMakeLists.txt generated

File diff suppressed because it is too large Load Diff

@ -66,10 +66,35 @@ Create a pull request.
Once the pull request is ready, you must wait for a reviewer to be
assigned to your pull request.
If you see *Not Covered* in the EasyCLA screen, as shown in the following image,
click on the mentioned link to start the authorization process.
![Screenshot of waiting for safe review](doc/images/img/grpc-tests.png)
After a few hours, you will notice a new "assignee" assigned to the pull
request. After a reviewer is assigned to you, they will help with the next
You will see a series of screens:
1. Select *Authorize LF-Engineering:
![Screenshot of EasyCLA Step 1](doc/images/img/grpc-easycla-authorize.png)
1. Select your contributor type:
![Screenshot of EasyCLA Step 2](doc/images/img/grpc-contributor-type.png)
1. Select *SIGN CLA*:
![Screenshot of EasyCLA Step 3](doc/images/img/grpc-sign-cla.png)
Some time after you've digitally signed the document, the EasyCLA will appear as
*Covered*.
![Screenshot of EasyCLA Step 5](doc/images/img/grpc-easycla-covered.png)
After a few hours, you will notice a new "assignee" assigned to the pull request.
![Screenshot after an assignee is added](doc/images/img/grpc-assignee.png)
After a reviewer is assigned to you, they will help with the next
steps, which are as follows:
1. You complete the code review and address the comments.
@ -92,16 +117,21 @@ You can read more about the process and requirements
After you fix the code review, you will finally get an approval. After getting
approval, you can submit the pull request.
![Pull request approved and labelled](doc/images/img/grpc-review-complete.png)
### Submission
You **cannot** do submission or merge of a pull request through Github.
![Pull request approved and labelled](doc/images/img/grpc-wait-for-merge.png)
After you have approval from a reviewer, a Google employee will trigger
the submission process. When the submission happens:
1. A commit with your changes, along with a few additional formatting changes, will
be committed to the `grpc/master` branch.
![Copybara commit](doc/images/img/grpc-copybara-commit.png)
1. The pull request you originally created will be closed.
![Pull request closed by copybara](doc/images/img/grpc-pr-closed-by-copybara.png)
<!-- TODO add screenshot of PR that is closed -->
<!-- TODO add screenshot of commit made by copybara -->

@ -44,6 +44,7 @@ for general contribution guidelines.
<!-- go/keep-sorted end -->
## Emeritus Maintainers (in alphabetical order)
<!-- go/keep-sorted start case=no -->
- [adelez](https://github.com/adelez), Google LLC
- [AspirinSJL](https://github.com/AspirinSJL), Google LLC
- [billfeng327](https://github.com/billfeng327), Google LLC
@ -90,3 +91,4 @@ for general contribution guidelines.
- [yihuazhang](https://github.com/yihuazhang), Google LLC
- [zpencer](https://github.com/zpencer), Google LLC
- [ZhenLian](https://github.com/ZhenLian), Google LLC
<!-- go/keep-sorted end -->

394
Makefile generated

@ -410,8 +410,8 @@ E = @echo
Q = @
endif
CORE_VERSION = 38.0.0
CPP_VERSION = 1.62.0-dev
CORE_VERSION = 39.0.0
CPP_VERSION = 1.63.0-dev
CPPFLAGS_NO_ARCH += $(addprefix -I, $(INCLUDES)) $(addprefix -D, $(DEFINES))
CPPFLAGS += $(CPPFLAGS_NO_ARCH) $(ARCH_FLAGS)
@ -447,7 +447,7 @@ SHARED_EXT_CORE = dll
SHARED_EXT_CPP = dll
SHARED_PREFIX =
SHARED_VERSION_CORE = -38
SHARED_VERSION_CORE = -39
SHARED_VERSION_CPP = -1
else ifeq ($(SYSTEM),Darwin)
EXECUTABLE_SUFFIX =
@ -818,8 +818,8 @@ $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE):
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libaddress_sorting.so.38 -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libaddress_sorting.so.39 -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so
endif
endif
@ -864,7 +864,6 @@ LIBGPR_SRC = \
src/core/lib/gpr/windows/sync.cc \
src/core/lib/gpr/windows/time.cc \
src/core/lib/gpr/windows/tmpfile.cc \
src/core/lib/gpr/wrap_memcpy.cc \
src/core/lib/gprpp/crash.cc \
src/core/lib/gprpp/examine_stack.cc \
src/core/lib/gprpp/fork.cc \
@ -943,8 +942,8 @@ $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGPR_OB
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.38 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.39 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so
endif
endif
@ -959,74 +958,32 @@ endif
# deps: ['upb_json_lib', 'upb_textformat_lib', 're2', 'z', 'grpc_abseil', 'cares', 'gpr', 'libssl', 'address_sorting']
# transitive_deps: ['address_sorting', 'gpr', 'grpc_abseil', 'cares', 'z', 're2', 'upb_textformat_lib', 'upb_json_lib', 'utf8_range_lib', 'upb_message_lib', 'upb_mem_lib', 'upb_base_lib', 'libssl']
LIBGRPC_SRC = \
src/core/client_channel/backend_metric.cc \
src/core/client_channel/backup_poller.cc \
src/core/client_channel/channel_connectivity.cc \
src/core/client_channel/client_channel_channelz.cc \
src/core/client_channel/client_channel_factory.cc \
src/core/client_channel/client_channel_filter.cc \
src/core/client_channel/client_channel_plugin.cc \
src/core/client_channel/client_channel_service_config.cc \
src/core/client_channel/config_selector.cc \
src/core/client_channel/dynamic_filters.cc \
src/core/client_channel/global_subchannel_pool.cc \
src/core/client_channel/http_proxy_mapper.cc \
src/core/client_channel/local_subchannel_pool.cc \
src/core/client_channel/retry_filter.cc \
src/core/client_channel/retry_filter_legacy_call_data.cc \
src/core/client_channel/retry_service_config.cc \
src/core/client_channel/retry_throttle.cc \
src/core/client_channel/service_config_channel_arg_filter.cc \
src/core/client_channel/subchannel.cc \
src/core/client_channel/subchannel_pool_interface.cc \
src/core/client_channel/subchannel_stream_client.cc \
src/core/ext/filters/backend_metrics/backend_metric_filter.cc \
src/core/ext/filters/census/grpc_context.cc \
src/core/ext/filters/channel_idle/channel_idle_filter.cc \
src/core/ext/filters/channel_idle/idle_filter_state.cc \
src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \
src/core/ext/filters/client_channel/client_channel_channelz.cc \
src/core/ext/filters/client_channel/client_channel_factory.cc \
src/core/ext/filters/client_channel/client_channel_plugin.cc \
src/core/ext/filters/client_channel/client_channel_service_config.cc \
src/core/ext/filters/client_channel/config_selector.cc \
src/core/ext/filters/client_channel/dynamic_filters.cc \
src/core/ext/filters/client_channel/global_subchannel_pool.cc \
src/core/ext/filters/client_channel/http_proxy_mapper.cc \
src/core/ext/filters/client_channel/lb_policy/address_filtering.cc \
src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc \
src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \
src/core/ext/filters/client_channel/lb_policy/health_check_client.cc \
src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc \
src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc \
src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \
src/core/ext/filters/client_channel/lb_policy/priority/priority.cc \
src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc \
src/core/ext/filters/client_channel/lb_policy/rls/rls.cc \
src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc \
src/core/ext/filters/client_channel/lb_policy/xds/cds.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc \
src/core/ext/filters/client_channel/local_subchannel_pool.cc \
src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \
src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc \
src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc \
src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc \
src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc \
src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc \
src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc \
src/core/ext/filters/client_channel/resolver/polling_resolver.cc \
src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc \
src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc \
src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc \
src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc \
src/core/ext/filters/client_channel/retry_filter.cc \
src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc \
src/core/ext/filters/client_channel/retry_service_config.cc \
src/core/ext/filters/client_channel/retry_throttle.cc \
src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc \
src/core/ext/filters/client_channel/subchannel.cc \
src/core/ext/filters/client_channel/subchannel_pool_interface.cc \
src/core/ext/filters/client_channel/subchannel_stream_client.cc \
src/core/ext/filters/deadline/deadline_filter.cc \
src/core/ext/filters/fault_injection/fault_injection_filter.cc \
src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc \
@ -1548,7 +1505,6 @@ LIBGRPC_SRC = \
src/core/lib/iomgr/iomgr_posix.cc \
src/core/lib/iomgr/iomgr_posix_cfstream.cc \
src/core/lib/iomgr/iomgr_windows.cc \
src/core/lib/iomgr/load_file.cc \
src/core/lib/iomgr/lockfree_event.cc \
src/core/lib/iomgr/polling_entity.cc \
src/core/lib/iomgr/pollset.cc \
@ -1594,16 +1550,11 @@ LIBGRPC_SRC = \
src/core/lib/json/json_reader.cc \
src/core/lib/json/json_util.cc \
src/core/lib/json/json_writer.cc \
src/core/lib/load_balancing/lb_policy.cc \
src/core/lib/load_balancing/lb_policy_registry.cc \
src/core/lib/matchers/matchers.cc \
src/core/lib/promise/activity.cc \
src/core/lib/promise/party.cc \
src/core/lib/promise/sleep.cc \
src/core/lib/promise/trace.cc \
src/core/lib/resolver/endpoint_addresses.cc \
src/core/lib/resolver/resolver.cc \
src/core/lib/resolver/resolver_registry.cc \
src/core/lib/resource_quota/api.cc \
src/core/lib/resource_quota/arena.cc \
src/core/lib/resource_quota/memory_quota.cc \
@ -1676,8 +1627,6 @@ LIBGRPC_SRC = \
src/core/lib/security/transport/server_auth_filter.cc \
src/core/lib/security/transport/tsi_error.cc \
src/core/lib/security/util/json_util.cc \
src/core/lib/service_config/service_config_impl.cc \
src/core/lib/service_config/service_config_parser.cc \
src/core/lib/slice/b64.cc \
src/core/lib/slice/percent_encoding.cc \
src/core/lib/slice/slice.cc \
@ -1706,8 +1655,10 @@ LIBGRPC_SRC = \
src/core/lib/surface/server.cc \
src/core/lib/surface/validate_metadata.cc \
src/core/lib/surface/version.cc \
src/core/lib/surface/wait_for_cq_end_op.cc \
src/core/lib/transport/batch_builder.cc \
src/core/lib/transport/bdp_estimator.cc \
src/core/lib/transport/call_factory.cc \
src/core/lib/transport/call_filters.cc \
src/core/lib/transport/call_final_info.cc \
src/core/lib/transport/call_size_estimator.cc \
@ -1727,8 +1678,57 @@ LIBGRPC_SRC = \
src/core/lib/transport/transport.cc \
src/core/lib/transport/transport_op_string.cc \
src/core/lib/uri/uri_parser.cc \
src/core/load_balancing/address_filtering.cc \
src/core/load_balancing/child_policy_handler.cc \
src/core/load_balancing/endpoint_list.cc \
src/core/load_balancing/grpclb/client_load_reporting_filter.cc \
src/core/load_balancing/grpclb/grpclb.cc \
src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc \
src/core/load_balancing/grpclb/grpclb_client_stats.cc \
src/core/load_balancing/grpclb/load_balancer_api.cc \
src/core/load_balancing/health_check_client.cc \
src/core/load_balancing/lb_policy.cc \
src/core/load_balancing/lb_policy_registry.cc \
src/core/load_balancing/oob_backend_metric.cc \
src/core/load_balancing/outlier_detection/outlier_detection.cc \
src/core/load_balancing/pick_first/pick_first.cc \
src/core/load_balancing/priority/priority.cc \
src/core/load_balancing/ring_hash/ring_hash.cc \
src/core/load_balancing/rls/rls.cc \
src/core/load_balancing/round_robin/round_robin.cc \
src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc \
src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc \
src/core/load_balancing/weighted_target/weighted_target.cc \
src/core/load_balancing/xds/cds.cc \
src/core/load_balancing/xds/xds_cluster_impl.cc \
src/core/load_balancing/xds/xds_cluster_manager.cc \
src/core/load_balancing/xds/xds_override_host.cc \
src/core/load_balancing/xds/xds_wrr_locality.cc \
src/core/plugin_registry/grpc_plugin_registry.cc \
src/core/plugin_registry/grpc_plugin_registry_extra.cc \
src/core/resolver/binder/binder_resolver.cc \
src/core/resolver/dns/c_ares/dns_resolver_ares.cc \
src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \
src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \
src/core/resolver/dns/dns_resolver_plugin.cc \
src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc \
src/core/resolver/dns/event_engine/service_config_helper.cc \
src/core/resolver/dns/native/dns_resolver.cc \
src/core/resolver/endpoint_addresses.cc \
src/core/resolver/fake/fake_resolver.cc \
src/core/resolver/google_c2p/google_c2p_resolver.cc \
src/core/resolver/polling_resolver.cc \
src/core/resolver/resolver.cc \
src/core/resolver/resolver_registry.cc \
src/core/resolver/sockaddr/sockaddr_resolver.cc \
src/core/resolver/xds/xds_dependency_manager.cc \
src/core/resolver/xds/xds_resolver.cc \
src/core/resolver/xds/xds_resolver_trace.cc \
src/core/service_config/service_config_impl.cc \
src/core/service_config/service_config_parser.cc \
src/core/tsi/alts/crypt/aes_gcm.cc \
src/core/tsi/alts/crypt/gsec.cc \
src/core/tsi/alts/frame_protector/alts_counter.cc \
@ -1870,8 +1870,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGRPC_
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libgpr.a $(GRPC_ABSEIL_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libcares.a $(ZLIB_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libre2.a $(LIBDIR)/$(CONFIG)/libupb_textformat_lib.a $(LIBDIR)/$(CONFIG)/libupb_json_lib.a $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.38 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libgpr.a $(GRPC_ABSEIL_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libcares.a $(ZLIB_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libre2.a $(LIBDIR)/$(CONFIG)/libupb_textformat_lib.a $(LIBDIR)/$(CONFIG)/libupb_json_lib.a $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.39 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libgpr.a $(GRPC_ABSEIL_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libcares.a $(ZLIB_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libre2.a $(LIBDIR)/$(CONFIG)/libupb_textformat_lib.a $(LIBDIR)/$(CONFIG)/libupb_json_lib.a $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so
endif
endif
@ -1890,64 +1890,32 @@ endif
# deps: ['upb_message_lib', 'utf8_range_lib', 'z', 'grpc_abseil', 'cares', 'gpr', 'address_sorting']
# transitive_deps: ['address_sorting', 'gpr', 'grpc_abseil', 'cares', 'z', 'utf8_range_lib', 'upb_message_lib', 'upb_mem_lib', 'upb_base_lib']
LIBGRPC_UNSECURE_SRC = \
src/core/client_channel/backend_metric.cc \
src/core/client_channel/backup_poller.cc \
src/core/client_channel/channel_connectivity.cc \
src/core/client_channel/client_channel_channelz.cc \
src/core/client_channel/client_channel_factory.cc \
src/core/client_channel/client_channel_filter.cc \
src/core/client_channel/client_channel_plugin.cc \
src/core/client_channel/client_channel_service_config.cc \
src/core/client_channel/config_selector.cc \
src/core/client_channel/dynamic_filters.cc \
src/core/client_channel/global_subchannel_pool.cc \
src/core/client_channel/http_proxy_mapper.cc \
src/core/client_channel/local_subchannel_pool.cc \
src/core/client_channel/retry_filter.cc \
src/core/client_channel/retry_filter_legacy_call_data.cc \
src/core/client_channel/retry_service_config.cc \
src/core/client_channel/retry_throttle.cc \
src/core/client_channel/service_config_channel_arg_filter.cc \
src/core/client_channel/subchannel.cc \
src/core/client_channel/subchannel_pool_interface.cc \
src/core/client_channel/subchannel_stream_client.cc \
src/core/ext/filters/backend_metrics/backend_metric_filter.cc \
src/core/ext/filters/census/grpc_context.cc \
src/core/ext/filters/channel_idle/channel_idle_filter.cc \
src/core/ext/filters/channel_idle/idle_filter_state.cc \
src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \
src/core/ext/filters/client_channel/client_channel_channelz.cc \
src/core/ext/filters/client_channel/client_channel_factory.cc \
src/core/ext/filters/client_channel/client_channel_plugin.cc \
src/core/ext/filters/client_channel/client_channel_service_config.cc \
src/core/ext/filters/client_channel/config_selector.cc \
src/core/ext/filters/client_channel/dynamic_filters.cc \
src/core/ext/filters/client_channel/global_subchannel_pool.cc \
src/core/ext/filters/client_channel/http_proxy_mapper.cc \
src/core/ext/filters/client_channel/lb_policy/address_filtering.cc \
src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc \
src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \
src/core/ext/filters/client_channel/lb_policy/health_check_client.cc \
src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc \
src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc \
src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \
src/core/ext/filters/client_channel/lb_policy/priority/priority.cc \
src/core/ext/filters/client_channel/lb_policy/rls/rls.cc \
src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc \
src/core/ext/filters/client_channel/local_subchannel_pool.cc \
src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \
src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc \
src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc \
src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc \
src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc \
src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc \
src/core/ext/filters/client_channel/resolver/polling_resolver.cc \
src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc \
src/core/ext/filters/client_channel/retry_filter.cc \
src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc \
src/core/ext/filters/client_channel/retry_service_config.cc \
src/core/ext/filters/client_channel/retry_throttle.cc \
src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc \
src/core/ext/filters/client_channel/subchannel.cc \
src/core/ext/filters/client_channel/subchannel_pool_interface.cc \
src/core/ext/filters/client_channel/subchannel_stream_client.cc \
src/core/ext/filters/deadline/deadline_filter.cc \
src/core/ext/filters/fault_injection/fault_injection_filter.cc \
src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc \
@ -2135,7 +2103,6 @@ LIBGRPC_UNSECURE_SRC = \
src/core/lib/iomgr/iomgr_posix.cc \
src/core/lib/iomgr/iomgr_posix_cfstream.cc \
src/core/lib/iomgr/iomgr_windows.cc \
src/core/lib/iomgr/load_file.cc \
src/core/lib/iomgr/lockfree_event.cc \
src/core/lib/iomgr/polling_entity.cc \
src/core/lib/iomgr/pollset.cc \
@ -2180,15 +2147,10 @@ LIBGRPC_UNSECURE_SRC = \
src/core/lib/json/json_object_loader.cc \
src/core/lib/json/json_reader.cc \
src/core/lib/json/json_writer.cc \
src/core/lib/load_balancing/lb_policy.cc \
src/core/lib/load_balancing/lb_policy_registry.cc \
src/core/lib/promise/activity.cc \
src/core/lib/promise/party.cc \
src/core/lib/promise/sleep.cc \
src/core/lib/promise/trace.cc \
src/core/lib/resolver/endpoint_addresses.cc \
src/core/lib/resolver/resolver.cc \
src/core/lib/resolver/resolver_registry.cc \
src/core/lib/resource_quota/api.cc \
src/core/lib/resource_quota/arena.cc \
src/core/lib/resource_quota/memory_quota.cc \
@ -2227,8 +2189,6 @@ LIBGRPC_UNSECURE_SRC = \
src/core/lib/security/transport/server_auth_filter.cc \
src/core/lib/security/transport/tsi_error.cc \
src/core/lib/security/util/json_util.cc \
src/core/lib/service_config/service_config_impl.cc \
src/core/lib/service_config/service_config_parser.cc \
src/core/lib/slice/b64.cc \
src/core/lib/slice/percent_encoding.cc \
src/core/lib/slice/slice.cc \
@ -2257,8 +2217,10 @@ LIBGRPC_UNSECURE_SRC = \
src/core/lib/surface/server.cc \
src/core/lib/surface/validate_metadata.cc \
src/core/lib/surface/version.cc \
src/core/lib/surface/wait_for_cq_end_op.cc \
src/core/lib/transport/batch_builder.cc \
src/core/lib/transport/bdp_estimator.cc \
src/core/lib/transport/call_factory.cc \
src/core/lib/transport/call_filters.cc \
src/core/lib/transport/call_final_info.cc \
src/core/lib/transport/call_size_estimator.cc \
@ -2278,8 +2240,47 @@ LIBGRPC_UNSECURE_SRC = \
src/core/lib/transport/transport.cc \
src/core/lib/transport/transport_op_string.cc \
src/core/lib/uri/uri_parser.cc \
src/core/load_balancing/address_filtering.cc \
src/core/load_balancing/child_policy_handler.cc \
src/core/load_balancing/endpoint_list.cc \
src/core/load_balancing/grpclb/client_load_reporting_filter.cc \
src/core/load_balancing/grpclb/grpclb.cc \
src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc \
src/core/load_balancing/grpclb/grpclb_client_stats.cc \
src/core/load_balancing/grpclb/load_balancer_api.cc \
src/core/load_balancing/health_check_client.cc \
src/core/load_balancing/lb_policy.cc \
src/core/load_balancing/lb_policy_registry.cc \
src/core/load_balancing/oob_backend_metric.cc \
src/core/load_balancing/outlier_detection/outlier_detection.cc \
src/core/load_balancing/pick_first/pick_first.cc \
src/core/load_balancing/priority/priority.cc \
src/core/load_balancing/rls/rls.cc \
src/core/load_balancing/round_robin/round_robin.cc \
src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc \
src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc \
src/core/load_balancing/weighted_target/weighted_target.cc \
src/core/plugin_registry/grpc_plugin_registry.cc \
src/core/plugin_registry/grpc_plugin_registry_noextra.cc \
src/core/resolver/binder/binder_resolver.cc \
src/core/resolver/dns/c_ares/dns_resolver_ares.cc \
src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \
src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \
src/core/resolver/dns/dns_resolver_plugin.cc \
src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc \
src/core/resolver/dns/event_engine/service_config_helper.cc \
src/core/resolver/dns/native/dns_resolver.cc \
src/core/resolver/endpoint_addresses.cc \
src/core/resolver/fake/fake_resolver.cc \
src/core/resolver/polling_resolver.cc \
src/core/resolver/resolver.cc \
src/core/resolver/resolver_registry.cc \
src/core/resolver/sockaddr/sockaddr_resolver.cc \
src/core/service_config/service_config_impl.cc \
src/core/service_config/service_config_parser.cc \
src/core/tsi/alts/handshaker/transport_security_common_api.cc \
src/core/tsi/fake_transport_security.cc \
src/core/tsi/local_transport_security.cc \
@ -2398,8 +2399,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libgpr.a $(GRPC_ABSEIL_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libcares.a $(ZLIB_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.38 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libgpr.a $(GRPC_ABSEIL_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libcares.a $(ZLIB_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.39 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libgpr.a $(GRPC_ABSEIL_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libcares.a $(ZLIB_MERGE_LIBS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so
endif
endif
@ -2465,8 +2466,8 @@ $(LIBDIR)/$(CONFIG)/libre2$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBRE2_OB
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)re2$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libre2$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBRE2_OBJS) $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libre2.so.38 -o $(LIBDIR)/$(CONFIG)/libre2$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBRE2_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)re2$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libre2$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libre2.so.39 -o $(LIBDIR)/$(CONFIG)/libre2$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBRE2_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)re2$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libre2$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)re2$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libre2$(SHARED_VERSION_CORE).so
endif
endif
@ -2511,8 +2512,8 @@ $(LIBDIR)/$(CONFIG)/libupb_base_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)upb_base_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libupb_base_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_BASE_LIB_OBJS) $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_base_lib.so.38 -o $(LIBDIR)/$(CONFIG)/libupb_base_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_BASE_LIB_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_base_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_base_lib$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_base_lib.so.39 -o $(LIBDIR)/$(CONFIG)/libupb_base_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_BASE_LIB_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_base_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_base_lib$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)upb_base_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_base_lib$(SHARED_VERSION_CORE).so
endif
endif
@ -2591,8 +2592,8 @@ $(LIBDIR)/$(CONFIG)/libupb_json_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)upb_json_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libupb_json_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_JSON_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_json_lib.so.38 -o $(LIBDIR)/$(CONFIG)/libupb_json_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_JSON_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_json_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_json_lib$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_json_lib.so.39 -o $(LIBDIR)/$(CONFIG)/libupb_json_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_JSON_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_json_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_json_lib$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)upb_json_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_json_lib$(SHARED_VERSION_CORE).so
endif
endif
@ -2638,8 +2639,8 @@ $(LIBDIR)/$(CONFIG)/libupb_mem_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(L
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)upb_mem_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libupb_mem_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_MEM_LIB_OBJS) $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_mem_lib.so.38 -o $(LIBDIR)/$(CONFIG)/libupb_mem_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_MEM_LIB_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_mem_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_mem_lib$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_mem_lib.so.39 -o $(LIBDIR)/$(CONFIG)/libupb_mem_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_MEM_LIB_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_mem_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_mem_lib$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)upb_mem_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_mem_lib$(SHARED_VERSION_CORE).so
endif
endif
@ -2691,8 +2692,8 @@ $(LIBDIR)/$(CONFIG)/libupb_message_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE):
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)upb_message_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libupb_message_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_MESSAGE_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_message_lib.so.38 -o $(LIBDIR)/$(CONFIG)/libupb_message_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_MESSAGE_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_message_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_message_lib$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_message_lib.so.39 -o $(LIBDIR)/$(CONFIG)/libupb_message_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_MESSAGE_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_message_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_message_lib$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)upb_message_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_message_lib$(SHARED_VERSION_CORE).so
endif
endif
@ -2770,8 +2771,8 @@ $(LIBDIR)/$(CONFIG)/libupb_textformat_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_COR
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)upb_textformat_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libupb_textformat_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_TEXTFORMAT_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_textformat_lib.so.38 -o $(LIBDIR)/$(CONFIG)/libupb_textformat_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_TEXTFORMAT_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_textformat_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_textformat_lib$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb_textformat_lib.so.39 -o $(LIBDIR)/$(CONFIG)/libupb_textformat_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_TEXTFORMAT_LIB_OBJS) $(LIBDIR)/$(CONFIG)/libutf8_range_lib.a $(LIBDIR)/$(CONFIG)/libupb_message_lib.a $(LIBDIR)/$(CONFIG)/libupb_mem_lib.a $(LIBDIR)/$(CONFIG)/libupb_base_lib.a $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)upb_textformat_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_textformat_lib$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)upb_textformat_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb_textformat_lib$(SHARED_VERSION_CORE).so
endif
endif
@ -2818,8 +2819,8 @@ $(LIBDIR)/$(CONFIG)/libutf8_range_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE):
ifeq ($(SYSTEM),Darwin)
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)utf8_range_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libutf8_range_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUTF8_RANGE_LIB_OBJS) $(LDLIBS)
else
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libutf8_range_lib.so.38 -o $(LIBDIR)/$(CONFIG)/libutf8_range_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUTF8_RANGE_LIB_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)utf8_range_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libutf8_range_lib$(SHARED_VERSION_CORE).so.38
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libutf8_range_lib.so.39 -o $(LIBDIR)/$(CONFIG)/libutf8_range_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUTF8_RANGE_LIB_OBJS) $(LDLIBS)
$(Q) ln -sf $(SHARED_PREFIX)utf8_range_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libutf8_range_lib$(SHARED_VERSION_CORE).so.39
$(Q) ln -sf $(SHARED_PREFIX)utf8_range_lib$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libutf8_range_lib$(SHARED_VERSION_CORE).so
endif
endif
@ -2985,7 +2986,7 @@ LIBBORINGSSL_SRC = \
third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c \
third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c \
third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c \
third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c \
third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c \
third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c \
third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c \
third_party/boringssl-with-bazel/src/crypto/mem.c \
@ -3022,6 +3023,13 @@ LIBBORINGSSL_SRC = \
third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c \
third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c \
third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c \
third_party/boringssl-with-bazel/src/crypto/spx/address.c \
third_party/boringssl-with-bazel/src/crypto/spx/fors.c \
third_party/boringssl-with-bazel/src/crypto/spx/merkle.c \
third_party/boringssl-with-bazel/src/crypto/spx/spx.c \
third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c \
third_party/boringssl-with-bazel/src/crypto/spx/thash.c \
third_party/boringssl-with-bazel/src/crypto/spx/wots.c \
third_party/boringssl-with-bazel/src/crypto/stack/stack.c \
third_party/boringssl-with-bazel/src/crypto/thread.c \
third_party/boringssl-with-bazel/src/crypto/thread_none.c \
@ -3045,6 +3053,29 @@ LIBBORINGSSL_SRC = \
third_party/boringssl-with-bazel/src/crypto/x509/t_req.c \
third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c \
third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c \
third_party/boringssl-with-bazel/src/crypto/x509/x509.c \
third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c \
third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c \
@ -3069,9 +3100,7 @@ LIBBORINGSSL_SRC = \
third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_info.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_name.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_req.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c \
@ -3079,29 +3108,6 @@ LIBBORINGSSL_SRC = \
third_party/boringssl-with-bazel/src/crypto/x509/x_val.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akeya.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bcons.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_extku.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_int.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ocsp.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcons.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pmaps.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c \
third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc \
third_party/boringssl-with-bazel/src/ssl/d1_both.cc \
third_party/boringssl-with-bazel/src/ssl/d1_lib.cc \
@ -3415,16 +3421,6 @@ ifneq ($(OPENSSL_DEP),)
# This is to ensure the embedded OpenSSL is built beforehand, properly
# installing headers to their final destination on the drive. We need this
# otherwise parallel compilation will fail if a source is compiled first.
src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/lb_policy/xds/cds.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc: $(OPENSSL_DEP)
src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc: $(OPENSSL_DEP)
src/core/ext/filters/rbac/rbac_filter.cc: $(OPENSSL_DEP)
src/core/ext/filters/rbac/rbac_service_config_parser.cc: $(OPENSSL_DEP)
src/core/ext/filters/server_config_selector/server_config_selector_filter.cc: $(OPENSSL_DEP)
@ -3795,7 +3791,17 @@ src/core/lib/security/security_connector/local/local_security_connector.cc: $(OP
src/core/lib/security/security_connector/ssl/ssl_security_connector.cc: $(OPENSSL_DEP)
src/core/lib/security/security_connector/ssl_utils.cc: $(OPENSSL_DEP)
src/core/lib/security/security_connector/tls/tls_security_connector.cc: $(OPENSSL_DEP)
src/core/load_balancing/ring_hash/ring_hash.cc: $(OPENSSL_DEP)
src/core/load_balancing/xds/cds.cc: $(OPENSSL_DEP)
src/core/load_balancing/xds/xds_cluster_impl.cc: $(OPENSSL_DEP)
src/core/load_balancing/xds/xds_cluster_manager.cc: $(OPENSSL_DEP)
src/core/load_balancing/xds/xds_override_host.cc: $(OPENSSL_DEP)
src/core/load_balancing/xds/xds_wrr_locality.cc: $(OPENSSL_DEP)
src/core/plugin_registry/grpc_plugin_registry_extra.cc: $(OPENSSL_DEP)
src/core/resolver/google_c2p/google_c2p_resolver.cc: $(OPENSSL_DEP)
src/core/resolver/xds/xds_dependency_manager.cc: $(OPENSSL_DEP)
src/core/resolver/xds/xds_resolver.cc: $(OPENSSL_DEP)
src/core/resolver/xds/xds_resolver_trace.cc: $(OPENSSL_DEP)
src/core/tsi/alts/crypt/aes_gcm.cc: $(OPENSSL_DEP)
src/core/tsi/alts/crypt/gsec.cc: $(OPENSSL_DEP)
src/core/tsi/alts/frame_protector/alts_counter.cc: $(OPENSSL_DEP)

280
Package.swift generated

@ -115,6 +115,48 @@ let package = Package(
"include/grpc/support/thd_id.h",
"include/grpc/support/time.h",
"include/grpc/support/workaround_list.h",
"src/core/client_channel/backend_metric.cc",
"src/core/client_channel/backend_metric.h",
"src/core/client_channel/backup_poller.cc",
"src/core/client_channel/backup_poller.h",
"src/core/client_channel/channel_connectivity.cc",
"src/core/client_channel/client_channel_channelz.cc",
"src/core/client_channel/client_channel_channelz.h",
"src/core/client_channel/client_channel_factory.cc",
"src/core/client_channel/client_channel_factory.h",
"src/core/client_channel/client_channel_filter.cc",
"src/core/client_channel/client_channel_filter.h",
"src/core/client_channel/client_channel_internal.h",
"src/core/client_channel/client_channel_plugin.cc",
"src/core/client_channel/client_channel_service_config.cc",
"src/core/client_channel/client_channel_service_config.h",
"src/core/client_channel/config_selector.cc",
"src/core/client_channel/config_selector.h",
"src/core/client_channel/connector.h",
"src/core/client_channel/dynamic_filters.cc",
"src/core/client_channel/dynamic_filters.h",
"src/core/client_channel/global_subchannel_pool.cc",
"src/core/client_channel/global_subchannel_pool.h",
"src/core/client_channel/http_proxy_mapper.cc",
"src/core/client_channel/http_proxy_mapper.h",
"src/core/client_channel/local_subchannel_pool.cc",
"src/core/client_channel/local_subchannel_pool.h",
"src/core/client_channel/retry_filter.cc",
"src/core/client_channel/retry_filter.h",
"src/core/client_channel/retry_filter_legacy_call_data.cc",
"src/core/client_channel/retry_filter_legacy_call_data.h",
"src/core/client_channel/retry_service_config.cc",
"src/core/client_channel/retry_service_config.h",
"src/core/client_channel/retry_throttle.cc",
"src/core/client_channel/retry_throttle.h",
"src/core/client_channel/service_config_channel_arg_filter.cc",
"src/core/client_channel/subchannel.cc",
"src/core/client_channel/subchannel.h",
"src/core/client_channel/subchannel_interface_internal.h",
"src/core/client_channel/subchannel_pool_interface.cc",
"src/core/client_channel/subchannel_pool_interface.h",
"src/core/client_channel/subchannel_stream_client.cc",
"src/core/client_channel/subchannel_stream_client.h",
"src/core/ext/filters/backend_metrics/backend_metric_filter.cc",
"src/core/ext/filters/backend_metrics/backend_metric_filter.h",
"src/core/ext/filters/backend_metrics/backend_metric_provider.h",
@ -125,122 +167,6 @@ let package = Package(
"src/core/ext/filters/channel_idle/idle_filter_state.h",
"src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc",
"src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h",
"src/core/ext/filters/client_channel/backend_metric.cc",
"src/core/ext/filters/client_channel/backend_metric.h",
"src/core/ext/filters/client_channel/backup_poller.cc",
"src/core/ext/filters/client_channel/backup_poller.h",
"src/core/ext/filters/client_channel/channel_connectivity.cc",
"src/core/ext/filters/client_channel/client_channel.cc",
"src/core/ext/filters/client_channel/client_channel.h",
"src/core/ext/filters/client_channel/client_channel_channelz.cc",
"src/core/ext/filters/client_channel/client_channel_channelz.h",
"src/core/ext/filters/client_channel/client_channel_factory.cc",
"src/core/ext/filters/client_channel/client_channel_factory.h",
"src/core/ext/filters/client_channel/client_channel_internal.h",
"src/core/ext/filters/client_channel/client_channel_plugin.cc",
"src/core/ext/filters/client_channel/client_channel_service_config.cc",
"src/core/ext/filters/client_channel/client_channel_service_config.h",
"src/core/ext/filters/client_channel/config_selector.cc",
"src/core/ext/filters/client_channel/config_selector.h",
"src/core/ext/filters/client_channel/connector.h",
"src/core/ext/filters/client_channel/dynamic_filters.cc",
"src/core/ext/filters/client_channel/dynamic_filters.h",
"src/core/ext/filters/client_channel/global_subchannel_pool.cc",
"src/core/ext/filters/client_channel/global_subchannel_pool.h",
"src/core/ext/filters/client_channel/http_proxy_mapper.cc",
"src/core/ext/filters/client_channel/http_proxy_mapper.h",
"src/core/ext/filters/client_channel/lb_policy/address_filtering.cc",
"src/core/ext/filters/client_channel/lb_policy/address_filtering.h",
"src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h",
"src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc",
"src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h",
"src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc",
"src/core/ext/filters/client_channel/lb_policy/endpoint_list.h",
"src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc",
"src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h",
"src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc",
"src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h",
"src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc",
"src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h",
"src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc",
"src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h",
"src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc",
"src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h",
"src/core/ext/filters/client_channel/lb_policy/health_check_client.cc",
"src/core/ext/filters/client_channel/lb_policy/health_check_client.h",
"src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h",
"src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc",
"src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h",
"src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h",
"src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc",
"src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h",
"src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc",
"src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h",
"src/core/ext/filters/client_channel/lb_policy/priority/priority.cc",
"src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc",
"src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h",
"src/core/ext/filters/client_channel/lb_policy/rls/rls.cc",
"src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc",
"src/core/ext/filters/client_channel/lb_policy/subchannel_list.h",
"src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc",
"src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h",
"src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc",
"src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc",
"src/core/ext/filters/client_channel/lb_policy/xds/cds.cc",
"src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h",
"src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc",
"src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc",
"src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc",
"src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h",
"src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc",
"src/core/ext/filters/client_channel/local_subchannel_pool.cc",
"src/core/ext/filters/client_channel/local_subchannel_pool.h",
"src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc",
"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc",
"src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc",
"src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h",
"src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc",
"src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h",
"src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc",
"src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h",
"src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc",
"src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h",
"src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc",
"src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h",
"src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc",
"src/core/ext/filters/client_channel/resolver/polling_resolver.cc",
"src/core/ext/filters/client_channel/resolver/polling_resolver.h",
"src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc",
"src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc",
"src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h",
"src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc",
"src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h",
"src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc",
"src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h",
"src/core/ext/filters/client_channel/retry_filter.cc",
"src/core/ext/filters/client_channel/retry_filter.h",
"src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc",
"src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h",
"src/core/ext/filters/client_channel/retry_service_config.cc",
"src/core/ext/filters/client_channel/retry_service_config.h",
"src/core/ext/filters/client_channel/retry_throttle.cc",
"src/core/ext/filters/client_channel/retry_throttle.h",
"src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc",
"src/core/ext/filters/client_channel/subchannel.cc",
"src/core/ext/filters/client_channel/subchannel.h",
"src/core/ext/filters/client_channel/subchannel_interface_internal.h",
"src/core/ext/filters/client_channel/subchannel_pool_interface.cc",
"src/core/ext/filters/client_channel/subchannel_pool_interface.h",
"src/core/ext/filters/client_channel/subchannel_stream_client.cc",
"src/core/ext/filters/client_channel/subchannel_stream_client.h",
"src/core/ext/filters/deadline/deadline_filter.cc",
"src/core/ext/filters/deadline/deadline_filter.h",
"src/core/ext/filters/fault_injection/fault_injection_filter.cc",
@ -1407,7 +1333,6 @@ let package = Package(
"src/core/lib/gpr/windows/sync.cc",
"src/core/lib/gpr/windows/time.cc",
"src/core/lib/gpr/windows/tmpfile.cc",
"src/core/lib/gpr/wrap_memcpy.cc",
"src/core/lib/gprpp/atomic_utils.h",
"src/core/lib/gprpp/bitset.h",
"src/core/lib/gprpp/chunked_vector.h",
@ -1554,8 +1479,6 @@ let package = Package(
"src/core/lib/iomgr/iomgr_posix.cc",
"src/core/lib/iomgr/iomgr_posix_cfstream.cc",
"src/core/lib/iomgr/iomgr_windows.cc",
"src/core/lib/iomgr/load_file.cc",
"src/core/lib/iomgr/load_file.h",
"src/core/lib/iomgr/lockfree_event.cc",
"src/core/lib/iomgr/lockfree_event.h",
"src/core/lib/iomgr/nameser.h",
@ -1645,13 +1568,6 @@ let package = Package(
"src/core/lib/json/json_util.h",
"src/core/lib/json/json_writer.cc",
"src/core/lib/json/json_writer.h",
"src/core/lib/load_balancing/delegating_helper.h",
"src/core/lib/load_balancing/lb_policy.cc",
"src/core/lib/load_balancing/lb_policy.h",
"src/core/lib/load_balancing/lb_policy_factory.h",
"src/core/lib/load_balancing/lb_policy_registry.cc",
"src/core/lib/load_balancing/lb_policy_registry.h",
"src/core/lib/load_balancing/subchannel_interface.h",
"src/core/lib/matchers/matchers.cc",
"src/core/lib/matchers/matchers.h",
"src/core/lib/promise/activity.cc",
@ -1688,14 +1604,6 @@ let package = Package(
"src/core/lib/promise/trace.h",
"src/core/lib/promise/try_join.h",
"src/core/lib/promise/try_seq.h",
"src/core/lib/resolver/endpoint_addresses.cc",
"src/core/lib/resolver/endpoint_addresses.h",
"src/core/lib/resolver/resolver.cc",
"src/core/lib/resolver/resolver.h",
"src/core/lib/resolver/resolver_factory.h",
"src/core/lib/resolver/resolver_registry.cc",
"src/core/lib/resolver/resolver_registry.h",
"src/core/lib/resolver/server_address.h",
"src/core/lib/resource_quota/api.cc",
"src/core/lib/resource_quota/api.h",
"src/core/lib/resource_quota/arena.cc",
@ -1837,12 +1745,6 @@ let package = Package(
"src/core/lib/security/transport/tsi_error.h",
"src/core/lib/security/util/json_util.cc",
"src/core/lib/security/util/json_util.h",
"src/core/lib/service_config/service_config.h",
"src/core/lib/service_config/service_config_call_data.h",
"src/core/lib/service_config/service_config_impl.cc",
"src/core/lib/service_config/service_config_impl.h",
"src/core/lib/service_config/service_config_parser.cc",
"src/core/lib/service_config/service_config_parser.h",
"src/core/lib/slice/b64.cc",
"src/core/lib/slice/b64.h",
"src/core/lib/slice/percent_encoding.cc",
@ -1894,11 +1796,14 @@ let package = Package(
"src/core/lib/surface/validate_metadata.cc",
"src/core/lib/surface/validate_metadata.h",
"src/core/lib/surface/version.cc",
"src/core/lib/surface/wait_for_cq_end_op.cc",
"src/core/lib/surface/wait_for_cq_end_op.h",
"src/core/lib/transport/batch_builder.cc",
"src/core/lib/transport/batch_builder.h",
"src/core/lib/transport/bdp_estimator.cc",
"src/core/lib/transport/bdp_estimator.h",
"src/core/lib/transport/call_factory.cc",
"src/core/lib/transport/call_factory.h",
"src/core/lib/transport/call_filters.cc",
"src/core/lib/transport/call_filters.h",
"src/core/lib/transport/call_final_info.cc",
@ -1942,8 +1847,103 @@ let package = Package(
"src/core/lib/transport/transport_op_string.cc",
"src/core/lib/uri/uri_parser.cc",
"src/core/lib/uri/uri_parser.h",
"src/core/load_balancing/address_filtering.cc",
"src/core/load_balancing/address_filtering.h",
"src/core/load_balancing/backend_metric_data.h",
"src/core/load_balancing/child_policy_handler.cc",
"src/core/load_balancing/child_policy_handler.h",
"src/core/load_balancing/delegating_helper.h",
"src/core/load_balancing/endpoint_list.cc",
"src/core/load_balancing/endpoint_list.h",
"src/core/load_balancing/grpclb/client_load_reporting_filter.cc",
"src/core/load_balancing/grpclb/client_load_reporting_filter.h",
"src/core/load_balancing/grpclb/grpclb.cc",
"src/core/load_balancing/grpclb/grpclb.h",
"src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc",
"src/core/load_balancing/grpclb/grpclb_balancer_addresses.h",
"src/core/load_balancing/grpclb/grpclb_client_stats.cc",
"src/core/load_balancing/grpclb/grpclb_client_stats.h",
"src/core/load_balancing/grpclb/load_balancer_api.cc",
"src/core/load_balancing/grpclb/load_balancer_api.h",
"src/core/load_balancing/health_check_client.cc",
"src/core/load_balancing/health_check_client.h",
"src/core/load_balancing/health_check_client_internal.h",
"src/core/load_balancing/lb_policy.cc",
"src/core/load_balancing/lb_policy.h",
"src/core/load_balancing/lb_policy_factory.h",
"src/core/load_balancing/lb_policy_registry.cc",
"src/core/load_balancing/lb_policy_registry.h",
"src/core/load_balancing/oob_backend_metric.cc",
"src/core/load_balancing/oob_backend_metric.h",
"src/core/load_balancing/oob_backend_metric_internal.h",
"src/core/load_balancing/outlier_detection/outlier_detection.cc",
"src/core/load_balancing/outlier_detection/outlier_detection.h",
"src/core/load_balancing/pick_first/pick_first.cc",
"src/core/load_balancing/pick_first/pick_first.h",
"src/core/load_balancing/priority/priority.cc",
"src/core/load_balancing/ring_hash/ring_hash.cc",
"src/core/load_balancing/ring_hash/ring_hash.h",
"src/core/load_balancing/rls/rls.cc",
"src/core/load_balancing/round_robin/round_robin.cc",
"src/core/load_balancing/subchannel_interface.h",
"src/core/load_balancing/subchannel_list.h",
"src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc",
"src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h",
"src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc",
"src/core/load_balancing/weighted_target/weighted_target.cc",
"src/core/load_balancing/xds/cds.cc",
"src/core/load_balancing/xds/xds_channel_args.h",
"src/core/load_balancing/xds/xds_cluster_impl.cc",
"src/core/load_balancing/xds/xds_cluster_manager.cc",
"src/core/load_balancing/xds/xds_override_host.cc",
"src/core/load_balancing/xds/xds_override_host.h",
"src/core/load_balancing/xds/xds_wrr_locality.cc",
"src/core/plugin_registry/grpc_plugin_registry.cc",
"src/core/plugin_registry/grpc_plugin_registry_extra.cc",
"src/core/resolver/binder/binder_resolver.cc",
"src/core/resolver/dns/c_ares/dns_resolver_ares.cc",
"src/core/resolver/dns/c_ares/dns_resolver_ares.h",
"src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h",
"src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc",
"src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc",
"src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc",
"src/core/resolver/dns/c_ares/grpc_ares_wrapper.h",
"src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc",
"src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc",
"src/core/resolver/dns/dns_resolver_plugin.cc",
"src/core/resolver/dns/dns_resolver_plugin.h",
"src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc",
"src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h",
"src/core/resolver/dns/event_engine/service_config_helper.cc",
"src/core/resolver/dns/event_engine/service_config_helper.h",
"src/core/resolver/dns/native/dns_resolver.cc",
"src/core/resolver/dns/native/dns_resolver.h",
"src/core/resolver/endpoint_addresses.cc",
"src/core/resolver/endpoint_addresses.h",
"src/core/resolver/fake/fake_resolver.cc",
"src/core/resolver/fake/fake_resolver.h",
"src/core/resolver/google_c2p/google_c2p_resolver.cc",
"src/core/resolver/polling_resolver.cc",
"src/core/resolver/polling_resolver.h",
"src/core/resolver/resolver.cc",
"src/core/resolver/resolver.h",
"src/core/resolver/resolver_factory.h",
"src/core/resolver/resolver_registry.cc",
"src/core/resolver/resolver_registry.h",
"src/core/resolver/server_address.h",
"src/core/resolver/sockaddr/sockaddr_resolver.cc",
"src/core/resolver/xds/xds_dependency_manager.cc",
"src/core/resolver/xds/xds_dependency_manager.h",
"src/core/resolver/xds/xds_resolver.cc",
"src/core/resolver/xds/xds_resolver_attributes.h",
"src/core/resolver/xds/xds_resolver_trace.cc",
"src/core/resolver/xds/xds_resolver_trace.h",
"src/core/service_config/service_config.h",
"src/core/service_config/service_config_call_data.h",
"src/core/service_config/service_config_impl.cc",
"src/core/service_config/service_config_impl.h",
"src/core/service_config/service_config_parser.cc",
"src/core/service_config/service_config_parser.h",
"src/core/tsi/alts/crypt/aes_gcm.cc",
"src/core/tsi/alts/crypt/gsec.cc",
"src/core/tsi/alts/crypt/gsec.h",

@ -14,4 +14,4 @@
# AUTO-GENERATED FROM `$REPO_ROOT/templates/_metadata.py.template`!!!
__version__ = """1.62.0.dev0"""
__version__ = """1.63.0.dev0"""

@ -17,7 +17,9 @@
"""Dictionary of tags to experiments so we know when to test different experiments."""
EXPERIMENT_ENABLES = {
"absl_base64": "absl_base64",
"call_status_override_on_cancellation": "call_status_override_on_cancellation",
"call_v3": "call_v3",
"canary_client_privacy": "canary_client_privacy",
"client_idleness": "client_idleness",
"client_privacy": "client_privacy",
@ -35,9 +37,9 @@ EXPERIMENT_ENABLES = {
"pick_first_happy_eyeballs": "pick_first_happy_eyeballs",
"promise_based_client_call": "event_engine_client,event_engine_listener,promise_based_client_call",
"promise_based_server_call": "promise_based_server_call",
"chaotic_good": "chaotic_good,event_engine_client,event_engine_listener,promise_based_client_call,promise_based_server_call",
"registered_method_lookup_in_transport": "registered_method_lookup_in_transport",
"promise_based_inproc_transport": "promise_based_client_call,promise_based_inproc_transport,promise_based_server_call,registered_method_lookup_in_transport",
"registered_methods_map": "registered_methods_map",
"promise_based_inproc_transport": "event_engine_client,event_engine_listener,promise_based_client_call,promise_based_inproc_transport,promise_based_server_call,registered_method_lookup_in_transport",
"rfc_max_concurrent_streams": "rfc_max_concurrent_streams",
"round_robin_delegate_to_pick_first": "round_robin_delegate_to_pick_first",
"rstpit": "rstpit",
@ -52,7 +54,7 @@ EXPERIMENT_ENABLES = {
"v3_compression_filter": "v3_compression_filter",
"v3_server_auth_filter": "v3_server_auth_filter",
"work_serializer_clears_time_cache": "work_serializer_clears_time_cache",
"work_serializer_dispatch": "work_serializer_dispatch",
"work_serializer_dispatch": "event_engine_client,work_serializer_dispatch",
"write_size_policy": "write_size_policy",
"write_size_cap": "write_size_cap,write_size_policy",
"wrr_delegate_to_pick_first": "wrr_delegate_to_pick_first",
@ -122,6 +124,9 @@ EXPERIMENTS = {
"round_robin_delegate_to_pick_first",
"wrr_delegate_to_pick_first",
],
"credential_token_tests": [
"absl_base64",
],
"event_engine_listener_test": [
"event_engine_listener",
],
@ -198,6 +203,9 @@ EXPERIMENTS = {
"round_robin_delegate_to_pick_first",
"wrr_delegate_to_pick_first",
],
"credential_token_tests": [
"absl_base64",
],
"flow_control_test": [
"write_size_cap",
"write_size_policy",
@ -231,6 +239,8 @@ EXPERIMENTS = {
"v3_compression_filter",
],
"core_end2end_test": [
"chaotic_good",
"event_engine_client",
"promise_based_client_call",
"promise_based_server_call",
"work_serializer_dispatch",
@ -243,6 +253,9 @@ EXPERIMENTS = {
"tcp_frame_size_tuning",
"tcp_rcv_lowat",
],
"event_engine_client_test": [
"event_engine_client",
],
"flow_control_test": [
"multiping",
"peer_state_based_framing",
@ -273,7 +286,6 @@ EXPERIMENTS = {
},
"on": {
"core_end2end_test": [
"event_engine_client",
"event_engine_listener",
],
"cpp_lb_end2end_test": [
@ -281,8 +293,8 @@ EXPERIMENTS = {
"round_robin_delegate_to_pick_first",
"wrr_delegate_to_pick_first",
],
"event_engine_client_test": [
"event_engine_client",
"credential_token_tests": [
"absl_base64",
],
"event_engine_listener_test": [
"event_engine_listener",

@ -95,6 +95,7 @@ def _update_visibility(visibility):
"alt_grpc++_base_unsecure_legacy": PRIVATE,
"alts_frame_protector": PRIVATE,
"channelz": PRIVATE,
"chaotic_good": PRIVATE,
"client_channel": PRIVATE,
"cli": PRIVATE,
"debug_location": PRIVATE,

@ -240,11 +240,11 @@ def grpc_deps():
name = "boringssl",
# Use github mirror instead of https://boringssl.googlesource.com/boringssl
# to obtain a boringssl archive with consistent sha256
sha256 = "b21994a857a7aa6d5256ffe355c735ad4c286de44c6c81dfc04edc41a8feaeef",
strip_prefix = "boringssl-2ff4b968a7e0cfee66d9f151cb95635b43dc1d5b",
sha256 = "057f662b0e85931a84945b2e89ba201fd44b0583da827c948fe443593690fb83",
strip_prefix = "boringssl-ae72a4514c7afd150596b0a80947f3ca9b8363b5",
urls = [
"https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/2ff4b968a7e0cfee66d9f151cb95635b43dc1d5b.tar.gz",
"https://github.com/google/boringssl/archive/2ff4b968a7e0cfee66d9f151cb95635b43dc1d5b.tar.gz",
"https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/ae72a4514c7afd150596b0a80947f3ca9b8363b5.tar.gz",
"https://github.com/google/boringssl/archive/ae72a4514c7afd150596b0a80947f3ca9b8363b5.tar.gz",
],
)
@ -618,11 +618,11 @@ def grpc_test_only_deps():
if "com_google_libprotobuf_mutator" not in native.existing_rules():
http_archive(
name = "com_google_libprotobuf_mutator",
sha256 = "11ab4c57b4051977d8fedb86dba5c9092e578bc293c47be146e0b0596b6a0bdc",
sha256 = "9c8f800aed088cdf89adc3eaaa66b56b4da7da041f26338aa71a2ab43d860d46",
urls = [
"https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/libprotobuf-mutator/archive/c390388561be36f94a559a4aed7e2fe60470f60b.tar.gz",
"https://github.com/google/libprotobuf-mutator/archive/c390388561be36f94a559a4aed7e2fe60470f60b.tar.gz",
"https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/libprotobuf-mutator/archive/1f95f8083066f5b38fd2db172e7e7f9aa7c49d2d.tar.gz",
"https://github.com/google/libprotobuf-mutator/archive/1f95f8083066f5b38fd2db172e7e7f9aa7c49d2d.tar.gz",
],
strip_prefix = "libprotobuf-mutator-c390388561be36f94a559a4aed7e2fe60470f60b",
strip_prefix = "libprotobuf-mutator-1f95f8083066f5b38fd2db172e7e7f9aa7c49d2d",
build_file = "@com_github_grpc_grpc//third_party:libprotobuf_mutator.BUILD",
)

@ -222,11 +222,11 @@ def _generate_pb2_grpc_src_impl(context):
py_info = _merge_pyinfos(
[
p,
context.attr._grpc_library[PyInfo],
context.attr.grpc_library[PyInfo],
] + [dep[PyInfo] for dep in context.attr.py_deps],
)
runfiles = context.runfiles(files = out_files, transitive_files = py_info.transitive_sources).merge(context.attr._grpc_library[DefaultInfo].data_runfiles)
runfiles = context.runfiles(files = out_files, transitive_files = py_info.transitive_sources).merge(context.attr.grpc_library[DefaultInfo].data_runfiles)
return [
DefaultInfo(
@ -261,7 +261,7 @@ _generate_pb2_grpc_src = rule(
cfg = "exec",
default = Label("//external:protocol_compiler"),
),
"_grpc_library": attr.label(
"grpc_library": attr.label(
default = Label("//src/python/grpcio/grpc:grpcio"),
providers = [PyInfo],
),
@ -274,6 +274,7 @@ def py_grpc_library(
srcs,
deps,
strip_prefixes = [],
grpc_library = Label("//src/python/grpcio/grpc:grpcio"),
**kwargs):
"""Generate python code for gRPC services defined in a protobuf.
@ -287,6 +288,9 @@ def py_grpc_library(
stripped from the beginning of foo_pb2 modules imported by the
generated stubs. This is useful in combination with the `imports`
attribute of the `py_library` rule.
grpc_library: (`label`) a single `py_library` target representing the
python gRPC library target to be depended upon. This can be used to
generate code that depends on `grpcio` from the Python Package Index.
**kwargs: Additional arguments to be supplied to the invocation of
py_library.
"""
@ -301,5 +305,6 @@ def py_grpc_library(
deps = srcs,
py_deps = deps,
strip_prefixes = strip_prefixes,
grpc_library = grpc_library,
**kwargs
)

File diff suppressed because it is too large Load Diff

@ -13,5 +13,5 @@
# limitations under the License.
module GrpcBuildConfig
CORE_WINDOWS_DLL = '/tmp/libs/opt/grpc-38.dll'
CORE_WINDOWS_DLL = '/tmp/libs/opt/grpc-39.dll'
end

@ -12,11 +12,11 @@ settings:
'#08': Use "-preN" suffixes to identify pre-release versions
'#09': Per-language overrides are possible with (eg) ruby_version tag here
'#10': See the expand_version.py for all the quirks here
core_version: 38.0.0
core_version: 39.0.0
csharp_major_version: 2
g_stands_for: guardian
g_stands_for: giggle
protobuf_version: 3.25.1
version: 1.62.0-dev
version: 1.63.0-dev
configs:
asan:
CC: clang

254
config.m4 generated

@ -41,74 +41,32 @@ if test "$PHP_GRPC" != "no"; then
PHP_SUBST(GRPC_SHARED_LIBADD)
PHP_NEW_EXTENSION(grpc,
src/core/client_channel/backend_metric.cc \
src/core/client_channel/backup_poller.cc \
src/core/client_channel/channel_connectivity.cc \
src/core/client_channel/client_channel_channelz.cc \
src/core/client_channel/client_channel_factory.cc \
src/core/client_channel/client_channel_filter.cc \
src/core/client_channel/client_channel_plugin.cc \
src/core/client_channel/client_channel_service_config.cc \
src/core/client_channel/config_selector.cc \
src/core/client_channel/dynamic_filters.cc \
src/core/client_channel/global_subchannel_pool.cc \
src/core/client_channel/http_proxy_mapper.cc \
src/core/client_channel/local_subchannel_pool.cc \
src/core/client_channel/retry_filter.cc \
src/core/client_channel/retry_filter_legacy_call_data.cc \
src/core/client_channel/retry_service_config.cc \
src/core/client_channel/retry_throttle.cc \
src/core/client_channel/service_config_channel_arg_filter.cc \
src/core/client_channel/subchannel.cc \
src/core/client_channel/subchannel_pool_interface.cc \
src/core/client_channel/subchannel_stream_client.cc \
src/core/ext/filters/backend_metrics/backend_metric_filter.cc \
src/core/ext/filters/census/grpc_context.cc \
src/core/ext/filters/channel_idle/channel_idle_filter.cc \
src/core/ext/filters/channel_idle/idle_filter_state.cc \
src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc \
src/core/ext/filters/client_channel/backend_metric.cc \
src/core/ext/filters/client_channel/backup_poller.cc \
src/core/ext/filters/client_channel/channel_connectivity.cc \
src/core/ext/filters/client_channel/client_channel.cc \
src/core/ext/filters/client_channel/client_channel_channelz.cc \
src/core/ext/filters/client_channel/client_channel_factory.cc \
src/core/ext/filters/client_channel/client_channel_plugin.cc \
src/core/ext/filters/client_channel/client_channel_service_config.cc \
src/core/ext/filters/client_channel/config_selector.cc \
src/core/ext/filters/client_channel/dynamic_filters.cc \
src/core/ext/filters/client_channel/global_subchannel_pool.cc \
src/core/ext/filters/client_channel/http_proxy_mapper.cc \
src/core/ext/filters/client_channel/lb_policy/address_filtering.cc \
src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc \
src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc \
src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \
src/core/ext/filters/client_channel/lb_policy/health_check_client.cc \
src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc \
src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc \
src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \
src/core/ext/filters/client_channel/lb_policy/priority/priority.cc \
src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc \
src/core/ext/filters/client_channel/lb_policy/rls/rls.cc \
src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc \
src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc \
src/core/ext/filters/client_channel/lb_policy/xds/cds.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc \
src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc \
src/core/ext/filters/client_channel/local_subchannel_pool.cc \
src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \
src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \
src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc \
src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc \
src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc \
src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc \
src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc \
src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc \
src/core/ext/filters/client_channel/resolver/polling_resolver.cc \
src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc \
src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc \
src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc \
src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc \
src/core/ext/filters/client_channel/retry_filter.cc \
src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc \
src/core/ext/filters/client_channel/retry_service_config.cc \
src/core/ext/filters/client_channel/retry_throttle.cc \
src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc \
src/core/ext/filters/client_channel/subchannel.cc \
src/core/ext/filters/client_channel/subchannel_pool_interface.cc \
src/core/ext/filters/client_channel/subchannel_stream_client.cc \
src/core/ext/filters/deadline/deadline_filter.cc \
src/core/ext/filters/fault_injection/fault_injection_filter.cc \
src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc \
@ -609,7 +567,6 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/gpr/windows/sync.cc \
src/core/lib/gpr/windows/time.cc \
src/core/lib/gpr/windows/tmpfile.cc \
src/core/lib/gpr/wrap_memcpy.cc \
src/core/lib/gprpp/crash.cc \
src/core/lib/gprpp/examine_stack.cc \
src/core/lib/gprpp/fork.cc \
@ -676,7 +633,6 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/iomgr/iomgr_posix.cc \
src/core/lib/iomgr/iomgr_posix_cfstream.cc \
src/core/lib/iomgr/iomgr_windows.cc \
src/core/lib/iomgr/load_file.cc \
src/core/lib/iomgr/lockfree_event.cc \
src/core/lib/iomgr/polling_entity.cc \
src/core/lib/iomgr/pollset.cc \
@ -722,16 +678,11 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/json/json_reader.cc \
src/core/lib/json/json_util.cc \
src/core/lib/json/json_writer.cc \
src/core/lib/load_balancing/lb_policy.cc \
src/core/lib/load_balancing/lb_policy_registry.cc \
src/core/lib/matchers/matchers.cc \
src/core/lib/promise/activity.cc \
src/core/lib/promise/party.cc \
src/core/lib/promise/sleep.cc \
src/core/lib/promise/trace.cc \
src/core/lib/resolver/endpoint_addresses.cc \
src/core/lib/resolver/resolver.cc \
src/core/lib/resolver/resolver_registry.cc \
src/core/lib/resource_quota/api.cc \
src/core/lib/resource_quota/arena.cc \
src/core/lib/resource_quota/memory_quota.cc \
@ -804,8 +755,6 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/security/transport/server_auth_filter.cc \
src/core/lib/security/transport/tsi_error.cc \
src/core/lib/security/util/json_util.cc \
src/core/lib/service_config/service_config_impl.cc \
src/core/lib/service_config/service_config_parser.cc \
src/core/lib/slice/b64.cc \
src/core/lib/slice/percent_encoding.cc \
src/core/lib/slice/slice.cc \
@ -834,8 +783,10 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/surface/server.cc \
src/core/lib/surface/validate_metadata.cc \
src/core/lib/surface/version.cc \
src/core/lib/surface/wait_for_cq_end_op.cc \
src/core/lib/transport/batch_builder.cc \
src/core/lib/transport/bdp_estimator.cc \
src/core/lib/transport/call_factory.cc \
src/core/lib/transport/call_filters.cc \
src/core/lib/transport/call_final_info.cc \
src/core/lib/transport/call_size_estimator.cc \
@ -855,8 +806,57 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/transport/transport.cc \
src/core/lib/transport/transport_op_string.cc \
src/core/lib/uri/uri_parser.cc \
src/core/load_balancing/address_filtering.cc \
src/core/load_balancing/child_policy_handler.cc \
src/core/load_balancing/endpoint_list.cc \
src/core/load_balancing/grpclb/client_load_reporting_filter.cc \
src/core/load_balancing/grpclb/grpclb.cc \
src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc \
src/core/load_balancing/grpclb/grpclb_client_stats.cc \
src/core/load_balancing/grpclb/load_balancer_api.cc \
src/core/load_balancing/health_check_client.cc \
src/core/load_balancing/lb_policy.cc \
src/core/load_balancing/lb_policy_registry.cc \
src/core/load_balancing/oob_backend_metric.cc \
src/core/load_balancing/outlier_detection/outlier_detection.cc \
src/core/load_balancing/pick_first/pick_first.cc \
src/core/load_balancing/priority/priority.cc \
src/core/load_balancing/ring_hash/ring_hash.cc \
src/core/load_balancing/rls/rls.cc \
src/core/load_balancing/round_robin/round_robin.cc \
src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc \
src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc \
src/core/load_balancing/weighted_target/weighted_target.cc \
src/core/load_balancing/xds/cds.cc \
src/core/load_balancing/xds/xds_cluster_impl.cc \
src/core/load_balancing/xds/xds_cluster_manager.cc \
src/core/load_balancing/xds/xds_override_host.cc \
src/core/load_balancing/xds/xds_wrr_locality.cc \
src/core/plugin_registry/grpc_plugin_registry.cc \
src/core/plugin_registry/grpc_plugin_registry_extra.cc \
src/core/resolver/binder/binder_resolver.cc \
src/core/resolver/dns/c_ares/dns_resolver_ares.cc \
src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \
src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \
src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \
src/core/resolver/dns/dns_resolver_plugin.cc \
src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc \
src/core/resolver/dns/event_engine/service_config_helper.cc \
src/core/resolver/dns/native/dns_resolver.cc \
src/core/resolver/endpoint_addresses.cc \
src/core/resolver/fake/fake_resolver.cc \
src/core/resolver/google_c2p/google_c2p_resolver.cc \
src/core/resolver/polling_resolver.cc \
src/core/resolver/resolver.cc \
src/core/resolver/resolver_registry.cc \
src/core/resolver/sockaddr/sockaddr_resolver.cc \
src/core/resolver/xds/xds_dependency_manager.cc \
src/core/resolver/xds/xds_resolver.cc \
src/core/resolver/xds/xds_resolver_trace.cc \
src/core/service_config/service_config_impl.cc \
src/core/service_config/service_config_parser.cc \
src/core/tsi/alts/crypt/aes_gcm.cc \
src/core/tsi/alts/crypt/gsec.cc \
src/core/tsi/alts/frame_protector/alts_counter.cc \
@ -1132,7 +1132,7 @@ if test "$PHP_GRPC" != "no"; then
third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c \
third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c \
third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c \
third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c \
third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c \
third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c \
third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c \
third_party/boringssl-with-bazel/src/crypto/mem.c \
@ -1169,6 +1169,13 @@ if test "$PHP_GRPC" != "no"; then
third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c \
third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c \
third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c \
third_party/boringssl-with-bazel/src/crypto/spx/address.c \
third_party/boringssl-with-bazel/src/crypto/spx/fors.c \
third_party/boringssl-with-bazel/src/crypto/spx/merkle.c \
third_party/boringssl-with-bazel/src/crypto/spx/spx.c \
third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c \
third_party/boringssl-with-bazel/src/crypto/spx/thash.c \
third_party/boringssl-with-bazel/src/crypto/spx/wots.c \
third_party/boringssl-with-bazel/src/crypto/stack/stack.c \
third_party/boringssl-with-bazel/src/crypto/thread.c \
third_party/boringssl-with-bazel/src/crypto/thread_none.c \
@ -1192,6 +1199,29 @@ if test "$PHP_GRPC" != "no"; then
third_party/boringssl-with-bazel/src/crypto/x509/t_req.c \
third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c \
third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c \
third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c \
third_party/boringssl-with-bazel/src/crypto/x509/x509.c \
third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c \
third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c \
@ -1216,9 +1246,7 @@ if test "$PHP_GRPC" != "no"; then
third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_info.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_name.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_req.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c \
@ -1226,29 +1254,6 @@ if test "$PHP_GRPC" != "no"; then
third_party/boringssl-with-bazel/src/crypto/x509/x_val.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c \
third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akeya.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bcons.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_extku.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_int.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ocsp.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcons.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pmaps.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c \
third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c \
third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc \
third_party/boringssl-with-bazel/src/ssl/d1_both.cc \
third_party/boringssl-with-bazel/src/ssl/d1_lib.cc \
@ -1362,33 +1367,12 @@ if test "$PHP_GRPC" != "no"; then
-D_HAS_EXCEPTIONS=0 -DNOMINMAX -DGRPC_ARES=0 \
-DGRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK=1 \
-DGRPC_XDS_USER_AGENT_NAME_SUFFIX='"\"PHP\""' \
-DGRPC_XDS_USER_AGENT_VERSION_SUFFIX='"\"1.62.0dev\""')
-DGRPC_XDS_USER_AGENT_VERSION_SUFFIX='"\"1.63.0dev\""')
PHP_ADD_BUILD_DIR($ext_builddir/src/core/client_channel)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/backend_metrics)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/census)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/channel_idle)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/grpclb)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/outlier_detection)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/pick_first)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/priority)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/ring_hash)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/rls)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/round_robin)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/weighted_target)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/lb_policy/xds)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/binder)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/dns)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/dns/c_ares)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/dns/event_engine)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/dns/native)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/fake)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/google_c2p)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/sockaddr)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel/resolver/xds)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/deadline)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/fault_injection)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/http)
@ -1538,10 +1522,8 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/iomgr)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/iomgr/event_engine_shims)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/json)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/load_balancing)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/matchers)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/promise)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/resolver)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/resource_quota)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/security/authorization)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/security/certificate_provider)
@ -1570,12 +1552,33 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/security/security_connector/tls)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/security/transport)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/security/util)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/service_config)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/slice)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/surface)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/transport)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/uri)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/grpclb)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/outlier_detection)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/pick_first)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/priority)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/ring_hash)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/rls)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/round_robin)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/weighted_round_robin)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/weighted_target)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/load_balancing/xds)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/plugin_registry)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/binder)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/dns)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/dns/c_ares)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/dns/event_engine)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/dns/native)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/fake)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/google_c2p)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/sockaddr)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/resolver/xds)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/service_config)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/tsi)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/tsi/alts/crypt)
PHP_ADD_BUILD_DIR($ext_builddir/src/core/tsi/alts/frame_protector)
@ -1635,6 +1638,7 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/fipsmodule)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/hpke)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/hrss)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/keccak)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/kyber)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/lhash)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/obj)
@ -1647,10 +1651,10 @@ if test "$PHP_GRPC" != "no"; then
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/rc4)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/rsa_extra)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/siphash)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/spx)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/stack)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/trust_token)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/x509)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/crypto/x509v3)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/boringssl-with-bazel/src/ssl)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/re2/re2)
PHP_ADD_BUILD_DIR($ext_builddir/third_party/re2/util)

252
config.w32 generated

@ -6,74 +6,32 @@ ARG_WITH("grpc", "grpc support", "no");
if (PHP_GRPC != "no") {
EXTENSION("grpc",
"src\\core\\client_channel\\backend_metric.cc " +
"src\\core\\client_channel\\backup_poller.cc " +
"src\\core\\client_channel\\channel_connectivity.cc " +
"src\\core\\client_channel\\client_channel_channelz.cc " +
"src\\core\\client_channel\\client_channel_factory.cc " +
"src\\core\\client_channel\\client_channel_filter.cc " +
"src\\core\\client_channel\\client_channel_plugin.cc " +
"src\\core\\client_channel\\client_channel_service_config.cc " +
"src\\core\\client_channel\\config_selector.cc " +
"src\\core\\client_channel\\dynamic_filters.cc " +
"src\\core\\client_channel\\global_subchannel_pool.cc " +
"src\\core\\client_channel\\http_proxy_mapper.cc " +
"src\\core\\client_channel\\local_subchannel_pool.cc " +
"src\\core\\client_channel\\retry_filter.cc " +
"src\\core\\client_channel\\retry_filter_legacy_call_data.cc " +
"src\\core\\client_channel\\retry_service_config.cc " +
"src\\core\\client_channel\\retry_throttle.cc " +
"src\\core\\client_channel\\service_config_channel_arg_filter.cc " +
"src\\core\\client_channel\\subchannel.cc " +
"src\\core\\client_channel\\subchannel_pool_interface.cc " +
"src\\core\\client_channel\\subchannel_stream_client.cc " +
"src\\core\\ext\\filters\\backend_metrics\\backend_metric_filter.cc " +
"src\\core\\ext\\filters\\census\\grpc_context.cc " +
"src\\core\\ext\\filters\\channel_idle\\channel_idle_filter.cc " +
"src\\core\\ext\\filters\\channel_idle\\idle_filter_state.cc " +
"src\\core\\ext\\filters\\channel_idle\\legacy_channel_idle_filter.cc " +
"src\\core\\ext\\filters\\client_channel\\backend_metric.cc " +
"src\\core\\ext\\filters\\client_channel\\backup_poller.cc " +
"src\\core\\ext\\filters\\client_channel\\channel_connectivity.cc " +
"src\\core\\ext\\filters\\client_channel\\client_channel.cc " +
"src\\core\\ext\\filters\\client_channel\\client_channel_channelz.cc " +
"src\\core\\ext\\filters\\client_channel\\client_channel_factory.cc " +
"src\\core\\ext\\filters\\client_channel\\client_channel_plugin.cc " +
"src\\core\\ext\\filters\\client_channel\\client_channel_service_config.cc " +
"src\\core\\ext\\filters\\client_channel\\config_selector.cc " +
"src\\core\\ext\\filters\\client_channel\\dynamic_filters.cc " +
"src\\core\\ext\\filters\\client_channel\\global_subchannel_pool.cc " +
"src\\core\\ext\\filters\\client_channel\\http_proxy_mapper.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\address_filtering.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\child_policy_handler.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\endpoint_list.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\client_load_reporting_filter.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\grpclb.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\grpclb_balancer_addresses.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\grpclb_client_stats.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\load_balancer_api.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\health_check_client.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\oob_backend_metric.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\outlier_detection\\outlier_detection.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\pick_first\\pick_first.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\priority\\priority.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\ring_hash\\ring_hash.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\rls\\rls.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\round_robin\\round_robin.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\weighted_round_robin\\static_stride_scheduler.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\weighted_round_robin\\weighted_round_robin.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\weighted_target\\weighted_target.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\cds.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\xds_cluster_impl.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\xds_cluster_manager.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\xds_override_host.cc " +
"src\\core\\ext\\filters\\client_channel\\lb_policy\\xds\\xds_wrr_locality.cc " +
"src\\core\\ext\\filters\\client_channel\\local_subchannel_pool.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\binder\\binder_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\dns_resolver_ares.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_ev_driver_posix.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_ev_driver_windows.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_wrapper.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_wrapper_posix.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_wrapper_windows.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\dns_resolver_plugin.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\event_engine\\event_engine_client_channel_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\event_engine\\service_config_helper.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\dns\\native\\dns_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\fake\\fake_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\google_c2p\\google_c2p_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\polling_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\sockaddr\\sockaddr_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\xds\\xds_dependency_manager.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\xds\\xds_resolver.cc " +
"src\\core\\ext\\filters\\client_channel\\resolver\\xds\\xds_resolver_trace.cc " +
"src\\core\\ext\\filters\\client_channel\\retry_filter.cc " +
"src\\core\\ext\\filters\\client_channel\\retry_filter_legacy_call_data.cc " +
"src\\core\\ext\\filters\\client_channel\\retry_service_config.cc " +
"src\\core\\ext\\filters\\client_channel\\retry_throttle.cc " +
"src\\core\\ext\\filters\\client_channel\\service_config_channel_arg_filter.cc " +
"src\\core\\ext\\filters\\client_channel\\subchannel.cc " +
"src\\core\\ext\\filters\\client_channel\\subchannel_pool_interface.cc " +
"src\\core\\ext\\filters\\client_channel\\subchannel_stream_client.cc " +
"src\\core\\ext\\filters\\deadline\\deadline_filter.cc " +
"src\\core\\ext\\filters\\fault_injection\\fault_injection_filter.cc " +
"src\\core\\ext\\filters\\fault_injection\\fault_injection_service_config_parser.cc " +
@ -574,7 +532,6 @@ if (PHP_GRPC != "no") {
"src\\core\\lib\\gpr\\windows\\sync.cc " +
"src\\core\\lib\\gpr\\windows\\time.cc " +
"src\\core\\lib\\gpr\\windows\\tmpfile.cc " +
"src\\core\\lib\\gpr\\wrap_memcpy.cc " +
"src\\core\\lib\\gprpp\\crash.cc " +
"src\\core\\lib\\gprpp\\examine_stack.cc " +
"src\\core\\lib\\gprpp\\fork.cc " +
@ -641,7 +598,6 @@ if (PHP_GRPC != "no") {
"src\\core\\lib\\iomgr\\iomgr_posix.cc " +
"src\\core\\lib\\iomgr\\iomgr_posix_cfstream.cc " +
"src\\core\\lib\\iomgr\\iomgr_windows.cc " +
"src\\core\\lib\\iomgr\\load_file.cc " +
"src\\core\\lib\\iomgr\\lockfree_event.cc " +
"src\\core\\lib\\iomgr\\polling_entity.cc " +
"src\\core\\lib\\iomgr\\pollset.cc " +
@ -687,16 +643,11 @@ if (PHP_GRPC != "no") {
"src\\core\\lib\\json\\json_reader.cc " +
"src\\core\\lib\\json\\json_util.cc " +
"src\\core\\lib\\json\\json_writer.cc " +
"src\\core\\lib\\load_balancing\\lb_policy.cc " +
"src\\core\\lib\\load_balancing\\lb_policy_registry.cc " +
"src\\core\\lib\\matchers\\matchers.cc " +
"src\\core\\lib\\promise\\activity.cc " +
"src\\core\\lib\\promise\\party.cc " +
"src\\core\\lib\\promise\\sleep.cc " +
"src\\core\\lib\\promise\\trace.cc " +
"src\\core\\lib\\resolver\\endpoint_addresses.cc " +
"src\\core\\lib\\resolver\\resolver.cc " +
"src\\core\\lib\\resolver\\resolver_registry.cc " +
"src\\core\\lib\\resource_quota\\api.cc " +
"src\\core\\lib\\resource_quota\\arena.cc " +
"src\\core\\lib\\resource_quota\\memory_quota.cc " +
@ -769,8 +720,6 @@ if (PHP_GRPC != "no") {
"src\\core\\lib\\security\\transport\\server_auth_filter.cc " +
"src\\core\\lib\\security\\transport\\tsi_error.cc " +
"src\\core\\lib\\security\\util\\json_util.cc " +
"src\\core\\lib\\service_config\\service_config_impl.cc " +
"src\\core\\lib\\service_config\\service_config_parser.cc " +
"src\\core\\lib\\slice\\b64.cc " +
"src\\core\\lib\\slice\\percent_encoding.cc " +
"src\\core\\lib\\slice\\slice.cc " +
@ -799,8 +748,10 @@ if (PHP_GRPC != "no") {
"src\\core\\lib\\surface\\server.cc " +
"src\\core\\lib\\surface\\validate_metadata.cc " +
"src\\core\\lib\\surface\\version.cc " +
"src\\core\\lib\\surface\\wait_for_cq_end_op.cc " +
"src\\core\\lib\\transport\\batch_builder.cc " +
"src\\core\\lib\\transport\\bdp_estimator.cc " +
"src\\core\\lib\\transport\\call_factory.cc " +
"src\\core\\lib\\transport\\call_filters.cc " +
"src\\core\\lib\\transport\\call_final_info.cc " +
"src\\core\\lib\\transport\\call_size_estimator.cc " +
@ -820,8 +771,57 @@ if (PHP_GRPC != "no") {
"src\\core\\lib\\transport\\transport.cc " +
"src\\core\\lib\\transport\\transport_op_string.cc " +
"src\\core\\lib\\uri\\uri_parser.cc " +
"src\\core\\load_balancing\\address_filtering.cc " +
"src\\core\\load_balancing\\child_policy_handler.cc " +
"src\\core\\load_balancing\\endpoint_list.cc " +
"src\\core\\load_balancing\\grpclb\\client_load_reporting_filter.cc " +
"src\\core\\load_balancing\\grpclb\\grpclb.cc " +
"src\\core\\load_balancing\\grpclb\\grpclb_balancer_addresses.cc " +
"src\\core\\load_balancing\\grpclb\\grpclb_client_stats.cc " +
"src\\core\\load_balancing\\grpclb\\load_balancer_api.cc " +
"src\\core\\load_balancing\\health_check_client.cc " +
"src\\core\\load_balancing\\lb_policy.cc " +
"src\\core\\load_balancing\\lb_policy_registry.cc " +
"src\\core\\load_balancing\\oob_backend_metric.cc " +
"src\\core\\load_balancing\\outlier_detection\\outlier_detection.cc " +
"src\\core\\load_balancing\\pick_first\\pick_first.cc " +
"src\\core\\load_balancing\\priority\\priority.cc " +
"src\\core\\load_balancing\\ring_hash\\ring_hash.cc " +
"src\\core\\load_balancing\\rls\\rls.cc " +
"src\\core\\load_balancing\\round_robin\\round_robin.cc " +
"src\\core\\load_balancing\\weighted_round_robin\\static_stride_scheduler.cc " +
"src\\core\\load_balancing\\weighted_round_robin\\weighted_round_robin.cc " +
"src\\core\\load_balancing\\weighted_target\\weighted_target.cc " +
"src\\core\\load_balancing\\xds\\cds.cc " +
"src\\core\\load_balancing\\xds\\xds_cluster_impl.cc " +
"src\\core\\load_balancing\\xds\\xds_cluster_manager.cc " +
"src\\core\\load_balancing\\xds\\xds_override_host.cc " +
"src\\core\\load_balancing\\xds\\xds_wrr_locality.cc " +
"src\\core\\plugin_registry\\grpc_plugin_registry.cc " +
"src\\core\\plugin_registry\\grpc_plugin_registry_extra.cc " +
"src\\core\\resolver\\binder\\binder_resolver.cc " +
"src\\core\\resolver\\dns\\c_ares\\dns_resolver_ares.cc " +
"src\\core\\resolver\\dns\\c_ares\\grpc_ares_ev_driver_posix.cc " +
"src\\core\\resolver\\dns\\c_ares\\grpc_ares_ev_driver_windows.cc " +
"src\\core\\resolver\\dns\\c_ares\\grpc_ares_wrapper.cc " +
"src\\core\\resolver\\dns\\c_ares\\grpc_ares_wrapper_posix.cc " +
"src\\core\\resolver\\dns\\c_ares\\grpc_ares_wrapper_windows.cc " +
"src\\core\\resolver\\dns\\dns_resolver_plugin.cc " +
"src\\core\\resolver\\dns\\event_engine\\event_engine_client_channel_resolver.cc " +
"src\\core\\resolver\\dns\\event_engine\\service_config_helper.cc " +
"src\\core\\resolver\\dns\\native\\dns_resolver.cc " +
"src\\core\\resolver\\endpoint_addresses.cc " +
"src\\core\\resolver\\fake\\fake_resolver.cc " +
"src\\core\\resolver\\google_c2p\\google_c2p_resolver.cc " +
"src\\core\\resolver\\polling_resolver.cc " +
"src\\core\\resolver\\resolver.cc " +
"src\\core\\resolver\\resolver_registry.cc " +
"src\\core\\resolver\\sockaddr\\sockaddr_resolver.cc " +
"src\\core\\resolver\\xds\\xds_dependency_manager.cc " +
"src\\core\\resolver\\xds\\xds_resolver.cc " +
"src\\core\\resolver\\xds\\xds_resolver_trace.cc " +
"src\\core\\service_config\\service_config_impl.cc " +
"src\\core\\service_config\\service_config_parser.cc " +
"src\\core\\tsi\\alts\\crypt\\aes_gcm.cc " +
"src\\core\\tsi\\alts\\crypt\\gsec.cc " +
"src\\core\\tsi\\alts\\frame_protector\\alts_counter.cc " +
@ -1097,7 +1097,7 @@ if (PHP_GRPC != "no") {
"third_party\\boringssl-with-bazel\\src\\crypto\\fipsmodule\\fips_shared_support.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\hpke\\hpke.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\hrss\\hrss.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\kyber\\keccak.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\keccak\\keccak.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\kyber\\kyber.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\lhash\\lhash.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\mem.c " +
@ -1134,6 +1134,13 @@ if (PHP_GRPC != "no") {
"third_party\\boringssl-with-bazel\\src\\crypto\\rsa_extra\\rsa_crypt.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\rsa_extra\\rsa_print.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\siphash\\siphash.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\spx\\address.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\spx\\fors.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\spx\\merkle.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\spx\\spx.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\spx\\spx_util.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\spx\\thash.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\spx\\wots.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\stack\\stack.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\thread.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\thread_none.c " +
@ -1157,6 +1164,29 @@ if (PHP_GRPC != "no") {
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\t_req.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\t_x509.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\t_x509a.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_akey.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_akeya.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_alt.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_bcons.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_bitst.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_conf.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_cpols.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_crld.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_enum.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_extku.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_genn.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_ia5.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_info.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_int.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_lib.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_ncons.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_ocsp.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_pcons.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_pmaps.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_prn.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_purp.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_skey.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\v3_utl.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x509.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x509_att.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x509_cmp.c " +
@ -1181,9 +1211,7 @@ if (PHP_GRPC != "no") {
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_attrib.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_crl.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_exten.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_info.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_name.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_pkey.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_pubkey.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_req.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_sig.c " +
@ -1191,29 +1219,6 @@ if (PHP_GRPC != "no") {
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_val.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_x509.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509\\x_x509a.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_akey.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_akeya.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_alt.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_bcons.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_bitst.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_conf.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_cpols.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_crld.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_enum.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_extku.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_genn.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_ia5.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_info.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_int.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_lib.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_ncons.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_ocsp.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_pcons.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_pmaps.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_prn.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_purp.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_skey.c " +
"third_party\\boringssl-with-bazel\\src\\crypto\\x509v3\\v3_utl.c " +
"third_party\\boringssl-with-bazel\\src\\ssl\\bio_ssl.cc " +
"third_party\\boringssl-with-bazel\\src\\ssl\\d1_both.cc " +
"third_party\\boringssl-with-bazel\\src\\ssl\\d1_lib.cc " +
@ -1356,33 +1361,12 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\client_channel");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\backend_metrics");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\census");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\channel_idle");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\outlier_detection");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\pick_first");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\priority");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\ring_hash");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\rls");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\round_robin");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\weighted_round_robin");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\weighted_target");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\xds");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\binder");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\dns");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\dns\\event_engine");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\dns\\native");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\fake");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\google_c2p");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\sockaddr");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\client_channel\\resolver\\xds");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\deadline");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\fault_injection");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\ext\\filters\\http");
@ -1675,10 +1659,8 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\iomgr");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\iomgr\\event_engine_shims");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\json");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\load_balancing");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\matchers");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\promise");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\resolver");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\resource_quota");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\security");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\security\\authorization");
@ -1708,12 +1690,33 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\security\\security_connector\\tls");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\security\\transport");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\security\\util");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\service_config");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\slice");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\surface");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\transport");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\uri");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\grpclb");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\outlier_detection");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\pick_first");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\priority");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\ring_hash");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\rls");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\round_robin");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\weighted_round_robin");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\weighted_target");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\load_balancing\\xds");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\plugin_registry");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\binder");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\dns");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\dns\\c_ares");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\dns\\event_engine");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\dns\\native");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\fake");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\google_c2p");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\sockaddr");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\resolver\\xds");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\service_config");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\tsi");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\tsi\\alts");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\tsi\\alts\\crypt");
@ -1786,6 +1789,7 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\fipsmodule");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\hpke");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\hrss");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\keccak");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\kyber");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\lhash");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\obj");
@ -1798,10 +1802,10 @@ if (PHP_GRPC != "no") {
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\rc4");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\rsa_extra");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\siphash");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\spx");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\stack");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\trust_token");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\x509");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\crypto\\x509v3");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\boringssl-with-bazel\\src\\ssl");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\re2");
FSO.CreateFolder(base_dir+"\\ext\\grpc\\third_party\\re2\\re2");

@ -2,37 +2,44 @@
## Overview
This document describes the command line tool that comes with gRPC repository. It is desirable to have command line
tools written in other languages roughly follow the same syntax and flags.
This document describes the command line tool that comes with gRPC repository.
It is desirable to have command line tools written in other languages roughly
follow the same syntax and flags.
At this point, the tool needs to be built from source, and it should be moved out to grpc-tools repository as a stand
alone application once it is mature enough.
> [!NOTE]
> At present, the tool needs to be built from source, and it should be moved out
> to grpc-tools repository as a stand alone application once it is mature
> enough. This tool in its current state though is not up to par in its
> user-friendliness. Other tools in the ecosystem, for example,
> [grpcurl](https://github.com/fullstorydev/grpcurl) are better maintained.
## Core functionality
The command line tool can do the following things:
- Send unary rpc.
- Attach metadata and display received metadata.
- Handle common authentication to server.
- Infer request/response types from server reflection result.
- Find the request/response types from a given proto file.
- Read proto request in text form.
- Read request in wire form (for protobuf messages, this means serialized binary form).
- Display proto response in text form.
- Write response in wire form to a file.
- Send unary rpc.
- Attach metadata and display received metadata.
- Handle common authentication to server.
- Infer request/response types from server reflection result.
- Find the request/response types from a given proto file.
- Read proto request in text form.
- Read request in wire form (for protobuf messages, this means serialized
binary form).
- Display proto response in text form.
- Write response in wire form to a file.
The command line tool should support the following things:
- List server services and methods through server reflection.
- Fine-grained auth control (such as, use this oauth token to talk to the server).
- Send streaming rpc.
- List server services and methods through server reflection.
- Fine-grained auth control (such as, use this oauth token to talk to the
server).
- Send streaming rpc.
## Code location
To use the tool, you need to get the grpc repository and make sure your system
has the prerequisites for building grpc from source, given in the [installation
instructions](../BUILDING.md).
has the prerequisites for building grpc from source, given in the
[installation instructions](../BUILDING.md).
In order to build the grpc command line tool from a fresh clone of the grpc
repository, you need to run the following command to update submodules:
@ -58,10 +65,13 @@ https://github.com/grpc/grpc/blob/master/test/cpp/util/grpc_cli.cc
Most `grpc_cli` commands need the server to support server reflection. See
guides for
[Java](https://github.com/grpc/grpc-java/blob/master/documentation/server-reflection-tutorial.md#enable-server-reflection)
, [C++](https://github.com/grpc/grpc/blob/master/doc/server_reflection_tutorial.md)
and [Go](https://github.com/grpc/grpc-go/blob/master/Documentation/server-reflection-tutorial.md)
,
[C++](https://github.com/grpc/grpc/blob/master/doc/server_reflection_tutorial.md)
and
[Go](https://github.com/grpc/grpc-go/blob/master/Documentation/server-reflection-tutorial.md)
Local proto files can be used as an alternative. See instructions [below](#Call-a-remote-method).
Local proto files can be used as an alternative. See instructions
[below](#Call-a-remote-method).
## Usage
@ -176,8 +186,8 @@ We can send RPCs to a server and get responses using `grpc_cli call` command.
```
If the proto file is not under the current directory, you can use
`--proto_path` to specify new search roots
(separated by colon on Mac/Linux/Cygwin or semicolon on Windows).
`--proto_path` to specify new search roots (separated by colon on
Mac/Linux/Cygwin or semicolon on Windows).
Note that the tool will always attempt to use the reflection service first,
falling back to local proto files if the service is not found. Use

@ -61,4 +61,5 @@
- 1.59 'g' stands for ['generative'](https://github.com/grpc/grpc/tree/v1.59.x)
- 1.60 'g' stands for ['gjallarhorn'](https://github.com/grpc/grpc/tree/v1.60.x)
- 1.61 'g' stands for ['grand'](https://github.com/grpc/grpc/tree/v1.61.x)
- 1.62 'g' stands for ['guardian'](https://github.com/grpc/grpc/tree/master)
- 1.62 'g' stands for ['guardian'](https://github.com/grpc/grpc/tree/v1.62.x)
- 1.63 'g' stands for ['giggle'](https://github.com/grpc/grpc/tree/master)

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 487 KiB

After

Width:  |  Height:  |  Size: 530 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 389 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 173 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 506 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 375 KiB

After

Width:  |  Height:  |  Size: 523 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 524 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 399 KiB

After

Width:  |  Height:  |  Size: 540 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 KiB

@ -22,7 +22,7 @@ RUN ln -s /usr/bin/python3 /usr/bin/python
RUN mkdir /artifacts
COPY . .
RUN OVERRIDE_BAZEL_VERSION=5.4.0 tools/bazel build //examples/cpp/csm:csm_greeter_client
RUN tools/bazel build //examples/cpp/csm:csm_greeter_client
RUN cp -rL /workdir/bazel-bin/examples/cpp/csm/csm_greeter_client /artifacts/
FROM python:3.9-slim-bookworm

@ -6,6 +6,30 @@ This CSM example builds on the [Hello World Example](https://github.com/grpc/grp
The client takes the following command-line arguments -
* target - By default, the client tries to connect to the xDS "xds:///helloworld:50051" and gRPC would use xDS to resolve this target and connect to the server backend. This can be overriden to change the target.
* cookie_name - session affinity cookie name. Defaults to "GSSA"
* delay_s - delay (in seconds) between the RPCs. Default value is 5
The server takes the following command-line arguments -
* port - Port on which the Hello World service is run. Defaults to 50051.
## Building
From the gRPC workspace folder:
Client:
```
docker build -f examples/cpp/csm/Dockerfile.client
```
Server:
```
docker build -f examples/cpp/csm/Dockerfile.server
```
To push to a registry, add a tag to the image either by adding a `-t` flag to `docker build` command above or run:
```
docker image tag ${sha from build command above} ${tag}
```
And then push the tagged image using `docker push`

@ -16,16 +16,20 @@
*
*/
#include <sys/types.h>
#include <chrono>
#include <condition_variable>
#include <iostream>
#include <memory>
#include <mutex>
#include <optional>
#include <string>
#include "absl/flags/flag.h"
#include "absl/flags/parse.h"
#include "absl/strings/str_join.h"
#include "absl/strings/str_split.h"
#include "absl/types/optional.h"
#include "opentelemetry/exporters/prometheus/exporter_factory.h"
#include "opentelemetry/exporters/prometheus/exporter_options.h"
#include "opentelemetry/sdk/metrics/meter_provider.h"
@ -41,6 +45,8 @@
#endif
ABSL_FLAG(std::string, target, "xds:///helloworld:50051", "Target string");
ABSL_FLAG(std::string, cookie_name, "GSSA", "Cookie name");
ABSL_FLAG(uint, delay_s, 5, "Delay between requests");
using grpc::Channel;
using grpc::ClientContext;
@ -49,15 +55,13 @@ using helloworld::Greeter;
using helloworld::HelloReply;
using helloworld::HelloRequest;
namespace {
struct Cookie {
std::string name;
std::string value;
std::set<std::string> attributes;
std::pair<std::string, std::string> Header() const {
return std::make_pair("cookie", absl::StrFormat("%s=%s", name, value));
}
template <typename Sink>
friend void AbslStringify(Sink& sink, const Cookie& cookie) {
absl::Format(&sink, "(Cookie: %s, value: %s, attributes: {%s})",
@ -66,49 +70,45 @@ struct Cookie {
}
};
class GreeterClient {
protected:
static Cookie ParseCookie(absl::string_view header) {
Cookie cookie;
std::pair<absl::string_view, absl::string_view> name_value =
absl::StrSplit(header, absl::MaxSplits('=', 1));
cookie.name = std::string(name_value.first);
std::pair<absl::string_view, absl::string_view> value_attrs =
absl::StrSplit(name_value.second, absl::MaxSplits(';', 1));
cookie.value = std::string(value_attrs.first);
for (absl::string_view segment : absl::StrSplit(value_attrs.second, ';')) {
cookie.attributes.emplace(absl::StripAsciiWhitespace(segment));
}
return cookie;
Cookie ParseCookie(absl::string_view header) {
Cookie cookie;
std::pair<absl::string_view, absl::string_view> name_value =
absl::StrSplit(header, absl::MaxSplits('=', 1));
cookie.name = std::string(name_value.first);
std::pair<absl::string_view, absl::string_view> value_attrs =
absl::StrSplit(name_value.second, absl::MaxSplits(';', 1));
cookie.value = std::string(value_attrs.first);
for (absl::string_view segment : absl::StrSplit(value_attrs.second, ';')) {
cookie.attributes.emplace(absl::StripAsciiWhitespace(segment));
}
return cookie;
}
static std::vector<Cookie> GetCookies(
const std::multimap<grpc::string_ref, grpc::string_ref>&
server_initial_metadata,
absl::string_view cookie_name) {
std::vector<Cookie> values;
auto pair = server_initial_metadata.equal_range("set-cookie");
for (auto it = pair.first; it != pair.second; ++it) {
gpr_log(GPR_INFO, "set-cookie header: %s", it->second.data());
const auto cookie = ParseCookie(it->second.data());
if (cookie.name == cookie_name) {
values.emplace_back(cookie);
}
std::vector<Cookie> GetCookies(
const std::multimap<grpc::string_ref, grpc::string_ref>& initial_metadata,
absl::string_view cookie_name) {
std::vector<Cookie> values;
auto pair = initial_metadata.equal_range("set-cookie");
for (auto it = pair.first; it != pair.second; ++it) {
const auto cookie = ParseCookie(it->second.data());
if (cookie.name == cookie_name) {
values.emplace_back(std::move(cookie));
}
return values;
}
return values;
}
class GreeterClient {
public:
GreeterClient(std::shared_ptr<Channel> channel)
: stub_(Greeter::NewStub(channel)) {}
GreeterClient(std::shared_ptr<Channel> channel, absl::string_view cookie_name)
: stub_(Greeter::NewStub(channel)), cookie_name_(cookie_name) {}
// Assembles the client's payload, sends it and presents the response back
// from the server.
std::string SayHello(const std::string& user, Cookie* cookieFromServer,
const Cookie* cookieToServer) {
void SayHello() {
// Data we are sending to the server.
HelloRequest request;
request.set_name(user);
request.set_name("world");
// Container for the data we expect from the server.
HelloReply reply;
@ -120,59 +120,45 @@ class GreeterClient {
// The actual RPC.
std::mutex mu;
std::condition_variable cv;
bool done = false;
Status status;
if (cookieToServer != NULL) {
std::pair<std::string, std::string> cookieHeader =
cookieToServer->Header();
context.AddMetadata(cookieHeader.first, cookieHeader.second);
absl::optional<Status> status;
// Set the cookie header if we already got a cookie from the server
if (cookie_from_server_.has_value()) {
context.AddMetadata("cookie",
absl::StrFormat("%s=%s", cookie_from_server_->name,
cookie_from_server_->value));
}
stub_->async()->SayHello(&context, &request, &reply,
[&mu, &cv, &done, &status](Status s) {
status = std::move(s);
std::lock_guard<std::mutex> lock(mu);
done = true;
cv.notify_one();
});
std::unique_lock<std::mutex> lock(mu);
while (!done) {
stub_->async()->SayHello(&context, &request, &reply, [&](Status s) {
std::lock_guard<std::mutex> lock(mu);
status = std::move(s);
cv.notify_one();
});
while (!status.has_value()) {
cv.wait(lock);
}
// Act upon its status.
if (status.ok()) {
if (cookieFromServer != NULL) {
const std::multimap<grpc::string_ref, grpc::string_ref>&
server_initial_metadata = context.GetServerInitialMetadata();
std::vector<Cookie> cookies =
GetCookies(server_initial_metadata, "GSSA");
if (!cookies.empty()) {
*cookieFromServer = cookies.front();
}
}
return reply.message();
} else {
std::cout << status.error_code() << ": " << status.error_message()
<< std::endl;
return "RPC failed";
if (!status->ok()) {
std::cout << "RPC failed" << status->error_code() << ": "
<< status->error_message() << std::endl;
return;
}
const std::multimap<grpc::string_ref, grpc::string_ref>&
server_initial_metadata = context.GetServerInitialMetadata();
// Update a cookie after a successful request
std::vector<Cookie> cookies =
GetCookies(server_initial_metadata, cookie_name_);
if (!cookies.empty()) {
cookie_from_server_.emplace(std::move(cookies.front()));
}
std::cout << "Greeter received: " << reply.message() << std::endl;
}
private:
std::unique_ptr<Greeter::Stub> stub_;
std::string cookie_name_;
absl::optional<Cookie> cookie_from_server_;
};
static void sayHello(GreeterClient& greeter, Cookie* cookieFromServer,
const Cookie* cookieToServer) {
std::string user("world");
std::string reply = greeter.SayHello(user, cookieFromServer, cookieToServer);
std::cout << "Greeter received: " << reply << std::endl;
std::this_thread::sleep_for(std::chrono::seconds(5));
}
int main(int argc, char** argv) {
absl::ParseCommandLine(argc, argv);
absl::StatusOr<grpc::CsmObservability> InitializeObservability() {
opentelemetry::exporter::metrics::PrometheusExporterOptions opts;
// default was "localhost:9464" which causes connection issue across GKE pods
opts.url = "0.0.0.0:9464";
@ -181,21 +167,29 @@ int main(int argc, char** argv) {
auto meter_provider =
std::make_shared<opentelemetry::sdk::metrics::MeterProvider>();
meter_provider->AddMetricReader(std::move(prometheus_exporter));
auto observability = grpc::experimental::CsmObservabilityBuilder()
.SetMeterProvider(std::move(meter_provider))
.BuildAndRegister();
return grpc::CsmObservabilityBuilder()
.SetMeterProvider(std::move(meter_provider))
.BuildAndRegister();
}
} // namespace
int main(int argc, char** argv) {
absl::ParseCommandLine(argc, argv);
// Setup the observability
auto observability = InitializeObservability();
if (!observability.ok()) {
std::cerr << "CsmObservability::Init() failed: "
<< observability.status().ToString() << std::endl;
return static_cast<int>(observability.status().code());
}
GreeterClient greeter(grpc::CreateChannel(
absl::GetFlag(FLAGS_target), grpc::InsecureChannelCredentials()));
Cookie session_cookie;
sayHello(greeter, &session_cookie, NULL);
GreeterClient greeter(grpc::CreateChannel(absl::GetFlag(FLAGS_target),
grpc::InsecureChannelCredentials()),
absl::GetFlag(FLAGS_cookie_name));
while (true) {
sayHello(greeter, NULL, &session_cookie);
greeter.SayHello();
std::this_thread::sleep_for(
std::chrono::seconds(absl::GetFlag(FLAGS_delay_s)));
}
return 0;
}

@ -108,7 +108,7 @@ int main(int argc, char** argv) {
auto meter_provider =
std::make_shared<opentelemetry::sdk::metrics::MeterProvider>();
meter_provider->AddMetricReader(std::move(prometheus_exporter));
auto observability = grpc::experimental::CsmObservabilityBuilder()
auto observability = grpc::CsmObservabilityBuilder()
.SetMeterProvider(std::move(meter_provider))
.BuildAndRegister();
if (!observability.ok()) {

@ -0,0 +1,47 @@
# Copyright 2023 the gRPC authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
licenses(["notice"])
cc_binary(
name = "greeter_callback_client",
srcs = ["greeter_callback_client.cc"],
defines = ["BAZEL_BUILD"],
deps = [
"//:grpc++",
"//:grpcpp_otel_plugin",
"//examples/protos:helloworld_cc_grpc",
"@com_google_absl//absl/flags:flag",
"@com_google_absl//absl/flags:parse",
"@io_opentelemetry_cpp//exporters/prometheus:prometheus_exporter",
"@io_opentelemetry_cpp//sdk/src/metrics",
],
)
cc_binary(
name = "greeter_callback_server",
srcs = ["greeter_callback_server.cc"],
defines = ["BAZEL_BUILD"],
deps = [
"//:grpc++",
"//:grpc++_reflection",
"//:grpcpp_otel_plugin",
"//examples/protos:helloworld_cc_grpc",
"@com_google_absl//absl/flags:flag",
"@com_google_absl//absl/flags:parse",
"@com_google_absl//absl/strings:str_format",
"@io_opentelemetry_cpp//exporters/prometheus:prometheus_exporter",
"@io_opentelemetry_cpp//sdk/src/metrics",
],
)

@ -0,0 +1,45 @@
# gRPC C++ OpenTelemetry Example
The opentelemetry example builds on the
[Hello World Example](https://github.com/grpc/grpc/tree/master/examples/cpp/helloworld)
and changes the gRPC client and server to show a sample way of configuring the
gRPC OpenTelemetry plugin with a prometheus exporter.
For more information on the gRPC OpenTelemetry plugin, please refer to - *
[A66: OpenTelemetry Metrics](https://github.com/grpc/proposal/blob/master/A66-otel-stats.md)
* [https://opentelemetry.io/]()
## Running the example
To run the server -
```
$ tools/bazel run examples/cpp/otel:greeter_callback_server
```
To run the client -
```
$ tools/bazel run examples/cpp/otel:greeter_callback_client
```
The client continuously sends an RPC to the server every second.
To make sure that the server and client metrics are being exported properly, in
a separate terminal, run the following -
```
$ curl localhost:9464/metrics
```
```
$ curl localhost:9465/metrics
```
> ***NOTE:*** If the prometheus endpoint configured is overridden, please update
> the target in the above curl command.
You can find a complete set of instructions for building gRPC and running the
Hello World app in the [C++ Quick Start][].
[C++ Quick Start]: https://grpc.io/docs/languages/cpp/quickstart

@ -0,0 +1,138 @@
/*
*
* Copyright 2021 gRPC authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
#include <condition_variable>
#include <iostream>
#include <memory>
#include <mutex>
#include <string>
#include <thread>
#include "absl/flags/flag.h"
#include "absl/flags/parse.h"
#include "opentelemetry/exporters/prometheus/exporter_factory.h"
#include "opentelemetry/exporters/prometheus/exporter_options.h"
#include "opentelemetry/sdk/metrics/meter_provider.h"
#include <grpcpp/ext/otel_plugin.h>
#include <grpcpp/grpcpp.h>
#ifdef BAZEL_BUILD
#include "examples/protos/helloworld.grpc.pb.h"
#else
#include "helloworld.grpc.pb.h"
#endif
ABSL_FLAG(std::string, target, "localhost:50051", "Server address");
ABSL_FLAG(std::string, prometheus_endpoint, "localhost:9465",
"Prometheus exporter endpoint");
using grpc::Channel;
using grpc::ClientContext;
using grpc::Status;
using helloworld::Greeter;
using helloworld::HelloReply;
using helloworld::HelloRequest;
class GreeterClient {
public:
GreeterClient(std::shared_ptr<Channel> channel)
: stub_(Greeter::NewStub(channel)) {}
// Assembles the client's payload, sends it and presents the response back
// from the server.
std::string SayHello(const std::string& user) {
// Data we are sending to the server.
HelloRequest request;
request.set_name(user);
// Container for the data we expect from the server.
HelloReply reply;
// Context for the client. It could be used to convey extra information to
// the server and/or tweak certain RPC behaviors.
ClientContext context;
// The actual RPC.
std::mutex mu;
std::condition_variable cv;
bool done = false;
Status status;
stub_->async()->SayHello(&context, &request, &reply,
[&mu, &cv, &done, &status](Status s) {
status = std::move(s);
std::lock_guard<std::mutex> lock(mu);
done = true;
cv.notify_one();
});
std::unique_lock<std::mutex> lock(mu);
while (!done) {
cv.wait(lock);
}
// Act upon its status.
if (status.ok()) {
return reply.message();
} else {
std::cout << status.error_code() << ": " << status.error_message()
<< std::endl;
return "RPC failed";
}
}
private:
std::unique_ptr<Greeter::Stub> stub_;
};
int main(int argc, char** argv) {
absl::ParseCommandLine(argc, argv);
// Register a global gRPC OpenTelemetry plugin configured with a prometheus
// exporter.
opentelemetry::exporter::metrics::PrometheusExporterOptions opts;
opts.url = absl::GetFlag(FLAGS_prometheus_endpoint);
auto prometheus_exporter =
opentelemetry::exporter::metrics::PrometheusExporterFactory::Create(opts);
auto meter_provider =
std::make_shared<opentelemetry::sdk::metrics::MeterProvider>();
meter_provider->AddMetricReader(std::move(prometheus_exporter));
auto status = grpc::OpenTelemetryPluginBuilder()
.SetMeterProvider(std::move(meter_provider))
.BuildAndRegisterGlobal();
if (!status.ok()) {
std::cerr << "Failed to register gRPC OpenTelemetry Plugin: "
<< status.ToString() << std::endl;
return static_cast<int>(status.code());
}
// Instantiate the client. It requires a channel, out of which the actual RPCs
// are created. This channel models a connection to an endpoint specified by
// the argument "--target=" which is the only expected argument.
std::string target_str = absl::GetFlag(FLAGS_target);
grpc::ChannelArguments args;
// Continuously send RPCs every second.
while (true) {
GreeterClient greeter(grpc::CreateCustomChannel(
target_str, grpc::InsecureChannelCredentials(), args));
std::string user("world");
std::string reply = greeter.SayHello(user);
std::cout << "Greeter received: " << reply << std::endl;
std::this_thread::sleep_for(std::chrono::seconds(1));
}
return 0;
}

@ -0,0 +1,110 @@
/*
*
* Copyright 2021 gRPC authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
#include <iostream>
#include <memory>
#include <string>
#include "absl/flags/flag.h"
#include "absl/flags/parse.h"
#include "absl/strings/str_format.h"
#include "opentelemetry/exporters/prometheus/exporter_factory.h"
#include "opentelemetry/exporters/prometheus/exporter_options.h"
#include "opentelemetry/sdk/metrics/meter_provider.h"
#include <grpcpp/ext/otel_plugin.h>
#include <grpcpp/ext/proto_server_reflection_plugin.h>
#include <grpcpp/grpcpp.h>
#include <grpcpp/health_check_service_interface.h>
#ifdef BAZEL_BUILD
#include "examples/protos/helloworld.grpc.pb.h"
#else
#include "helloworld.grpc.pb.h"
#endif
ABSL_FLAG(uint16_t, port, 50051, "Server port for the service");
ABSL_FLAG(std::string, prometheus_endpoint, "localhost:9464",
"Prometheus exporter endpoint");
using grpc::CallbackServerContext;
using grpc::Server;
using grpc::ServerBuilder;
using grpc::ServerUnaryReactor;
using grpc::Status;
using helloworld::Greeter;
using helloworld::HelloReply;
using helloworld::HelloRequest;
// Logic and data behind the server's behavior.
class GreeterServiceImpl final : public Greeter::CallbackService {
ServerUnaryReactor* SayHello(CallbackServerContext* context,
const HelloRequest* request,
HelloReply* reply) override {
std::string prefix("Hello ");
reply->set_message(prefix + request->name());
ServerUnaryReactor* reactor = context->DefaultReactor();
reactor->Finish(Status::OK);
return reactor;
}
};
void RunServer(uint16_t port) {
std::string server_address = absl::StrFormat("0.0.0.0:%d", port);
GreeterServiceImpl service;
grpc::EnableDefaultHealthCheckService(true);
grpc::reflection::InitProtoReflectionServerBuilderPlugin();
ServerBuilder builder;
// Listen on the given address without any authentication mechanism.
builder.AddListeningPort(server_address, grpc::InsecureServerCredentials());
// Register "service" as the instance through which we'll communicate with
// clients. In this case it corresponds to an *synchronous* service.
builder.RegisterService(&service);
// Finally assemble the server.
std::unique_ptr<Server> server(builder.BuildAndStart());
std::cout << "Server listening on " << server_address << std::endl;
// Wait for the server to shutdown. Note that some other thread must be
// responsible for shutting down the server for this call to ever return.
server->Wait();
}
int main(int argc, char** argv) {
absl::ParseCommandLine(argc, argv);
// Register a global gRPC OpenTelemetry plugin configured with a prometheus
// exporter.
opentelemetry::exporter::metrics::PrometheusExporterOptions opts;
opts.url = absl::GetFlag(FLAGS_prometheus_endpoint);
auto prometheus_exporter =
opentelemetry::exporter::metrics::PrometheusExporterFactory::Create(opts);
auto meter_provider =
std::make_shared<opentelemetry::sdk::metrics::MeterProvider>();
meter_provider->AddMetricReader(std::move(prometheus_exporter));
auto status = grpc::OpenTelemetryPluginBuilder()
.SetMeterProvider(std::move(meter_provider))
.BuildAndRegisterGlobal();
if (!status.ok()) {
std::cerr << "Failed to register gRPC OpenTelemetry Plugin: "
<< status.ToString() << std::endl;
return static_cast<int>(status.code());
}
RunServer(absl::GetFlag(FLAGS_port));
return 0;
}

@ -1,11 +1,12 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: helloworld.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf.internal import builder as _builder
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import symbol_database as _symbol_database
from google.protobuf.internal import builder as _builder
# @@protoc_insertion_point(imports)
_sym_db = _symbol_database.Default()
@ -13,18 +14,18 @@ _sym_db = _symbol_database.Default()
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10helloworld.proto\x12\nhelloworld\"\x1c\n\x0cHelloRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x1d\n\nHelloReply\x12\x0f\n\x07message\x18\x01 \x01(\t2I\n\x07Greeter\x12>\n\x08SayHello\x12\x18.helloworld.HelloRequest\x1a\x16.helloworld.HelloReply\"\x00\x42\x36\n\x1bio.grpc.examples.helloworldB\x0fHelloWorldProtoP\x01\xa2\x02\x03HLWb\x06proto3')
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10helloworld.proto\x12\nhelloworld\"\x1c\n\x0cHelloRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x1d\n\nHelloReply\x12\x0f\n\x07message\x18\x01 \x01(\t2\xe4\x01\n\x07Greeter\x12>\n\x08SayHello\x12\x18.helloworld.HelloRequest\x1a\x16.helloworld.HelloReply\"\x00\x12K\n\x13SayHelloStreamReply\x12\x18.helloworld.HelloRequest\x1a\x16.helloworld.HelloReply\"\x00\x30\x01\x12L\n\x12SayHelloBidiStream\x12\x18.helloworld.HelloRequest\x1a\x16.helloworld.HelloReply\"\x00(\x01\x30\x01\x42\x36\n\x1bio.grpc.examples.helloworldB\x0fHelloWorldProtoP\x01\xa2\x02\x03HLWb\x06proto3')
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'helloworld_pb2', globals())
_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'helloworld_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\033io.grpc.examples.helloworldB\017HelloWorldProtoP\001\242\002\003HLW'
_HELLOREQUEST._serialized_start=32
_HELLOREQUEST._serialized_end=60
_HELLOREPLY._serialized_start=62
_HELLOREPLY._serialized_end=91
_GREETER._serialized_start=93
_GREETER._serialized_end=166
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\033io.grpc.examples.helloworldB\017HelloWorldProtoP\001\242\002\003HLW'
_globals['_HELLOREQUEST']._serialized_start=32
_globals['_HELLOREQUEST']._serialized_end=60
_globals['_HELLOREPLY']._serialized_start=62
_globals['_HELLOREPLY']._serialized_end=91
_globals['_GREETER']._serialized_start=94
_globals['_GREETER']._serialized_end=322
# @@protoc_insertion_point(module_scope)

@ -4,14 +4,14 @@ from typing import ClassVar as _ClassVar, Optional as _Optional
DESCRIPTOR: _descriptor.FileDescriptor
class HelloReply(_message.Message):
__slots__ = ["message"]
MESSAGE_FIELD_NUMBER: _ClassVar[int]
message: str
def __init__(self, message: _Optional[str] = ...) -> None: ...
class HelloRequest(_message.Message):
__slots__ = ["name"]
__slots__ = ("name",)
NAME_FIELD_NUMBER: _ClassVar[int]
name: str
def __init__(self, name: _Optional[str] = ...) -> None: ...
class HelloReply(_message.Message):
__slots__ = ("message",)
MESSAGE_FIELD_NUMBER: _ClassVar[int]
message: str
def __init__(self, message: _Optional[str] = ...) -> None: ...

@ -19,7 +19,17 @@ class GreeterStub(object):
'/helloworld.Greeter/SayHello',
request_serializer=helloworld__pb2.HelloRequest.SerializeToString,
response_deserializer=helloworld__pb2.HelloReply.FromString,
)
_registered_method=True)
self.SayHelloStreamReply = channel.unary_stream(
'/helloworld.Greeter/SayHelloStreamReply',
request_serializer=helloworld__pb2.HelloRequest.SerializeToString,
response_deserializer=helloworld__pb2.HelloReply.FromString,
_registered_method=True)
self.SayHelloBidiStream = channel.stream_stream(
'/helloworld.Greeter/SayHelloBidiStream',
request_serializer=helloworld__pb2.HelloRequest.SerializeToString,
response_deserializer=helloworld__pb2.HelloReply.FromString,
_registered_method=True)
class GreeterServicer(object):
@ -33,6 +43,18 @@ class GreeterServicer(object):
context.set_details('Method not implemented!')
raise NotImplementedError('Method not implemented!')
def SayHelloStreamReply(self, request, context):
"""Missing associated documentation comment in .proto file."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details('Method not implemented!')
raise NotImplementedError('Method not implemented!')
def SayHelloBidiStream(self, request_iterator, context):
"""Missing associated documentation comment in .proto file."""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details('Method not implemented!')
raise NotImplementedError('Method not implemented!')
def add_GreeterServicer_to_server(servicer, server):
rpc_method_handlers = {
@ -41,6 +63,16 @@ def add_GreeterServicer_to_server(servicer, server):
request_deserializer=helloworld__pb2.HelloRequest.FromString,
response_serializer=helloworld__pb2.HelloReply.SerializeToString,
),
'SayHelloStreamReply': grpc.unary_stream_rpc_method_handler(
servicer.SayHelloStreamReply,
request_deserializer=helloworld__pb2.HelloRequest.FromString,
response_serializer=helloworld__pb2.HelloReply.SerializeToString,
),
'SayHelloBidiStream': grpc.stream_stream_rpc_method_handler(
servicer.SayHelloBidiStream,
request_deserializer=helloworld__pb2.HelloRequest.FromString,
response_serializer=helloworld__pb2.HelloReply.SerializeToString,
),
}
generic_handler = grpc.method_handlers_generic_handler(
'helloworld.Greeter', rpc_method_handlers)
@ -63,8 +95,72 @@ class Greeter(object):
wait_for_ready=None,
timeout=None,
metadata=None):
return grpc.experimental.unary_unary(request, target, '/helloworld.Greeter/SayHello',
return grpc.experimental.unary_unary(
request,
target,
'/helloworld.Greeter/SayHello',
helloworld__pb2.HelloRequest.SerializeToString,
helloworld__pb2.HelloReply.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True)
@staticmethod
def SayHelloStreamReply(request,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None):
return grpc.experimental.unary_stream(
request,
target,
'/helloworld.Greeter/SayHelloStreamReply',
helloworld__pb2.HelloRequest.SerializeToString,
helloworld__pb2.HelloReply.FromString,
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True)
@staticmethod
def SayHelloBidiStream(request_iterator,
target,
options=(),
channel_credentials=None,
call_credentials=None,
insecure=False,
compression=None,
wait_for_ready=None,
timeout=None,
metadata=None):
return grpc.experimental.stream_stream(
request_iterator,
target,
'/helloworld.Greeter/SayHelloBidiStream',
helloworld__pb2.HelloRequest.SerializeToString,
helloworld__pb2.HelloReply.FromString,
options, channel_credentials,
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
options,
channel_credentials,
insecure,
call_credentials,
compression,
wait_for_ready,
timeout,
metadata,
_registered_method=True)

@ -1,2 +1,3 @@
grpcio>=1.62.0
grpcio-observability>=1.62.0
opentelemetry-sdk==1.21.0

280
gRPC-C++.podspec generated

@ -22,7 +22,7 @@
Pod::Spec.new do |s|
s.name = 'gRPC-C++'
# TODO (mxyan): use version that match gRPC version when pod is stabilized
version = '1.62.0-dev'
version = '1.63.0-dev'
s.version = version
s.summary = 'gRPC C++ library'
s.homepage = 'https://grpc.io'
@ -225,7 +225,7 @@ Pod::Spec.new do |s|
ss.dependency "#{s.name}/Privacy", version
ss.dependency "#{s.name}/Interface", version
ss.dependency 'gRPC-Core', version
abseil_version = '1.20240116.0'
abseil_version = '1.20240116.1'
ss.dependency 'abseil/algorithm/container', abseil_version
ss.dependency 'abseil/base/base', abseil_version
ss.dependency 'abseil/base/config', abseil_version
@ -257,64 +257,32 @@ Pod::Spec.new do |s|
ss.dependency 'abseil/types/variant', abseil_version
ss.dependency 'abseil/utility/utility', abseil_version
ss.source_files = 'src/core/ext/filters/backend_metrics/backend_metric_filter.h',
ss.source_files = 'src/core/client_channel/backend_metric.h',
'src/core/client_channel/backup_poller.h',
'src/core/client_channel/client_channel_channelz.h',
'src/core/client_channel/client_channel_factory.h',
'src/core/client_channel/client_channel_filter.h',
'src/core/client_channel/client_channel_internal.h',
'src/core/client_channel/client_channel_service_config.h',
'src/core/client_channel/config_selector.h',
'src/core/client_channel/connector.h',
'src/core/client_channel/dynamic_filters.h',
'src/core/client_channel/global_subchannel_pool.h',
'src/core/client_channel/http_proxy_mapper.h',
'src/core/client_channel/local_subchannel_pool.h',
'src/core/client_channel/retry_filter.h',
'src/core/client_channel/retry_filter_legacy_call_data.h',
'src/core/client_channel/retry_service_config.h',
'src/core/client_channel/retry_throttle.h',
'src/core/client_channel/subchannel.h',
'src/core/client_channel/subchannel_interface_internal.h',
'src/core/client_channel/subchannel_pool_interface.h',
'src/core/client_channel/subchannel_stream_client.h',
'src/core/ext/filters/backend_metrics/backend_metric_filter.h',
'src/core/ext/filters/backend_metrics/backend_metric_provider.h',
'src/core/ext/filters/channel_idle/channel_idle_filter.h',
'src/core/ext/filters/channel_idle/idle_filter_state.h',
'src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h',
'src/core/ext/filters/client_channel/backend_metric.h',
'src/core/ext/filters/client_channel/backup_poller.h',
'src/core/ext/filters/client_channel/client_channel.h',
'src/core/ext/filters/client_channel/client_channel_channelz.h',
'src/core/ext/filters/client_channel/client_channel_factory.h',
'src/core/ext/filters/client_channel/client_channel_internal.h',
'src/core/ext/filters/client_channel/client_channel_service_config.h',
'src/core/ext/filters/client_channel/config_selector.h',
'src/core/ext/filters/client_channel/connector.h',
'src/core/ext/filters/client_channel/dynamic_filters.h',
'src/core/ext/filters/client_channel/global_subchannel_pool.h',
'src/core/ext/filters/client_channel/http_proxy_mapper.h',
'src/core/ext/filters/client_channel/lb_policy/address_filtering.h',
'src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h',
'src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h',
'src/core/ext/filters/client_channel/lb_policy/endpoint_list.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h',
'src/core/ext/filters/client_channel/lb_policy/health_check_client.h',
'src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h',
'src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h',
'src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h',
'src/core/ext/filters/client_channel/lb_policy/subchannel_list.h',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h',
'src/core/ext/filters/client_channel/local_subchannel_pool.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h',
'src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
'src/core/ext/filters/client_channel/resolver/polling_resolver.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h',
'src/core/ext/filters/client_channel/retry_filter.h',
'src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h',
'src/core/ext/filters/client_channel/retry_service_config.h',
'src/core/ext/filters/client_channel/retry_throttle.h',
'src/core/ext/filters/client_channel/subchannel.h',
'src/core/ext/filters/client_channel/subchannel_interface_internal.h',
'src/core/ext/filters/client_channel/subchannel_pool_interface.h',
'src/core/ext/filters/client_channel/subchannel_stream_client.h',
'src/core/ext/filters/deadline/deadline_filter.h',
'src/core/ext/filters/fault_injection/fault_injection_filter.h',
'src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h',
@ -1100,7 +1068,6 @@ Pod::Spec.new do |s|
'src/core/lib/iomgr/iomgr.h',
'src/core/lib/iomgr/iomgr_fwd.h',
'src/core/lib/iomgr/iomgr_internal.h',
'src/core/lib/iomgr/load_file.h',
'src/core/lib/iomgr/lockfree_event.h',
'src/core/lib/iomgr/nameser.h',
'src/core/lib/iomgr/polling_entity.h',
@ -1145,11 +1112,6 @@ Pod::Spec.new do |s|
'src/core/lib/json/json_reader.h',
'src/core/lib/json/json_util.h',
'src/core/lib/json/json_writer.h',
'src/core/lib/load_balancing/delegating_helper.h',
'src/core/lib/load_balancing/lb_policy.h',
'src/core/lib/load_balancing/lb_policy_factory.h',
'src/core/lib/load_balancing/lb_policy_registry.h',
'src/core/lib/load_balancing/subchannel_interface.h',
'src/core/lib/matchers/matchers.h',
'src/core/lib/promise/activity.h',
'src/core/lib/promise/all_ok.h',
@ -1181,11 +1143,6 @@ Pod::Spec.new do |s|
'src/core/lib/promise/trace.h',
'src/core/lib/promise/try_join.h',
'src/core/lib/promise/try_seq.h',
'src/core/lib/resolver/endpoint_addresses.h',
'src/core/lib/resolver/resolver.h',
'src/core/lib/resolver/resolver_factory.h',
'src/core/lib/resolver/resolver_registry.h',
'src/core/lib/resolver/server_address.h',
'src/core/lib/resource_quota/api.h',
'src/core/lib/resource_quota/arena.h',
'src/core/lib/resource_quota/memory_quota.h',
@ -1251,10 +1208,6 @@ Pod::Spec.new do |s|
'src/core/lib/security/transport/security_handshaker.h',
'src/core/lib/security/transport/tsi_error.h',
'src/core/lib/security/util/json_util.h',
'src/core/lib/service_config/service_config.h',
'src/core/lib/service_config/service_config_call_data.h',
'src/core/lib/service_config/service_config_impl.h',
'src/core/lib/service_config/service_config_parser.h',
'src/core/lib/slice/b64.h',
'src/core/lib/slice/percent_encoding.h',
'src/core/lib/slice/slice.h',
@ -1281,6 +1234,7 @@ Pod::Spec.new do |s|
'src/core/lib/surface/wait_for_cq_end_op.h',
'src/core/lib/transport/batch_builder.h',
'src/core/lib/transport/bdp_estimator.h',
'src/core/lib/transport/call_factory.h',
'src/core/lib/transport/call_filters.h',
'src/core/lib/transport/call_final_info.h',
'src/core/lib/transport/call_size_estimator.h',
@ -1305,6 +1259,52 @@ Pod::Spec.new do |s|
'src/core/lib/transport/transport.h',
'src/core/lib/transport/transport_fwd.h',
'src/core/lib/uri/uri_parser.h',
'src/core/load_balancing/address_filtering.h',
'src/core/load_balancing/backend_metric_data.h',
'src/core/load_balancing/child_policy_handler.h',
'src/core/load_balancing/delegating_helper.h',
'src/core/load_balancing/endpoint_list.h',
'src/core/load_balancing/grpclb/client_load_reporting_filter.h',
'src/core/load_balancing/grpclb/grpclb.h',
'src/core/load_balancing/grpclb/grpclb_balancer_addresses.h',
'src/core/load_balancing/grpclb/grpclb_client_stats.h',
'src/core/load_balancing/grpclb/load_balancer_api.h',
'src/core/load_balancing/health_check_client.h',
'src/core/load_balancing/health_check_client_internal.h',
'src/core/load_balancing/lb_policy.h',
'src/core/load_balancing/lb_policy_factory.h',
'src/core/load_balancing/lb_policy_registry.h',
'src/core/load_balancing/oob_backend_metric.h',
'src/core/load_balancing/oob_backend_metric_internal.h',
'src/core/load_balancing/outlier_detection/outlier_detection.h',
'src/core/load_balancing/pick_first/pick_first.h',
'src/core/load_balancing/ring_hash/ring_hash.h',
'src/core/load_balancing/subchannel_interface.h',
'src/core/load_balancing/subchannel_list.h',
'src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h',
'src/core/load_balancing/xds/xds_channel_args.h',
'src/core/load_balancing/xds/xds_override_host.h',
'src/core/resolver/dns/c_ares/dns_resolver_ares.h',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/resolver/dns/dns_resolver_plugin.h',
'src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h',
'src/core/resolver/dns/event_engine/service_config_helper.h',
'src/core/resolver/dns/native/dns_resolver.h',
'src/core/resolver/endpoint_addresses.h',
'src/core/resolver/fake/fake_resolver.h',
'src/core/resolver/polling_resolver.h',
'src/core/resolver/resolver.h',
'src/core/resolver/resolver_factory.h',
'src/core/resolver/resolver_registry.h',
'src/core/resolver/server_address.h',
'src/core/resolver/xds/xds_dependency_manager.h',
'src/core/resolver/xds/xds_resolver_attributes.h',
'src/core/resolver/xds/xds_resolver_trace.h',
'src/core/service_config/service_config.h',
'src/core/service_config/service_config_call_data.h',
'src/core/service_config/service_config_impl.h',
'src/core/service_config/service_config_parser.h',
'src/core/tsi/alts/crypt/gsec.h',
'src/core/tsi/alts/frame_protector/alts_counter.h',
'src/core/tsi/alts/frame_protector/alts_crypter.h',
@ -1531,64 +1531,32 @@ Pod::Spec.new do |s|
'third_party/zlib/zlib.h',
'third_party/zlib/zutil.h'
ss.private_header_files = 'src/core/ext/filters/backend_metrics/backend_metric_filter.h',
ss.private_header_files = 'src/core/client_channel/backend_metric.h',
'src/core/client_channel/backup_poller.h',
'src/core/client_channel/client_channel_channelz.h',
'src/core/client_channel/client_channel_factory.h',
'src/core/client_channel/client_channel_filter.h',
'src/core/client_channel/client_channel_internal.h',
'src/core/client_channel/client_channel_service_config.h',
'src/core/client_channel/config_selector.h',
'src/core/client_channel/connector.h',
'src/core/client_channel/dynamic_filters.h',
'src/core/client_channel/global_subchannel_pool.h',
'src/core/client_channel/http_proxy_mapper.h',
'src/core/client_channel/local_subchannel_pool.h',
'src/core/client_channel/retry_filter.h',
'src/core/client_channel/retry_filter_legacy_call_data.h',
'src/core/client_channel/retry_service_config.h',
'src/core/client_channel/retry_throttle.h',
'src/core/client_channel/subchannel.h',
'src/core/client_channel/subchannel_interface_internal.h',
'src/core/client_channel/subchannel_pool_interface.h',
'src/core/client_channel/subchannel_stream_client.h',
'src/core/ext/filters/backend_metrics/backend_metric_filter.h',
'src/core/ext/filters/backend_metrics/backend_metric_provider.h',
'src/core/ext/filters/channel_idle/channel_idle_filter.h',
'src/core/ext/filters/channel_idle/idle_filter_state.h',
'src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h',
'src/core/ext/filters/client_channel/backend_metric.h',
'src/core/ext/filters/client_channel/backup_poller.h',
'src/core/ext/filters/client_channel/client_channel.h',
'src/core/ext/filters/client_channel/client_channel_channelz.h',
'src/core/ext/filters/client_channel/client_channel_factory.h',
'src/core/ext/filters/client_channel/client_channel_internal.h',
'src/core/ext/filters/client_channel/client_channel_service_config.h',
'src/core/ext/filters/client_channel/config_selector.h',
'src/core/ext/filters/client_channel/connector.h',
'src/core/ext/filters/client_channel/dynamic_filters.h',
'src/core/ext/filters/client_channel/global_subchannel_pool.h',
'src/core/ext/filters/client_channel/http_proxy_mapper.h',
'src/core/ext/filters/client_channel/lb_policy/address_filtering.h',
'src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h',
'src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h',
'src/core/ext/filters/client_channel/lb_policy/endpoint_list.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h',
'src/core/ext/filters/client_channel/lb_policy/health_check_client.h',
'src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h',
'src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h',
'src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h',
'src/core/ext/filters/client_channel/lb_policy/subchannel_list.h',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h',
'src/core/ext/filters/client_channel/local_subchannel_pool.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h',
'src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
'src/core/ext/filters/client_channel/resolver/polling_resolver.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h',
'src/core/ext/filters/client_channel/retry_filter.h',
'src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h',
'src/core/ext/filters/client_channel/retry_service_config.h',
'src/core/ext/filters/client_channel/retry_throttle.h',
'src/core/ext/filters/client_channel/subchannel.h',
'src/core/ext/filters/client_channel/subchannel_interface_internal.h',
'src/core/ext/filters/client_channel/subchannel_pool_interface.h',
'src/core/ext/filters/client_channel/subchannel_stream_client.h',
'src/core/ext/filters/deadline/deadline_filter.h',
'src/core/ext/filters/fault_injection/fault_injection_filter.h',
'src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h',
@ -2356,7 +2324,6 @@ Pod::Spec.new do |s|
'src/core/lib/iomgr/iomgr.h',
'src/core/lib/iomgr/iomgr_fwd.h',
'src/core/lib/iomgr/iomgr_internal.h',
'src/core/lib/iomgr/load_file.h',
'src/core/lib/iomgr/lockfree_event.h',
'src/core/lib/iomgr/nameser.h',
'src/core/lib/iomgr/polling_entity.h',
@ -2401,11 +2368,6 @@ Pod::Spec.new do |s|
'src/core/lib/json/json_reader.h',
'src/core/lib/json/json_util.h',
'src/core/lib/json/json_writer.h',
'src/core/lib/load_balancing/delegating_helper.h',
'src/core/lib/load_balancing/lb_policy.h',
'src/core/lib/load_balancing/lb_policy_factory.h',
'src/core/lib/load_balancing/lb_policy_registry.h',
'src/core/lib/load_balancing/subchannel_interface.h',
'src/core/lib/matchers/matchers.h',
'src/core/lib/promise/activity.h',
'src/core/lib/promise/all_ok.h',
@ -2437,11 +2399,6 @@ Pod::Spec.new do |s|
'src/core/lib/promise/trace.h',
'src/core/lib/promise/try_join.h',
'src/core/lib/promise/try_seq.h',
'src/core/lib/resolver/endpoint_addresses.h',
'src/core/lib/resolver/resolver.h',
'src/core/lib/resolver/resolver_factory.h',
'src/core/lib/resolver/resolver_registry.h',
'src/core/lib/resolver/server_address.h',
'src/core/lib/resource_quota/api.h',
'src/core/lib/resource_quota/arena.h',
'src/core/lib/resource_quota/memory_quota.h',
@ -2507,10 +2464,6 @@ Pod::Spec.new do |s|
'src/core/lib/security/transport/security_handshaker.h',
'src/core/lib/security/transport/tsi_error.h',
'src/core/lib/security/util/json_util.h',
'src/core/lib/service_config/service_config.h',
'src/core/lib/service_config/service_config_call_data.h',
'src/core/lib/service_config/service_config_impl.h',
'src/core/lib/service_config/service_config_parser.h',
'src/core/lib/slice/b64.h',
'src/core/lib/slice/percent_encoding.h',
'src/core/lib/slice/slice.h',
@ -2537,6 +2490,7 @@ Pod::Spec.new do |s|
'src/core/lib/surface/wait_for_cq_end_op.h',
'src/core/lib/transport/batch_builder.h',
'src/core/lib/transport/bdp_estimator.h',
'src/core/lib/transport/call_factory.h',
'src/core/lib/transport/call_filters.h',
'src/core/lib/transport/call_final_info.h',
'src/core/lib/transport/call_size_estimator.h',
@ -2561,6 +2515,52 @@ Pod::Spec.new do |s|
'src/core/lib/transport/transport.h',
'src/core/lib/transport/transport_fwd.h',
'src/core/lib/uri/uri_parser.h',
'src/core/load_balancing/address_filtering.h',
'src/core/load_balancing/backend_metric_data.h',
'src/core/load_balancing/child_policy_handler.h',
'src/core/load_balancing/delegating_helper.h',
'src/core/load_balancing/endpoint_list.h',
'src/core/load_balancing/grpclb/client_load_reporting_filter.h',
'src/core/load_balancing/grpclb/grpclb.h',
'src/core/load_balancing/grpclb/grpclb_balancer_addresses.h',
'src/core/load_balancing/grpclb/grpclb_client_stats.h',
'src/core/load_balancing/grpclb/load_balancer_api.h',
'src/core/load_balancing/health_check_client.h',
'src/core/load_balancing/health_check_client_internal.h',
'src/core/load_balancing/lb_policy.h',
'src/core/load_balancing/lb_policy_factory.h',
'src/core/load_balancing/lb_policy_registry.h',
'src/core/load_balancing/oob_backend_metric.h',
'src/core/load_balancing/oob_backend_metric_internal.h',
'src/core/load_balancing/outlier_detection/outlier_detection.h',
'src/core/load_balancing/pick_first/pick_first.h',
'src/core/load_balancing/ring_hash/ring_hash.h',
'src/core/load_balancing/subchannel_interface.h',
'src/core/load_balancing/subchannel_list.h',
'src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h',
'src/core/load_balancing/xds/xds_channel_args.h',
'src/core/load_balancing/xds/xds_override_host.h',
'src/core/resolver/dns/c_ares/dns_resolver_ares.h',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/resolver/dns/dns_resolver_plugin.h',
'src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h',
'src/core/resolver/dns/event_engine/service_config_helper.h',
'src/core/resolver/dns/native/dns_resolver.h',
'src/core/resolver/endpoint_addresses.h',
'src/core/resolver/fake/fake_resolver.h',
'src/core/resolver/polling_resolver.h',
'src/core/resolver/resolver.h',
'src/core/resolver/resolver_factory.h',
'src/core/resolver/resolver_registry.h',
'src/core/resolver/server_address.h',
'src/core/resolver/xds/xds_dependency_manager.h',
'src/core/resolver/xds/xds_resolver_attributes.h',
'src/core/resolver/xds/xds_resolver_trace.h',
'src/core/service_config/service_config.h',
'src/core/service_config/service_config_call_data.h',
'src/core/service_config/service_config_impl.h',
'src/core/service_config/service_config_parser.h',
'src/core/tsi/alts/crypt/gsec.h',
'src/core/tsi/alts/frame_protector/alts_counter.h',
'src/core/tsi/alts/frame_protector/alts_crypter.h',

426
gRPC-Core.podspec generated

@ -21,7 +21,7 @@
Pod::Spec.new do |s|
s.name = 'gRPC-Core'
version = '1.62.0-dev'
version = '1.63.0-dev'
s.version = version
s.summary = 'Core cross-platform gRPC library, written in C'
s.homepage = 'https://grpc.io'
@ -46,7 +46,7 @@ Pod::Spec.new do |s|
s.requires_arc = false
name = 'grpc'
abseil_version = '1.20240116.0'
abseil_version = '1.20240116.1'
# When creating a dynamic framework, name it grpc.framework instead of gRPC-Core.framework.
# This lets users write their includes like `#include <grpc/grpc.h>` as opposed to `#include
@ -195,7 +195,7 @@ Pod::Spec.new do |s|
ss.libraries = 'z'
ss.dependency "#{s.name}/Interface", version
ss.dependency "#{s.name}/Privacy", version
ss.dependency 'BoringSSL-GRPC', '0.0.31'
ss.dependency 'BoringSSL-GRPC', '0.0.32'
ss.dependency 'abseil/algorithm/container', abseil_version
ss.dependency 'abseil/base/base', abseil_version
ss.dependency 'abseil/base/config', abseil_version
@ -228,7 +228,49 @@ Pod::Spec.new do |s|
ss.dependency 'abseil/utility/utility', abseil_version
ss.compiler_flags = '-DBORINGSSL_PREFIX=GRPC -Wno-unreachable-code -Wno-shorten-64-to-32'
ss.source_files = 'src/core/ext/filters/backend_metrics/backend_metric_filter.cc',
ss.source_files = 'src/core/client_channel/backend_metric.cc',
'src/core/client_channel/backend_metric.h',
'src/core/client_channel/backup_poller.cc',
'src/core/client_channel/backup_poller.h',
'src/core/client_channel/channel_connectivity.cc',
'src/core/client_channel/client_channel_channelz.cc',
'src/core/client_channel/client_channel_channelz.h',
'src/core/client_channel/client_channel_factory.cc',
'src/core/client_channel/client_channel_factory.h',
'src/core/client_channel/client_channel_filter.cc',
'src/core/client_channel/client_channel_filter.h',
'src/core/client_channel/client_channel_internal.h',
'src/core/client_channel/client_channel_plugin.cc',
'src/core/client_channel/client_channel_service_config.cc',
'src/core/client_channel/client_channel_service_config.h',
'src/core/client_channel/config_selector.cc',
'src/core/client_channel/config_selector.h',
'src/core/client_channel/connector.h',
'src/core/client_channel/dynamic_filters.cc',
'src/core/client_channel/dynamic_filters.h',
'src/core/client_channel/global_subchannel_pool.cc',
'src/core/client_channel/global_subchannel_pool.h',
'src/core/client_channel/http_proxy_mapper.cc',
'src/core/client_channel/http_proxy_mapper.h',
'src/core/client_channel/local_subchannel_pool.cc',
'src/core/client_channel/local_subchannel_pool.h',
'src/core/client_channel/retry_filter.cc',
'src/core/client_channel/retry_filter.h',
'src/core/client_channel/retry_filter_legacy_call_data.cc',
'src/core/client_channel/retry_filter_legacy_call_data.h',
'src/core/client_channel/retry_service_config.cc',
'src/core/client_channel/retry_service_config.h',
'src/core/client_channel/retry_throttle.cc',
'src/core/client_channel/retry_throttle.h',
'src/core/client_channel/service_config_channel_arg_filter.cc',
'src/core/client_channel/subchannel.cc',
'src/core/client_channel/subchannel.h',
'src/core/client_channel/subchannel_interface_internal.h',
'src/core/client_channel/subchannel_pool_interface.cc',
'src/core/client_channel/subchannel_pool_interface.h',
'src/core/client_channel/subchannel_stream_client.cc',
'src/core/client_channel/subchannel_stream_client.h',
'src/core/ext/filters/backend_metrics/backend_metric_filter.cc',
'src/core/ext/filters/backend_metrics/backend_metric_filter.h',
'src/core/ext/filters/backend_metrics/backend_metric_provider.h',
'src/core/ext/filters/census/grpc_context.cc',
@ -238,122 +280,6 @@ Pod::Spec.new do |s|
'src/core/ext/filters/channel_idle/idle_filter_state.h',
'src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc',
'src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backend_metric.h',
'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/backup_poller.h',
'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc',
'src/core/ext/filters/client_channel/client_channel.h',
'src/core/ext/filters/client_channel/client_channel_channelz.cc',
'src/core/ext/filters/client_channel/client_channel_channelz.h',
'src/core/ext/filters/client_channel/client_channel_factory.cc',
'src/core/ext/filters/client_channel/client_channel_factory.h',
'src/core/ext/filters/client_channel/client_channel_internal.h',
'src/core/ext/filters/client_channel/client_channel_plugin.cc',
'src/core/ext/filters/client_channel/client_channel_service_config.cc',
'src/core/ext/filters/client_channel/client_channel_service_config.h',
'src/core/ext/filters/client_channel/config_selector.cc',
'src/core/ext/filters/client_channel/config_selector.h',
'src/core/ext/filters/client_channel/connector.h',
'src/core/ext/filters/client_channel/dynamic_filters.cc',
'src/core/ext/filters/client_channel/dynamic_filters.h',
'src/core/ext/filters/client_channel/global_subchannel_pool.cc',
'src/core/ext/filters/client_channel/global_subchannel_pool.h',
'src/core/ext/filters/client_channel/http_proxy_mapper.cc',
'src/core/ext/filters/client_channel/http_proxy_mapper.h',
'src/core/ext/filters/client_channel/lb_policy/address_filtering.cc',
'src/core/ext/filters/client_channel/lb_policy/address_filtering.h',
'src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h',
'src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc',
'src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h',
'src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc',
'src/core/ext/filters/client_channel/lb_policy/endpoint_list.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h',
'src/core/ext/filters/client_channel/lb_policy/health_check_client.cc',
'src/core/ext/filters/client_channel/lb_policy/health_check_client.h',
'src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h',
'src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc',
'src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h',
'src/core/ext/filters/client_channel/lb_policy/priority/priority.cc',
'src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc',
'src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h',
'src/core/ext/filters/client_channel/lb_policy/rls/rls.cc',
'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc',
'src/core/ext/filters/client_channel/lb_policy/subchannel_list.h',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc',
'src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/cds.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc',
'src/core/ext/filters/client_channel/local_subchannel_pool.cc',
'src/core/ext/filters/client_channel/local_subchannel_pool.h',
'src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h',
'src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc',
'src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
'src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc',
'src/core/ext/filters/client_channel/resolver/polling_resolver.cc',
'src/core/ext/filters/client_channel/resolver/polling_resolver.h',
'src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc',
'src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc',
'src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h',
'src/core/ext/filters/client_channel/retry_filter.cc',
'src/core/ext/filters/client_channel/retry_filter.h',
'src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc',
'src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h',
'src/core/ext/filters/client_channel/retry_service_config.cc',
'src/core/ext/filters/client_channel/retry_service_config.h',
'src/core/ext/filters/client_channel/retry_throttle.cc',
'src/core/ext/filters/client_channel/retry_throttle.h',
'src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc',
'src/core/ext/filters/client_channel/subchannel.cc',
'src/core/ext/filters/client_channel/subchannel.h',
'src/core/ext/filters/client_channel/subchannel_interface_internal.h',
'src/core/ext/filters/client_channel/subchannel_pool_interface.cc',
'src/core/ext/filters/client_channel/subchannel_pool_interface.h',
'src/core/ext/filters/client_channel/subchannel_stream_client.cc',
'src/core/ext/filters/client_channel/subchannel_stream_client.h',
'src/core/ext/filters/deadline/deadline_filter.cc',
'src/core/ext/filters/deadline/deadline_filter.h',
'src/core/ext/filters/fault_injection/fault_injection_filter.cc',
@ -1520,7 +1446,6 @@ Pod::Spec.new do |s|
'src/core/lib/gpr/windows/sync.cc',
'src/core/lib/gpr/windows/time.cc',
'src/core/lib/gpr/windows/tmpfile.cc',
'src/core/lib/gpr/wrap_memcpy.cc',
'src/core/lib/gprpp/atomic_utils.h',
'src/core/lib/gprpp/bitset.h',
'src/core/lib/gprpp/chunked_vector.h',
@ -1667,8 +1592,6 @@ Pod::Spec.new do |s|
'src/core/lib/iomgr/iomgr_posix.cc',
'src/core/lib/iomgr/iomgr_posix_cfstream.cc',
'src/core/lib/iomgr/iomgr_windows.cc',
'src/core/lib/iomgr/load_file.cc',
'src/core/lib/iomgr/load_file.h',
'src/core/lib/iomgr/lockfree_event.cc',
'src/core/lib/iomgr/lockfree_event.h',
'src/core/lib/iomgr/nameser.h',
@ -1758,13 +1681,6 @@ Pod::Spec.new do |s|
'src/core/lib/json/json_util.h',
'src/core/lib/json/json_writer.cc',
'src/core/lib/json/json_writer.h',
'src/core/lib/load_balancing/delegating_helper.h',
'src/core/lib/load_balancing/lb_policy.cc',
'src/core/lib/load_balancing/lb_policy.h',
'src/core/lib/load_balancing/lb_policy_factory.h',
'src/core/lib/load_balancing/lb_policy_registry.cc',
'src/core/lib/load_balancing/lb_policy_registry.h',
'src/core/lib/load_balancing/subchannel_interface.h',
'src/core/lib/matchers/matchers.cc',
'src/core/lib/matchers/matchers.h',
'src/core/lib/promise/activity.cc',
@ -1801,14 +1717,6 @@ Pod::Spec.new do |s|
'src/core/lib/promise/trace.h',
'src/core/lib/promise/try_join.h',
'src/core/lib/promise/try_seq.h',
'src/core/lib/resolver/endpoint_addresses.cc',
'src/core/lib/resolver/endpoint_addresses.h',
'src/core/lib/resolver/resolver.cc',
'src/core/lib/resolver/resolver.h',
'src/core/lib/resolver/resolver_factory.h',
'src/core/lib/resolver/resolver_registry.cc',
'src/core/lib/resolver/resolver_registry.h',
'src/core/lib/resolver/server_address.h',
'src/core/lib/resource_quota/api.cc',
'src/core/lib/resource_quota/api.h',
'src/core/lib/resource_quota/arena.cc',
@ -1946,12 +1854,6 @@ Pod::Spec.new do |s|
'src/core/lib/security/transport/tsi_error.h',
'src/core/lib/security/util/json_util.cc',
'src/core/lib/security/util/json_util.h',
'src/core/lib/service_config/service_config.h',
'src/core/lib/service_config/service_config_call_data.h',
'src/core/lib/service_config/service_config_impl.cc',
'src/core/lib/service_config/service_config_impl.h',
'src/core/lib/service_config/service_config_parser.cc',
'src/core/lib/service_config/service_config_parser.h',
'src/core/lib/slice/b64.cc',
'src/core/lib/slice/b64.h',
'src/core/lib/slice/percent_encoding.cc',
@ -2003,11 +1905,14 @@ Pod::Spec.new do |s|
'src/core/lib/surface/validate_metadata.cc',
'src/core/lib/surface/validate_metadata.h',
'src/core/lib/surface/version.cc',
'src/core/lib/surface/wait_for_cq_end_op.cc',
'src/core/lib/surface/wait_for_cq_end_op.h',
'src/core/lib/transport/batch_builder.cc',
'src/core/lib/transport/batch_builder.h',
'src/core/lib/transport/bdp_estimator.cc',
'src/core/lib/transport/bdp_estimator.h',
'src/core/lib/transport/call_factory.cc',
'src/core/lib/transport/call_factory.h',
'src/core/lib/transport/call_filters.cc',
'src/core/lib/transport/call_filters.h',
'src/core/lib/transport/call_final_info.cc',
@ -2051,8 +1956,103 @@ Pod::Spec.new do |s|
'src/core/lib/transport/transport_op_string.cc',
'src/core/lib/uri/uri_parser.cc',
'src/core/lib/uri/uri_parser.h',
'src/core/load_balancing/address_filtering.cc',
'src/core/load_balancing/address_filtering.h',
'src/core/load_balancing/backend_metric_data.h',
'src/core/load_balancing/child_policy_handler.cc',
'src/core/load_balancing/child_policy_handler.h',
'src/core/load_balancing/delegating_helper.h',
'src/core/load_balancing/endpoint_list.cc',
'src/core/load_balancing/endpoint_list.h',
'src/core/load_balancing/grpclb/client_load_reporting_filter.cc',
'src/core/load_balancing/grpclb/client_load_reporting_filter.h',
'src/core/load_balancing/grpclb/grpclb.cc',
'src/core/load_balancing/grpclb/grpclb.h',
'src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc',
'src/core/load_balancing/grpclb/grpclb_balancer_addresses.h',
'src/core/load_balancing/grpclb/grpclb_client_stats.cc',
'src/core/load_balancing/grpclb/grpclb_client_stats.h',
'src/core/load_balancing/grpclb/load_balancer_api.cc',
'src/core/load_balancing/grpclb/load_balancer_api.h',
'src/core/load_balancing/health_check_client.cc',
'src/core/load_balancing/health_check_client.h',
'src/core/load_balancing/health_check_client_internal.h',
'src/core/load_balancing/lb_policy.cc',
'src/core/load_balancing/lb_policy.h',
'src/core/load_balancing/lb_policy_factory.h',
'src/core/load_balancing/lb_policy_registry.cc',
'src/core/load_balancing/lb_policy_registry.h',
'src/core/load_balancing/oob_backend_metric.cc',
'src/core/load_balancing/oob_backend_metric.h',
'src/core/load_balancing/oob_backend_metric_internal.h',
'src/core/load_balancing/outlier_detection/outlier_detection.cc',
'src/core/load_balancing/outlier_detection/outlier_detection.h',
'src/core/load_balancing/pick_first/pick_first.cc',
'src/core/load_balancing/pick_first/pick_first.h',
'src/core/load_balancing/priority/priority.cc',
'src/core/load_balancing/ring_hash/ring_hash.cc',
'src/core/load_balancing/ring_hash/ring_hash.h',
'src/core/load_balancing/rls/rls.cc',
'src/core/load_balancing/round_robin/round_robin.cc',
'src/core/load_balancing/subchannel_interface.h',
'src/core/load_balancing/subchannel_list.h',
'src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc',
'src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h',
'src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc',
'src/core/load_balancing/weighted_target/weighted_target.cc',
'src/core/load_balancing/xds/cds.cc',
'src/core/load_balancing/xds/xds_channel_args.h',
'src/core/load_balancing/xds/xds_cluster_impl.cc',
'src/core/load_balancing/xds/xds_cluster_manager.cc',
'src/core/load_balancing/xds/xds_override_host.cc',
'src/core/load_balancing/xds/xds_override_host.h',
'src/core/load_balancing/xds/xds_wrr_locality.cc',
'src/core/plugin_registry/grpc_plugin_registry.cc',
'src/core/plugin_registry/grpc_plugin_registry_extra.cc',
'src/core/resolver/binder/binder_resolver.cc',
'src/core/resolver/dns/c_ares/dns_resolver_ares.cc',
'src/core/resolver/dns/c_ares/dns_resolver_ares.h',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc',
'src/core/resolver/dns/dns_resolver_plugin.cc',
'src/core/resolver/dns/dns_resolver_plugin.h',
'src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc',
'src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h',
'src/core/resolver/dns/event_engine/service_config_helper.cc',
'src/core/resolver/dns/event_engine/service_config_helper.h',
'src/core/resolver/dns/native/dns_resolver.cc',
'src/core/resolver/dns/native/dns_resolver.h',
'src/core/resolver/endpoint_addresses.cc',
'src/core/resolver/endpoint_addresses.h',
'src/core/resolver/fake/fake_resolver.cc',
'src/core/resolver/fake/fake_resolver.h',
'src/core/resolver/google_c2p/google_c2p_resolver.cc',
'src/core/resolver/polling_resolver.cc',
'src/core/resolver/polling_resolver.h',
'src/core/resolver/resolver.cc',
'src/core/resolver/resolver.h',
'src/core/resolver/resolver_factory.h',
'src/core/resolver/resolver_registry.cc',
'src/core/resolver/resolver_registry.h',
'src/core/resolver/server_address.h',
'src/core/resolver/sockaddr/sockaddr_resolver.cc',
'src/core/resolver/xds/xds_dependency_manager.cc',
'src/core/resolver/xds/xds_dependency_manager.h',
'src/core/resolver/xds/xds_resolver.cc',
'src/core/resolver/xds/xds_resolver_attributes.h',
'src/core/resolver/xds/xds_resolver_trace.cc',
'src/core/resolver/xds/xds_resolver_trace.h',
'src/core/service_config/service_config.h',
'src/core/service_config/service_config_call_data.h',
'src/core/service_config/service_config_impl.cc',
'src/core/service_config/service_config_impl.h',
'src/core/service_config/service_config_parser.cc',
'src/core/service_config/service_config_parser.h',
'src/core/tsi/alts/crypt/aes_gcm.cc',
'src/core/tsi/alts/crypt/gsec.cc',
'src/core/tsi/alts/crypt/gsec.h',
@ -2331,64 +2331,32 @@ Pod::Spec.new do |s|
'third_party/zlib/zlib.h',
'third_party/zlib/zutil.c',
'third_party/zlib/zutil.h'
ss.private_header_files = 'src/core/ext/filters/backend_metrics/backend_metric_filter.h',
ss.private_header_files = 'src/core/client_channel/backend_metric.h',
'src/core/client_channel/backup_poller.h',
'src/core/client_channel/client_channel_channelz.h',
'src/core/client_channel/client_channel_factory.h',
'src/core/client_channel/client_channel_filter.h',
'src/core/client_channel/client_channel_internal.h',
'src/core/client_channel/client_channel_service_config.h',
'src/core/client_channel/config_selector.h',
'src/core/client_channel/connector.h',
'src/core/client_channel/dynamic_filters.h',
'src/core/client_channel/global_subchannel_pool.h',
'src/core/client_channel/http_proxy_mapper.h',
'src/core/client_channel/local_subchannel_pool.h',
'src/core/client_channel/retry_filter.h',
'src/core/client_channel/retry_filter_legacy_call_data.h',
'src/core/client_channel/retry_service_config.h',
'src/core/client_channel/retry_throttle.h',
'src/core/client_channel/subchannel.h',
'src/core/client_channel/subchannel_interface_internal.h',
'src/core/client_channel/subchannel_pool_interface.h',
'src/core/client_channel/subchannel_stream_client.h',
'src/core/ext/filters/backend_metrics/backend_metric_filter.h',
'src/core/ext/filters/backend_metrics/backend_metric_provider.h',
'src/core/ext/filters/channel_idle/channel_idle_filter.h',
'src/core/ext/filters/channel_idle/idle_filter_state.h',
'src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h',
'src/core/ext/filters/client_channel/backend_metric.h',
'src/core/ext/filters/client_channel/backup_poller.h',
'src/core/ext/filters/client_channel/client_channel.h',
'src/core/ext/filters/client_channel/client_channel_channelz.h',
'src/core/ext/filters/client_channel/client_channel_factory.h',
'src/core/ext/filters/client_channel/client_channel_internal.h',
'src/core/ext/filters/client_channel/client_channel_service_config.h',
'src/core/ext/filters/client_channel/config_selector.h',
'src/core/ext/filters/client_channel/connector.h',
'src/core/ext/filters/client_channel/dynamic_filters.h',
'src/core/ext/filters/client_channel/global_subchannel_pool.h',
'src/core/ext/filters/client_channel/http_proxy_mapper.h',
'src/core/ext/filters/client_channel/lb_policy/address_filtering.h',
'src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h',
'src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h',
'src/core/ext/filters/client_channel/lb_policy/endpoint_list.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h',
'src/core/ext/filters/client_channel/lb_policy/health_check_client.h',
'src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h',
'src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h',
'src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h',
'src/core/ext/filters/client_channel/lb_policy/subchannel_list.h',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h',
'src/core/ext/filters/client_channel/local_subchannel_pool.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h',
'src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h',
'src/core/ext/filters/client_channel/resolver/polling_resolver.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h',
'src/core/ext/filters/client_channel/retry_filter.h',
'src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h',
'src/core/ext/filters/client_channel/retry_service_config.h',
'src/core/ext/filters/client_channel/retry_throttle.h',
'src/core/ext/filters/client_channel/subchannel.h',
'src/core/ext/filters/client_channel/subchannel_interface_internal.h',
'src/core/ext/filters/client_channel/subchannel_pool_interface.h',
'src/core/ext/filters/client_channel/subchannel_stream_client.h',
'src/core/ext/filters/deadline/deadline_filter.h',
'src/core/ext/filters/fault_injection/fault_injection_filter.h',
'src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h',
@ -3135,7 +3103,6 @@ Pod::Spec.new do |s|
'src/core/lib/iomgr/iomgr.h',
'src/core/lib/iomgr/iomgr_fwd.h',
'src/core/lib/iomgr/iomgr_internal.h',
'src/core/lib/iomgr/load_file.h',
'src/core/lib/iomgr/lockfree_event.h',
'src/core/lib/iomgr/nameser.h',
'src/core/lib/iomgr/polling_entity.h',
@ -3180,11 +3147,6 @@ Pod::Spec.new do |s|
'src/core/lib/json/json_reader.h',
'src/core/lib/json/json_util.h',
'src/core/lib/json/json_writer.h',
'src/core/lib/load_balancing/delegating_helper.h',
'src/core/lib/load_balancing/lb_policy.h',
'src/core/lib/load_balancing/lb_policy_factory.h',
'src/core/lib/load_balancing/lb_policy_registry.h',
'src/core/lib/load_balancing/subchannel_interface.h',
'src/core/lib/matchers/matchers.h',
'src/core/lib/promise/activity.h',
'src/core/lib/promise/all_ok.h',
@ -3216,11 +3178,6 @@ Pod::Spec.new do |s|
'src/core/lib/promise/trace.h',
'src/core/lib/promise/try_join.h',
'src/core/lib/promise/try_seq.h',
'src/core/lib/resolver/endpoint_addresses.h',
'src/core/lib/resolver/resolver.h',
'src/core/lib/resolver/resolver_factory.h',
'src/core/lib/resolver/resolver_registry.h',
'src/core/lib/resolver/server_address.h',
'src/core/lib/resource_quota/api.h',
'src/core/lib/resource_quota/arena.h',
'src/core/lib/resource_quota/memory_quota.h',
@ -3286,10 +3243,6 @@ Pod::Spec.new do |s|
'src/core/lib/security/transport/security_handshaker.h',
'src/core/lib/security/transport/tsi_error.h',
'src/core/lib/security/util/json_util.h',
'src/core/lib/service_config/service_config.h',
'src/core/lib/service_config/service_config_call_data.h',
'src/core/lib/service_config/service_config_impl.h',
'src/core/lib/service_config/service_config_parser.h',
'src/core/lib/slice/b64.h',
'src/core/lib/slice/percent_encoding.h',
'src/core/lib/slice/slice.h',
@ -3316,6 +3269,7 @@ Pod::Spec.new do |s|
'src/core/lib/surface/wait_for_cq_end_op.h',
'src/core/lib/transport/batch_builder.h',
'src/core/lib/transport/bdp_estimator.h',
'src/core/lib/transport/call_factory.h',
'src/core/lib/transport/call_filters.h',
'src/core/lib/transport/call_final_info.h',
'src/core/lib/transport/call_size_estimator.h',
@ -3340,6 +3294,52 @@ Pod::Spec.new do |s|
'src/core/lib/transport/transport.h',
'src/core/lib/transport/transport_fwd.h',
'src/core/lib/uri/uri_parser.h',
'src/core/load_balancing/address_filtering.h',
'src/core/load_balancing/backend_metric_data.h',
'src/core/load_balancing/child_policy_handler.h',
'src/core/load_balancing/delegating_helper.h',
'src/core/load_balancing/endpoint_list.h',
'src/core/load_balancing/grpclb/client_load_reporting_filter.h',
'src/core/load_balancing/grpclb/grpclb.h',
'src/core/load_balancing/grpclb/grpclb_balancer_addresses.h',
'src/core/load_balancing/grpclb/grpclb_client_stats.h',
'src/core/load_balancing/grpclb/load_balancer_api.h',
'src/core/load_balancing/health_check_client.h',
'src/core/load_balancing/health_check_client_internal.h',
'src/core/load_balancing/lb_policy.h',
'src/core/load_balancing/lb_policy_factory.h',
'src/core/load_balancing/lb_policy_registry.h',
'src/core/load_balancing/oob_backend_metric.h',
'src/core/load_balancing/oob_backend_metric_internal.h',
'src/core/load_balancing/outlier_detection/outlier_detection.h',
'src/core/load_balancing/pick_first/pick_first.h',
'src/core/load_balancing/ring_hash/ring_hash.h',
'src/core/load_balancing/subchannel_interface.h',
'src/core/load_balancing/subchannel_list.h',
'src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h',
'src/core/load_balancing/xds/xds_channel_args.h',
'src/core/load_balancing/xds/xds_override_host.h',
'src/core/resolver/dns/c_ares/dns_resolver_ares.h',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper.h',
'src/core/resolver/dns/dns_resolver_plugin.h',
'src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h',
'src/core/resolver/dns/event_engine/service_config_helper.h',
'src/core/resolver/dns/native/dns_resolver.h',
'src/core/resolver/endpoint_addresses.h',
'src/core/resolver/fake/fake_resolver.h',
'src/core/resolver/polling_resolver.h',
'src/core/resolver/resolver.h',
'src/core/resolver/resolver_factory.h',
'src/core/resolver/resolver_registry.h',
'src/core/resolver/server_address.h',
'src/core/resolver/xds/xds_dependency_manager.h',
'src/core/resolver/xds/xds_resolver_attributes.h',
'src/core/resolver/xds/xds_resolver_trace.h',
'src/core/service_config/service_config.h',
'src/core/service_config/service_config_call_data.h',
'src/core/service_config/service_config_impl.h',
'src/core/service_config/service_config_parser.h',
'src/core/tsi/alts/crypt/gsec.h',
'src/core/tsi/alts/frame_protector/alts_counter.h',
'src/core/tsi/alts/frame_protector/alts_crypter.h',

@ -21,7 +21,7 @@
Pod::Spec.new do |s|
s.name = 'gRPC-ProtoRPC'
version = '1.62.0-dev'
version = '1.63.0-dev'
s.version = version
s.summary = 'RPC library for Protocol Buffers, based on gRPC'
s.homepage = 'https://grpc.io'

@ -21,7 +21,7 @@
Pod::Spec.new do |s|
s.name = 'gRPC-RxLibrary'
version = '1.62.0-dev'
version = '1.63.0-dev'
s.version = version
s.summary = 'Reactive Extensions library for iOS/OSX.'
s.homepage = 'https://grpc.io'

2
gRPC.podspec generated

@ -20,7 +20,7 @@
Pod::Spec.new do |s|
s.name = 'gRPC'
version = '1.62.0-dev'
version = '1.63.0-dev'
s.version = version
s.summary = 'gRPC client library for iOS/OSX'
s.homepage = 'https://grpc.io'

1
grpc.def generated

@ -41,7 +41,6 @@ EXPORTS
grpc_completion_queue_thread_local_cache_init
grpc_completion_queue_thread_local_cache_flush
grpc_channel_check_connectivity_state
grpc_channel_num_external_connectivity_watchers
grpc_channel_watch_connectivity_state
grpc_channel_support_connectivity_watcher
grpc_channel_create_call

351
grpc.gemspec generated

@ -121,6 +121,48 @@ Gem::Specification.new do |s|
s.files += %w( include/grpc/support/thd_id.h )
s.files += %w( include/grpc/support/time.h )
s.files += %w( include/grpc/support/workaround_list.h )
s.files += %w( src/core/client_channel/backend_metric.cc )
s.files += %w( src/core/client_channel/backend_metric.h )
s.files += %w( src/core/client_channel/backup_poller.cc )
s.files += %w( src/core/client_channel/backup_poller.h )
s.files += %w( src/core/client_channel/channel_connectivity.cc )
s.files += %w( src/core/client_channel/client_channel_channelz.cc )
s.files += %w( src/core/client_channel/client_channel_channelz.h )
s.files += %w( src/core/client_channel/client_channel_factory.cc )
s.files += %w( src/core/client_channel/client_channel_factory.h )
s.files += %w( src/core/client_channel/client_channel_filter.cc )
s.files += %w( src/core/client_channel/client_channel_filter.h )
s.files += %w( src/core/client_channel/client_channel_internal.h )
s.files += %w( src/core/client_channel/client_channel_plugin.cc )
s.files += %w( src/core/client_channel/client_channel_service_config.cc )
s.files += %w( src/core/client_channel/client_channel_service_config.h )
s.files += %w( src/core/client_channel/config_selector.cc )
s.files += %w( src/core/client_channel/config_selector.h )
s.files += %w( src/core/client_channel/connector.h )
s.files += %w( src/core/client_channel/dynamic_filters.cc )
s.files += %w( src/core/client_channel/dynamic_filters.h )
s.files += %w( src/core/client_channel/global_subchannel_pool.cc )
s.files += %w( src/core/client_channel/global_subchannel_pool.h )
s.files += %w( src/core/client_channel/http_proxy_mapper.cc )
s.files += %w( src/core/client_channel/http_proxy_mapper.h )
s.files += %w( src/core/client_channel/local_subchannel_pool.cc )
s.files += %w( src/core/client_channel/local_subchannel_pool.h )
s.files += %w( src/core/client_channel/retry_filter.cc )
s.files += %w( src/core/client_channel/retry_filter.h )
s.files += %w( src/core/client_channel/retry_filter_legacy_call_data.cc )
s.files += %w( src/core/client_channel/retry_filter_legacy_call_data.h )
s.files += %w( src/core/client_channel/retry_service_config.cc )
s.files += %w( src/core/client_channel/retry_service_config.h )
s.files += %w( src/core/client_channel/retry_throttle.cc )
s.files += %w( src/core/client_channel/retry_throttle.h )
s.files += %w( src/core/client_channel/service_config_channel_arg_filter.cc )
s.files += %w( src/core/client_channel/subchannel.cc )
s.files += %w( src/core/client_channel/subchannel.h )
s.files += %w( src/core/client_channel/subchannel_interface_internal.h )
s.files += %w( src/core/client_channel/subchannel_pool_interface.cc )
s.files += %w( src/core/client_channel/subchannel_pool_interface.h )
s.files += %w( src/core/client_channel/subchannel_stream_client.cc )
s.files += %w( src/core/client_channel/subchannel_stream_client.h )
s.files += %w( src/core/ext/filters/backend_metrics/backend_metric_filter.cc )
s.files += %w( src/core/ext/filters/backend_metrics/backend_metric_filter.h )
s.files += %w( src/core/ext/filters/backend_metrics/backend_metric_provider.h )
@ -131,122 +173,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/ext/filters/channel_idle/idle_filter_state.h )
s.files += %w( src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc )
s.files += %w( src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h )
s.files += %w( src/core/ext/filters/client_channel/backend_metric.cc )
s.files += %w( src/core/ext/filters/client_channel/backend_metric.h )
s.files += %w( src/core/ext/filters/client_channel/backup_poller.cc )
s.files += %w( src/core/ext/filters/client_channel/backup_poller.h )
s.files += %w( src/core/ext/filters/client_channel/channel_connectivity.cc )
s.files += %w( src/core/ext/filters/client_channel/client_channel.cc )
s.files += %w( src/core/ext/filters/client_channel/client_channel.h )
s.files += %w( src/core/ext/filters/client_channel/client_channel_channelz.cc )
s.files += %w( src/core/ext/filters/client_channel/client_channel_channelz.h )
s.files += %w( src/core/ext/filters/client_channel/client_channel_factory.cc )
s.files += %w( src/core/ext/filters/client_channel/client_channel_factory.h )
s.files += %w( src/core/ext/filters/client_channel/client_channel_internal.h )
s.files += %w( src/core/ext/filters/client_channel/client_channel_plugin.cc )
s.files += %w( src/core/ext/filters/client_channel/client_channel_service_config.cc )
s.files += %w( src/core/ext/filters/client_channel/client_channel_service_config.h )
s.files += %w( src/core/ext/filters/client_channel/config_selector.cc )
s.files += %w( src/core/ext/filters/client_channel/config_selector.h )
s.files += %w( src/core/ext/filters/client_channel/connector.h )
s.files += %w( src/core/ext/filters/client_channel/dynamic_filters.cc )
s.files += %w( src/core/ext/filters/client_channel/dynamic_filters.h )
s.files += %w( src/core/ext/filters/client_channel/global_subchannel_pool.cc )
s.files += %w( src/core/ext/filters/client_channel/global_subchannel_pool.h )
s.files += %w( src/core/ext/filters/client_channel/http_proxy_mapper.cc )
s.files += %w( src/core/ext/filters/client_channel/http_proxy_mapper.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/address_filtering.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/address_filtering.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/endpoint_list.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/health_check_client.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/health_check_client.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/priority/priority.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/rls/rls.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/subchannel_list.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/cds.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h )
s.files += %w( src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc )
s.files += %w( src/core/ext/filters/client_channel/local_subchannel_pool.cc )
s.files += %w( src/core/ext/filters/client_channel/local_subchannel_pool.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/polling_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/polling_resolver.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h )
s.files += %w( src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc )
s.files += %w( src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h )
s.files += %w( src/core/ext/filters/client_channel/retry_filter.cc )
s.files += %w( src/core/ext/filters/client_channel/retry_filter.h )
s.files += %w( src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc )
s.files += %w( src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h )
s.files += %w( src/core/ext/filters/client_channel/retry_service_config.cc )
s.files += %w( src/core/ext/filters/client_channel/retry_service_config.h )
s.files += %w( src/core/ext/filters/client_channel/retry_throttle.cc )
s.files += %w( src/core/ext/filters/client_channel/retry_throttle.h )
s.files += %w( src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc )
s.files += %w( src/core/ext/filters/client_channel/subchannel.cc )
s.files += %w( src/core/ext/filters/client_channel/subchannel.h )
s.files += %w( src/core/ext/filters/client_channel/subchannel_interface_internal.h )
s.files += %w( src/core/ext/filters/client_channel/subchannel_pool_interface.cc )
s.files += %w( src/core/ext/filters/client_channel/subchannel_pool_interface.h )
s.files += %w( src/core/ext/filters/client_channel/subchannel_stream_client.cc )
s.files += %w( src/core/ext/filters/client_channel/subchannel_stream_client.h )
s.files += %w( src/core/ext/filters/deadline/deadline_filter.cc )
s.files += %w( src/core/ext/filters/deadline/deadline_filter.h )
s.files += %w( src/core/ext/filters/fault_injection/fault_injection_filter.cc )
@ -1413,7 +1339,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/gpr/windows/sync.cc )
s.files += %w( src/core/lib/gpr/windows/time.cc )
s.files += %w( src/core/lib/gpr/windows/tmpfile.cc )
s.files += %w( src/core/lib/gpr/wrap_memcpy.cc )
s.files += %w( src/core/lib/gprpp/atomic_utils.h )
s.files += %w( src/core/lib/gprpp/bitset.h )
s.files += %w( src/core/lib/gprpp/chunked_vector.h )
@ -1560,8 +1485,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/iomgr/iomgr_posix.cc )
s.files += %w( src/core/lib/iomgr/iomgr_posix_cfstream.cc )
s.files += %w( src/core/lib/iomgr/iomgr_windows.cc )
s.files += %w( src/core/lib/iomgr/load_file.cc )
s.files += %w( src/core/lib/iomgr/load_file.h )
s.files += %w( src/core/lib/iomgr/lockfree_event.cc )
s.files += %w( src/core/lib/iomgr/lockfree_event.h )
s.files += %w( src/core/lib/iomgr/nameser.h )
@ -1651,13 +1574,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/json/json_util.h )
s.files += %w( src/core/lib/json/json_writer.cc )
s.files += %w( src/core/lib/json/json_writer.h )
s.files += %w( src/core/lib/load_balancing/delegating_helper.h )
s.files += %w( src/core/lib/load_balancing/lb_policy.cc )
s.files += %w( src/core/lib/load_balancing/lb_policy.h )
s.files += %w( src/core/lib/load_balancing/lb_policy_factory.h )
s.files += %w( src/core/lib/load_balancing/lb_policy_registry.cc )
s.files += %w( src/core/lib/load_balancing/lb_policy_registry.h )
s.files += %w( src/core/lib/load_balancing/subchannel_interface.h )
s.files += %w( src/core/lib/matchers/matchers.cc )
s.files += %w( src/core/lib/matchers/matchers.h )
s.files += %w( src/core/lib/promise/activity.cc )
@ -1694,14 +1610,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/promise/trace.h )
s.files += %w( src/core/lib/promise/try_join.h )
s.files += %w( src/core/lib/promise/try_seq.h )
s.files += %w( src/core/lib/resolver/endpoint_addresses.cc )
s.files += %w( src/core/lib/resolver/endpoint_addresses.h )
s.files += %w( src/core/lib/resolver/resolver.cc )
s.files += %w( src/core/lib/resolver/resolver.h )
s.files += %w( src/core/lib/resolver/resolver_factory.h )
s.files += %w( src/core/lib/resolver/resolver_registry.cc )
s.files += %w( src/core/lib/resolver/resolver_registry.h )
s.files += %w( src/core/lib/resolver/server_address.h )
s.files += %w( src/core/lib/resource_quota/api.cc )
s.files += %w( src/core/lib/resource_quota/api.h )
s.files += %w( src/core/lib/resource_quota/arena.cc )
@ -1839,12 +1747,6 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/security/transport/tsi_error.h )
s.files += %w( src/core/lib/security/util/json_util.cc )
s.files += %w( src/core/lib/security/util/json_util.h )
s.files += %w( src/core/lib/service_config/service_config.h )
s.files += %w( src/core/lib/service_config/service_config_call_data.h )
s.files += %w( src/core/lib/service_config/service_config_impl.cc )
s.files += %w( src/core/lib/service_config/service_config_impl.h )
s.files += %w( src/core/lib/service_config/service_config_parser.cc )
s.files += %w( src/core/lib/service_config/service_config_parser.h )
s.files += %w( src/core/lib/slice/b64.cc )
s.files += %w( src/core/lib/slice/b64.h )
s.files += %w( src/core/lib/slice/percent_encoding.cc )
@ -1896,11 +1798,14 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/surface/validate_metadata.cc )
s.files += %w( src/core/lib/surface/validate_metadata.h )
s.files += %w( src/core/lib/surface/version.cc )
s.files += %w( src/core/lib/surface/wait_for_cq_end_op.cc )
s.files += %w( src/core/lib/surface/wait_for_cq_end_op.h )
s.files += %w( src/core/lib/transport/batch_builder.cc )
s.files += %w( src/core/lib/transport/batch_builder.h )
s.files += %w( src/core/lib/transport/bdp_estimator.cc )
s.files += %w( src/core/lib/transport/bdp_estimator.h )
s.files += %w( src/core/lib/transport/call_factory.cc )
s.files += %w( src/core/lib/transport/call_factory.h )
s.files += %w( src/core/lib/transport/call_filters.cc )
s.files += %w( src/core/lib/transport/call_filters.h )
s.files += %w( src/core/lib/transport/call_final_info.cc )
@ -1944,8 +1849,103 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/transport/transport_op_string.cc )
s.files += %w( src/core/lib/uri/uri_parser.cc )
s.files += %w( src/core/lib/uri/uri_parser.h )
s.files += %w( src/core/load_balancing/address_filtering.cc )
s.files += %w( src/core/load_balancing/address_filtering.h )
s.files += %w( src/core/load_balancing/backend_metric_data.h )
s.files += %w( src/core/load_balancing/child_policy_handler.cc )
s.files += %w( src/core/load_balancing/child_policy_handler.h )
s.files += %w( src/core/load_balancing/delegating_helper.h )
s.files += %w( src/core/load_balancing/endpoint_list.cc )
s.files += %w( src/core/load_balancing/endpoint_list.h )
s.files += %w( src/core/load_balancing/grpclb/client_load_reporting_filter.cc )
s.files += %w( src/core/load_balancing/grpclb/client_load_reporting_filter.h )
s.files += %w( src/core/load_balancing/grpclb/grpclb.cc )
s.files += %w( src/core/load_balancing/grpclb/grpclb.h )
s.files += %w( src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc )
s.files += %w( src/core/load_balancing/grpclb/grpclb_balancer_addresses.h )
s.files += %w( src/core/load_balancing/grpclb/grpclb_client_stats.cc )
s.files += %w( src/core/load_balancing/grpclb/grpclb_client_stats.h )
s.files += %w( src/core/load_balancing/grpclb/load_balancer_api.cc )
s.files += %w( src/core/load_balancing/grpclb/load_balancer_api.h )
s.files += %w( src/core/load_balancing/health_check_client.cc )
s.files += %w( src/core/load_balancing/health_check_client.h )
s.files += %w( src/core/load_balancing/health_check_client_internal.h )
s.files += %w( src/core/load_balancing/lb_policy.cc )
s.files += %w( src/core/load_balancing/lb_policy.h )
s.files += %w( src/core/load_balancing/lb_policy_factory.h )
s.files += %w( src/core/load_balancing/lb_policy_registry.cc )
s.files += %w( src/core/load_balancing/lb_policy_registry.h )
s.files += %w( src/core/load_balancing/oob_backend_metric.cc )
s.files += %w( src/core/load_balancing/oob_backend_metric.h )
s.files += %w( src/core/load_balancing/oob_backend_metric_internal.h )
s.files += %w( src/core/load_balancing/outlier_detection/outlier_detection.cc )
s.files += %w( src/core/load_balancing/outlier_detection/outlier_detection.h )
s.files += %w( src/core/load_balancing/pick_first/pick_first.cc )
s.files += %w( src/core/load_balancing/pick_first/pick_first.h )
s.files += %w( src/core/load_balancing/priority/priority.cc )
s.files += %w( src/core/load_balancing/ring_hash/ring_hash.cc )
s.files += %w( src/core/load_balancing/ring_hash/ring_hash.h )
s.files += %w( src/core/load_balancing/rls/rls.cc )
s.files += %w( src/core/load_balancing/round_robin/round_robin.cc )
s.files += %w( src/core/load_balancing/subchannel_interface.h )
s.files += %w( src/core/load_balancing/subchannel_list.h )
s.files += %w( src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc )
s.files += %w( src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h )
s.files += %w( src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc )
s.files += %w( src/core/load_balancing/weighted_target/weighted_target.cc )
s.files += %w( src/core/load_balancing/xds/cds.cc )
s.files += %w( src/core/load_balancing/xds/xds_channel_args.h )
s.files += %w( src/core/load_balancing/xds/xds_cluster_impl.cc )
s.files += %w( src/core/load_balancing/xds/xds_cluster_manager.cc )
s.files += %w( src/core/load_balancing/xds/xds_override_host.cc )
s.files += %w( src/core/load_balancing/xds/xds_override_host.h )
s.files += %w( src/core/load_balancing/xds/xds_wrr_locality.cc )
s.files += %w( src/core/plugin_registry/grpc_plugin_registry.cc )
s.files += %w( src/core/plugin_registry/grpc_plugin_registry_extra.cc )
s.files += %w( src/core/resolver/binder/binder_resolver.cc )
s.files += %w( src/core/resolver/dns/c_ares/dns_resolver_ares.cc )
s.files += %w( src/core/resolver/dns/c_ares/dns_resolver_ares.h )
s.files += %w( src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h )
s.files += %w( src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc )
s.files += %w( src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc )
s.files += %w( src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc )
s.files += %w( src/core/resolver/dns/c_ares/grpc_ares_wrapper.h )
s.files += %w( src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc )
s.files += %w( src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc )
s.files += %w( src/core/resolver/dns/dns_resolver_plugin.cc )
s.files += %w( src/core/resolver/dns/dns_resolver_plugin.h )
s.files += %w( src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc )
s.files += %w( src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h )
s.files += %w( src/core/resolver/dns/event_engine/service_config_helper.cc )
s.files += %w( src/core/resolver/dns/event_engine/service_config_helper.h )
s.files += %w( src/core/resolver/dns/native/dns_resolver.cc )
s.files += %w( src/core/resolver/dns/native/dns_resolver.h )
s.files += %w( src/core/resolver/endpoint_addresses.cc )
s.files += %w( src/core/resolver/endpoint_addresses.h )
s.files += %w( src/core/resolver/fake/fake_resolver.cc )
s.files += %w( src/core/resolver/fake/fake_resolver.h )
s.files += %w( src/core/resolver/google_c2p/google_c2p_resolver.cc )
s.files += %w( src/core/resolver/polling_resolver.cc )
s.files += %w( src/core/resolver/polling_resolver.h )
s.files += %w( src/core/resolver/resolver.cc )
s.files += %w( src/core/resolver/resolver.h )
s.files += %w( src/core/resolver/resolver_factory.h )
s.files += %w( src/core/resolver/resolver_registry.cc )
s.files += %w( src/core/resolver/resolver_registry.h )
s.files += %w( src/core/resolver/server_address.h )
s.files += %w( src/core/resolver/sockaddr/sockaddr_resolver.cc )
s.files += %w( src/core/resolver/xds/xds_dependency_manager.cc )
s.files += %w( src/core/resolver/xds/xds_dependency_manager.h )
s.files += %w( src/core/resolver/xds/xds_resolver.cc )
s.files += %w( src/core/resolver/xds/xds_resolver_attributes.h )
s.files += %w( src/core/resolver/xds/xds_resolver_trace.cc )
s.files += %w( src/core/resolver/xds/xds_resolver_trace.h )
s.files += %w( src/core/service_config/service_config.h )
s.files += %w( src/core/service_config/service_config_call_data.h )
s.files += %w( src/core/service_config/service_config_impl.cc )
s.files += %w( src/core/service_config/service_config_impl.h )
s.files += %w( src/core/service_config/service_config_parser.cc )
s.files += %w( src/core/service_config/service_config_parser.h )
s.files += %w( src/core/tsi/alts/crypt/aes_gcm.cc )
s.files += %w( src/core/tsi/alts/crypt/gsec.cc )
s.files += %w( src/core/tsi/alts/crypt/gsec.h )
@ -2629,8 +2629,9 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/hrss/internal.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/internal.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/keccak/internal.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/kyber/internal.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/lhash/internal.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c )
@ -2674,6 +2675,21 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/address.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/address.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/fors.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/fors.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/internal.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/merkle.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/merkle.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/params.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/spx.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/spx_util.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/thash.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/thash.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/wots.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/spx/wots.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/stack/stack.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/thread.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/thread_none.c )
@ -2690,6 +2706,7 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/by_file.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/ext_dat.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/internal.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/name_print.c )
@ -2699,6 +2716,29 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/t_req.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x509.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c )
@ -2723,9 +2763,7 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_info.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_name.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_req.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c )
@ -2733,31 +2771,6 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_val.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/ext_dat.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akeya.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bcons.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_extku.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_int.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ocsp.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcons.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pmaps.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c )
s.files += %w( third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/aead.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/aes.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h )
@ -2822,6 +2835,7 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/poly1305.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/pool.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/posix_time.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/rand.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/rc4.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/ripemd.h )
@ -2844,6 +2858,7 @@ Gem::Specification.new do |s|
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/x509.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/x509v3.h )
s.files += %w( third_party/boringssl-with-bazel/src/include/openssl/x509v3_errors.h )
s.files += %w( third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc )
s.files += %w( third_party/boringssl-with-bazel/src/ssl/d1_both.cc )
s.files += %w( third_party/boringssl-with-bazel/src/ssl/d1_lib.cc )

339
grpc.gyp generated

@ -227,7 +227,6 @@
'src/core/lib/gpr/windows/sync.cc',
'src/core/lib/gpr/windows/time.cc',
'src/core/lib/gpr/windows/tmpfile.cc',
'src/core/lib/gpr/wrap_memcpy.cc',
'src/core/lib/gprpp/crash.cc',
'src/core/lib/gprpp/examine_stack.cc',
'src/core/lib/gprpp/fork.cc',
@ -273,74 +272,32 @@
'address_sorting',
],
'sources': [
'src/core/client_channel/backend_metric.cc',
'src/core/client_channel/backup_poller.cc',
'src/core/client_channel/channel_connectivity.cc',
'src/core/client_channel/client_channel_channelz.cc',
'src/core/client_channel/client_channel_factory.cc',
'src/core/client_channel/client_channel_filter.cc',
'src/core/client_channel/client_channel_plugin.cc',
'src/core/client_channel/client_channel_service_config.cc',
'src/core/client_channel/config_selector.cc',
'src/core/client_channel/dynamic_filters.cc',
'src/core/client_channel/global_subchannel_pool.cc',
'src/core/client_channel/http_proxy_mapper.cc',
'src/core/client_channel/local_subchannel_pool.cc',
'src/core/client_channel/retry_filter.cc',
'src/core/client_channel/retry_filter_legacy_call_data.cc',
'src/core/client_channel/retry_service_config.cc',
'src/core/client_channel/retry_throttle.cc',
'src/core/client_channel/service_config_channel_arg_filter.cc',
'src/core/client_channel/subchannel.cc',
'src/core/client_channel/subchannel_pool_interface.cc',
'src/core/client_channel/subchannel_stream_client.cc',
'src/core/ext/filters/backend_metrics/backend_metric_filter.cc',
'src/core/ext/filters/census/grpc_context.cc',
'src/core/ext/filters/channel_idle/channel_idle_filter.cc',
'src/core/ext/filters/channel_idle/idle_filter_state.cc',
'src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc',
'src/core/ext/filters/client_channel/client_channel_channelz.cc',
'src/core/ext/filters/client_channel/client_channel_factory.cc',
'src/core/ext/filters/client_channel/client_channel_plugin.cc',
'src/core/ext/filters/client_channel/client_channel_service_config.cc',
'src/core/ext/filters/client_channel/config_selector.cc',
'src/core/ext/filters/client_channel/dynamic_filters.cc',
'src/core/ext/filters/client_channel/global_subchannel_pool.cc',
'src/core/ext/filters/client_channel/http_proxy_mapper.cc',
'src/core/ext/filters/client_channel/lb_policy/address_filtering.cc',
'src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc',
'src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc',
'src/core/ext/filters/client_channel/lb_policy/health_check_client.cc',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc',
'src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc',
'src/core/ext/filters/client_channel/lb_policy/priority/priority.cc',
'src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc',
'src/core/ext/filters/client_channel/lb_policy/rls/rls.cc',
'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc',
'src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/cds.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc',
'src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc',
'src/core/ext/filters/client_channel/local_subchannel_pool.cc',
'src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc',
'src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc',
'src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc',
'src/core/ext/filters/client_channel/resolver/polling_resolver.cc',
'src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc',
'src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc',
'src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc',
'src/core/ext/filters/client_channel/retry_filter.cc',
'src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc',
'src/core/ext/filters/client_channel/retry_service_config.cc',
'src/core/ext/filters/client_channel/retry_throttle.cc',
'src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc',
'src/core/ext/filters/client_channel/subchannel.cc',
'src/core/ext/filters/client_channel/subchannel_pool_interface.cc',
'src/core/ext/filters/client_channel/subchannel_stream_client.cc',
'src/core/ext/filters/deadline/deadline_filter.cc',
'src/core/ext/filters/fault_injection/fault_injection_filter.cc',
'src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc',
@ -862,7 +819,6 @@
'src/core/lib/iomgr/iomgr_posix.cc',
'src/core/lib/iomgr/iomgr_posix_cfstream.cc',
'src/core/lib/iomgr/iomgr_windows.cc',
'src/core/lib/iomgr/load_file.cc',
'src/core/lib/iomgr/lockfree_event.cc',
'src/core/lib/iomgr/polling_entity.cc',
'src/core/lib/iomgr/pollset.cc',
@ -908,16 +864,11 @@
'src/core/lib/json/json_reader.cc',
'src/core/lib/json/json_util.cc',
'src/core/lib/json/json_writer.cc',
'src/core/lib/load_balancing/lb_policy.cc',
'src/core/lib/load_balancing/lb_policy_registry.cc',
'src/core/lib/matchers/matchers.cc',
'src/core/lib/promise/activity.cc',
'src/core/lib/promise/party.cc',
'src/core/lib/promise/sleep.cc',
'src/core/lib/promise/trace.cc',
'src/core/lib/resolver/endpoint_addresses.cc',
'src/core/lib/resolver/resolver.cc',
'src/core/lib/resolver/resolver_registry.cc',
'src/core/lib/resource_quota/api.cc',
'src/core/lib/resource_quota/arena.cc',
'src/core/lib/resource_quota/memory_quota.cc',
@ -990,8 +941,6 @@
'src/core/lib/security/transport/server_auth_filter.cc',
'src/core/lib/security/transport/tsi_error.cc',
'src/core/lib/security/util/json_util.cc',
'src/core/lib/service_config/service_config_impl.cc',
'src/core/lib/service_config/service_config_parser.cc',
'src/core/lib/slice/b64.cc',
'src/core/lib/slice/percent_encoding.cc',
'src/core/lib/slice/slice.cc',
@ -1020,8 +969,10 @@
'src/core/lib/surface/server.cc',
'src/core/lib/surface/validate_metadata.cc',
'src/core/lib/surface/version.cc',
'src/core/lib/surface/wait_for_cq_end_op.cc',
'src/core/lib/transport/batch_builder.cc',
'src/core/lib/transport/bdp_estimator.cc',
'src/core/lib/transport/call_factory.cc',
'src/core/lib/transport/call_filters.cc',
'src/core/lib/transport/call_final_info.cc',
'src/core/lib/transport/call_size_estimator.cc',
@ -1041,8 +992,57 @@
'src/core/lib/transport/transport.cc',
'src/core/lib/transport/transport_op_string.cc',
'src/core/lib/uri/uri_parser.cc',
'src/core/load_balancing/address_filtering.cc',
'src/core/load_balancing/child_policy_handler.cc',
'src/core/load_balancing/endpoint_list.cc',
'src/core/load_balancing/grpclb/client_load_reporting_filter.cc',
'src/core/load_balancing/grpclb/grpclb.cc',
'src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc',
'src/core/load_balancing/grpclb/grpclb_client_stats.cc',
'src/core/load_balancing/grpclb/load_balancer_api.cc',
'src/core/load_balancing/health_check_client.cc',
'src/core/load_balancing/lb_policy.cc',
'src/core/load_balancing/lb_policy_registry.cc',
'src/core/load_balancing/oob_backend_metric.cc',
'src/core/load_balancing/outlier_detection/outlier_detection.cc',
'src/core/load_balancing/pick_first/pick_first.cc',
'src/core/load_balancing/priority/priority.cc',
'src/core/load_balancing/ring_hash/ring_hash.cc',
'src/core/load_balancing/rls/rls.cc',
'src/core/load_balancing/round_robin/round_robin.cc',
'src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc',
'src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc',
'src/core/load_balancing/weighted_target/weighted_target.cc',
'src/core/load_balancing/xds/cds.cc',
'src/core/load_balancing/xds/xds_cluster_impl.cc',
'src/core/load_balancing/xds/xds_cluster_manager.cc',
'src/core/load_balancing/xds/xds_override_host.cc',
'src/core/load_balancing/xds/xds_wrr_locality.cc',
'src/core/plugin_registry/grpc_plugin_registry.cc',
'src/core/plugin_registry/grpc_plugin_registry_extra.cc',
'src/core/resolver/binder/binder_resolver.cc',
'src/core/resolver/dns/c_ares/dns_resolver_ares.cc',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc',
'src/core/resolver/dns/dns_resolver_plugin.cc',
'src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc',
'src/core/resolver/dns/event_engine/service_config_helper.cc',
'src/core/resolver/dns/native/dns_resolver.cc',
'src/core/resolver/endpoint_addresses.cc',
'src/core/resolver/fake/fake_resolver.cc',
'src/core/resolver/google_c2p/google_c2p_resolver.cc',
'src/core/resolver/polling_resolver.cc',
'src/core/resolver/resolver.cc',
'src/core/resolver/resolver_registry.cc',
'src/core/resolver/sockaddr/sockaddr_resolver.cc',
'src/core/resolver/xds/xds_dependency_manager.cc',
'src/core/resolver/xds/xds_resolver.cc',
'src/core/resolver/xds/xds_resolver_trace.cc',
'src/core/service_config/service_config_impl.cc',
'src/core/service_config/service_config_parser.cc',
'src/core/tsi/alts/crypt/aes_gcm.cc',
'src/core/tsi/alts/crypt/gsec.cc',
'src/core/tsi/alts/frame_protector/alts_counter.cc',
@ -1144,64 +1144,32 @@
'address_sorting',
],
'sources': [
'src/core/client_channel/backend_metric.cc',
'src/core/client_channel/backup_poller.cc',
'src/core/client_channel/channel_connectivity.cc',
'src/core/client_channel/client_channel_channelz.cc',
'src/core/client_channel/client_channel_factory.cc',
'src/core/client_channel/client_channel_filter.cc',
'src/core/client_channel/client_channel_plugin.cc',
'src/core/client_channel/client_channel_service_config.cc',
'src/core/client_channel/config_selector.cc',
'src/core/client_channel/dynamic_filters.cc',
'src/core/client_channel/global_subchannel_pool.cc',
'src/core/client_channel/http_proxy_mapper.cc',
'src/core/client_channel/local_subchannel_pool.cc',
'src/core/client_channel/retry_filter.cc',
'src/core/client_channel/retry_filter_legacy_call_data.cc',
'src/core/client_channel/retry_service_config.cc',
'src/core/client_channel/retry_throttle.cc',
'src/core/client_channel/service_config_channel_arg_filter.cc',
'src/core/client_channel/subchannel.cc',
'src/core/client_channel/subchannel_pool_interface.cc',
'src/core/client_channel/subchannel_stream_client.cc',
'src/core/ext/filters/backend_metrics/backend_metric_filter.cc',
'src/core/ext/filters/census/grpc_context.cc',
'src/core/ext/filters/channel_idle/channel_idle_filter.cc',
'src/core/ext/filters/channel_idle/idle_filter_state.cc',
'src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc',
'src/core/ext/filters/client_channel/backend_metric.cc',
'src/core/ext/filters/client_channel/backup_poller.cc',
'src/core/ext/filters/client_channel/channel_connectivity.cc',
'src/core/ext/filters/client_channel/client_channel.cc',
'src/core/ext/filters/client_channel/client_channel_channelz.cc',
'src/core/ext/filters/client_channel/client_channel_factory.cc',
'src/core/ext/filters/client_channel/client_channel_plugin.cc',
'src/core/ext/filters/client_channel/client_channel_service_config.cc',
'src/core/ext/filters/client_channel/config_selector.cc',
'src/core/ext/filters/client_channel/dynamic_filters.cc',
'src/core/ext/filters/client_channel/global_subchannel_pool.cc',
'src/core/ext/filters/client_channel/http_proxy_mapper.cc',
'src/core/ext/filters/client_channel/lb_policy/address_filtering.cc',
'src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc',
'src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc',
'src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc',
'src/core/ext/filters/client_channel/lb_policy/health_check_client.cc',
'src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc',
'src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc',
'src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc',
'src/core/ext/filters/client_channel/lb_policy/priority/priority.cc',
'src/core/ext/filters/client_channel/lb_policy/rls/rls.cc',
'src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc',
'src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc',
'src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc',
'src/core/ext/filters/client_channel/local_subchannel_pool.cc',
'src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc',
'src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc',
'src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc',
'src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc',
'src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc',
'src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc',
'src/core/ext/filters/client_channel/resolver/polling_resolver.cc',
'src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc',
'src/core/ext/filters/client_channel/retry_filter.cc',
'src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc',
'src/core/ext/filters/client_channel/retry_service_config.cc',
'src/core/ext/filters/client_channel/retry_throttle.cc',
'src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc',
'src/core/ext/filters/client_channel/subchannel.cc',
'src/core/ext/filters/client_channel/subchannel_pool_interface.cc',
'src/core/ext/filters/client_channel/subchannel_stream_client.cc',
'src/core/ext/filters/deadline/deadline_filter.cc',
'src/core/ext/filters/fault_injection/fault_injection_filter.cc',
'src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc',
@ -1389,7 +1357,6 @@
'src/core/lib/iomgr/iomgr_posix.cc',
'src/core/lib/iomgr/iomgr_posix_cfstream.cc',
'src/core/lib/iomgr/iomgr_windows.cc',
'src/core/lib/iomgr/load_file.cc',
'src/core/lib/iomgr/lockfree_event.cc',
'src/core/lib/iomgr/polling_entity.cc',
'src/core/lib/iomgr/pollset.cc',
@ -1434,15 +1401,10 @@
'src/core/lib/json/json_object_loader.cc',
'src/core/lib/json/json_reader.cc',
'src/core/lib/json/json_writer.cc',
'src/core/lib/load_balancing/lb_policy.cc',
'src/core/lib/load_balancing/lb_policy_registry.cc',
'src/core/lib/promise/activity.cc',
'src/core/lib/promise/party.cc',
'src/core/lib/promise/sleep.cc',
'src/core/lib/promise/trace.cc',
'src/core/lib/resolver/endpoint_addresses.cc',
'src/core/lib/resolver/resolver.cc',
'src/core/lib/resolver/resolver_registry.cc',
'src/core/lib/resource_quota/api.cc',
'src/core/lib/resource_quota/arena.cc',
'src/core/lib/resource_quota/memory_quota.cc',
@ -1481,8 +1443,6 @@
'src/core/lib/security/transport/server_auth_filter.cc',
'src/core/lib/security/transport/tsi_error.cc',
'src/core/lib/security/util/json_util.cc',
'src/core/lib/service_config/service_config_impl.cc',
'src/core/lib/service_config/service_config_parser.cc',
'src/core/lib/slice/b64.cc',
'src/core/lib/slice/percent_encoding.cc',
'src/core/lib/slice/slice.cc',
@ -1511,8 +1471,10 @@
'src/core/lib/surface/server.cc',
'src/core/lib/surface/validate_metadata.cc',
'src/core/lib/surface/version.cc',
'src/core/lib/surface/wait_for_cq_end_op.cc',
'src/core/lib/transport/batch_builder.cc',
'src/core/lib/transport/bdp_estimator.cc',
'src/core/lib/transport/call_factory.cc',
'src/core/lib/transport/call_filters.cc',
'src/core/lib/transport/call_final_info.cc',
'src/core/lib/transport/call_size_estimator.cc',
@ -1532,8 +1494,47 @@
'src/core/lib/transport/transport.cc',
'src/core/lib/transport/transport_op_string.cc',
'src/core/lib/uri/uri_parser.cc',
'src/core/load_balancing/address_filtering.cc',
'src/core/load_balancing/child_policy_handler.cc',
'src/core/load_balancing/endpoint_list.cc',
'src/core/load_balancing/grpclb/client_load_reporting_filter.cc',
'src/core/load_balancing/grpclb/grpclb.cc',
'src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc',
'src/core/load_balancing/grpclb/grpclb_client_stats.cc',
'src/core/load_balancing/grpclb/load_balancer_api.cc',
'src/core/load_balancing/health_check_client.cc',
'src/core/load_balancing/lb_policy.cc',
'src/core/load_balancing/lb_policy_registry.cc',
'src/core/load_balancing/oob_backend_metric.cc',
'src/core/load_balancing/outlier_detection/outlier_detection.cc',
'src/core/load_balancing/pick_first/pick_first.cc',
'src/core/load_balancing/priority/priority.cc',
'src/core/load_balancing/rls/rls.cc',
'src/core/load_balancing/round_robin/round_robin.cc',
'src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc',
'src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc',
'src/core/load_balancing/weighted_target/weighted_target.cc',
'src/core/plugin_registry/grpc_plugin_registry.cc',
'src/core/plugin_registry/grpc_plugin_registry_noextra.cc',
'src/core/resolver/binder/binder_resolver.cc',
'src/core/resolver/dns/c_ares/dns_resolver_ares.cc',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc',
'src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc',
'src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc',
'src/core/resolver/dns/dns_resolver_plugin.cc',
'src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc',
'src/core/resolver/dns/event_engine/service_config_helper.cc',
'src/core/resolver/dns/native/dns_resolver.cc',
'src/core/resolver/endpoint_addresses.cc',
'src/core/resolver/fake/fake_resolver.cc',
'src/core/resolver/polling_resolver.cc',
'src/core/resolver/resolver.cc',
'src/core/resolver/resolver_registry.cc',
'src/core/resolver/sockaddr/sockaddr_resolver.cc',
'src/core/service_config/service_config_impl.cc',
'src/core/service_config/service_config_parser.cc',
'src/core/tsi/alts/handshaker/transport_security_common_api.cc',
'src/core/tsi/fake_transport_security.cc',
'src/core/tsi/local_transport_security.cc',
@ -2161,7 +2162,6 @@
'src/core/lib/iomgr/iomgr_posix.cc',
'src/core/lib/iomgr/iomgr_posix_cfstream.cc',
'src/core/lib/iomgr/iomgr_windows.cc',
'src/core/lib/iomgr/load_file.cc',
'src/core/lib/iomgr/lockfree_event.cc',
'src/core/lib/iomgr/polling_entity.cc',
'src/core/lib/iomgr/pollset.cc',
@ -2205,15 +2205,10 @@
'src/core/lib/iomgr/wakeup_fd_posix.cc',
'src/core/lib/json/json_reader.cc',
'src/core/lib/json/json_writer.cc',
'src/core/lib/load_balancing/lb_policy.cc',
'src/core/lib/load_balancing/lb_policy_registry.cc',
'src/core/lib/matchers/matchers.cc',
'src/core/lib/promise/activity.cc',
'src/core/lib/promise/party.cc',
'src/core/lib/promise/trace.cc',
'src/core/lib/resolver/endpoint_addresses.cc',
'src/core/lib/resolver/resolver.cc',
'src/core/lib/resolver/resolver_registry.cc',
'src/core/lib/resource_quota/api.cc',
'src/core/lib/resource_quota/arena.cc',
'src/core/lib/resource_quota/memory_quota.cc',
@ -2255,7 +2250,6 @@
'src/core/lib/security/transport/server_auth_filter.cc',
'src/core/lib/security/transport/tsi_error.cc',
'src/core/lib/security/util/json_util.cc',
'src/core/lib/service_config/service_config_parser.cc',
'src/core/lib/slice/b64.cc',
'src/core/lib/slice/percent_encoding.cc',
'src/core/lib/slice/slice.cc',
@ -2283,7 +2277,9 @@
'src/core/lib/surface/server.cc',
'src/core/lib/surface/validate_metadata.cc',
'src/core/lib/surface/version.cc',
'src/core/lib/surface/wait_for_cq_end_op.cc',
'src/core/lib/transport/batch_builder.cc',
'src/core/lib/transport/call_factory.cc',
'src/core/lib/transport/call_filters.cc',
'src/core/lib/transport/call_final_info.cc',
'src/core/lib/transport/call_size_estimator.cc',
@ -2301,6 +2297,12 @@
'src/core/lib/transport/transport.cc',
'src/core/lib/transport/transport_op_string.cc',
'src/core/lib/uri/uri_parser.cc',
'src/core/load_balancing/lb_policy.cc',
'src/core/load_balancing/lb_policy_registry.cc',
'src/core/resolver/endpoint_addresses.cc',
'src/core/resolver/resolver.cc',
'src/core/resolver/resolver_registry.cc',
'src/core/service_config/service_config_parser.cc',
'src/core/tsi/alts/handshaker/transport_security_common_api.cc',
'src/core/tsi/transport_security.cc',
'src/core/tsi/transport_security_grpc.cc',
@ -2463,7 +2465,7 @@
'third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c',
'third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c',
'third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c',
'third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c',
'third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c',
'third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c',
'third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c',
'third_party/boringssl-with-bazel/src/crypto/mem.c',
@ -2500,6 +2502,13 @@
'third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c',
'third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c',
'third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c',
'third_party/boringssl-with-bazel/src/crypto/spx/address.c',
'third_party/boringssl-with-bazel/src/crypto/spx/fors.c',
'third_party/boringssl-with-bazel/src/crypto/spx/merkle.c',
'third_party/boringssl-with-bazel/src/crypto/spx/spx.c',
'third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c',
'third_party/boringssl-with-bazel/src/crypto/spx/thash.c',
'third_party/boringssl-with-bazel/src/crypto/spx/wots.c',
'third_party/boringssl-with-bazel/src/crypto/stack/stack.c',
'third_party/boringssl-with-bazel/src/crypto/thread.c',
'third_party/boringssl-with-bazel/src/crypto/thread_none.c',
@ -2523,6 +2532,29 @@
'third_party/boringssl-with-bazel/src/crypto/x509/t_req.c',
'third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c',
'third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c',
'third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x509.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c',
@ -2547,9 +2579,7 @@
'third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_info.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_name.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_req.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c',
@ -2557,29 +2587,6 @@
'third_party/boringssl-with-bazel/src/crypto/x509/x_val.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c',
'third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akeya.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bcons.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_extku.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_int.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ocsp.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcons.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pmaps.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c',
'third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c',
'third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc',
'third_party/boringssl-with-bazel/src/ssl/d1_both.cc',
'third_party/boringssl-with-bazel/src/ssl/d1_lib.cc',

@ -177,12 +177,6 @@ GRPCAPI int grpc_completion_queue_thread_local_cache_flush(
GRPCAPI grpc_connectivity_state grpc_channel_check_connectivity_state(
grpc_channel* channel, int try_to_connect);
/** Number of active "external connectivity state watchers" attached to a
* channel.
* Useful for testing. **/
GRPCAPI int grpc_channel_num_external_connectivity_watchers(
grpc_channel* channel);
/** Watch for a change in connectivity state.
Once the channel connectivity state is different from last_observed_state,
tag will be enqueued on cq with success=1.

@ -26,7 +26,7 @@
#include "absl/functional/any_invocable.h"
#include "absl/status/statusor.h"
#include "absl/strings/string_view.h"
#include "opentelemetry/sdk/metrics/meter_provider.h"
#include "opentelemetry/metrics/meter_provider.h"
#include <grpcpp/ext/otel_plugin.h>
@ -36,11 +36,22 @@ namespace internal {
class OpenTelemetryPluginBuilderImpl;
} // namespace internal
namespace experimental {
// This object maintains state around the registered CsmObservability plugin.
// The application is responsible for retaining this object until it has closed
// all channels and servers that are recording metrics.
class CsmObservability {
public:
CsmObservability() = default;
~CsmObservability();
// Disable copy constructor and copy-assignment operator.
CsmObservability(const CsmObservability&) = delete;
CsmObservability& operator=(const CsmObservability&) = delete;
CsmObservability(CsmObservability&&) noexcept;
CsmObservability& operator=(CsmObservability&&) noexcept;
// This is a no-op at present, but in the future, this object would be useful
// for performing cleanup.
class CsmObservability {};
private:
bool valid_ = true;
};
// CsmObservabilityBuilder configures observability for all service mesh traffic
// for a binary running on CSM.
@ -49,8 +60,7 @@ class CsmObservabilityBuilder {
CsmObservabilityBuilder();
~CsmObservabilityBuilder();
CsmObservabilityBuilder& SetMeterProvider(
std::shared_ptr<opentelemetry::sdk::metrics::MeterProvider>
meter_provider);
std::shared_ptr<opentelemetry::metrics::MeterProvider> meter_provider);
// If set, \a target_attribute_filter is called per channel to decide whether
// to record the target attribute on client or to replace it with "other".
// This helps reduce the cardinality on metrics in cases where many channels
@ -90,17 +100,15 @@ class CsmObservabilityBuilder {
std::unique_ptr<grpc::internal::OpenTelemetryPluginBuilderImpl> builder_;
};
/// Creates an OpenTelemetryPluginOption that would add additional labels on
/// gRPC metrics to enhance observability for CSM users.
///
/// Sample Usage -
/// OpenTelemetryPluginBuilder()
/// .SetMeterProvider(provider)
/// .AddPluginOption(MakeCsmOpenTelemetryPluginOption())
/// .BuildAndRegisterGlobal();
std::unique_ptr<OpenTelemetryPluginOption> MakeCsmOpenTelemetryPluginOption();
namespace experimental {
// TODO(yashykt): Remove this once no longer needed.
using CsmObservability GRPC_DEPRECATED("Use grpc::CsmObservability instead.") =
grpc::CsmObservability;
using CsmObservabilityBuilder GRPC_DEPRECATED(
"Use grpc::CsmObservabilityBuilder instead.") =
grpc::CsmObservabilityBuilder;
} // namespace experimental
} // namespace grpc
#endif // GRPCPP_EXT_CSM_OBSERVABILITY_H

@ -19,9 +19,9 @@
#define GRPCPP_VERSION_INFO_H
#define GRPC_CPP_VERSION_MAJOR 1
#define GRPC_CPP_VERSION_MINOR 62
#define GRPC_CPP_VERSION_MINOR 63
#define GRPC_CPP_VERSION_PATCH 0
#define GRPC_CPP_VERSION_TAG "dev"
#define GRPC_CPP_VERSION_STRING "1.62.0-dev"
#define GRPC_CPP_VERSION_STRING "1.63.0-dev"
#endif // GRPCPP_VERSION_INFO_H

357
package.xml generated

@ -13,8 +13,8 @@
<date>2019-09-24</date>
<time>16:06:07</time>
<version>
<release>1.62.0dev</release>
<api>1.62.0dev</api>
<release>1.63.0dev</release>
<api>1.63.0dev</api>
</version>
<stability>
<release>beta</release>
@ -22,7 +22,7 @@
</stability>
<license>Apache 2.0</license>
<notes>
- gRPC Core 1.62.0 update
- gRPC Core 1.63.0 update
</notes>
<contents>
<dir baseinstalldir="/" name="/">
@ -103,6 +103,48 @@
<file baseinstalldir="/" name="include/grpc/support/thd_id.h" role="src" />
<file baseinstalldir="/" name="include/grpc/support/time.h" role="src" />
<file baseinstalldir="/" name="include/grpc/support/workaround_list.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/backend_metric.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/backend_metric.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/backup_poller.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/backup_poller.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/channel_connectivity.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_channelz.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_channelz.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_factory.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_internal.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_plugin.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_service_config.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/client_channel_service_config.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/config_selector.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/config_selector.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/connector.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/dynamic_filters.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/dynamic_filters.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/global_subchannel_pool.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/global_subchannel_pool.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/http_proxy_mapper.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/http_proxy_mapper.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/local_subchannel_pool.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/local_subchannel_pool.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/retry_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/retry_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/retry_filter_legacy_call_data.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/retry_filter_legacy_call_data.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/retry_service_config.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/retry_service_config.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/retry_throttle.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/retry_throttle.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/service_config_channel_arg_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/subchannel.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/subchannel.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/subchannel_interface_internal.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/subchannel_pool_interface.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/subchannel_pool_interface.h" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/subchannel_stream_client.cc" role="src" />
<file baseinstalldir="/" name="src/core/client_channel/subchannel_stream_client.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/backend_metrics/backend_metric_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/backend_metrics/backend_metric_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/backend_metrics/backend_metric_provider.h" role="src" />
@ -113,122 +155,6 @@
<file baseinstalldir="/" name="src/core/ext/filters/channel_idle/idle_filter_state.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/backend_metric.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/backend_metric.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/backup_poller.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/backup_poller.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/channel_connectivity.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_channelz.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_channelz.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_factory.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_internal.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_plugin.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_service_config.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/client_channel_service_config.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/config_selector.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/config_selector.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/connector.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/dynamic_filters.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/dynamic_filters.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/global_subchannel_pool.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/global_subchannel_pool.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/http_proxy_mapper.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/http_proxy_mapper.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/address_filtering.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/address_filtering.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/endpoint_list.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/health_check_client.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/health_check_client.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/priority/priority.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/rls/rls.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/subchannel_list.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/cds.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/local_subchannel_pool.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/local_subchannel_pool.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/polling_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/polling_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/retry_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/retry_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/retry_service_config.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/retry_service_config.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/retry_throttle.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/retry_throttle.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_interface_internal.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_pool_interface.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_pool_interface.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_stream_client.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/client_channel/subchannel_stream_client.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/deadline/deadline_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/deadline/deadline_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/ext/filters/fault_injection/fault_injection_filter.cc" role="src" />
@ -1395,7 +1321,6 @@
<file baseinstalldir="/" name="src/core/lib/gpr/windows/sync.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/gpr/windows/time.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/gpr/windows/tmpfile.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/gpr/wrap_memcpy.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/gprpp/atomic_utils.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/gprpp/bitset.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/gprpp/chunked_vector.h" role="src" />
@ -1542,8 +1467,6 @@
<file baseinstalldir="/" name="src/core/lib/iomgr/iomgr_posix.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/iomgr/iomgr_posix_cfstream.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/iomgr/iomgr_windows.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/iomgr/load_file.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/iomgr/load_file.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/iomgr/lockfree_event.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/iomgr/lockfree_event.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/iomgr/nameser.h" role="src" />
@ -1633,13 +1556,6 @@
<file baseinstalldir="/" name="src/core/lib/json/json_util.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/json/json_writer.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/json/json_writer.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/load_balancing/delegating_helper.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/load_balancing/lb_policy.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/load_balancing/lb_policy.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/load_balancing/lb_policy_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/load_balancing/lb_policy_registry.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/load_balancing/lb_policy_registry.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/load_balancing/subchannel_interface.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/matchers/matchers.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/matchers/matchers.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/promise/activity.cc" role="src" />
@ -1676,14 +1592,6 @@
<file baseinstalldir="/" name="src/core/lib/promise/trace.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/promise/try_join.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/promise/try_seq.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/resolver/endpoint_addresses.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/resolver/endpoint_addresses.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/resolver/resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/resolver/resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/resolver/resolver_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/resolver/resolver_registry.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/resolver/resolver_registry.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/resolver/server_address.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/resource_quota/api.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/resource_quota/api.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/resource_quota/arena.cc" role="src" />
@ -1821,12 +1729,6 @@
<file baseinstalldir="/" name="src/core/lib/security/transport/tsi_error.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/security/util/json_util.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/security/util/json_util.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/service_config/service_config.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/service_config/service_config_call_data.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/service_config/service_config_impl.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/service_config/service_config_impl.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/service_config/service_config_parser.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/service_config/service_config_parser.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/slice/b64.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/slice/b64.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/slice/percent_encoding.cc" role="src" />
@ -1878,11 +1780,14 @@
<file baseinstalldir="/" name="src/core/lib/surface/validate_metadata.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/surface/validate_metadata.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/surface/version.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/surface/wait_for_cq_end_op.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/surface/wait_for_cq_end_op.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/batch_builder.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/batch_builder.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/bdp_estimator.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/bdp_estimator.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/call_factory.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/call_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/call_filters.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/call_filters.h" role="src" />
<file baseinstalldir="/" name="src/core/lib/transport/call_final_info.cc" role="src" />
@ -1926,8 +1831,103 @@
<file baseinstalldir="/" name="src/core/lib/transport/transport_op_string.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/uri/uri_parser.cc" role="src" />
<file baseinstalldir="/" name="src/core/lib/uri/uri_parser.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/address_filtering.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/address_filtering.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/backend_metric_data.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/child_policy_handler.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/child_policy_handler.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/delegating_helper.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/endpoint_list.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/endpoint_list.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/client_load_reporting_filter.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/client_load_reporting_filter.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/grpclb.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/grpclb.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/grpclb_balancer_addresses.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/grpclb_client_stats.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/grpclb_client_stats.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/load_balancer_api.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/grpclb/load_balancer_api.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/health_check_client.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/health_check_client.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/health_check_client_internal.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/lb_policy.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/lb_policy.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/lb_policy_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/lb_policy_registry.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/lb_policy_registry.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/oob_backend_metric.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/oob_backend_metric.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/oob_backend_metric_internal.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/outlier_detection/outlier_detection.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/outlier_detection/outlier_detection.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/pick_first/pick_first.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/pick_first/pick_first.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/priority/priority.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/ring_hash/ring_hash.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/ring_hash/ring_hash.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/rls/rls.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/round_robin/round_robin.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/subchannel_interface.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/subchannel_list.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/weighted_target/weighted_target.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/xds/cds.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/xds/xds_channel_args.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/xds/xds_cluster_impl.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/xds/xds_cluster_manager.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/xds/xds_override_host.cc" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/xds/xds_override_host.h" role="src" />
<file baseinstalldir="/" name="src/core/load_balancing/xds/xds_wrr_locality.cc" role="src" />
<file baseinstalldir="/" name="src/core/plugin_registry/grpc_plugin_registry.cc" role="src" />
<file baseinstalldir="/" name="src/core/plugin_registry/grpc_plugin_registry_extra.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/binder/binder_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/dns_resolver_ares.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/dns_resolver_ares.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/grpc_ares_wrapper.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/dns_resolver_plugin.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/dns_resolver_plugin.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/event_engine/service_config_helper.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/event_engine/service_config_helper.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/native/dns_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/dns/native/dns_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/endpoint_addresses.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/endpoint_addresses.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/fake/fake_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/fake/fake_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/google_c2p/google_c2p_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/polling_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/polling_resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/resolver.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/resolver_factory.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/resolver_registry.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/resolver_registry.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/server_address.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/sockaddr/sockaddr_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/xds/xds_dependency_manager.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/xds/xds_dependency_manager.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/xds/xds_resolver.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/xds/xds_resolver_attributes.h" role="src" />
<file baseinstalldir="/" name="src/core/resolver/xds/xds_resolver_trace.cc" role="src" />
<file baseinstalldir="/" name="src/core/resolver/xds/xds_resolver_trace.h" role="src" />
<file baseinstalldir="/" name="src/core/service_config/service_config.h" role="src" />
<file baseinstalldir="/" name="src/core/service_config/service_config_call_data.h" role="src" />
<file baseinstalldir="/" name="src/core/service_config/service_config_impl.cc" role="src" />
<file baseinstalldir="/" name="src/core/service_config/service_config_impl.h" role="src" />
<file baseinstalldir="/" name="src/core/service_config/service_config_parser.cc" role="src" />
<file baseinstalldir="/" name="src/core/service_config/service_config_parser.h" role="src" />
<file baseinstalldir="/" name="src/core/tsi/alts/crypt/aes_gcm.cc" role="src" />
<file baseinstalldir="/" name="src/core/tsi/alts/crypt/gsec.cc" role="src" />
<file baseinstalldir="/" name="src/core/tsi/alts/crypt/gsec.h" role="src" />
@ -2633,8 +2633,9 @@
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/hrss/internal.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/internal.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/keccak/internal.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/kyber/internal.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/kyber/keccak.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/lhash/internal.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c" role="src" />
@ -2678,6 +2679,21 @@
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/address.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/address.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/fors.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/fors.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/internal.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/merkle.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/merkle.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/params.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/spx.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/spx_util.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/thash.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/thash.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/wots.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/spx/wots.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/stack/stack.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/thread.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/thread_none.c" role="src" />
@ -2694,6 +2710,7 @@
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/by_file.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/ext_dat.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/internal.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/name_print.c" role="src" />
@ -2703,6 +2720,29 @@
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/t_req.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x509.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c" role="src" />
@ -2727,9 +2767,7 @@
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_info.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_name.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_req.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c" role="src" />
@ -2737,31 +2775,6 @@
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_val.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/ext_dat.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akeya.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bcons.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_extku.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_int.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ocsp.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcons.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pmaps.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/aead.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/aes.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h" role="src" />
@ -2826,6 +2839,7 @@
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/poly1305.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/pool.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/posix_time.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/rand.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/rc4.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/ripemd.h" role="src" />
@ -2848,6 +2862,7 @@
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/x509.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/x509v3.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/include/openssl/x509v3_errors.h" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/ssl/d1_both.cc" role="src" />
<file baseinstalldir="/" name="third_party/boringssl-with-bazel/src/ssl/d1_lib.cc" role="src" />

@ -37,7 +37,6 @@ import sys
import sysconfig
import _metadata
import pkg_resources
from setuptools import Extension
from setuptools.command import egg_info
@ -245,32 +244,22 @@ def check_linker_need_libatomic():
EXTRA_ENV_COMPILE_ARGS = os.environ.get("GRPC_PYTHON_CFLAGS", None)
EXTRA_ENV_LINK_ARGS = os.environ.get("GRPC_PYTHON_LDFLAGS", None)
if EXTRA_ENV_COMPILE_ARGS is None:
EXTRA_ENV_COMPILE_ARGS = " -std=c++14"
EXTRA_ENV_COMPILE_ARGS = ""
if "win32" in sys.platform:
if sys.version_info < (3, 5):
EXTRA_ENV_COMPILE_ARGS += " -D_hypot=hypot"
# We use define flags here and don't directly add to DEFINE_MACROS below to
# ensure that the expert user/builder has a way of turning it off (via the
# envvars) without adding yet more GRPC-specific envvars.
# See https://sourceforge.net/p/mingw-w64/bugs/363/
if "32" in platform.architecture()[0]:
EXTRA_ENV_COMPILE_ARGS += (
" -D_ftime=_ftime32 -D_timeb=__timeb32"
" -D_ftime_s=_ftime32_s"
)
else:
EXTRA_ENV_COMPILE_ARGS += (
" -D_ftime=_ftime64 -D_timeb=__timeb64"
)
else:
# We need to statically link the C++ Runtime, only the C runtime is
# available dynamically
EXTRA_ENV_COMPILE_ARGS += " /MT"
# MSVC by defaults uses C++14 so C11 needs to be specified.
EXTRA_ENV_COMPILE_ARGS += " /std:c11"
# We need to statically link the C++ Runtime, only the C runtime is
# available dynamically
EXTRA_ENV_COMPILE_ARGS += " /MT"
elif "linux" in sys.platform:
# GCC by defaults uses C17 so only C++14 needs to be specified.
EXTRA_ENV_COMPILE_ARGS += " -std=c++14"
EXTRA_ENV_COMPILE_ARGS += (
" -fvisibility=hidden -fno-wrapv -fno-exceptions"
)
elif "darwin" in sys.platform:
# AppleClang by defaults uses C17 so only C++14 needs to be specified.
EXTRA_ENV_COMPILE_ARGS += " -std=c++14"
EXTRA_ENV_COMPILE_ARGS += (
" -stdlib=libc++ -fvisibility=hidden -fno-wrapv -fno-exceptions"
" -DHAVE_UNISTD_H"
@ -464,22 +453,6 @@ if "linux" in sys.platform or "darwin" in sys.platform:
DEFINE_MACROS += (("PyMODINIT_FUNC", pymodinit),)
DEFINE_MACROS += (("GRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK", 1),)
# By default, Python3 distutils enforces compatibility of
# c plugins (.so files) with the OSX version Python was built with.
# We need OSX 10.10, the oldest which supports C++ thread_local.
# Python 3.9: Mac OS Big Sur sysconfig.get_config_var('MACOSX_DEPLOYMENT_TARGET') returns int (11)
if "darwin" in sys.platform:
mac_target = sysconfig.get_config_var("MACOSX_DEPLOYMENT_TARGET")
if mac_target:
mac_target = pkg_resources.parse_version(str(mac_target))
if mac_target < pkg_resources.parse_version("10.10.0"):
os.environ["MACOSX_DEPLOYMENT_TARGET"] = "10.10"
os.environ["_PYTHON_HOST_PLATFORM"] = re.sub(
r"macosx-[0-9]+\.[0-9]+-(.+)",
r"macosx-10.10-\1",
sysconfig.get_platform(),
)
def cython_extensions_and_necessity():
cython_module_files = [

@ -1,4 +1,4 @@
// generated by generate_boringssl_prefix_header.sh on BoringSSL commit: 2ff4b968a7e0cfee66d9f151cb95635b43dc1d5b
// generated by generate_boringssl_prefix_header.sh on BoringSSL commit: ae72a4514c7afd150596b0a80947f3ca9b8363b5
// Copyright (c) 2018, Google Inc.
//
@ -470,6 +470,7 @@
#define SSL_set_SSL_CTX BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_SSL_CTX)
#define SSL_set_accept_state BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_accept_state)
#define SSL_set_alpn_protos BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_alpn_protos)
#define SSL_set_alps_use_new_codepoint BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_alps_use_new_codepoint)
#define SSL_set_bio BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_bio)
#define SSL_set_cert_cb BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_cert_cb)
#define SSL_set_chain_and_key BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, SSL_set_chain_and_key)
@ -822,6 +823,8 @@
#define BIO_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_free)
#define BIO_free_all BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_free_all)
#define BIO_get_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_get_data)
#define BIO_get_ex_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_get_ex_data)
#define BIO_get_ex_new_index BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_get_ex_new_index)
#define BIO_get_fd BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_get_fd)
#define BIO_get_fp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_get_fp)
#define BIO_get_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_get_init)
@ -879,6 +882,7 @@
#define BIO_set_conn_int_port BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_set_conn_int_port)
#define BIO_set_conn_port BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_set_conn_port)
#define BIO_set_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_set_data)
#define BIO_set_ex_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_set_ex_data)
#define BIO_set_fd BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_set_fd)
#define BIO_set_flags BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_set_flags)
#define BIO_set_fp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BIO_set_fp)
@ -945,6 +949,7 @@
#define BN_bn2dec BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_bn2dec)
#define BN_bn2hex BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_bn2hex)
#define BN_bn2le_padded BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_bn2le_padded)
#define BN_bn2lebinpad BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_bn2lebinpad)
#define BN_bn2mpi BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_bn2mpi)
#define BN_clear BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_clear)
#define BN_clear_bit BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_clear_bit)
@ -984,6 +989,7 @@
#define BN_is_word BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_is_word)
#define BN_is_zero BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_is_zero)
#define BN_le2bn BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_le2bn)
#define BN_lebin2bn BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_lebin2bn)
#define BN_lshift BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_lshift)
#define BN_lshift1 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_lshift1)
#define BN_marshal_asn1 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_marshal_asn1)
@ -1050,6 +1056,7 @@
#define BN_zero BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BN_zero)
#define BORINGSSL_function_hit BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BORINGSSL_function_hit)
#define BORINGSSL_keccak BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BORINGSSL_keccak)
#define BORINGSSL_keccak_absorb BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BORINGSSL_keccak_absorb)
#define BORINGSSL_keccak_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BORINGSSL_keccak_init)
#define BORINGSSL_keccak_squeeze BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BORINGSSL_keccak_squeeze)
#define BORINGSSL_self_test BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, BORINGSSL_self_test)
@ -1074,6 +1081,7 @@
#define CBB_add_asn1_uint64 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_asn1_uint64)
#define CBB_add_asn1_uint64_with_tag BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_asn1_uint64_with_tag)
#define CBB_add_bytes BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_bytes)
#define CBB_add_latin1 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_latin1)
#define CBB_add_space BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_space)
#define CBB_add_u16 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_u16)
#define CBB_add_u16_length_prefixed BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_u16_length_prefixed)
@ -1086,6 +1094,9 @@
#define CBB_add_u64le BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_u64le)
#define CBB_add_u8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_u8)
#define CBB_add_u8_length_prefixed BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_u8_length_prefixed)
#define CBB_add_ucs2_be BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_ucs2_be)
#define CBB_add_utf32_be BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_utf32_be)
#define CBB_add_utf8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_utf8)
#define CBB_add_zeros BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_add_zeros)
#define CBB_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_cleanup)
#define CBB_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_data)
@ -1095,6 +1106,7 @@
#define CBB_finish_i2d BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_finish_i2d)
#define CBB_flush BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_flush)
#define CBB_flush_asn1_set_of BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_flush_asn1_set_of)
#define CBB_get_utf8_len BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_get_utf8_len)
#define CBB_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_init)
#define CBB_init_fixed BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_init_fixed)
#define CBB_len BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBB_len)
@ -1117,6 +1129,7 @@
#define CBS_get_asn1_uint64 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_asn1_uint64)
#define CBS_get_bytes BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_bytes)
#define CBS_get_last_u8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_last_u8)
#define CBS_get_latin1 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_latin1)
#define CBS_get_optional_asn1 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_optional_asn1)
#define CBS_get_optional_asn1_bool BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_optional_asn1_bool)
#define CBS_get_optional_asn1_octet_string BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_optional_asn1_octet_string)
@ -1133,7 +1146,10 @@
#define CBS_get_u64le BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_u64le)
#define CBS_get_u8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_u8)
#define CBS_get_u8_length_prefixed BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_u8_length_prefixed)
#define CBS_get_ucs2_be BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_ucs2_be)
#define CBS_get_until_first BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_until_first)
#define CBS_get_utf32_be BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_utf32_be)
#define CBS_get_utf8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_get_utf8)
#define CBS_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_init)
#define CBS_is_unsigned_asn1_integer BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_is_unsigned_asn1_integer)
#define CBS_is_valid_asn1_bitstring BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CBS_is_valid_asn1_bitstring)
@ -1197,6 +1213,7 @@
#define CRYPTO_cleanup_all_ex_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_cleanup_all_ex_data)
#define CRYPTO_ctr128_encrypt BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_ctr128_encrypt)
#define CRYPTO_ctr128_encrypt_ctr32 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_ctr128_encrypt_ctr32)
#define CRYPTO_fips_186_2_prf BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_fips_186_2_prf)
#define CRYPTO_fork_detect_force_madv_wipeonfork_for_testing BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_fork_detect_force_madv_wipeonfork_for_testing)
#define CRYPTO_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_free)
#define CRYPTO_free_ex_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CRYPTO_free_ex_data)
@ -1262,7 +1279,10 @@
#define CTR_DRBG_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CTR_DRBG_init)
#define CTR_DRBG_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CTR_DRBG_new)
#define CTR_DRBG_reseed BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, CTR_DRBG_reseed)
#define ChaCha20_ctr32 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, ChaCha20_ctr32)
#define ChaCha20_ctr32_avx2 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, ChaCha20_ctr32_avx2)
#define ChaCha20_ctr32_nohw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, ChaCha20_ctr32_nohw)
#define ChaCha20_ctr32_ssse3 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, ChaCha20_ctr32_ssse3)
#define ChaCha20_ctr32_ssse3_4x BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, ChaCha20_ctr32_ssse3_4x)
#define DES_decrypt3 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, DES_decrypt3)
#define DES_ecb3_encrypt BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, DES_ecb3_encrypt)
#define DES_ecb_encrypt BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, DES_ecb_encrypt)
@ -1955,6 +1975,7 @@
#define OBJ_find_sigid_algs BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OBJ_find_sigid_algs)
#define OBJ_find_sigid_by_algs BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OBJ_find_sigid_by_algs)
#define OBJ_get0_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OBJ_get0_data)
#define OBJ_get_undef BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OBJ_get_undef)
#define OBJ_length BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OBJ_length)
#define OBJ_ln2nid BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OBJ_ln2nid)
#define OBJ_nid2cbb BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OBJ_nid2cbb)
@ -1968,6 +1989,7 @@
#define OBJ_txt2obj BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OBJ_txt2obj)
#define OPENSSL_add_all_algorithms_conf BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_add_all_algorithms_conf)
#define OPENSSL_asprintf BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_asprintf)
#define OPENSSL_calloc BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_calloc)
#define OPENSSL_cleanse BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_cleanse)
#define OPENSSL_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_cleanup)
#define OPENSSL_clear_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_clear_free)
@ -1975,6 +1997,7 @@
#define OPENSSL_cpuid_setup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_cpuid_setup)
#define OPENSSL_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_free)
#define OPENSSL_fromxdigit BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_fromxdigit)
#define OPENSSL_get_ia32cap BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_get_ia32cap)
#define OPENSSL_gmtime BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_gmtime)
#define OPENSSL_gmtime_adj BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_gmtime_adj)
#define OPENSSL_gmtime_diff BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_gmtime_diff)
@ -2037,6 +2060,7 @@
#define OPENSSL_tolower BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_tolower)
#define OPENSSL_vasprintf BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_vasprintf)
#define OPENSSL_vasprintf_internal BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_vasprintf_internal)
#define OPENSSL_zalloc BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OPENSSL_zalloc)
#define OTHERNAME_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OTHERNAME_free)
#define OTHERNAME_it BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OTHERNAME_it)
#define OTHERNAME_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, OTHERNAME_new)
@ -2190,6 +2214,7 @@
#define RAND_bytes BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RAND_bytes)
#define RAND_bytes_with_additional_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RAND_bytes_with_additional_data)
#define RAND_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RAND_cleanup)
#define RAND_disable_fork_unsafe_buffering BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RAND_disable_fork_unsafe_buffering)
#define RAND_egd BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RAND_egd)
#define RAND_enable_fork_unsafe_buffering BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RAND_enable_fork_unsafe_buffering)
#define RAND_file_name BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, RAND_file_name)
@ -2362,7 +2387,6 @@
#define X509V3_EXT_nconf_nid BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509V3_EXT_nconf_nid)
#define X509V3_EXT_print BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509V3_EXT_print)
#define X509V3_EXT_print_fp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509V3_EXT_print_fp)
#define X509V3_EXT_val_prn BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509V3_EXT_val_prn)
#define X509V3_NAME_from_section BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509V3_NAME_from_section)
#define X509V3_add1_i2d BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509V3_add1_i2d)
#define X509V3_add_standard_extensions BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509V3_add_standard_extensions)
@ -2416,7 +2440,6 @@
#define X509_CRL_add_ext BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_CRL_add_ext)
#define X509_CRL_cmp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_CRL_cmp)
#define X509_CRL_delete_ext BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_CRL_delete_ext)
#define X509_CRL_diff BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_CRL_diff)
#define X509_CRL_digest BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_CRL_digest)
#define X509_CRL_dup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_CRL_dup)
#define X509_CRL_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_CRL_free)
@ -2468,15 +2491,12 @@
#define X509_EXTENSION_set_data BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_EXTENSION_set_data)
#define X509_EXTENSION_set_object BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_EXTENSION_set_object)
#define X509_INFO_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_INFO_free)
#define X509_INFO_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_INFO_new)
#define X509_LOOKUP_by_subject BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_by_subject)
#define X509_LOOKUP_add_dir BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_add_dir)
#define X509_LOOKUP_ctrl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_ctrl)
#define X509_LOOKUP_file BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_file)
#define X509_LOOKUP_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_free)
#define X509_LOOKUP_hash_dir BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_hash_dir)
#define X509_LOOKUP_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_init)
#define X509_LOOKUP_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_new)
#define X509_LOOKUP_shutdown BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_shutdown)
#define X509_LOOKUP_load_file BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_LOOKUP_load_file)
#define X509_NAME_ENTRIES_it BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_NAME_ENTRIES_it)
#define X509_NAME_ENTRY_create_by_NID BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_NAME_ENTRY_create_by_NID)
#define X509_NAME_ENTRY_create_by_OBJ BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_NAME_ENTRY_create_by_OBJ)
@ -2516,25 +2536,20 @@
#define X509_NAME_print_ex BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_NAME_print_ex)
#define X509_NAME_print_ex_fp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_NAME_print_ex_fp)
#define X509_NAME_set BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_NAME_set)
#define X509_OBJECT_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_free)
#define X509_OBJECT_free_contents BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_free_contents)
#define X509_OBJECT_get0_X509 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_get0_X509)
#define X509_OBJECT_get_type BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_get_type)
#define X509_OBJECT_idx_by_subject BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_idx_by_subject)
#define X509_OBJECT_retrieve_by_subject BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_retrieve_by_subject)
#define X509_OBJECT_retrieve_match BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_retrieve_match)
#define X509_OBJECT_up_ref_count BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_up_ref_count)
#define X509_PKEY_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PKEY_free)
#define X509_PKEY_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PKEY_new)
#define X509_OBJECT_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_OBJECT_new)
#define X509_PUBKEY_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_free)
#define X509_PUBKEY_get BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_get)
#define X509_PUBKEY_get0 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_get0)
#define X509_PUBKEY_get0_param BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_get0_param)
#define X509_PUBKEY_get0_public_key BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_get0_public_key)
#define X509_PUBKEY_it BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_it)
#define X509_PUBKEY_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_new)
#define X509_PUBKEY_set BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_set)
#define X509_PUBKEY_set0_param BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PUBKEY_set0_param)
#define X509_PURPOSE_add BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PURPOSE_add)
#define X509_PURPOSE_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PURPOSE_cleanup)
#define X509_PURPOSE_get0 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PURPOSE_get0)
#define X509_PURPOSE_get0_name BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PURPOSE_get0_name)
#define X509_PURPOSE_get0_sname BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_PURPOSE_get0_sname)
@ -2559,6 +2574,7 @@
#define X509_REQ_dup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_REQ_dup)
#define X509_REQ_extension_nid BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_REQ_extension_nid)
#define X509_REQ_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_REQ_free)
#define X509_REQ_get0_pubkey BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_REQ_get0_pubkey)
#define X509_REQ_get0_signature BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_REQ_get0_signature)
#define X509_REQ_get1_email BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_REQ_get1_email)
#define X509_REQ_get_attr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_REQ_get_attr)
@ -2611,13 +2627,15 @@
#define X509_STORE_CTX_get0_cert BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get0_cert)
#define X509_STORE_CTX_get0_chain BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get0_chain)
#define X509_STORE_CTX_get0_current_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get0_current_crl)
#define X509_STORE_CTX_get0_current_issuer BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get0_current_issuer)
#define X509_STORE_CTX_get0_param BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get0_param)
#define X509_STORE_CTX_get0_parent_ctx BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get0_parent_ctx)
#define X509_STORE_CTX_get0_store BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get0_store)
#define X509_STORE_CTX_get0_untrusted BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get0_untrusted)
#define X509_STORE_CTX_get1_certs BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get1_certs)
#define X509_STORE_CTX_get1_chain BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get1_chain)
#define X509_STORE_CTX_get1_crls BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get1_crls)
#define X509_STORE_CTX_get1_issuer BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get1_issuer)
#define X509_STORE_CTX_get_by_subject BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get_by_subject)
#define X509_STORE_CTX_get_chain BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get_chain)
#define X509_STORE_CTX_get_current_cert BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get_current_cert)
#define X509_STORE_CTX_get_error BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get_error)
@ -2626,11 +2644,9 @@
#define X509_STORE_CTX_get_ex_new_index BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_get_ex_new_index)
#define X509_STORE_CTX_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_init)
#define X509_STORE_CTX_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_new)
#define X509_STORE_CTX_purpose_inherit BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_purpose_inherit)
#define X509_STORE_CTX_set0_crls BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set0_crls)
#define X509_STORE_CTX_set0_param BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set0_param)
#define X509_STORE_CTX_set0_trusted_stack BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set0_trusted_stack)
#define X509_STORE_CTX_set_cert BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set_cert)
#define X509_STORE_CTX_set_chain BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set_chain)
#define X509_STORE_CTX_set_default BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set_default)
#define X509_STORE_CTX_set_depth BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set_depth)
@ -2643,49 +2659,24 @@
#define X509_STORE_CTX_set_trust BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set_trust)
#define X509_STORE_CTX_set_verify_cb BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_set_verify_cb)
#define X509_STORE_CTX_trusted_stack BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_trusted_stack)
#define X509_STORE_CTX_zero BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_CTX_zero)
#define X509_STORE_add_cert BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_add_cert)
#define X509_STORE_add_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_add_crl)
#define X509_STORE_add_lookup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_add_lookup)
#define X509_STORE_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_free)
#define X509_STORE_get0_objects BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get0_objects)
#define X509_STORE_get0_param BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get0_param)
#define X509_STORE_get1_certs BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get1_certs)
#define X509_STORE_get1_crls BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get1_crls)
#define X509_STORE_get_by_subject BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_by_subject)
#define X509_STORE_get_cert_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_cert_crl)
#define X509_STORE_get_check_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_check_crl)
#define X509_STORE_get_check_issued BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_check_issued)
#define X509_STORE_get_check_revocation BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_check_revocation)
#define X509_STORE_get_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_cleanup)
#define X509_STORE_get_get_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_get_crl)
#define X509_STORE_get_get_issuer BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_get_issuer)
#define X509_STORE_get_lookup_certs BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_lookup_certs)
#define X509_STORE_get_lookup_crls BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_lookup_crls)
#define X509_STORE_get_verify BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_verify)
#define X509_STORE_get_verify_cb BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_get_verify_cb)
#define X509_STORE_load_locations BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_load_locations)
#define X509_STORE_new BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_new)
#define X509_STORE_set1_param BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set1_param)
#define X509_STORE_set_cert_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_cert_crl)
#define X509_STORE_set_check_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_check_crl)
#define X509_STORE_set_check_issued BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_check_issued)
#define X509_STORE_set_check_revocation BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_check_revocation)
#define X509_STORE_set_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_cleanup)
#define X509_STORE_set_default_paths BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_default_paths)
#define X509_STORE_set_depth BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_depth)
#define X509_STORE_set_flags BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_flags)
#define X509_STORE_set_get_crl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_get_crl)
#define X509_STORE_set_get_issuer BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_get_issuer)
#define X509_STORE_set_lookup_certs BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_lookup_certs)
#define X509_STORE_set_lookup_crls BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_lookup_crls)
#define X509_STORE_set_purpose BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_purpose)
#define X509_STORE_set_trust BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_trust)
#define X509_STORE_set_verify BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_verify)
#define X509_STORE_set_verify_cb BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_set_verify_cb)
#define X509_STORE_up_ref BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_STORE_up_ref)
#define X509_TRUST_add BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_TRUST_add)
#define X509_TRUST_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_TRUST_cleanup)
#define X509_TRUST_get0 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_TRUST_get0)
#define X509_TRUST_get0_name BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_TRUST_get0_name)
#define X509_TRUST_get_by_id BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_TRUST_get_by_id)
@ -2700,8 +2691,6 @@
#define X509_VERIFY_PARAM_add1_host BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_add1_host)
#define X509_VERIFY_PARAM_clear_flags BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_clear_flags)
#define X509_VERIFY_PARAM_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_free)
#define X509_VERIFY_PARAM_get0_name BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_get0_name)
#define X509_VERIFY_PARAM_get0_peername BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_get0_peername)
#define X509_VERIFY_PARAM_get_depth BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_get_depth)
#define X509_VERIFY_PARAM_get_flags BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_get_flags)
#define X509_VERIFY_PARAM_inherit BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_inherit)
@ -2712,7 +2701,6 @@
#define X509_VERIFY_PARAM_set1_host BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_set1_host)
#define X509_VERIFY_PARAM_set1_ip BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_set1_ip)
#define X509_VERIFY_PARAM_set1_ip_asc BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_set1_ip_asc)
#define X509_VERIFY_PARAM_set1_name BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_set1_name)
#define X509_VERIFY_PARAM_set1_policies BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_set1_policies)
#define X509_VERIFY_PARAM_set_depth BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_set_depth)
#define X509_VERIFY_PARAM_set_flags BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_VERIFY_PARAM_set_flags)
@ -2755,6 +2743,7 @@
#define X509_get0_extensions BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_get0_extensions)
#define X509_get0_notAfter BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_get0_notAfter)
#define X509_get0_notBefore BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_get0_notBefore)
#define X509_get0_pubkey BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_get0_pubkey)
#define X509_get0_pubkey_bitstr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_get0_pubkey_bitstr)
#define X509_get0_serialNumber BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_get0_serialNumber)
#define X509_get0_signature BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509_get0_signature)
@ -2845,7 +2834,6 @@
#define X509v3_get_ext_by_OBJ BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509v3_get_ext_by_OBJ)
#define X509v3_get_ext_by_critical BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509v3_get_ext_by_critical)
#define X509v3_get_ext_count BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, X509v3_get_ext_count)
#define a2i_GENERAL_NAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, a2i_GENERAL_NAME)
#define a2i_IPADDRESS BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, a2i_IPADDRESS)
#define a2i_IPADDRESS_NC BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, a2i_IPADDRESS_NC)
#define abi_test_bad_unwind_temporary BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, abi_test_bad_unwind_temporary)
@ -2937,6 +2925,7 @@
#define asn1_refcount_set_one BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_refcount_set_one)
#define asn1_set_choice_selector BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_set_choice_selector)
#define asn1_type_cleanup BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_type_cleanup)
#define asn1_type_set0_string BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_type_set0_string)
#define asn1_type_value_as_pointer BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_type_value_as_pointer)
#define asn1_utctime_to_tm BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, asn1_utctime_to_tm)
#define beeu_mod_inverse_vartime BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, beeu_mod_inverse_vartime)
@ -2983,14 +2972,17 @@
#define bn_mont_ctx_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mont_ctx_init)
#define bn_mont_ctx_set_RR_consttime BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mont_ctx_set_RR_consttime)
#define bn_mont_n0 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mont_n0)
#define bn_mul4x_mont BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul4x_mont)
#define bn_mul_add_words BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_add_words)
#define bn_mul_comba4 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_comba4)
#define bn_mul_comba8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_comba8)
#define bn_mul_consttime BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_consttime)
#define bn_mul_mont BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_mont)
#define bn_mul_mont_gather5 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_mont_gather5)
#define bn_mul_mont_nohw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_mont_nohw)
#define bn_mul_small BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_small)
#define bn_mul_words BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mul_words)
#define bn_mulx4x_mont BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_mulx4x_mont)
#define bn_odd_number_is_obviously_composite BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_odd_number_is_obviously_composite)
#define bn_one_to_montgomery BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_one_to_montgomery)
#define bn_power5 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_power5)
@ -3008,6 +3000,7 @@
#define bn_set_static_words BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_set_static_words)
#define bn_set_words BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_set_words)
#define bn_sqr8x_internal BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_sqr8x_internal)
#define bn_sqr8x_mont BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_sqr8x_mont)
#define bn_sqr_comba4 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_sqr_comba4)
#define bn_sqr_comba8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_sqr_comba8)
#define bn_sqr_consttime BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, bn_sqr_consttime)
@ -3026,15 +3019,6 @@
#define c2i_ASN1_BIT_STRING BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, c2i_ASN1_BIT_STRING)
#define c2i_ASN1_INTEGER BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, c2i_ASN1_INTEGER)
#define c2i_ASN1_OBJECT BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, c2i_ASN1_OBJECT)
#define cbb_add_latin1 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbb_add_latin1)
#define cbb_add_ucs2_be BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbb_add_ucs2_be)
#define cbb_add_utf32_be BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbb_add_utf32_be)
#define cbb_add_utf8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbb_add_utf8)
#define cbb_get_utf8_len BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbb_get_utf8_len)
#define cbs_get_latin1 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbs_get_latin1)
#define cbs_get_ucs2_be BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbs_get_ucs2_be)
#define cbs_get_utf32_be BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbs_get_utf32_be)
#define cbs_get_utf8 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, cbs_get_utf8)
#define chacha20_poly1305_open BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, chacha20_poly1305_open)
#define chacha20_poly1305_seal BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, chacha20_poly1305_seal)
#define crypto_gcm_clmul_enabled BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, crypto_gcm_clmul_enabled)
@ -3090,7 +3074,6 @@
#define d2i_EC_PUBKEY BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_EC_PUBKEY)
#define d2i_EC_PUBKEY_bio BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_EC_PUBKEY_bio)
#define d2i_EC_PUBKEY_fp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_EC_PUBKEY_fp)
#define d2i_EDIPARTYNAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_EDIPARTYNAME)
#define d2i_EXTENDED_KEY_USAGE BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_EXTENDED_KEY_USAGE)
#define d2i_GENERAL_NAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_GENERAL_NAME)
#define d2i_GENERAL_NAMES BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_GENERAL_NAMES)
@ -3098,7 +3081,6 @@
#define d2i_NETSCAPE_SPKAC BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_NETSCAPE_SPKAC)
#define d2i_NETSCAPE_SPKI BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_NETSCAPE_SPKI)
#define d2i_NOTICEREF BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_NOTICEREF)
#define d2i_OTHERNAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_OTHERNAME)
#define d2i_PKCS12 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_PKCS12)
#define d2i_PKCS12_bio BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_PKCS12_bio)
#define d2i_PKCS12_fp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_PKCS12_fp)
@ -3144,7 +3126,6 @@
#define d2i_X509_EXTENSION BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_X509_EXTENSION)
#define d2i_X509_EXTENSIONS BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_X509_EXTENSIONS)
#define d2i_X509_NAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_X509_NAME)
#define d2i_X509_NAME_ENTRY BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_X509_NAME_ENTRY)
#define d2i_X509_PUBKEY BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_X509_PUBKEY)
#define d2i_X509_REQ BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_X509_REQ)
#define d2i_X509_REQ_INFO BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, d2i_X509_REQ_INFO)
@ -3263,6 +3244,8 @@
#define ed25519_pkey_meth BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, ed25519_pkey_meth)
#define fiat_curve25519_adx_mul BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, fiat_curve25519_adx_mul)
#define fiat_curve25519_adx_square BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, fiat_curve25519_adx_square)
#define fiat_p256_adx_mul BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, fiat_p256_adx_mul)
#define fiat_p256_adx_sqr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, fiat_p256_adx_sqr)
#define gcm_ghash_avx BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, gcm_ghash_avx)
#define gcm_ghash_clmul BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, gcm_ghash_clmul)
#define gcm_ghash_nohw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, gcm_ghash_nohw)
@ -3276,7 +3259,6 @@
#define gcm_init_nohw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, gcm_init_nohw)
#define gcm_init_ssse3 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, gcm_init_ssse3)
#define hkdf_pkey_meth BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, hkdf_pkey_meth)
#define i2a_ACCESS_DESCRIPTION BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2a_ACCESS_DESCRIPTION)
#define i2a_ASN1_ENUMERATED BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2a_ASN1_ENUMERATED)
#define i2a_ASN1_INTEGER BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2a_ASN1_INTEGER)
#define i2a_ASN1_OBJECT BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2a_ASN1_OBJECT)
@ -3334,7 +3316,6 @@
#define i2d_EC_PUBKEY BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_EC_PUBKEY)
#define i2d_EC_PUBKEY_bio BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_EC_PUBKEY_bio)
#define i2d_EC_PUBKEY_fp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_EC_PUBKEY_fp)
#define i2d_EDIPARTYNAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_EDIPARTYNAME)
#define i2d_EXTENDED_KEY_USAGE BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_EXTENDED_KEY_USAGE)
#define i2d_GENERAL_NAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_GENERAL_NAME)
#define i2d_GENERAL_NAMES BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_GENERAL_NAMES)
@ -3342,7 +3323,6 @@
#define i2d_NETSCAPE_SPKAC BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_NETSCAPE_SPKAC)
#define i2d_NETSCAPE_SPKI BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_NETSCAPE_SPKI)
#define i2d_NOTICEREF BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_NOTICEREF)
#define i2d_OTHERNAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_OTHERNAME)
#define i2d_PKCS12 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_PKCS12)
#define i2d_PKCS12_bio BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_PKCS12_bio)
#define i2d_PKCS12_fp BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_PKCS12_fp)
@ -3393,7 +3373,6 @@
#define i2d_X509_EXTENSION BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_X509_EXTENSION)
#define i2d_X509_EXTENSIONS BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_X509_EXTENSIONS)
#define i2d_X509_NAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_X509_NAME)
#define i2d_X509_NAME_ENTRY BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_X509_NAME_ENTRY)
#define i2d_X509_PUBKEY BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_X509_PUBKEY)
#define i2d_X509_REQ BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_X509_REQ)
#define i2d_X509_REQ_INFO BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, i2d_X509_REQ_INFO)
@ -3479,9 +3458,17 @@
#define rsaz_1024_sqr_avx2 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, rsaz_1024_sqr_avx2)
#define s2i_ASN1_INTEGER BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, s2i_ASN1_INTEGER)
#define s2i_ASN1_OCTET_STRING BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, s2i_ASN1_OCTET_STRING)
#define sha1_block_data_order BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha1_block_data_order)
#define sha256_block_data_order BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha256_block_data_order)
#define sha512_block_data_order BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha512_block_data_order)
#define sha1_block_data_order_avx BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha1_block_data_order_avx)
#define sha1_block_data_order_avx2 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha1_block_data_order_avx2)
#define sha1_block_data_order_hw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha1_block_data_order_hw)
#define sha1_block_data_order_nohw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha1_block_data_order_nohw)
#define sha1_block_data_order_ssse3 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha1_block_data_order_ssse3)
#define sha256_block_data_order_avx BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha256_block_data_order_avx)
#define sha256_block_data_order_hw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha256_block_data_order_hw)
#define sha256_block_data_order_nohw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha256_block_data_order_nohw)
#define sha256_block_data_order_ssse3 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha256_block_data_order_ssse3)
#define sha512_block_data_order_avx BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha512_block_data_order_avx)
#define sha512_block_data_order_nohw BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sha512_block_data_order_nohw)
#define sk_free BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sk_free)
#define sk_new_null BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sk_new_null)
#define sk_num BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sk_num)
@ -3490,6 +3477,42 @@
#define sk_pop_free_ex BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sk_pop_free_ex)
#define sk_push BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sk_push)
#define sk_value BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, sk_value)
#define spx_base_b BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_base_b)
#define spx_copy_keypair_addr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_copy_keypair_addr)
#define spx_fors_pk_from_sig BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_fors_pk_from_sig)
#define spx_fors_sign BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_fors_sign)
#define spx_fors_sk_gen BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_fors_sk_gen)
#define spx_fors_treehash BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_fors_treehash)
#define spx_generate_key BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_generate_key)
#define spx_generate_key_from_seed BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_generate_key_from_seed)
#define spx_get_tree_index BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_get_tree_index)
#define spx_ht_sign BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_ht_sign)
#define spx_ht_verify BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_ht_verify)
#define spx_set_chain_addr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_set_chain_addr)
#define spx_set_hash_addr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_set_hash_addr)
#define spx_set_keypair_addr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_set_keypair_addr)
#define spx_set_layer_addr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_set_layer_addr)
#define spx_set_tree_addr BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_set_tree_addr)
#define spx_set_tree_height BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_set_tree_height)
#define spx_set_tree_index BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_set_tree_index)
#define spx_set_type BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_set_type)
#define spx_sign BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_sign)
#define spx_thash_f BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_thash_f)
#define spx_thash_h BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_thash_h)
#define spx_thash_hmsg BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_thash_hmsg)
#define spx_thash_prf BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_thash_prf)
#define spx_thash_prfmsg BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_thash_prfmsg)
#define spx_thash_tk BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_thash_tk)
#define spx_thash_tl BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_thash_tl)
#define spx_to_uint64 BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_to_uint64)
#define spx_treehash BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_treehash)
#define spx_uint64_to_len_bytes BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_uint64_to_len_bytes)
#define spx_verify BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_verify)
#define spx_wots_pk_from_sig BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_wots_pk_from_sig)
#define spx_wots_pk_gen BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_wots_pk_gen)
#define spx_wots_sign BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_wots_sign)
#define spx_xmss_pk_from_sig BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_xmss_pk_from_sig)
#define spx_xmss_sign BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, spx_xmss_sign)
#define v2i_GENERAL_NAME BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, v2i_GENERAL_NAME)
#define v2i_GENERAL_NAMES BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, v2i_GENERAL_NAMES)
#define v2i_GENERAL_NAME_ex BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, v2i_GENERAL_NAME_ex)
@ -3556,6 +3579,7 @@
#define x25519_sc_reduce BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x25519_sc_reduce)
#define x25519_scalar_mult_adx BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x25519_scalar_mult_adx)
#define x509V3_add_value_asn1_string BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509V3_add_value_asn1_string)
#define x509_check_issued_with_callback BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509_check_issued_with_callback)
#define x509_digest_sign_algorithm BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509_digest_sign_algorithm)
#define x509_digest_verify_init BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509_digest_verify_init)
#define x509_print_rsa_pss_params BORINGSSL_ADD_PREFIX(BORINGSSL_PREFIX, x509_print_rsa_pss_params)

@ -467,7 +467,7 @@ bool PrivateGenerator::PrintStub(
out->Print(
method_dict,
"response_deserializer=$ResponseModuleAndClass$.FromString,\n");
out->Print(")\n");
out->Print("_registered_method=True)\n");
}
}
}
@ -642,22 +642,27 @@ bool PrivateGenerator::PrintServiceClass(
args_dict["ArityMethodName"] = arity_method_name;
args_dict["PackageQualifiedService"] = package_qualified_service_name;
args_dict["Method"] = method->name();
out->Print(args_dict,
"return "
"grpc.experimental.$ArityMethodName$($RequestParameter$, "
"target, '/$PackageQualifiedService$/$Method$',\n");
out->Print(args_dict, "return grpc.experimental.$ArityMethodName$(\n");
{
IndentScope continuation_indent(out);
StringMap serializer_dict;
out->Print(args_dict, "$RequestParameter$,\n");
out->Print("target,\n");
out->Print(args_dict, "'/$PackageQualifiedService$/$Method$',\n");
serializer_dict["RequestModuleAndClass"] = request_module_and_class;
serializer_dict["ResponseModuleAndClass"] = response_module_and_class;
out->Print(serializer_dict,
"$RequestModuleAndClass$.SerializeToString,\n");
out->Print(serializer_dict, "$ResponseModuleAndClass$.FromString,\n");
out->Print("options, channel_credentials,\n");
out->Print(
"insecure, call_credentials, compression, wait_for_ready, "
"timeout, metadata)\n");
out->Print("options,\n");
out->Print("channel_credentials,\n");
out->Print("insecure,\n");
out->Print("call_credentials,\n");
out->Print("compression,\n");
out->Print("wait_for_ready,\n");
out->Print("timeout,\n");
out->Print("metadata,\n");
out->Print("_registered_method=True)\n");
}
}
}

@ -1068,7 +1068,10 @@ grpc_cc_library(
hdrs = [
"lib/promise/observable.h",
],
external_deps = ["absl/container:flat_hash_set"],
external_deps = [
"absl/container:flat_hash_set",
"absl/functional:any_invocable",
],
language = "c++",
deps = [
"activity",
@ -2065,6 +2068,7 @@ grpc_cc_library(
"event_engine_common",
"event_engine_extensions",
"event_engine_tcp_socket_utils",
"event_engine_trace",
"experiments",
"iomgr_port",
"load_file",
@ -2176,6 +2180,7 @@ grpc_cc_library(
],
deps = [
"event_engine_tcp_socket_utils",
"event_engine_trace",
"iomgr_port",
"posix_event_engine_base_hdrs",
"posix_event_engine_closure",
@ -2185,6 +2190,7 @@ grpc_cc_library(
"posix_event_engine_tcp_socket_utils",
"socket_mutator",
"status_helper",
"strerror",
"time",
"//:event_engine_base_hdrs",
"//:exec_ctx",
@ -2855,6 +2861,7 @@ grpc_cc_library(
],
language = "c++",
deps = [
"call_filters",
"channel_args",
"channel_fwd",
"channel_stack_trace",
@ -2879,8 +2886,8 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_service_config",
hdrs = [
"lib/service_config/service_config.h",
"lib/service_config/service_config_call_data.h",
"service_config/service_config.h",
"service_config/service_config_call_data.h",
],
external_deps = ["absl/strings"],
language = "c++",
@ -2901,10 +2908,10 @@ grpc_cc_library(
grpc_cc_library(
name = "service_config_parser",
srcs = [
"lib/service_config/service_config_parser.cc",
"service_config/service_config_parser.cc",
],
hdrs = [
"lib/service_config/service_config_parser.h",
"service_config/service_config_parser.h",
],
external_deps = ["absl/strings"],
language = "c++",
@ -2971,8 +2978,8 @@ grpc_cc_library(
grpc_cc_library(
name = "lb_policy",
srcs = ["lib/load_balancing/lb_policy.cc"],
hdrs = ["lib/load_balancing/lb_policy.h"],
srcs = ["load_balancing/lb_policy.cc"],
hdrs = ["load_balancing/lb_policy.h"],
external_deps = [
"absl/base:core_headers",
"absl/status",
@ -3007,7 +3014,7 @@ grpc_cc_library(
grpc_cc_library(
name = "lb_policy_factory",
hdrs = ["lib/load_balancing/lb_policy_factory.h"],
hdrs = ["load_balancing/lb_policy_factory.h"],
external_deps = [
"absl/status:statusor",
"absl/strings",
@ -3023,8 +3030,8 @@ grpc_cc_library(
grpc_cc_library(
name = "lb_policy_registry",
srcs = ["lib/load_balancing/lb_policy_registry.cc"],
hdrs = ["lib/load_balancing/lb_policy_registry.h"],
srcs = ["load_balancing/lb_policy_registry.cc"],
hdrs = ["load_balancing/lb_policy_registry.h"],
external_deps = [
"absl/status",
"absl/status:statusor",
@ -3043,7 +3050,7 @@ grpc_cc_library(
grpc_cc_library(
name = "subchannel_interface",
hdrs = ["lib/load_balancing/subchannel_interface.h"],
hdrs = ["load_balancing/subchannel_interface.h"],
external_deps = ["absl/status"],
deps = [
"dual_ref_counted",
@ -3056,7 +3063,7 @@ grpc_cc_library(
grpc_cc_library(
name = "delegating_helper",
hdrs = ["lib/load_balancing/delegating_helper.h"],
hdrs = ["load_balancing/delegating_helper.h"],
external_deps = [
"absl/status",
"absl/strings",
@ -3270,6 +3277,7 @@ grpc_cc_library(
"channel_args",
"channel_fwd",
"dual_ref_counted",
"load_file",
"metadata_batch",
"ref_counted",
"resolved_address",
@ -3326,9 +3334,9 @@ grpc_cc_library(
"lib/security/security_connector/fake/fake_security_connector.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/grpclb/grpclb.h",
"lib/security/credentials/fake/fake_credentials.h",
"lib/security/security_connector/fake/fake_security_connector.h",
"load_balancing/grpclb/grpclb.h",
],
external_deps = [
"absl/status",
@ -3506,8 +3514,8 @@ grpc_cc_library(
"lib/security/credentials/google_default/google_default_credentials.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/grpclb/grpclb.h",
"lib/security/credentials/google_default/google_default_credentials.h",
"load_balancing/grpclb/grpclb.h",
],
external_deps = [
"absl/status:statusor",
@ -3529,6 +3537,7 @@ grpc_cc_library(
"iomgr_fwd",
"json",
"json_reader",
"load_file",
"slice",
"slice_refcount",
"status_helper",
@ -3601,6 +3610,7 @@ grpc_cc_library(
"closure",
"error",
"iomgr_fwd",
"load_file",
"ref_counted",
"slice",
"slice_refcount",
@ -3682,6 +3692,7 @@ grpc_cc_library(
"httpcli_ssl_credentials",
"json",
"json_reader",
"load_file",
"metadata_batch",
"poll",
"pollset_set",
@ -3741,6 +3752,7 @@ grpc_cc_library(
"json",
"json_reader",
"json_writer",
"load_file",
"slice",
"slice_refcount",
"status_helper",
@ -4272,16 +4284,16 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_grpclb",
srcs = [
"ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc",
"ext/filters/client_channel/lb_policy/grpclb/grpclb.cc",
"ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc",
"ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc",
"load_balancing/grpclb/client_load_reporting_filter.cc",
"load_balancing/grpclb/grpclb.cc",
"load_balancing/grpclb/grpclb_client_stats.cc",
"load_balancing/grpclb/load_balancer_api.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h",
"ext/filters/client_channel/lb_policy/grpclb/grpclb.h",
"ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h",
"ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h",
"load_balancing/grpclb/client_load_reporting_filter.h",
"load_balancing/grpclb/grpclb.h",
"load_balancing/grpclb/grpclb_client_stats.h",
"load_balancing/grpclb/load_balancer_api.h",
],
external_deps = [
"absl/base:core_headers",
@ -4373,7 +4385,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_backend_metric_data",
hdrs = [
"ext/filters/client_channel/lb_policy/backend_metric_data.h",
"load_balancing/backend_metric_data.h",
],
external_deps = ["absl/strings"],
language = "c++",
@ -4391,7 +4403,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_rls",
srcs = [
"ext/filters/client_channel/lb_policy/rls/rls.cc",
"load_balancing/rls/rls.cc",
],
external_deps = [
"absl/base:core_headers",
@ -4618,6 +4630,7 @@ grpc_cc_library(
"json_util",
"json_writer",
"lb_policy_registry",
"load_file",
"match",
"metadata_batch",
"pollset_set",
@ -4767,7 +4780,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_cds",
srcs = [
"ext/filters/client_channel/lb_policy/xds/cds.cc",
"load_balancing/xds/cds.cc",
],
external_deps = [
"absl/status",
@ -4813,7 +4826,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_xds_channel_args",
hdrs = [
"ext/filters/client_channel/lb_policy/xds/xds_channel_args.h",
"load_balancing/xds/xds_channel_args.h",
],
language = "c++",
deps = [
@ -4825,7 +4838,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_xds_cluster_impl",
srcs = [
"ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc",
"load_balancing/xds/xds_cluster_impl.cc",
],
external_deps = [
"absl/base:core_headers",
@ -4871,7 +4884,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_xds_cluster_manager",
srcs = [
"ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc",
"load_balancing/xds/xds_cluster_manager.cc",
],
external_deps = [
"absl/status",
@ -4912,7 +4925,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_xds_wrr_locality",
srcs = [
"ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc",
"load_balancing/xds/xds_wrr_locality.cc",
],
external_deps = [
"absl/status",
@ -4949,10 +4962,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_address_filtering",
srcs = [
"ext/filters/client_channel/lb_policy/address_filtering.cc",
"load_balancing/address_filtering.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/address_filtering.h",
"load_balancing/address_filtering.h",
],
external_deps = [
"absl/functional:function_ref",
@ -4974,11 +4987,11 @@ grpc_cc_library(
grpc_cc_library(
name = "health_check_client",
srcs = [
"ext/filters/client_channel/lb_policy/health_check_client.cc",
"load_balancing/health_check_client.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/health_check_client.h",
"ext/filters/client_channel/lb_policy/health_check_client_internal.h",
"load_balancing/health_check_client.h",
"load_balancing/health_check_client_internal.h",
],
external_deps = [
"absl/base:core_headers",
@ -5019,7 +5032,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_subchannel_list",
hdrs = [
"ext/filters/client_channel/lb_policy/subchannel_list.h",
"load_balancing/subchannel_list.h",
],
external_deps = [
"absl/status",
@ -5048,10 +5061,10 @@ grpc_cc_library(
grpc_cc_library(
name = "lb_endpoint_list",
srcs = [
"ext/filters/client_channel/lb_policy/endpoint_list.cc",
"load_balancing/endpoint_list.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/endpoint_list.h",
"load_balancing/endpoint_list.h",
],
external_deps = [
"absl/functional:function_ref",
@ -5084,10 +5097,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_pick_first",
srcs = [
"ext/filters/client_channel/lb_policy/pick_first/pick_first.cc",
"load_balancing/pick_first/pick_first.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/pick_first/pick_first.h",
"load_balancing/pick_first/pick_first.h",
],
external_deps = [
"absl/algorithm:container",
@ -5199,10 +5212,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_ring_hash",
srcs = [
"ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc",
"load_balancing/ring_hash/ring_hash.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h",
"load_balancing/ring_hash/ring_hash.h",
],
external_deps = [
"absl/base:core_headers",
@ -5252,7 +5265,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_round_robin",
srcs = [
"ext/filters/client_channel/lb_policy/round_robin/round_robin.cc",
"load_balancing/round_robin/round_robin.cc",
],
external_deps = [
"absl/meta:type_traits",
@ -5289,10 +5302,10 @@ grpc_cc_library(
grpc_cc_library(
name = "static_stride_scheduler",
srcs = [
"ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc",
"load_balancing/weighted_round_robin/static_stride_scheduler.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h",
"load_balancing/weighted_round_robin/static_stride_scheduler.h",
],
external_deps = [
"absl/functional:any_invocable",
@ -5306,7 +5319,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_weighted_round_robin",
srcs = [
"ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc",
"load_balancing/weighted_round_robin/weighted_round_robin.cc",
],
external_deps = [
"absl/base:core_headers",
@ -5358,7 +5371,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_outlier_detection_header",
hdrs = [
"ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h",
"load_balancing/outlier_detection/outlier_detection.h",
],
external_deps = ["absl/types:optional"],
language = "c++",
@ -5375,7 +5388,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_outlier_detection",
srcs = [
"ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc",
"load_balancing/outlier_detection/outlier_detection.cc",
],
external_deps = [
"absl/base:core_headers",
@ -5423,7 +5436,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_priority",
srcs = [
"ext/filters/client_channel/lb_policy/priority/priority.cc",
"load_balancing/priority/priority.cc",
],
external_deps = [
"absl/status",
@ -5465,7 +5478,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_weighted_target",
srcs = [
"ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc",
"load_balancing/weighted_target/weighted_target.cc",
],
external_deps = [
"absl/base:core_headers",
@ -5508,10 +5521,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_lb_policy_xds_override_host",
srcs = [
"ext/filters/client_channel/lb_policy/xds/xds_override_host.cc",
"load_balancing/xds/xds_override_host.cc",
],
hdrs = [
"ext/filters/client_channel/lb_policy/xds/xds_override_host.h",
"load_balancing/xds/xds_override_host.h",
],
external_deps = [
"absl/base:core_headers",
@ -5651,10 +5664,10 @@ grpc_cc_library(
grpc_cc_library(
name = "polling_resolver",
srcs = [
"ext/filters/client_channel/resolver/polling_resolver.cc",
"resolver/polling_resolver.cc",
],
hdrs = [
"ext/filters/client_channel/resolver/polling_resolver.h",
"resolver/polling_resolver.h",
],
external_deps = [
"absl/status",
@ -5686,10 +5699,10 @@ grpc_cc_library(
grpc_cc_library(
name = "service_config_helper",
srcs = [
"ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.cc",
"resolver/dns/event_engine/service_config_helper.cc",
],
hdrs = [
"ext/filters/client_channel/resolver/dns/event_engine/service_config_helper.h",
"resolver/dns/event_engine/service_config_helper.h",
],
external_deps = [
"absl/status:statusor",
@ -5711,10 +5724,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_dns_event_engine",
srcs = [
"ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc",
"resolver/dns/event_engine/event_engine_client_channel_resolver.cc",
],
hdrs = [
"ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.h",
"resolver/dns/event_engine/event_engine_client_channel_resolver.h",
],
external_deps = [
"absl/base:core_headers",
@ -5754,10 +5767,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_dns_plugin",
srcs = [
"ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc",
"resolver/dns/dns_resolver_plugin.cc",
],
hdrs = [
"ext/filters/client_channel/resolver/dns/dns_resolver_plugin.h",
"resolver/dns/dns_resolver_plugin.h",
],
external_deps = ["absl/strings"],
language = "c++",
@ -5776,10 +5789,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_dns_native",
srcs = [
"ext/filters/client_channel/resolver/dns/native/dns_resolver.cc",
"resolver/dns/native/dns_resolver.cc",
],
hdrs = [
"ext/filters/client_channel/resolver/dns/native/dns_resolver.h",
"resolver/dns/native/dns_resolver.h",
],
external_deps = [
"absl/functional:bind_front",
@ -5812,7 +5825,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_sockaddr",
srcs = [
"ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc",
"resolver/sockaddr/sockaddr_resolver.cc",
],
external_deps = [
"absl/status:statusor",
@ -5836,7 +5849,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_binder",
srcs = [
"ext/filters/client_channel/resolver/binder/binder_resolver.cc",
"resolver/binder/binder_resolver.cc",
],
external_deps = [
"absl/status",
@ -5862,7 +5875,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_xds_attributes",
hdrs = [
"ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h",
"resolver/xds/xds_resolver_attributes.h",
],
external_deps = ["absl/strings"],
language = "c++",
@ -5876,10 +5889,10 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_xds_trace",
srcs = [
"ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc",
"resolver/xds/xds_resolver_trace.cc",
],
hdrs = [
"ext/filters/client_channel/resolver/xds/xds_resolver_trace.h",
"resolver/xds/xds_resolver_trace.h",
],
language = "c++",
deps = [
@ -5891,10 +5904,10 @@ grpc_cc_library(
grpc_cc_library(
name = "xds_dependency_manager",
srcs = [
"ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc",
"resolver/xds/xds_dependency_manager.cc",
],
hdrs = [
"ext/filters/client_channel/resolver/xds/xds_dependency_manager.h",
"resolver/xds/xds_dependency_manager.h",
],
external_deps = [
"absl/container:flat_hash_map",
@ -5918,7 +5931,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_xds",
srcs = [
"ext/filters/client_channel/resolver/xds/xds_resolver.cc",
"resolver/xds/xds_resolver.cc",
],
external_deps = [
"absl/meta:type_traits",
@ -5977,7 +5990,7 @@ grpc_cc_library(
grpc_cc_library(
name = "grpc_resolver_c2p",
srcs = [
"ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc",
"resolver/google_c2p/google_c2p_resolver.cc",
],
external_deps = [
"absl/status:statusor",
@ -6549,6 +6562,7 @@ grpc_cc_library(
],
deps = [
"activity",
"cancel_callback",
"event_engine_common",
"if",
"map",
@ -6671,11 +6685,11 @@ grpc_cc_library(
"chaotic_good_transport",
"context",
"default_event_engine",
"error_utils",
"event_engine_wakeup_scheduler",
"for_each",
"grpc_promise_endpoint",
"if",
"inter_activity_latch",
"inter_activity_pipe",
"loop",
"memory_quota",
@ -6734,6 +6748,38 @@ grpc_cc_library(
],
)
grpc_cc_library(
name = "call_factory",
srcs = [
"lib/transport/call_factory.cc",
],
hdrs = [
"lib/transport/call_factory.h",
],
deps = [
"arena",
"call_size_estimator",
"call_spine",
"channel_args",
"ref_counted",
"resource_quota",
"//:gpr_platform",
"//:stats",
],
)
grpc_cc_library(
name = "call_destination",
hdrs = [
"lib/transport/call_destination.h",
],
deps = [
"call_spine",
"//:gpr_platform",
"//:orphanable",
],
)
grpc_cc_library(
name = "parsed_metadata",
srcs = [
@ -6928,11 +6974,14 @@ grpc_cc_library(
"channel_args_endpoint_config",
"chaotic_good_frame",
"chaotic_good_frame_header",
"chaotic_good_server_transport",
"chaotic_good_settings_metadata",
"closure",
"context",
"default_event_engine",
"error",
"error_utils",
"event_engine_common",
"event_engine_tcp_socket_utils",
"event_engine_wakeup_scheduler",
"grpc_promise_endpoint",
@ -6982,6 +7031,7 @@ grpc_cc_library(
"arena",
"channel_args",
"channel_args_endpoint_config",
"chaotic_good_client_transport",
"chaotic_good_frame",
"chaotic_good_frame_header",
"chaotic_good_settings_metadata",
@ -6989,11 +7039,14 @@ grpc_cc_library(
"context",
"default_event_engine",
"error",
"error_utils",
"event_engine_tcp_socket_utils",
"event_engine_wakeup_scheduler",
"grpc_promise_endpoint",
"inter_activity_latch",
"latch",
"memory_quota",
"metadata_batch",
"no_destruct",
"notification",
"race",
"resource_quota",

@ -16,7 +16,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/backend_metric.h"
#include "src/core/client_channel/backend_metric.h"
#include <string.h>

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKEND_METRIC_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKEND_METRIC_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_BACKEND_METRIC_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_BACKEND_METRIC_H
#include <grpc/support/port_platform.h>
@ -23,7 +23,7 @@
#include "absl/strings/string_view.h"
#include "src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h"
#include "src/core/load_balancing/backend_metric_data.h"
namespace grpc_core {
@ -44,4 +44,4 @@ const BackendMetricData* ParseBackendMetricData(
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKEND_METRIC_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_BACKEND_METRIC_H

@ -18,7 +18,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/backup_poller.h"
#include "src/core/client_channel/backup_poller.h"
#include <inttypes.h>

@ -16,8 +16,8 @@
//
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKUP_POLLER_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKUP_POLLER_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_BACKUP_POLLER_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_BACKUP_POLLER_H
#include <grpc/support/port_platform.h>
@ -34,4 +34,4 @@ void grpc_client_channel_start_backup_polling(
void grpc_client_channel_stop_backup_polling(
grpc_pollset_set* interested_parties);
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_BACKUP_POLLER_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_BACKUP_POLLER_H

@ -28,7 +28,7 @@
#include <grpc/support/log.h>
#include <grpc/support/time.h>
#include "src/core/ext/filters/client_channel/client_channel.h"
#include "src/core/client_channel/client_channel_filter.h"
#include "src/core/lib/channel/channel_fwd.h"
#include "src/core/lib/channel/channel_stack.h"
#include "src/core/lib/debug/trace.h"
@ -67,8 +67,8 @@ grpc_connectivity_state grpc_channel_check_connectivity_state(
(c_channel, try_to_connect));
grpc_core::Channel* channel = grpc_core::Channel::FromC(c_channel);
// Forward through to the underlying client channel.
grpc_core::ClientChannel* client_channel =
grpc_core::ClientChannel::GetFromChannel(channel);
grpc_core::ClientChannelFilter* client_channel =
grpc_core::ClientChannelFilter::GetFromChannel(channel);
if (GPR_UNLIKELY(client_channel == nullptr)) {
if (grpc_core::IsLameChannel(channel)) {
return GRPC_CHANNEL_TRANSIENT_FAILURE;
@ -81,23 +81,8 @@ grpc_connectivity_state grpc_channel_check_connectivity_state(
return client_channel->CheckConnectivityState(try_to_connect);
}
int grpc_channel_num_external_connectivity_watchers(grpc_channel* c_channel) {
grpc_core::Channel* channel = grpc_core::Channel::FromC(c_channel);
grpc_core::ClientChannel* client_channel =
grpc_core::ClientChannel::GetFromChannel(channel);
if (client_channel == nullptr) {
if (!grpc_core::IsLameChannel(channel)) {
gpr_log(GPR_ERROR,
"grpc_channel_num_external_connectivity_watchers called on "
"something that is not a client channel");
}
return 0;
}
return client_channel->NumExternalConnectivityWatchers();
}
int grpc_channel_support_connectivity_watcher(grpc_channel* channel) {
return grpc_core::ClientChannel::GetFromChannel(
return grpc_core::ClientChannelFilter::GetFromChannel(
grpc_core::Channel::FromC(channel)) != nullptr;
}
@ -115,8 +100,8 @@ class StateWatcher : public DualRefCounted<StateWatcher> {
state_(last_observed_state) {
GPR_ASSERT(grpc_cq_begin_op(cq, tag));
GRPC_CLOSURE_INIT(&on_complete_, WatchComplete, this, nullptr);
ClientChannel* client_channel =
ClientChannel::GetFromChannel(channel_.get());
ClientChannelFilter* client_channel =
ClientChannelFilter::GetFromChannel(channel_.get());
if (client_channel == nullptr) {
// If the target URI used to create the channel was invalid, channel
// stack initialization failed, and that caused us to create a lame
@ -145,7 +130,7 @@ class StateWatcher : public DualRefCounted<StateWatcher> {
private:
// A fire-and-forget object used to delay starting the timer until the
// ClientChannel actually starts the watch.
// ClientChannelFilter actually starts the watch.
class WatcherTimerInitState {
public:
WatcherTimerInitState(StateWatcher* state_watcher, Timestamp deadline)
@ -201,8 +186,8 @@ class StateWatcher : public DualRefCounted<StateWatcher> {
void TimeoutComplete() {
timer_fired_ = true;
// If this is a client channel (not a lame channel), cancel the watch.
ClientChannel* client_channel =
ClientChannel::GetFromChannel(channel_.get());
ClientChannelFilter* client_channel =
ClientChannelFilter::GetFromChannel(channel_.get());
if (client_channel != nullptr) {
client_channel->CancelExternalConnectivityWatcher(&on_complete_);
}

@ -18,7 +18,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/client_channel_channelz.h"
#include "src/core/client_channel/client_channel_channelz.h"
#include "absl/strings/str_cat.h"

@ -16,8 +16,8 @@
//
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_CHANNELZ_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_CHANNELZ_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_CHANNELZ_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_CHANNELZ_H
#include <grpc/support/port_platform.h>
@ -82,4 +82,4 @@ class SubchannelNode : public BaseNode {
} // namespace channelz
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_CHANNELZ_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_CHANNELZ_H

@ -18,7 +18,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/client_channel_factory.h"
#include "src/core/client_channel/client_channel_factory.h"
// Channel arg key for client channel factory.
#define GRPC_ARG_CLIENT_CHANNEL_FACTORY "grpc.client_channel_factory"

@ -14,14 +14,14 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H
#include <grpc/support/port_platform.h>
#include "absl/strings/string_view.h"
#include "src/core/ext/filters/client_channel/subchannel.h"
#include "src/core/client_channel/subchannel.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/iomgr/resolved_address.h"
@ -43,4 +43,4 @@ class ClientChannelFactory {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_FILTER_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_FILTER_H
#include <grpc/support/port_platform.h>
@ -37,12 +37,11 @@
#include <grpc/grpc.h>
#include <grpc/impl/connectivity_state.h>
#include "src/core/ext/filters/client_channel/client_channel_factory.h"
#include "src/core/ext/filters/client_channel/config_selector.h"
#include "src/core/ext/filters/client_channel/dynamic_filters.h"
#include "src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h"
#include "src/core/ext/filters/client_channel/subchannel.h"
#include "src/core/ext/filters/client_channel/subchannel_pool_interface.h"
#include "src/core/client_channel/client_channel_factory.h"
#include "src/core/client_channel/config_selector.h"
#include "src/core/client_channel/dynamic_filters.h"
#include "src/core/client_channel/subchannel.h"
#include "src/core/client_channel/subchannel_pool_interface.h"
#include "src/core/lib/channel/call_tracer.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/channel/channel_fwd.h"
@ -61,17 +60,18 @@
#include "src/core/lib/iomgr/error.h"
#include "src/core/lib/iomgr/iomgr_fwd.h"
#include "src/core/lib/iomgr/polling_entity.h"
#include "src/core/lib/load_balancing/lb_policy.h"
#include "src/core/lib/promise/activity.h"
#include "src/core/lib/promise/arena_promise.h"
#include "src/core/lib/resolver/resolver.h"
#include "src/core/lib/resource_quota/arena.h"
#include "src/core/lib/service_config/service_config.h"
#include "src/core/service_config/service_config.h"
#include "src/core/lib/slice/slice.h"
#include "src/core/lib/surface/channel.h"
#include "src/core/lib/transport/connectivity_state.h"
#include "src/core/lib/transport/metadata_batch.h"
#include "src/core/lib/transport/transport.h"
#include "src/core/load_balancing/backend_metric_data.h"
#include "src/core/load_balancing/lb_policy.h"
#include "src/core/resolver/resolver.h"
//
// Client channel filter
@ -87,8 +87,8 @@
// Channel arg key for server URI string.
#define GRPC_ARG_SERVER_URI "grpc.server_uri"
// Channel arg containing a pointer to the ClientChannel object.
#define GRPC_ARG_CLIENT_CHANNEL "grpc.internal.client_channel"
// Channel arg containing a pointer to the ClientChannelFilter object.
#define GRPC_ARG_CLIENT_CHANNEL "grpc.internal.client_channel_filter"
// Max number of batches that can be pending on a call at any given
// time. This includes one batch for each of the following ops:
@ -102,7 +102,7 @@
namespace grpc_core {
class ClientChannel {
class ClientChannelFilter {
public:
static const grpc_channel_filter kFilterVtableWithPromises;
static const grpc_channel_filter kFilterVtableWithoutPromises;
@ -115,9 +115,9 @@ class ClientChannel {
struct RawPointerChannelArgTag {};
static absl::string_view ChannelArgName() { return GRPC_ARG_CLIENT_CHANNEL; }
// Returns the ClientChannel object from channel, or null if channel
// Returns the ClientChannelFilter object from channel, or null if channel
// is not a client channel.
static ClientChannel* GetFromChannel(Channel* channel);
static ClientChannelFilter* GetFromChannel(Channel* channel);
static ArenaPromise<ServerMetadataHandle> MakeCallPromise(
grpc_channel_element* elem, CallArgs call_args,
@ -149,11 +149,6 @@ class ClientChannel {
this, on_complete, /*cancel=*/true);
}
int NumExternalConnectivityWatchers() const {
MutexLock lock(&external_watchers_mu_);
return static_cast<int>(external_watchers_.size());
}
// Starts and stops a connectivity watch. The watcher will be initially
// notified as soon as the state changes from initial_state and then on
// every subsequent state change until either the watch is stopped or
@ -196,7 +191,7 @@ class ClientChannel {
// via grpc_client_channel_watch_connectivity_state().
class ExternalConnectivityWatcher : public ConnectivityStateWatcherInterface {
public:
ExternalConnectivityWatcher(ClientChannel* chand,
ExternalConnectivityWatcher(ClientChannelFilter* chand,
grpc_polling_entity pollent,
grpc_connectivity_state* state,
grpc_closure* on_complete,
@ -205,7 +200,7 @@ class ClientChannel {
~ExternalConnectivityWatcher() override;
// Removes the watcher from the external_watchers_ map.
static void RemoveWatcherFromExternalWatchersMap(ClientChannel* chand,
static void RemoveWatcherFromExternalWatchersMap(ClientChannelFilter* chand,
grpc_closure* on_complete,
bool cancel);
@ -222,7 +217,7 @@ class ClientChannel {
void RemoveWatcherLocked()
ABSL_EXCLUSIVE_LOCKS_REQUIRED(*chand_->work_serializer_);
ClientChannel* chand_;
ClientChannelFilter* chand_;
grpc_polling_entity pollent_;
grpc_connectivity_state initial_state_;
grpc_connectivity_state* state_;
@ -231,8 +226,9 @@ class ClientChannel {
std::atomic<bool> done_{false};
};
ClientChannel(grpc_channel_element_args* args, grpc_error_handle* error);
~ClientChannel();
ClientChannelFilter(grpc_channel_element_args* args,
grpc_error_handle* error);
~ClientChannelFilter();
// Filter vtable functions.
static grpc_error_handle Init(grpc_channel_element* elem,
@ -378,15 +374,15 @@ class ClientChannel {
};
//
// ClientChannel::LoadBalancedCall
// ClientChannelFilter::LoadBalancedCall
//
// TODO(roth): As part of simplifying cancellation in the filter stack,
// this should no longer need to be ref-counted.
class ClientChannel::LoadBalancedCall
class ClientChannelFilter::LoadBalancedCall
: public InternallyRefCounted<LoadBalancedCall, UnrefCallDtor> {
public:
LoadBalancedCall(ClientChannel* chand,
LoadBalancedCall(ClientChannelFilter* chand,
grpc_call_context_element* call_context,
absl::AnyInvocable<void()> on_commit,
bool is_transparent_retry);
@ -396,15 +392,15 @@ class ClientChannel::LoadBalancedCall
// Called by channel when removing a call from the list of queued calls.
void RemoveCallFromLbQueuedCallsLocked()
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannel::lb_mu_);
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannelFilter::lb_mu_);
// Called by the channel for each queued call when a new picker
// becomes available.
virtual void RetryPickLocked()
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannel::lb_mu_) = 0;
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannelFilter::lb_mu_) = 0;
protected:
ClientChannel* chand() const { return chand_; }
ClientChannelFilter* chand() const { return chand_; }
ClientCallTracer::CallAttemptTracer* call_attempt_tracer() const {
return static_cast<ClientCallTracer::CallAttemptTracer*>(
call_context_[GRPC_CONTEXT_CALL_TRACER].value);
@ -458,13 +454,13 @@ class ClientChannel::LoadBalancedCall
grpc_error_handle* error);
// Adds the call to the channel's list of queued picks if not already present.
void AddCallToLbQueuedCallsLocked()
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannel::lb_mu_);
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannelFilter::lb_mu_);
// Called when adding the call to the LB queue.
virtual void OnAddToQueueLocked()
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannel::lb_mu_) = 0;
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannelFilter::lb_mu_) = 0;
ClientChannel* chand_;
ClientChannelFilter* chand_;
absl::AnyInvocable<void()> on_commit_;
@ -477,8 +473,8 @@ class ClientChannel::LoadBalancedCall
grpc_call_context_element* const call_context_;
};
class ClientChannel::FilterBasedLoadBalancedCall
: public ClientChannel::LoadBalancedCall {
class ClientChannelFilter::FilterBasedLoadBalancedCall
: public ClientChannelFilter::LoadBalancedCall {
public:
// If on_call_destruction_complete is non-null, then it will be
// invoked once the LoadBalancedCall is completely destroyed.
@ -486,7 +482,7 @@ class ClientChannel::FilterBasedLoadBalancedCall
// the LB call has a subchannel call and ensuring that the
// on_call_destruction_complete closure passed down from the surface
// is not invoked until after the subchannel call stack is destroyed.
FilterBasedLoadBalancedCall(ClientChannel* chand,
FilterBasedLoadBalancedCall(ClientChannelFilter* chand,
const grpc_call_element_args& args,
grpc_polling_entity* pollent,
grpc_closure* on_call_destruction_complete,
@ -555,10 +551,10 @@ class ClientChannel::FilterBasedLoadBalancedCall
void TryPick(bool was_queued);
void OnAddToQueueLocked() override
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannel::lb_mu_);
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannelFilter::lb_mu_);
void RetryPickLocked() override
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannel::lb_mu_);
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannelFilter::lb_mu_);
void CreateSubchannelCall();
@ -579,9 +575,8 @@ class ClientChannel::FilterBasedLoadBalancedCall
// Set when we fail inside the LB call.
grpc_error_handle failure_error_;
// Accessed while holding ClientChannel::lb_mu_.
LbQueuedCallCanceller* lb_call_canceller_
ABSL_GUARDED_BY(&ClientChannel::lb_mu_) = nullptr;
ABSL_GUARDED_BY(&ClientChannelFilter::lb_mu_) = nullptr;
RefCountedPtr<SubchannelCall> subchannel_call_;
@ -604,10 +599,10 @@ class ClientChannel::FilterBasedLoadBalancedCall
grpc_transport_stream_op_batch* pending_batches_[MAX_PENDING_BATCHES] = {};
};
class ClientChannel::PromiseBasedLoadBalancedCall
: public ClientChannel::LoadBalancedCall {
class ClientChannelFilter::PromiseBasedLoadBalancedCall
: public ClientChannelFilter::LoadBalancedCall {
public:
PromiseBasedLoadBalancedCall(ClientChannel* chand,
PromiseBasedLoadBalancedCall(ClientChannelFilter* chand,
absl::AnyInvocable<void()> on_commit,
bool is_transparent_retry);
@ -622,7 +617,7 @@ class ClientChannel::PromiseBasedLoadBalancedCall
void RetryPickLocked() override;
void OnAddToQueueLocked() override
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannel::lb_mu_);
ABSL_EXCLUSIVE_LOCKS_REQUIRED(&ClientChannelFilter::lb_mu_);
grpc_polling_entity pollent_;
ClientMetadataHandle client_initial_metadata_;
@ -633,4 +628,4 @@ class ClientChannel::PromiseBasedLoadBalancedCall
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_FILTER_H

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_INTERNAL_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_INTERNAL_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_INTERNAL_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_INTERNAL_H
#include <grpc/support/port_platform.h>
@ -28,14 +28,14 @@
#include "src/core/lib/channel/call_tracer.h"
#include "src/core/lib/channel/context.h"
#include "src/core/lib/gprpp/unique_type_name.h"
#include "src/core/lib/load_balancing/lb_policy.h"
#include "src/core/lib/resource_quota/arena.h"
#include "src/core/lib/service_config/service_config_call_data.h"
#include "src/core/service_config/service_config_call_data.h"
#include "src/core/load_balancing/lb_policy.h"
//
// This file contains internal interfaces used to allow various plugins
// (filters, LB policies, etc) to access internal data provided by the
// ClientChannel that is not normally accessible via external APIs.
// ClientChannelFilter that is not normally accessible via external APIs.
//
// Channel arg key for health check service name.
@ -76,4 +76,4 @@ class ClientChannelServiceConfigCallData : public ServiceConfigCallData {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_INTERNAL_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_INTERNAL_H

@ -22,9 +22,9 @@
#include <grpc/impl/channel_arg_names.h>
#include "src/core/ext/filters/client_channel/client_channel.h"
#include "src/core/ext/filters/client_channel/client_channel_service_config.h"
#include "src/core/ext/filters/client_channel/retry_service_config.h"
#include "src/core/client_channel/client_channel_filter.h"
#include "src/core/client_channel/client_channel_service_config.h"
#include "src/core/client_channel/retry_service_config.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/config/core_configuration.h"
#include "src/core/lib/surface/channel_stack_type.h"
@ -42,12 +42,12 @@ void BuildClientChannelConfiguration(CoreConfiguration::Builder* builder) {
internal::RetryServiceConfigParser::Register(builder);
builder->channel_init()
->RegisterFilter(GRPC_CLIENT_CHANNEL,
&ClientChannel::kFilterVtableWithPromises)
&ClientChannelFilter::kFilterVtableWithPromises)
.If(IsEverythingBelowClientChannelPromiseSafe)
.Terminal();
builder->channel_init()
->RegisterFilter(GRPC_CLIENT_CHANNEL,
&ClientChannel::kFilterVtableWithoutPromises)
&ClientChannelFilter::kFilterVtableWithoutPromises)
.IfNot(IsEverythingBelowClientChannelPromiseSafe)
.Terminal();
}

@ -16,7 +16,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/client_channel_service_config.h"
#include "src/core/client_channel/client_channel_service_config.h"
#include <map>
#include <utility>
@ -27,7 +27,7 @@
#include "absl/strings/str_cat.h"
#include "absl/types/optional.h"
#include "src/core/lib/load_balancing/lb_policy_registry.h"
#include "src/core/load_balancing/lb_policy_registry.h"
// As per the retry design, we do not allow more than 5 retry attempts.
#define MAX_MAX_RETRY_ATTEMPTS 5

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_SERVICE_CONFIG_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_SERVICE_CONFIG_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_SERVICE_CONFIG_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_SERVICE_CONFIG_H
#include <grpc/support/port_platform.h>
@ -35,8 +35,8 @@
#include "src/core/lib/json/json.h"
#include "src/core/lib/json/json_args.h"
#include "src/core/lib/json/json_object_loader.h"
#include "src/core/lib/load_balancing/lb_policy.h"
#include "src/core/lib/service_config/service_config_parser.h"
#include "src/core/service_config/service_config_parser.h"
#include "src/core/load_balancing/lb_policy.h"
namespace grpc_core {
namespace internal {
@ -108,4 +108,4 @@ class ClientChannelServiceConfigParser : public ServiceConfigParser::Parser {
} // namespace internal
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_SERVICE_CONFIG_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_CLIENT_CHANNEL_SERVICE_CONFIG_H

@ -16,7 +16,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/config_selector.h"
#include "src/core/client_channel/config_selector.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/gpr/useful.h"

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CONFIG_SELECTOR_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CONFIG_SELECTOR_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_CONFIG_SELECTOR_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_CONFIG_SELECTOR_H
#include <grpc/support/port_platform.h>
@ -30,13 +30,13 @@
#include <grpc/grpc.h>
#include <grpc/support/log.h>
#include "src/core/ext/filters/client_channel/client_channel_internal.h"
#include "src/core/client_channel/client_channel_internal.h"
#include "src/core/lib/channel/channel_fwd.h"
#include "src/core/lib/gpr/useful.h"
#include "src/core/lib/gprpp/ref_counted.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/resource_quota/arena.h"
#include "src/core/lib/service_config/service_config.h"
#include "src/core/service_config/service_config.h"
#include "src/core/lib/slice/slice.h"
#include "src/core/lib/transport/metadata_batch.h"
@ -122,4 +122,4 @@ class DefaultConfigSelector : public ConfigSelector {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CONFIG_SELECTOR_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_CONFIG_SELECTOR_H

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CONNECTOR_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CONNECTOR_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_CONNECTOR_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_CONNECTOR_H
#include <grpc/support/port_platform.h>
@ -84,4 +84,4 @@ class SubchannelConnector : public InternallyRefCounted<SubchannelConnector> {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CONNECTOR_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_CONNECTOR_H

@ -16,7 +16,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/dynamic_filters.h"
#include "src/core/client_channel/dynamic_filters.h"
#include <stddef.h>

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_DYNAMIC_FILTERS_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_DYNAMIC_FILTERS_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_DYNAMIC_FILTERS_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_DYNAMIC_FILTERS_H
#include <grpc/support/port_platform.h>
@ -107,4 +107,4 @@ class DynamicFilters : public RefCounted<DynamicFilters> {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_DYNAMIC_FILTERS_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_DYNAMIC_FILTERS_H

@ -18,11 +18,11 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/global_subchannel_pool.h"
#include "src/core/client_channel/global_subchannel_pool.h"
#include <utility>
#include "src/core/ext/filters/client_channel/subchannel.h"
#include "src/core/client_channel/subchannel.h"
namespace grpc_core {

@ -16,8 +16,8 @@
//
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_GLOBAL_SUBCHANNEL_POOL_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_GLOBAL_SUBCHANNEL_POOL_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_GLOBAL_SUBCHANNEL_POOL_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_GLOBAL_SUBCHANNEL_POOL_H
#include <grpc/support/port_platform.h>
@ -25,7 +25,7 @@
#include "absl/base/thread_annotations.h"
#include "src/core/ext/filters/client_channel/subchannel_pool_interface.h"
#include "src/core/client_channel/subchannel_pool_interface.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/gprpp/sync.h"
@ -60,4 +60,4 @@ class GlobalSubchannelPool final : public SubchannelPoolInterface {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_GLOBAL_SUBCHANNEL_POOL_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_GLOBAL_SUBCHANNEL_POOL_H

@ -18,7 +18,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/http_proxy_mapper.h"
#include "src/core/client_channel/http_proxy_mapper.h"
#include <stdint.h>
#include <string.h>
@ -30,6 +30,7 @@
#include "absl/status/status.h"
#include "absl/status/statusor.h"
#include "absl/strings/ascii.h"
#include "absl/strings/escaping.h"
#include "absl/strings/match.h"
#include "absl/strings/numbers.h"
#include "absl/strings/str_cat.h"
@ -45,6 +46,7 @@
#include "src/core/lib/address_utils/parse_address.h"
#include "src/core/lib/address_utils/sockaddr_utils.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/experiments/experiments.h"
#include "src/core/lib/gpr/string.h"
#include "src/core/lib/gprpp/env.h"
#include "src/core/lib/gprpp/host_port.h"
@ -258,11 +260,17 @@ absl::optional<std::string> HttpProxyMapper::MapName(
MaybeAddDefaultPort(absl::StripPrefix(uri->path(), "/")));
if (user_cred.has_value()) {
// Use base64 encoding for user credentials as stated in RFC 7617
auto encoded_user_cred = UniquePtr<char>(
grpc_base64_encode(user_cred->data(), user_cred->length(), 0, 0));
std::string encoded_user_cred;
if (IsAbslBase64Enabled()) {
encoded_user_cred = absl::Base64Escape(*user_cred);
} else {
UniquePtr<char> tmp(
grpc_base64_encode(user_cred->data(), user_cred->length(), 0, 0));
encoded_user_cred = tmp.get();
}
*args = args->Set(
GRPC_ARG_HTTP_CONNECT_HEADERS,
absl::StrCat("Proxy-Authorization:Basic ", encoded_user_cred.get()));
absl::StrCat("Proxy-Authorization:Basic ", encoded_user_cred));
}
return name_to_resolve;
}

@ -16,8 +16,8 @@
//
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_HTTP_PROXY_MAPPER_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_HTTP_PROXY_MAPPER_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_HTTP_PROXY_MAPPER_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_HTTP_PROXY_MAPPER_H
#include <grpc/support/port_platform.h>
@ -50,4 +50,4 @@ void RegisterHttpProxyMapper(CoreConfiguration::Builder* builder);
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_HTTP_PROXY_MAPPER_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_HTTP_PROXY_MAPPER_H

@ -18,13 +18,13 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/local_subchannel_pool.h"
#include "src/core/client_channel/local_subchannel_pool.h"
#include <utility>
#include <grpc/support/log.h>
#include "src/core/ext/filters/client_channel/subchannel.h"
#include "src/core/client_channel/subchannel.h"
namespace grpc_core {

@ -16,14 +16,14 @@
//
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_LOCAL_SUBCHANNEL_POOL_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_LOCAL_SUBCHANNEL_POOL_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_LOCAL_SUBCHANNEL_POOL_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_LOCAL_SUBCHANNEL_POOL_H
#include <grpc/support/port_platform.h>
#include <map>
#include "src/core/ext/filters/client_channel/subchannel_pool_interface.h"
#include "src/core/client_channel/subchannel_pool_interface.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h"
namespace grpc_core {
@ -56,4 +56,4 @@ class LocalSubchannelPool final : public SubchannelPoolInterface {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_LOCAL_SUBCHANNEL_POOL_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_LOCAL_SUBCHANNEL_POOL_H

@ -16,7 +16,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/retry_filter.h"
#include "src/core/client_channel/retry_filter.h"
#include <string>
@ -26,17 +26,17 @@
#include <grpc/event_engine/event_engine.h>
#include "src/core/ext/filters/client_channel/client_channel.h"
#include "src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h"
#include "src/core/ext/filters/client_channel/retry_service_config.h"
#include "src/core/ext/filters/client_channel/retry_throttle.h"
#include "src/core/client_channel/client_channel_filter.h"
#include "src/core/client_channel/retry_filter_legacy_call_data.h"
#include "src/core/client_channel/retry_service_config.h"
#include "src/core/client_channel/retry_throttle.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/channel/channel_stack.h"
#include "src/core/lib/debug/trace.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/iomgr/error.h"
#include "src/core/lib/service_config/service_config.h"
#include "src/core/lib/service_config/service_config_call_data.h"
#include "src/core/service_config/service_config.h"
#include "src/core/service_config/service_config_call_data.h"
#include "src/core/lib/uri/uri_parser.h"
//
@ -98,7 +98,7 @@ namespace grpc_core {
//
RetryFilter::RetryFilter(const ChannelArgs& args, grpc_error_handle* error)
: client_channel_(args.GetObject<ClientChannel>()),
: client_channel_(args.GetObject<ClientChannelFilter>()),
event_engine_(args.GetObject<EventEngine>()),
per_rpc_retry_buffer_size_(GetMaxPerRpcRetryBufferSize(args)),
service_config_parser_index_(

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_FILTER_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_FILTER_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_FILTER_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_FILTER_H
#include <grpc/support/port_platform.h>
@ -31,9 +31,9 @@
#include <grpc/impl/channel_arg_names.h>
#include <grpc/support/log.h>
#include "src/core/ext/filters/client_channel/client_channel.h"
#include "src/core/ext/filters/client_channel/retry_service_config.h"
#include "src/core/ext/filters/client_channel/retry_throttle.h"
#include "src/core/client_channel/client_channel_filter.h"
#include "src/core/client_channel/retry_service_config.h"
#include "src/core/client_channel/retry_throttle.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/channel/channel_fwd.h"
#include "src/core/lib/channel/channel_stack.h"
@ -72,7 +72,7 @@ class RetryFilter {
return retry_throttle_data_;
}
ClientChannel* client_channel() const { return client_channel_; }
ClientChannelFilter* client_channel() const { return client_channel_; }
size_t per_rpc_retry_buffer_size() const {
return per_rpc_retry_buffer_size_;
@ -110,7 +110,7 @@ class RetryFilter {
static void GetChannelInfo(grpc_channel_element* /*elem*/,
const grpc_channel_info* /*info*/) {}
ClientChannel* client_channel_;
ClientChannelFilter* client_channel_;
grpc_event_engine::experimental::EventEngine* const event_engine_;
size_t per_rpc_retry_buffer_size_;
RefCountedPtr<internal::ServerRetryThrottleData> retry_throttle_data_;
@ -119,4 +119,4 @@ class RetryFilter {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_FILTER_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_FILTER_H

@ -14,7 +14,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h"
#include "src/core/client_channel/retry_filter_legacy_call_data.h"
#include <inttypes.h>
@ -26,9 +26,9 @@
#include <grpc/support/log.h>
#include "src/core/ext/filters/client_channel/client_channel_internal.h"
#include "src/core/ext/filters/client_channel/retry_service_config.h"
#include "src/core/ext/filters/client_channel/retry_throttle.h"
#include "src/core/client_channel/client_channel_internal.h"
#include "src/core/client_channel/retry_service_config.h"
#include "src/core/client_channel/retry_throttle.h"
#include "src/core/lib/backoff/backoff.h"
#include "src/core/lib/channel/channel_stack.h"
#include "src/core/lib/channel/context.h"
@ -310,8 +310,9 @@ namespace {
void StartBatchInCallCombiner(void* arg, grpc_error_handle /*ignored*/) {
grpc_transport_stream_op_batch* batch =
static_cast<grpc_transport_stream_op_batch*>(arg);
auto* lb_call = static_cast<ClientChannel::FilterBasedLoadBalancedCall*>(
batch->handler_private.extra_arg);
auto* lb_call =
static_cast<ClientChannelFilter::FilterBasedLoadBalancedCall*>(
batch->handler_private.extra_arg);
// Note: This will release the call combiner.
lb_call->StartTransportStreamOpBatch(batch);
}
@ -1710,7 +1711,7 @@ void RetryFilter::LegacyCallData::StartTransportStreamOpBatch(
call_attempt_->StartRetriableBatches();
}
OrphanablePtr<ClientChannel::FilterBasedLoadBalancedCall>
OrphanablePtr<ClientChannelFilter::FilterBasedLoadBalancedCall>
RetryFilter::LegacyCallData::CreateLoadBalancedCall(
absl::AnyInvocable<void()> on_commit, bool is_transparent_retry) {
grpc_call_element_args args = {owning_call_, nullptr, call_context_,

@ -12,8 +12,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_FILTER_LEGACY_CALL_DATA_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_FILTER_LEGACY_CALL_DATA_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_FILTER_LEGACY_CALL_DATA_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_FILTER_LEGACY_CALL_DATA_H
#include <grpc/support/port_platform.h>
@ -30,10 +30,10 @@
#include <grpc/slice.h>
#include <grpc/status.h>
#include "src/core/ext/filters/client_channel/client_channel.h"
#include "src/core/ext/filters/client_channel/retry_filter.h"
#include "src/core/ext/filters/client_channel/retry_service_config.h"
#include "src/core/ext/filters/client_channel/retry_throttle.h"
#include "src/core/client_channel/client_channel_filter.h"
#include "src/core/client_channel/retry_filter.h"
#include "src/core/client_channel/retry_service_config.h"
#include "src/core/client_channel/retry_throttle.h"
#include "src/core/lib/backoff/backoff.h"
#include "src/core/lib/channel/channel_fwd.h"
#include "src/core/lib/channel/channel_stack.h"
@ -256,7 +256,7 @@ class RetryFilter::LegacyCallData {
void MaybeCancelPerAttemptRecvTimer();
LegacyCallData* calld_;
OrphanablePtr<ClientChannel::FilterBasedLoadBalancedCall> lb_call_;
OrphanablePtr<ClientChannelFilter::FilterBasedLoadBalancedCall> lb_call_;
bool lb_call_committed_ = false;
grpc_closure on_per_attempt_recv_timer_;
@ -363,7 +363,7 @@ class RetryFilter::LegacyCallData {
void AddClosureToStartTransparentRetry(CallCombinerClosureList* closures);
static void StartTransparentRetry(void* arg, grpc_error_handle error);
OrphanablePtr<ClientChannel::FilterBasedLoadBalancedCall>
OrphanablePtr<ClientChannelFilter::FilterBasedLoadBalancedCall>
CreateLoadBalancedCall(absl::AnyInvocable<void()> on_commit,
bool is_transparent_retry);
@ -394,7 +394,8 @@ class RetryFilter::LegacyCallData {
// LB call used when we've committed to a call attempt and the retry
// state for that attempt is no longer needed. This provides a fast
// path for long-running streaming calls that minimizes overhead.
OrphanablePtr<ClientChannel::FilterBasedLoadBalancedCall> committed_call_;
OrphanablePtr<ClientChannelFilter::FilterBasedLoadBalancedCall>
committed_call_;
// When are are not yet fully committed to a particular call (i.e.,
// either we might still retry or we have committed to the call but
@ -439,4 +440,4 @@ class RetryFilter::LegacyCallData {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_FILTER_LEGACY_CALL_DATA_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_FILTER_LEGACY_CALL_DATA_H

@ -16,7 +16,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/retry_service_config.h"
#include "src/core/client_channel/retry_service_config.h"
#include <map>
#include <string>

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_SERVICE_CONFIG_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_SERVICE_CONFIG_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_SERVICE_CONFIG_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_SERVICE_CONFIG_H
#include <grpc/support/port_platform.h>
@ -35,7 +35,7 @@
#include "src/core/lib/json/json.h"
#include "src/core/lib/json/json_args.h"
#include "src/core/lib/json/json_object_loader.h"
#include "src/core/lib/service_config/service_config_parser.h"
#include "src/core/service_config/service_config_parser.h"
namespace grpc_core {
namespace internal {
@ -102,4 +102,4 @@ class RetryServiceConfigParser : public ServiceConfigParser::Parser {
} // namespace internal
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_SERVICE_CONFIG_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_SERVICE_CONFIG_H

@ -18,7 +18,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/retry_throttle.h"
#include "src/core/client_channel/retry_throttle.h"
#include <map>
#include <string>

@ -16,8 +16,8 @@
//
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_THROTTLE_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_THROTTLE_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_THROTTLE_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_THROTTLE_H
#include <grpc/support/port_platform.h>
@ -89,4 +89,4 @@ class ServerRetryThrottleMap {
} // namespace internal
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RETRY_THROTTLE_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_RETRY_THROTTLE_H

@ -42,10 +42,10 @@
#include "src/core/lib/promise/arena_promise.h"
#include "src/core/lib/promise/context.h"
#include "src/core/lib/resource_quota/arena.h"
#include "src/core/lib/service_config/service_config.h"
#include "src/core/lib/service_config/service_config_call_data.h"
#include "src/core/lib/service_config/service_config_impl.h"
#include "src/core/lib/service_config/service_config_parser.h"
#include "src/core/service_config/service_config.h"
#include "src/core/service_config/service_config_call_data.h"
#include "src/core/service_config/service_config_impl.h"
#include "src/core/service_config/service_config_parser.h"
#include "src/core/lib/surface/channel_stack_type.h"
#include "src/core/lib/transport/metadata_batch.h"
#include "src/core/lib/transport/transport.h"

@ -16,7 +16,7 @@
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/subchannel.h"
#include "src/core/client_channel/subchannel.h"
#include <inttypes.h>
#include <limits.h>
@ -37,7 +37,7 @@
#include <grpc/status.h>
#include <grpc/support/log.h>
#include "src/core/ext/filters/client_channel/subchannel_pool_interface.h"
#include "src/core/client_channel/subchannel_pool_interface.h"
#include "src/core/lib/address_utils/sockaddr_utils.h"
#include "src/core/lib/backoff/backoff.h"
#include "src/core/lib/channel/channel_args.h"

@ -14,8 +14,8 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_SUBCHANNEL_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_SUBCHANNEL_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_SUBCHANNEL_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_SUBCHANNEL_H
#include <grpc/support/port_platform.h>
@ -31,9 +31,9 @@
#include <grpc/event_engine/event_engine.h>
#include <grpc/impl/connectivity_state.h>
#include "src/core/ext/filters/client_channel/client_channel_channelz.h"
#include "src/core/ext/filters/client_channel/connector.h"
#include "src/core/ext/filters/client_channel/subchannel_pool_interface.h"
#include "src/core/client_channel/client_channel_channelz.h"
#include "src/core/client_channel/connector.h"
#include "src/core/client_channel/subchannel_pool_interface.h"
#include "src/core/lib/backoff/backoff.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/channel/channel_fwd.h"
@ -384,4 +384,4 @@ class Subchannel : public DualRefCounted<Subchannel> {
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_SUBCHANNEL_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_SUBCHANNEL_H

@ -14,14 +14,14 @@
// limitations under the License.
//
#ifndef GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_SUBCHANNEL_INTERFACE_INTERNAL_H
#define GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_SUBCHANNEL_INTERFACE_INTERNAL_H
#ifndef GRPC_SRC_CORE_CLIENT_CHANNEL_SUBCHANNEL_INTERFACE_INTERNAL_H
#define GRPC_SRC_CORE_CLIENT_CHANNEL_SUBCHANNEL_INTERFACE_INTERNAL_H
#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/subchannel.h"
#include "src/core/client_channel/subchannel.h"
#include "src/core/lib/gprpp/unique_type_name.h"
#include "src/core/lib/load_balancing/subchannel_interface.h"
#include "src/core/load_balancing/subchannel_interface.h"
namespace grpc_core {
@ -38,4 +38,4 @@ class InternalSubchannelDataWatcherInterface
} // namespace grpc_core
#endif // GRPC_SRC_CORE_EXT_FILTERS_CLIENT_CHANNEL_SUBCHANNEL_INTERFACE_INTERNAL_H
#endif // GRPC_SRC_CORE_CLIENT_CHANNEL_SUBCHANNEL_INTERFACE_INTERNAL_H

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save