Browse Source

intermediate changes
ref:953ca886ec160075b38c0f3614de029b423f0a9e

arcadia-devtools 3 years ago
parent
commit
3dd665b514

+ 19 - 18
CMakeLists.darwin.txt

@@ -345,40 +345,41 @@ add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/meta)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/internal/raw_logging)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/log_severity)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/internal/throw_delegate)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/numeric)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/absl_strings_internal)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/str_format)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/synchronization)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/status)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/internal/low_level_alloc)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/internal/throw_delegate)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/debugging)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/debugging/stacktrace)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/debugging/symbolize)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/demangle)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/numeric)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/absl_strings_internal)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/profiling/internal/exponential_biased)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/cord)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/absl_cord_internal)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_functions)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_handle)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/synchronization)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/synchronization/internal)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/time)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/time/civil_time)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/time/time_zone)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_info)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types/bad_optional_access)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/algorithm)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/functional)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/utility)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/str_format)
 add_subdirectory(contrib/libs/grpc/third_party/address_sorting)
 add_subdirectory(contrib/libs/grpc/third_party/upb)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/hash)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/city)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/hash/internal)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types/bad_optional_access)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types/bad_variant_access)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types/internal)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/status)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/profiling/internal/exponential_biased)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/cord)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/absl_cord_internal)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_functions)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_handle)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_info)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/algorithm)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/functional)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/utility)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/status/statusor)
 add_subdirectory(contrib/libs/grpc/grpc++)
 add_subdirectory(library/cpp/grpc/server)
 add_subdirectory(library/cpp/monlib/dynamic_counters/percentile)

+ 19 - 18
CMakeLists.linux.txt

@@ -426,40 +426,41 @@ add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/meta)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/internal/raw_logging)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/log_severity)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/internal/throw_delegate)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/numeric)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/absl_strings_internal)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/str_format)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/synchronization)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/status)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/internal/low_level_alloc)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/base/internal/throw_delegate)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/debugging)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/debugging/stacktrace)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/debugging/symbolize)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/demangle)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/numeric)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/absl_strings_internal)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/profiling/internal/exponential_biased)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/cord)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/absl_cord_internal)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_functions)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_handle)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/synchronization)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/synchronization/internal)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/time)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/time/civil_time)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/time/time_zone)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_info)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types/bad_optional_access)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/algorithm)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/functional)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/utility)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/str_format)
 add_subdirectory(contrib/libs/grpc/third_party/address_sorting)
 add_subdirectory(contrib/libs/grpc/third_party/upb)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/hash)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/city)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/hash/internal)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types/bad_optional_access)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types/bad_variant_access)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types)
 add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/types/internal)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/status)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/profiling/internal/exponential_biased)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/cord)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/absl_cord_internal)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_functions)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_handle)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/strings/internal/cordz_info)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/algorithm)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/functional)
-add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/utility)
+add_subdirectory(contrib/restricted/abseil-cpp-tstring/y_absl/status/statusor)
 add_subdirectory(contrib/libs/grpc/grpc++)
 add_subdirectory(library/cpp/grpc/server)
 add_subdirectory(library/cpp/monlib/dynamic_counters/percentile)

+ 3 - 3
build/prebuilt/contrib/tools/protoc/plugins/grpc_cpp/ya.make.resource

@@ -1,9 +1,9 @@
 IF (OS_DARWIN AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584304489)
+    SET(SANDBOX_RESOURCE_ID 2849944076)
 ELSEIF (OS_LINUX AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584305537)
+    SET(SANDBOX_RESOURCE_ID 2849945306)
 ELSEIF (OS_WINDOWS AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584303873)
+    SET(SANDBOX_RESOURCE_ID 2849942782)
 ELSE()
     SET(SANDBOX_RESOURCE_ID)
 ENDIF()

+ 3 - 3
build/prebuilt/contrib/tools/protoc/plugins/grpc_java/ya.make.resource

@@ -1,9 +1,9 @@
 IF (OS_DARWIN AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584508133)
+    SET(SANDBOX_RESOURCE_ID 2849955612)
 ELSEIF (OS_LINUX AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584508870)
+    SET(SANDBOX_RESOURCE_ID 2849956043)
 ELSEIF (OS_WINDOWS AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584507401)
+    SET(SANDBOX_RESOURCE_ID 2849955104)
 ELSE()
     SET(SANDBOX_RESOURCE_ID)
 ENDIF()

+ 3 - 3
build/prebuilt/contrib/tools/protoc/plugins/grpc_python/ya.make.resource

@@ -1,9 +1,9 @@
 IF (OS_DARWIN AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584497118)
+    SET(SANDBOX_RESOURCE_ID 2849853251)
 ELSEIF (OS_LINUX AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584497759)
+    SET(SANDBOX_RESOURCE_ID 2849854102)
 ELSEIF (OS_WINDOWS AND ARCH_X86_64)
-    SET(SANDBOX_RESOURCE_ID 2584496517)
+    SET(SANDBOX_RESOURCE_ID 2849851866)
 ELSE()
     SET(SANDBOX_RESOURCE_ID)
 ENDIF()

+ 134 - 26
contrib/libs/grpc/.yandex_meta/devtools.copyrights.report

@@ -40,6 +40,31 @@ BELONGS src/proto/grpc/status/ya.make
     Files with this license:
         src/proto/grpc/status/status.proto [1:1]
 
+KEEP     COPYRIGHT_SERVICE_LABEL 06745079442081a41390888905fc6bdb
+BELONGS src/core/lib/ya.make test/cpp/end2end/ya.make ya.make
+    License text:
+        // Copyright 2021 gRPC authors.
+    Scancode info:
+        Original SPDX id: COPYRIGHT_SERVICE_LABEL
+        Score           : 100.00
+        Match type      : COPYRIGHT
+    Files with this license:
+        include/grpcpp/ext/admin_services.h [3:3]
+        src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc [2:2]
+        src/core/ext/filters/fault_injection/fault_injection_filter.cc [2:2]
+        src/core/ext/filters/fault_injection/fault_injection_filter.h [2:2]
+        src/core/ext/filters/fault_injection/service_config_parser.cc [2:2]
+        src/core/ext/filters/fault_injection/service_config_parser.h [2:2]
+        src/core/ext/xds/xds_http_fault_filter.cc [2:2]
+        src/core/ext/xds/xds_http_fault_filter.h [2:2]
+        src/core/ext/xds/xds_http_filters.cc [2:2]
+        src/core/ext/xds/xds_http_filters.h [2:2]
+        src/core/lib/matchers/matchers.cc [1:1]
+        src/core/lib/matchers/matchers.h [1:1]
+        src/core/lib/security/authorization/rbac_policy.h [1:1]
+        src/core/lib/security/authorization/rbac_translator.h [1:1]
+        test/cpp/end2end/admin_services_end2end_test.cc [3:3]
+
 KEEP     COPYRIGHT_SERVICE_LABEL 0f2ee97b72f8652f2f1b888d86348121
 BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/testing/duplicate/ya.make src/proto/grpc/testing/ya.make src/python/grpcio/ya.make src/python/grpcio_health_checking/ya.make src/python/grpcio_tests/ya.make test/core/util/ya.make test/cpp/end2end/ya.make test/cpp/util/ya.make ya.make
     License text:
@@ -172,7 +197,7 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/testing/dupli
         src/compiler/schema_interface.h [3:3]
         src/core/ext/filters/census/grpc_context.cc [3:3]
         src/core/ext/filters/client_channel/channel_connectivity.cc [3:3]
-        src/core/ext/filters/client_channel/client_channel.cc [3:3]
+        src/core/ext/filters/client_channel/client_channel.cc [2:2]
         src/core/ext/filters/client_channel/client_channel.h [3:3]
         src/core/ext/filters/client_channel/client_channel_factory.cc [3:3]
         src/core/ext/filters/client_channel/client_channel_factory.h [3:3]
@@ -193,7 +218,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/testing/dupli
         src/core/ext/filters/client_channel/resolver_factory.h [3:3]
         src/core/ext/filters/client_channel/resolver_registry.cc [3:3]
         src/core/ext/filters/client_channel/resolver_registry.h [3:3]
-        src/core/ext/filters/client_channel/resolving_lb_policy.cc [3:3]
         src/core/ext/filters/client_channel/service_config.cc [2:2]
         src/core/ext/filters/client_channel/service_config_parser.cc [2:2]
         src/core/ext/filters/client_channel/subchannel.cc [3:3]
@@ -339,7 +363,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/testing/dupli
         src/core/lib/iomgr/iomgr.h [3:3]
         src/core/lib/iomgr/iomgr_internal.h [3:3]
         src/core/lib/iomgr/iomgr_posix.cc [3:3]
-        src/core/lib/iomgr/iomgr_posix.h [3:3]
         src/core/lib/iomgr/iomgr_posix_cfstream.cc [3:3]
         src/core/lib/iomgr/iomgr_windows.cc [3:3]
         src/core/lib/iomgr/is_epollexclusive_available.h [3:3]
@@ -763,7 +786,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/testing/ya.ma
         include/grpc++/test/server_context_test_spouse.h [3:3]
         include/grpc/support/thd_id.h [3:3]
         include/grpcpp/ext/channelz_service_plugin.h [3:3]
-        include/grpcpp/ext/channelz_service_plugin_impl.h [3:3]
         include/grpcpp/ext/server_load_reporting.h [3:3]
         include/grpcpp/generic/async_generic_service.h [3:3]
         include/grpcpp/impl/codegen/call.h [3:3]
@@ -774,6 +796,7 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/testing/ya.ma
         include/grpcpp/impl/codegen/intercepted_channel.h [3:3]
         include/grpcpp/impl/codegen/interceptor.h [3:3]
         include/grpcpp/impl/codegen/interceptor_common.h [3:3]
+        include/grpcpp/impl/codegen/method_handler_impl.h [3:3]
         include/grpcpp/impl/codegen/proto_buffer_writer.h [3:3]
         include/grpcpp/impl/codegen/server_interceptor.h [3:3]
         include/grpcpp/support/client_callback.h [3:3]
@@ -790,16 +813,17 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/testing/ya.ma
         src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h [2:2]
         src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h [3:3]
         src/core/ext/filters/client_channel/lb_policy/priority/priority.cc [2:2]
+        src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc [2:2]
+        src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h [2:2]
         src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc [2:2]
-        src/core/ext/filters/client_channel/lb_policy/xds/eds.cc [2:2]
-        src/core/ext/filters/client_channel/lb_policy/xds/eds_drop.cc [2:2]
-        src/core/ext/filters/client_channel/lb_policy/xds/xds.h [3:3]
+        src/core/ext/filters/client_channel/lb_policy/xds/xds.h [2:2]
+        src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc [2:2]
         src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc [2:2]
+        src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc [2:2]
         src/core/ext/filters/client_channel/local_subchannel_pool.cc [3:3]
         src/core/ext/filters/client_channel/local_subchannel_pool.h [3:3]
         src/core/ext/filters/client_channel/resolver_result_parsing.cc [3:3]
         src/core/ext/filters/client_channel/resolver_result_parsing.h [3:3]
-        src/core/ext/filters/client_channel/resolving_lb_policy.h [3:3]
         src/core/ext/filters/client_channel/server_address.cc [3:3]
         src/core/ext/filters/client_channel/server_address.h [3:3]
         src/core/ext/filters/client_channel/subchannel_pool_interface.cc [3:3]
@@ -1111,7 +1135,7 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/python/grpcio/ya.make sr
         test/cpp/end2end/time_change_test.cc [3:3]
 
 KEEP     COPYRIGHT_SERVICE_LABEL 249314deafd9b3e055b23b29bdbf09f3
-BELONGS src/core/lib/ya.make src/python/grpcio/ya.make src/python/grpcio_reflection/ya.make src/python/grpcio_tests/ya.make test/core/util/ya.make ya.make
+BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/python/grpcio/ya.make src/python/grpcio_reflection/ya.make src/python/grpcio_tests/ya.make test/core/util/ya.make test/cpp/end2end/ya.make ya.make
     License text:
          * Copyright 2020 gRPC authors.
     Scancode info:
@@ -1121,29 +1145,43 @@ BELONGS src/core/lib/ya.make src/python/grpcio/ya.make src/python/grpcio_reflect
     Files with this license:
         include/grpc/impl/codegen/sync_abseil.h [3:3]
         include/grpc/support/sync_abseil.h [3:3]
+        include/grpcpp/security/tls_certificate_provider.h [2:2]
         include/grpcpp/test/channel_test_peer.h [3:3]
+        include/grpcpp/xds_server_builder.h [3:3]
         src/core/ext/filters/client_channel/config_selector.cc [2:2]
         src/core/ext/filters/client_channel/config_selector.h [2:2]
+        src/core/ext/filters/client_channel/dynamic_filters.cc [2:2]
+        src/core/ext/filters/client_channel/dynamic_filters.h [2:2]
         src/core/ext/filters/client_channel/lb_policy/address_filtering.cc [2:2]
         src/core/ext/filters/client_channel/lb_policy/address_filtering.h [2:2]
+        src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h [2:2]
         src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc [2:2]
         src/core/ext/filters/http/message_compress/message_decompress_filter.cc [3:3]
         src/core/ext/filters/http/message_compress/message_decompress_filter.h [3:3]
         src/core/ext/xds/certificate_provider_factory.h [3:3]
         src/core/ext/xds/certificate_provider_registry.cc [3:3]
         src/core/ext/xds/certificate_provider_registry.h [3:3]
-        src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc [3:3]
-        src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h [3:3]
+        src/core/ext/xds/certificate_provider_store.cc [3:3]
+        src/core/ext/xds/certificate_provider_store.h [3:3]
+        src/core/ext/xds/file_watcher_certificate_provider_factory.cc [3:3]
+        src/core/ext/xds/file_watcher_certificate_provider_factory.h [3:3]
+        src/core/ext/xds/xds_certificate_provider.cc [3:3]
+        src/core/ext/xds/xds_certificate_provider.h [3:3]
+        src/core/ext/xds/xds_server_config_fetcher.cc [3:3]
         src/core/lib/gpr/sync_abseil.cc [3:3]
+        src/core/lib/gpr/tls_stdcpp.h [3:3]
         src/core/lib/gprpp/dual_ref_counted.h [2:2]
+        src/core/lib/gprpp/examine_stack.cc [3:3]
+        src/core/lib/gprpp/examine_stack.h [3:3]
+        src/core/lib/gprpp/stat.h [2:2]
+        src/core/lib/gprpp/stat_posix.cc [2:2]
+        src/core/lib/gprpp/stat_windows.cc [2:2]
         src/core/lib/iomgr/dualstack_socket_posix.cc [3:3]
         src/core/lib/iomgr/ev_apple.cc [3:3]
         src/core/lib/iomgr/ev_apple.h [3:3]
         src/core/lib/json/json_util.cc [3:3]
         src/core/lib/json/json_util.h [3:3]
-        src/core/lib/security/authorization/authorization_engine.cc [1:1]
         src/core/lib/security/authorization/authorization_engine.h [2:2]
-        src/core/lib/security/authorization/evaluate_args.cc [3:3]
         src/core/lib/security/authorization/evaluate_args.h [3:3]
         src/core/lib/security/authorization/mock_cel/activation.h [1:1]
         src/core/lib/security/authorization/mock_cel/cel_expr_builder_factory.h [1:1]
@@ -1151,20 +1189,44 @@ BELONGS src/core/lib/ya.make src/python/grpcio/ya.make src/python/grpcio_reflect
         src/core/lib/security/authorization/mock_cel/cel_value.h [1:1]
         src/core/lib/security/authorization/mock_cel/evaluator_core.h [1:1]
         src/core/lib/security/authorization/mock_cel/flat_expr_builder.h [1:1]
-        src/core/lib/security/authorization/mock_cel/statusor.h [1:1]
-        src/core/lib/security/certificate_provider.h [3:3]
+        src/core/lib/security/credentials/external/aws_external_account_credentials.cc [2:2]
+        src/core/lib/security/credentials/external/aws_external_account_credentials.h [2:2]
+        src/core/lib/security/credentials/external/aws_request_signer.cc [2:2]
+        src/core/lib/security/credentials/external/aws_request_signer.h [2:2]
+        src/core/lib/security/credentials/external/external_account_credentials.cc [2:2]
+        src/core/lib/security/credentials/external/external_account_credentials.h [2:2]
+        src/core/lib/security/credentials/external/file_external_account_credentials.cc [2:2]
+        src/core/lib/security/credentials/external/file_external_account_credentials.h [2:2]
+        src/core/lib/security/credentials/external/url_external_account_credentials.cc [2:2]
+        src/core/lib/security/credentials/external/url_external_account_credentials.h [2:2]
+        src/core/lib/security/credentials/insecure/insecure_credentials.cc [3:3]
         src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc [2:2]
         src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h [2:2]
+        src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc [2:2]
+        src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h [2:2]
+        src/core/lib/security/credentials/tls/tls_utils.cc [3:3]
+        src/core/lib/security/credentials/tls/tls_utils.h [3:3]
         src/core/lib/security/credentials/xds/xds_credentials.cc [3:3]
         src/core/lib/security/credentials/xds/xds_credentials.h [3:3]
+        src/core/lib/security/security_connector/insecure/insecure_security_connector.cc [3:3]
+        src/core/lib/security/security_connector/insecure/insecure_security_connector.h [3:3]
         src/core/lib/transport/authority_override.cc [2:2]
         src/core/lib/transport/authority_override.h [2:2]
+        src/cpp/client/xds_credentials.cc [3:3]
+        src/cpp/common/tls_certificate_provider.cc [2:2]
+        src/cpp/server/xds_server_credentials.cc [3:3]
         src/python/grpcio/grpc/aio/_metadata.py [1:1]
         src/python/grpcio_reflection/grpc_reflection/v1alpha/_async.py [1:1]
         src/python/grpcio_reflection/grpc_reflection/v1alpha/_base.py [1:1]
         src/python/grpcio_tests/tests_aio/unit/_metadata_test.py [1:1]
         test/core/util/eval_args_mock_endpoint.cc [1:1]
         test/core/util/eval_args_mock_endpoint.h [1:1]
+        test/core/util/resolve_localhost_ip46.cc [3:3]
+        test/core/util/resolve_localhost_ip46.h [3:3]
+        test/core/util/tls_utils.cc [2:2]
+        test/core/util/tls_utils.h [2:2]
+        test/cpp/end2end/context_allocator_end2end_test.cc [3:3]
+        test/cpp/end2end/xds_credentials_end2end_test.cc [3:3]
 
 KEEP     COPYRIGHT_SERVICE_LABEL 2738b84693d58ad3ff70e7cfefe0c3de
 BELONGS src/python/grpcio_tests/ya.make
@@ -1186,6 +1248,33 @@ BELONGS src/python/grpcio_tests/ya.make
         src/python/grpcio_tests/tests_aio/unit/server_test.py [1:1]
         src/python/grpcio_tests/tests_py3_only/unit/__init__.py [1:1]
 
+KEEP     COPYRIGHT_SERVICE_LABEL 3b3b16ffa1ced0a3528ed514cd0e24f4
+BELONGS src/core/lib/ya.make
+    License text:
+        // Copyright 2021 the gRPC authors.
+    Scancode info:
+        Original SPDX id: COPYRIGHT_SERVICE_LABEL
+        Score           : 100.00
+        Match type      : COPYRIGHT
+    Files with this license:
+        src/core/lib/gprpp/time_util.cc [2:2]
+        src/core/lib/gprpp/time_util.h [2:2]
+
+KEEP     COPYRIGHT_SERVICE_LABEL 3f8e6ecc96f8543539ce4b548cdc9afb
+BELONGS src/proto/grpc/testing/xds/ya.make src/python/grpcio_tests/ya.make ya.make
+    License text:
+        // Copyright 2021 The gRPC Authors
+    Scancode info:
+        Original SPDX id: COPYRIGHT_SERVICE_LABEL
+        Score           : 100.00
+        Match type      : COPYRIGHT
+    Files with this license:
+        src/proto/grpc/auth/v1/authz_policy.proto [1:1]
+        src/proto/grpc/testing/xds/v3/config_dump.proto [1:1]
+        src/proto/grpc/testing/xds/v3/csds.proto [1:1]
+        src/proto/grpc/testing/xds/v3/router.proto [1:1]
+        src/python/grpcio_tests/tests_aio/unit/server_time_remaining_test.py [1:1]
+
 KEEP     COPYRIGHT_SERVICE_LABEL 47856a1da8680a4ba503954f87b9eb2c
 BELONGS test/core/util/ya.make
     License text:
@@ -1195,8 +1284,9 @@ BELONGS test/core/util/ya.make
         Score           : 100.00
         Match type      : COPYRIGHT
     Files with this license:
-        test/core/util/examine_stack.cc [3:3]
-        test/core/util/examine_stack.h [3:3]
+        test/core/util/stack_tracer.cc [3:3]
+        test/core/util/stack_tracer.h [3:3]
+        test/core/util/stack_tracer_test.cc [3:3]
 
 KEEP     COPYRIGHT_SERVICE_LABEL 57712bcea01f379c970232b100dc2326
 BELONGS src/python/grpcio/ya.make src/python/grpcio_tests/ya.make
@@ -1303,20 +1393,26 @@ BELONGS src/proto/grpc/testing/xds/ya.make src/python/grpcio/ya.make src/python/
     Files with this license:
         src/proto/grpc/testing/xds/v3/address.proto [1:1]
         src/proto/grpc/testing/xds/v3/ads.proto [1:1]
+        src/proto/grpc/testing/xds/v3/aggregate_cluster.proto [1:1]
         src/proto/grpc/testing/xds/v3/base.proto [1:1]
         src/proto/grpc/testing/xds/v3/cluster.proto [1:1]
         src/proto/grpc/testing/xds/v3/config_source.proto [1:1]
         src/proto/grpc/testing/xds/v3/discovery.proto [1:1]
         src/proto/grpc/testing/xds/v3/endpoint.proto [1:1]
+        src/proto/grpc/testing/xds/v3/fault.proto [1:1]
+        src/proto/grpc/testing/xds/v3/fault_common.proto [1:1]
         src/proto/grpc/testing/xds/v3/http_connection_manager.proto [1:1]
         src/proto/grpc/testing/xds/v3/listener.proto [1:1]
         src/proto/grpc/testing/xds/v3/load_report.proto [1:1]
         src/proto/grpc/testing/xds/v3/lrs.proto [1:1]
         src/proto/grpc/testing/xds/v3/orca_load_report.proto [1:1]
         src/proto/grpc/testing/xds/v3/percent.proto [1:1]
+        src/proto/grpc/testing/xds/v3/protocol.proto [1:1]
         src/proto/grpc/testing/xds/v3/range.proto [1:1]
         src/proto/grpc/testing/xds/v3/regex.proto [1:1]
         src/proto/grpc/testing/xds/v3/route.proto [1:1]
+        src/proto/grpc/testing/xds/v3/string.proto [1:1]
+        src/proto/grpc/testing/xds/v3/tls.proto [1:1]
         src/python/grpcio/grpc/_cython/_cygrpc/aio/completion_queue.pxd.pxi [1:1]
         src/python/grpcio/grpc/_cython/_cygrpc/aio/completion_queue.pyx.pxi [1:1]
         src/python/grpcio/grpc/aio/_base_channel.py [1:1]
@@ -1394,6 +1490,23 @@ BELONGS src/proto/grpc/testing/xds/ya.make src/python/grpcio/ya.make src/python/
         src/python/grpcio_tests/tests_aio/unit/channel_argument_test.py [1:1]
         test/cpp/end2end/cfstream_test.cc [3:3]
 
+KEEP     COPYRIGHT_SERVICE_LABEL 915a58fad04e1b9efec32a9b5cde7ce6
+BELONGS third_party/upb/ya.make
+FILE_INCLUDE LICENSE found in files: third_party/upb/third_party/wyhash/wyhash.h at line 3
+FILE_INCLUDE third_party/address_sorting/LICENSE found in files: third_party/upb/third_party/wyhash/wyhash.h at line 3
+FILE_INCLUDE third_party/upb/LICENSE found in files: third_party/upb/third_party/wyhash/wyhash.h at line 3
+FILE_INCLUDE third_party/upb/third_party/wyhash/LICENSE found in files: third_party/upb/third_party/wyhash/wyhash.h at line 3
+    License text:
+        /* Copyright 2020 王一 Wang Yi <godspeed_china@yeah.net>
+           This is free and unencumbered software released into the public domain. http://unlicense.org/
+           See github.com/wangyi-fudan/wyhash/ LICENSE
+    Scancode info:
+        Original SPDX id: COPYRIGHT_SERVICE_LABEL
+        Score           : 100.00
+        Match type      : COPYRIGHT
+    Files with this license:
+        third_party/upb/third_party/wyhash/wyhash.h [1:3]
+
 KEEP     COPYRIGHT_SERVICE_LABEL b2cd4508342480479b8c05479802ed26
 BELONGS third_party/upb/ya.make
     License text:
@@ -1523,7 +1636,6 @@ BELONGS src/core/lib/ya.make src/proto/grpc/core/ya.make src/proto/grpc/testing/
         src/core/lib/gprpp/debug_location.h [3:3]
         src/core/lib/gprpp/fork.cc [3:3]
         src/core/lib/gprpp/fork.h [3:3]
-        src/core/lib/gprpp/map.h [3:3]
         src/core/lib/gprpp/memory.h [3:3]
         src/core/lib/gprpp/orphanable.h [3:3]
         src/core/lib/gprpp/ref_counted.h [3:3]
@@ -1634,16 +1746,16 @@ BELONGS src/python/grpcio_tests/ya.make
     Files with this license:
         src/python/grpcio_tests/tests/unit/_server_test.py [1:1]
 
-KEEP     COPYRIGHT_SERVICE_LABEL e6b23c2370f0de1528bdb013438a7c03
-BELONGS ya.make
+KEEP     COPYRIGHT_SERVICE_LABEL e4754455d390a3393237498e20414796
+BELONGS src/python/grpcio_tests/ya.make
     License text:
-         * Copyright 2016-2017 gRPC authors.
+        \# Copyright 2021 The gRPC authors.
     Scancode info:
         Original SPDX id: COPYRIGHT_SERVICE_LABEL
         Score           : 100.00
         Match type      : COPYRIGHT
     Files with this license:
-        src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc [3:3]
+        src/python/grpcio_tests/tests/unit/_xds_credentials_test.py [1:1]
 
 KEEP     COPYRIGHT_SERVICE_LABEL f053023fe408f1896a456d1d28958df9
 BELONGS src/proto/grpc/health/v1/ya.make ya.make
@@ -1703,7 +1815,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/reflection/v1
         src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc [3:3]
         src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc [3:3]
         src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h [3:3]
-        src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc [3:3]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h [3:3]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc [3:3]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc [3:3]
@@ -1784,7 +1895,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/reflection/v1
         src/core/lib/slice/percent_encoding.h [3:3]
         src/core/lib/slice/slice_intern.cc [3:3]
         src/core/lib/slice/slice_internal.h [3:3]
-        src/core/lib/slice/slice_traits.h [3:3]
         src/core/lib/surface/channel_init.cc [3:3]
         src/core/lib/surface/channel_init.h [3:3]
         src/core/lib/surface/channel_stack_type.cc [3:3]
@@ -1877,8 +1987,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/reflection/v1
         src/python/grpcio_tests/tests/unit/thread_pool.py [1:1]
         src/python/grpcio_tests/tests_aio/reflection/__init__.py [1:1]
         src/python/grpcio_tests/tests_aio/reflection/reflection_servicer_test.py [1:1]
-        test/core/util/debugger_macros.cc [3:3]
-        test/core/util/debugger_macros.h [3:3]
         test/core/util/fuzzer_corpus_test.cc [3:3]
         test/core/util/grpc_fuzzer.bzl [1:1]
         test/core/util/memory_counters.cc [3:3]

+ 121 - 35
contrib/libs/grpc/.yandex_meta/devtools.licenses.report

@@ -56,6 +56,18 @@ BELONGS src/python/grpcio/ya.make
     Files with this license:
         src/python/grpcio/grpc/__init__.py [13:14]
 
+KEEP     Unlicense            157675c2c94799a0422fc7f5a9c9f9dd
+BELONGS third_party/upb/ya.make
+    License text:
+           This is free and unencumbered software released into the public domain. http://unlicense.org/
+    Scancode info:
+        Original SPDX id: Unlicense
+        Score           : 100.00
+        Match type      : NOTICE
+        Links           : http://unlicense.org/, https://spdx.org/licenses/Unlicense, https://unlicense.org/
+    Files with this license:
+        third_party/upb/third_party/wyhash/wyhash.h [2:2]
+
 SKIP     Apache-2.0           16b70eae00287deabdea5ef1821711a0
 BELONGS ya.make
     License text:
@@ -73,6 +85,7 @@ BELONGS src/python/grpcio_tests/ya.make
 FILE_INCLUDE LICENSE found in files: src/python/grpcio_tests/setup.py at line 34
 FILE_INCLUDE third_party/address_sorting/LICENSE found in files: src/python/grpcio_tests/setup.py at line 34
 FILE_INCLUDE third_party/upb/LICENSE found in files: src/python/grpcio_tests/setup.py at line 34
+FILE_INCLUDE third_party/upb/third_party/wyhash/LICENSE found in files: src/python/grpcio_tests/setup.py at line 34
     License text:
         LICENSE = 'Apache License 2.0'
     Scancode info:
@@ -83,6 +96,18 @@ FILE_INCLUDE third_party/upb/LICENSE found in files: src/python/grpcio_tests/set
     Files with this license:
         src/python/grpcio_tests/setup.py [34:34]
 
+KEEP     Unlicense            1d267ceb3a8d8f75f1be3011ee4cbf53
+BELONGS third_party/upb/ya.make
+FILE_INCLUDE AUTHORS found in files: third_party/upb/third_party/wyhash/LICENSE at line 19
+    Note: matched license text is too long. Read it in the source files.
+    Scancode info:
+        Original SPDX id: Unlicense
+        Score           : 100.00
+        Match type      : TEXT
+        Links           : http://unlicense.org/, https://spdx.org/licenses/Unlicense, https://unlicense.org/
+    Files with this license:
+        third_party/upb/third_party/wyhash/LICENSE [1:24]
+
 KEEP     BSD-3-Clause         26c9318cf95923719e6a1cbb87990e08
 BELONGS third_party/address_sorting/ya.make
     Note: matched license text is too long. Read it in the source files.
@@ -273,7 +298,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         include/grpcpp/create_channel.h [5:15]
         include/grpcpp/create_channel_posix.h [5:15]
         include/grpcpp/ext/channelz_service_plugin.h [5:15]
-        include/grpcpp/ext/channelz_service_plugin_impl.h [5:15]
         include/grpcpp/ext/health_check_service_server_builder_option.h [5:15]
         include/grpcpp/ext/proto_server_reflection_plugin.h [5:15]
         include/grpcpp/ext/server_load_reporting.h [5:15]
@@ -313,6 +337,7 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         include/grpcpp/impl/codegen/message_allocator.h [5:15]
         include/grpcpp/impl/codegen/metadata_map.h [5:15]
         include/grpcpp/impl/codegen/method_handler.h [5:15]
+        include/grpcpp/impl/codegen/method_handler_impl.h [5:15]
         include/grpcpp/impl/codegen/proto_buffer_reader.h [5:15]
         include/grpcpp/impl/codegen/proto_buffer_writer.h [5:15]
         include/grpcpp/impl/codegen/proto_utils.h [5:15]
@@ -419,7 +444,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/ext/filters/client_channel/backup_poller.cc [5:15]
         src/core/ext/filters/client_channel/backup_poller.h [5:15]
         src/core/ext/filters/client_channel/channel_connectivity.cc [5:15]
-        src/core/ext/filters/client_channel/client_channel.cc [5:15]
         src/core/ext/filters/client_channel/client_channel.h [5:15]
         src/core/ext/filters/client_channel/client_channel_channelz.cc [5:15]
         src/core/ext/filters/client_channel/client_channel_channelz.h [5:15]
@@ -450,7 +474,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc [5:15]
         src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc [5:15]
         src/core/ext/filters/client_channel/lb_policy/subchannel_list.h [5:15]
-        src/core/ext/filters/client_channel/lb_policy/xds/xds.h [5:15]
         src/core/ext/filters/client_channel/lb_policy_factory.h [5:15]
         src/core/ext/filters/client_channel/lb_policy_registry.cc [5:15]
         src/core/ext/filters/client_channel/lb_policy_registry.h [5:15]
@@ -461,14 +484,12 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/ext/filters/client_channel/resolver.cc [5:15]
         src/core/ext/filters/client_channel/resolver.h [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc [5:15]
-        src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h [5:15]
-        src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc [5:15]
@@ -481,8 +502,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/ext/filters/client_channel/resolver_registry.h [5:15]
         src/core/ext/filters/client_channel/resolver_result_parsing.cc [5:15]
         src/core/ext/filters/client_channel/resolver_result_parsing.h [5:15]
-        src/core/ext/filters/client_channel/resolving_lb_policy.cc [5:15]
-        src/core/ext/filters/client_channel/resolving_lb_policy.h [5:15]
         src/core/ext/filters/client_channel/retry_throttle.cc [5:15]
         src/core/ext/filters/client_channel/retry_throttle.h [5:15]
         src/core/ext/filters/client_channel/server_address.cc [5:15]
@@ -653,6 +672,7 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/lib/gpr/tls_msvc.h [5:15]
         src/core/lib/gpr/tls_pthread.cc [5:15]
         src/core/lib/gpr/tls_pthread.h [5:15]
+        src/core/lib/gpr/tls_stdcpp.h [5:15]
         src/core/lib/gpr/tmpfile.h [5:15]
         src/core/lib/gpr/tmpfile_msys.cc [5:15]
         src/core/lib/gpr/tmpfile_posix.cc [5:15]
@@ -663,6 +683,8 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/lib/gprpp/arena.h [5:15]
         src/core/lib/gprpp/atomic.h [5:15]
         src/core/lib/gprpp/debug_location.h [5:15]
+        src/core/lib/gprpp/examine_stack.cc [5:15]
+        src/core/lib/gprpp/examine_stack.h [5:15]
         src/core/lib/gprpp/fork.cc [5:15]
         src/core/lib/gprpp/fork.h [5:15]
         src/core/lib/gprpp/global_config.h [5:15]
@@ -673,7 +695,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/lib/gprpp/host_port.cc [5:15]
         src/core/lib/gprpp/host_port.h [5:15]
         src/core/lib/gprpp/manual_constructor.h [5:15]
-        src/core/lib/gprpp/map.h [5:15]
         src/core/lib/gprpp/memory.h [5:15]
         src/core/lib/gprpp/mpscq.cc [5:15]
         src/core/lib/gprpp/mpscq.h [5:15]
@@ -755,7 +776,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/lib/iomgr/iomgr_internal.cc [5:15]
         src/core/lib/iomgr/iomgr_internal.h [5:15]
         src/core/lib/iomgr/iomgr_posix.cc [5:15]
-        src/core/lib/iomgr/iomgr_posix.h [5:15]
         src/core/lib/iomgr/iomgr_posix_cfstream.cc [5:15]
         src/core/lib/iomgr/iomgr_uv.cc [5:15]
         src/core/lib/iomgr/iomgr_windows.cc [5:15]
@@ -956,7 +976,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         src/core/lib/slice/slice_internal.h [5:15]
         src/core/lib/slice/slice_string_helpers.cc [5:15]
         src/core/lib/slice/slice_string_helpers.h [5:15]
-        src/core/lib/slice/slice_traits.h [5:15]
         src/core/lib/slice/slice_utils.h [5:15]
         src/core/lib/surface/api_trace.cc [5:15]
         src/core/lib/surface/api_trace.h [5:15]
@@ -1155,10 +1174,6 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         test/core/util/cmdline.cc [5:15]
         test/core/util/cmdline.h [5:15]
         test/core/util/cmdline_test.cc [5:15]
-        test/core/util/debugger_macros.cc [5:15]
-        test/core/util/debugger_macros.h [5:15]
-        test/core/util/examine_stack.cc [5:15]
-        test/core/util/examine_stack.h [5:15]
         test/core/util/fuzzer_corpus_test.cc [5:15]
         test/core/util/fuzzer_util.cc [5:15]
         test/core/util/fuzzer_util.h [5:15]
@@ -1185,6 +1200,9 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         test/core/util/reconnect_server.h [5:15]
         test/core/util/slice_splitter.cc [5:15]
         test/core/util/slice_splitter.h [5:15]
+        test/core/util/stack_tracer.cc [5:15]
+        test/core/util/stack_tracer.h [5:15]
+        test/core/util/stack_tracer_test.cc [5:15]
         test/core/util/subprocess.h [5:15]
         test/core/util/subprocess_posix.cc [5:15]
         test/core/util/subprocess_windows.cc [5:15]
@@ -1206,6 +1224,7 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         test/cpp/end2end/client_crash_test_server.cc [5:15]
         test/cpp/end2end/client_interceptors_end2end_test.cc [5:15]
         test/cpp/end2end/client_lb_end2end_test.cc [5:15]
+        test/cpp/end2end/context_allocator_end2end_test.cc [5:15]
         test/cpp/end2end/delegating_channel_test.cc [5:15]
         test/cpp/end2end/end2end_test.cc [5:15]
         test/cpp/end2end/exception_test.cc [5:15]
@@ -1283,7 +1302,7 @@ BELONGS src/core/lib/ya.make src/cpp/common/ya.make test/core/util/ya.make test/
         tools/codegen/core/gen_percent_encoding_tables.cc [5:15]
 
 KEEP     Apache-2.0           4248d6c827c367ff9f1b5e59ca41408e
-BELONGS src/core/lib/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core/ya.make src/proto/grpc/health/v1/ya.make src/proto/grpc/reflection/v1alpha/ya.make src/proto/grpc/status/ya.make src/proto/grpc/testing/duplicate/ya.make src/proto/grpc/testing/xds/ya.make src/proto/grpc/testing/ya.make test/core/util/ya.make ya.make
+BELONGS src/core/lib/ya.make src/cpp/common/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core/ya.make src/proto/grpc/health/v1/ya.make src/proto/grpc/reflection/v1alpha/ya.make src/proto/grpc/status/ya.make src/proto/grpc/testing/duplicate/ya.make src/proto/grpc/testing/xds/ya.make src/proto/grpc/testing/ya.make test/core/util/ya.make test/cpp/end2end/ya.make ya.make
     Note: matched license text is too long. Read it in the source files.
     Scancode info:
         Original SPDX id: Apache-2.0
@@ -1291,10 +1310,16 @@ BELONGS src/core/lib/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core
         Match type      : NOTICE
         Links           : http://www.apache.org/licenses/, http://www.apache.org/licenses/LICENSE-2.0, https://spdx.org/licenses/Apache-2.0
     Files with this license:
+        include/grpcpp/ext/admin_services.h [5:15]
+        include/grpcpp/security/tls_certificate_provider.h [4:14]
+        include/grpcpp/xds_server_builder.h [5:15]
         src/core/ext/filters/client_channel/backend_metric.cc [4:14]
         src/core/ext/filters/client_channel/backend_metric.h [4:14]
+        src/core/ext/filters/client_channel/client_channel.cc [4:14]
         src/core/ext/filters/client_channel/config_selector.cc [4:14]
         src/core/ext/filters/client_channel/config_selector.h [4:14]
+        src/core/ext/filters/client_channel/dynamic_filters.cc [4:14]
+        src/core/ext/filters/client_channel/dynamic_filters.h [4:14]
         src/core/ext/filters/client_channel/global_subchannel_pool.cc [5:15]
         src/core/ext/filters/client_channel/lb_policy/address_filtering.cc [4:14]
         src/core/ext/filters/client_channel/lb_policy/address_filtering.h [4:14]
@@ -1303,15 +1328,20 @@ BELONGS src/core/lib/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core
         src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc [4:14]
         src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h [4:14]
         src/core/ext/filters/client_channel/lb_policy/priority/priority.cc [4:14]
+        src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc [4:14]
+        src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h [4:14]
         src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc [4:14]
         src/core/ext/filters/client_channel/lb_policy/xds/cds.cc [4:14]
-        src/core/ext/filters/client_channel/lb_policy/xds/eds.cc [4:14]
-        src/core/ext/filters/client_channel/lb_policy/xds/eds_drop.cc [4:14]
+        src/core/ext/filters/client_channel/lb_policy/xds/xds.h [4:14]
+        src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h [4:14]
+        src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc [4:14]
         src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc [4:14]
+        src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc [4:14]
         src/core/ext/filters/client_channel/local_subchannel_pool.cc [5:15]
         src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc [4:14]
         src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc [4:14]
         src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h [4:14]
+        src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc [4:14]
         src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h [4:14]
         src/core/ext/filters/client_channel/service_config.cc [4:14]
         src/core/ext/filters/client_channel/service_config.h [4:14]
@@ -1322,6 +1352,10 @@ BELONGS src/core/lib/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core
         src/core/ext/filters/client_channel/subchannel_pool_interface.cc [5:15]
         src/core/ext/filters/deadline/deadline_filter.cc [4:14]
         src/core/ext/filters/deadline/deadline_filter.h [4:14]
+        src/core/ext/filters/fault_injection/fault_injection_filter.cc [4:14]
+        src/core/ext/filters/fault_injection/fault_injection_filter.h [4:14]
+        src/core/ext/filters/fault_injection/service_config_parser.cc [4:14]
+        src/core/ext/filters/fault_injection/service_config_parser.h [4:14]
         src/core/ext/filters/http/message_compress/message_decompress_filter.cc [5:15]
         src/core/ext/filters/http/message_compress/message_decompress_filter.h [5:15]
         src/core/ext/filters/max_age/max_age_filter.h [4:14]
@@ -1335,18 +1369,32 @@ BELONGS src/core/lib/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core
         src/core/ext/xds/certificate_provider_factory.h [5:15]
         src/core/ext/xds/certificate_provider_registry.cc [5:15]
         src/core/ext/xds/certificate_provider_registry.h [5:15]
-        src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc [5:15]
-        src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h [5:15]
+        src/core/ext/xds/certificate_provider_store.cc [5:15]
+        src/core/ext/xds/certificate_provider_store.h [5:15]
+        src/core/ext/xds/file_watcher_certificate_provider_factory.cc [5:15]
+        src/core/ext/xds/file_watcher_certificate_provider_factory.h [5:15]
         src/core/ext/xds/xds_bootstrap.cc [4:14]
         src/core/ext/xds/xds_bootstrap.h [4:14]
+        src/core/ext/xds/xds_certificate_provider.cc [5:15]
+        src/core/ext/xds/xds_certificate_provider.h [5:15]
         src/core/ext/xds/xds_channel_args.h [4:14]
         src/core/ext/xds/xds_client.h [4:14]
+        src/core/ext/xds/xds_http_fault_filter.cc [4:14]
+        src/core/ext/xds/xds_http_fault_filter.h [4:14]
+        src/core/ext/xds/xds_http_filters.cc [4:14]
+        src/core/ext/xds/xds_http_filters.h [4:14]
+        src/core/ext/xds/xds_server_config_fetcher.cc [5:15]
         src/core/lib/gprpp/dual_ref_counted.h [4:14]
+        src/core/lib/gprpp/stat.h [4:14]
+        src/core/lib/gprpp/stat_posix.cc [4:14]
+        src/core/lib/gprpp/stat_windows.cc [4:14]
+        src/core/lib/gprpp/time_util.cc [4:14]
+        src/core/lib/gprpp/time_util.h [4:14]
         src/core/lib/json/json_util.cc [5:15]
         src/core/lib/json/json_util.h [5:15]
-        src/core/lib/security/authorization/authorization_engine.cc [3:13]
+        src/core/lib/matchers/matchers.cc [3:13]
+        src/core/lib/matchers/matchers.h [3:13]
         src/core/lib/security/authorization/authorization_engine.h [4:14]
-        src/core/lib/security/authorization/evaluate_args.cc [5:15]
         src/core/lib/security/authorization/evaluate_args.h [5:15]
         src/core/lib/security/authorization/mock_cel/activation.h [3:13]
         src/core/lib/security/authorization/mock_cel/cel_expr_builder_factory.h [3:13]
@@ -1354,12 +1402,29 @@ BELONGS src/core/lib/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core
         src/core/lib/security/authorization/mock_cel/cel_value.h [3:13]
         src/core/lib/security/authorization/mock_cel/evaluator_core.h [3:13]
         src/core/lib/security/authorization/mock_cel/flat_expr_builder.h [3:13]
-        src/core/lib/security/authorization/mock_cel/statusor.h [3:13]
-        src/core/lib/security/certificate_provider.h [5:15]
+        src/core/lib/security/authorization/rbac_policy.h [3:13]
+        src/core/lib/security/authorization/rbac_translator.h [3:13]
+        src/core/lib/security/credentials/external/aws_external_account_credentials.cc [4:14]
+        src/core/lib/security/credentials/external/aws_external_account_credentials.h [4:14]
+        src/core/lib/security/credentials/external/aws_request_signer.cc [4:14]
+        src/core/lib/security/credentials/external/aws_request_signer.h [4:14]
+        src/core/lib/security/credentials/external/external_account_credentials.cc [4:14]
+        src/core/lib/security/credentials/external/external_account_credentials.h [4:14]
+        src/core/lib/security/credentials/external/file_external_account_credentials.cc [4:14]
+        src/core/lib/security/credentials/external/file_external_account_credentials.h [4:14]
+        src/core/lib/security/credentials/external/url_external_account_credentials.cc [4:14]
+        src/core/lib/security/credentials/external/url_external_account_credentials.h [4:14]
+        src/core/lib/security/credentials/insecure/insecure_credentials.cc [5:15]
         src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc [4:14]
         src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h [4:14]
+        src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc [4:14]
+        src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h [4:14]
+        src/core/lib/security/credentials/tls/tls_utils.cc [5:15]
+        src/core/lib/security/credentials/tls/tls_utils.h [5:15]
         src/core/lib/security/credentials/xds/xds_credentials.cc [5:15]
         src/core/lib/security/credentials/xds/xds_credentials.h [5:15]
+        src/core/lib/security/security_connector/insecure/insecure_security_connector.cc [5:15]
+        src/core/lib/security/security_connector/insecure/insecure_security_connector.h [5:15]
         src/core/lib/surface/server.cc [4:14]
         src/core/lib/surface/server.h [4:14]
         src/core/lib/transport/authority_override.cc [4:14]
@@ -1367,6 +1432,10 @@ BELONGS src/core/lib/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core
         src/core/tsi/alts/handshaker/proto/altscontext.proto [3:13]
         src/core/tsi/alts/handshaker/proto/handshaker.proto [3:13]
         src/core/tsi/alts/handshaker/proto/transport_security_common.proto [3:13]
+        src/cpp/client/xds_credentials.cc [5:15]
+        src/cpp/common/tls_certificate_provider.cc [4:14]
+        src/cpp/server/xds_server_credentials.cc [5:15]
+        src/proto/grpc/auth/v1/authz_policy.proto [3:13]
         src/proto/grpc/binary_log/v1alpha/log.proto [3:13]
         src/proto/grpc/channelz/channelz.proto [3:13]
         src/proto/grpc/core/stats.proto [3:13]
@@ -1406,23 +1475,38 @@ BELONGS src/core/lib/ya.make src/proto/grpc/channelz/ya.make src/proto/grpc/core
         src/proto/grpc/testing/xds/orca_load_report_for_test.proto [3:13]
         src/proto/grpc/testing/xds/v3/address.proto [3:13]
         src/proto/grpc/testing/xds/v3/ads.proto [3:13]
+        src/proto/grpc/testing/xds/v3/aggregate_cluster.proto [3:13]
         src/proto/grpc/testing/xds/v3/base.proto [3:13]
         src/proto/grpc/testing/xds/v3/cluster.proto [3:13]
+        src/proto/grpc/testing/xds/v3/config_dump.proto [3:13]
         src/proto/grpc/testing/xds/v3/config_source.proto [3:13]
+        src/proto/grpc/testing/xds/v3/csds.proto [3:13]
         src/proto/grpc/testing/xds/v3/discovery.proto [3:13]
         src/proto/grpc/testing/xds/v3/endpoint.proto [3:13]
+        src/proto/grpc/testing/xds/v3/fault.proto [3:13]
+        src/proto/grpc/testing/xds/v3/fault_common.proto [3:13]
         src/proto/grpc/testing/xds/v3/http_connection_manager.proto [3:13]
         src/proto/grpc/testing/xds/v3/listener.proto [3:13]
         src/proto/grpc/testing/xds/v3/load_report.proto [3:13]
         src/proto/grpc/testing/xds/v3/lrs.proto [3:13]
         src/proto/grpc/testing/xds/v3/orca_load_report.proto [3:13]
         src/proto/grpc/testing/xds/v3/percent.proto [3:13]
+        src/proto/grpc/testing/xds/v3/protocol.proto [3:13]
         src/proto/grpc/testing/xds/v3/range.proto [3:13]
         src/proto/grpc/testing/xds/v3/regex.proto [3:13]
         src/proto/grpc/testing/xds/v3/route.proto [3:13]
+        src/proto/grpc/testing/xds/v3/router.proto [3:13]
+        src/proto/grpc/testing/xds/v3/string.proto [3:13]
+        src/proto/grpc/testing/xds/v3/tls.proto [3:13]
         src/proto/math/math.proto [4:14]
         test/core/util/eval_args_mock_endpoint.cc [3:13]
         test/core/util/eval_args_mock_endpoint.h [3:13]
+        test/core/util/resolve_localhost_ip46.cc [5:15]
+        test/core/util/resolve_localhost_ip46.h [5:15]
+        test/core/util/tls_utils.cc [4:14]
+        test/core/util/tls_utils.h [4:14]
+        test/cpp/end2end/admin_services_end2end_test.cc [5:15]
+        test/cpp/end2end/xds_credentials_end2end_test.cc [5:15]
 
 KEEP     BSD-3-Clause         54930dd58069144c1215a9b35218104a
 BELONGS third_party/upb/ya.make
@@ -1448,6 +1532,18 @@ BELONGS src/python/grpcio/ya.make
     Files with this license:
         src/python/grpcio/grpc/experimental/gevent.py [13:14]
 
+KEEP     Public-Domain        5768fb73f20365b980a417d7c63f5c72
+BELONGS third_party/upb/ya.make
+    License text:
+           This is free and unencumbered software released into the public domain. http://unlicense.org/
+    Scancode info:
+        Original SPDX id: LicenseRef-scancode-public-domain
+        Score           : 100.00
+        Match type      : TEXT
+        Links           : http://www.linfo.org/publicdomain.html, https://github.com/nexB/scancode-toolkit/tree/develop/src/licensedcode/data/licenses/public-domain.LICENSE
+    Files with this license:
+        third_party/upb/third_party/wyhash/wyhash.h [2:2]
+
 SKIP     LicenseRef-scancode-generic-cla 60c79976a6f1daa58457b943cb911512
 BELONGS ya.make
     License text:
@@ -1779,6 +1875,7 @@ BELONGS src/python/grpcio/ya.make src/python/grpcio_channelz/ya.make src/python/
         src/python/grpcio_tests/tests/unit/_signal_handling_test.py [3:13]
         src/python/grpcio_tests/tests/unit/_tcp_proxy.py [3:13]
         src/python/grpcio_tests/tests/unit/_version_test.py [3:13]
+        src/python/grpcio_tests/tests/unit/_xds_credentials_test.py [3:13]
         src/python/grpcio_tests/tests/unit/beta/__init__.py [3:13]
         src/python/grpcio_tests/tests/unit/beta/_beta_features_test.py [3:13]
         src/python/grpcio_tests/tests/unit/beta/_connectivity_channel_test.py [3:13]
@@ -1847,6 +1944,7 @@ BELONGS src/python/grpcio/ya.make src/python/grpcio_channelz/ya.make src/python/
         src/python/grpcio_tests/tests_aio/unit/secure_call_test.py [3:13]
         src/python/grpcio_tests/tests_aio/unit/server_interceptor_test.py [3:13]
         src/python/grpcio_tests/tests_aio/unit/server_test.py [3:13]
+        src/python/grpcio_tests/tests_aio/unit/server_time_remaining_test.py [3:13]
         src/python/grpcio_tests/tests_aio/unit/timeout_test.py [3:13]
         src/python/grpcio_tests/tests_aio/unit/wait_for_connection_test.py [3:13]
         src/python/grpcio_tests/tests_aio/unit/wait_for_ready_test.py [3:13]
@@ -1900,15 +1998,3 @@ BELONGS src/python/grpcio_channelz/ya.make src/python/grpcio_health_checking/ya.
         src/python/grpcio_health_checking/setup.py [58:58]
         src/python/grpcio_reflection/setup.py [59:59]
         src/python/grpcio_status/setup.py [58:58]
-
-KEEP     Public-Domain        dfcb84bada1ef68350fcc8778aad2095
-BELONGS third_party/upb/ya.make
-    License text:
-         * MurmurHash2, by Austin Appleby (released as public domain).
-    Scancode info:
-        Original SPDX id: LicenseRef-scancode-public-domain
-        Score           : 70.00
-        Match type      : REFERENCE
-        Links           : http://www.linfo.org/publicdomain.html, https://github.com/nexB/scancode-toolkit/tree/develop/src/licensedcode/data/licenses/public-domain.LICENSE
-    Files with this license:
-        third_party/upb/upb/table.c [705:705]

+ 8 - 4
contrib/libs/grpc/.yandex_meta/licenses.list.txt

@@ -272,10 +272,6 @@ limitations under the License.
  * Copyright 2016 gRPC authors.
 
 
-====================COPYRIGHT====================
- * Copyright 2016-2017 gRPC authors.
-
-
 ====================COPYRIGHT====================
  * Copyright 2017 gRPC authors.
 
@@ -304,5 +300,13 @@ limitations under the License.
 // Copyright 2019 The gRPC Authors
 
 
+====================COPYRIGHT====================
+// Copyright 2021 The gRPC Authors
+
+
+====================COPYRIGHT====================
+// Copyright 2021 gRPC authors.
+
+
 ====================COPYRIGHT====================
 Copyright 2014 gRPC authors.

+ 282 - 50
contrib/libs/grpc/BUILD.gn

@@ -137,6 +137,7 @@ config("grpc_config") {
         "src/core/lib/gpr/tls_msvc.h",
         "src/core/lib/gpr/tls_pthread.cc",
         "src/core/lib/gpr/tls_pthread.h",
+        "src/core/lib/gpr/tls_stdcpp.h",
         "src/core/lib/gpr/tmpfile.h",
         "src/core/lib/gpr/tmpfile_msys.cc",
         "src/core/lib/gpr/tmpfile_posix.cc",
@@ -146,6 +147,8 @@ config("grpc_config") {
         "src/core/lib/gprpp/arena.cc",
         "src/core/lib/gprpp/arena.h",
         "src/core/lib/gprpp/atomic.h",
+        "src/core/lib/gprpp/examine_stack.cc",
+        "src/core/lib/gprpp/examine_stack.h",
         "src/core/lib/gprpp/fork.cc",
         "src/core/lib/gprpp/fork.h",
         "src/core/lib/gprpp/global_config.h",
@@ -156,25 +159,31 @@ config("grpc_config") {
         "src/core/lib/gprpp/host_port.cc",
         "src/core/lib/gprpp/host_port.h",
         "src/core/lib/gprpp/manual_constructor.h",
-        "src/core/lib/gprpp/map.h",
         "src/core/lib/gprpp/memory.h",
         "src/core/lib/gprpp/mpscq.cc",
         "src/core/lib/gprpp/mpscq.h",
+        "src/core/lib/gprpp/stat.h",
+        "src/core/lib/gprpp/stat_posix.cc",
+        "src/core/lib/gprpp/stat_windows.cc",
         "src/core/lib/gprpp/sync.h",
         "src/core/lib/gprpp/thd.h",
         "src/core/lib/gprpp/thd_posix.cc",
         "src/core/lib/gprpp/thd_windows.cc",
+        "src/core/lib/gprpp/time_util.cc",
+        "src/core/lib/gprpp/time_util.h",
         "src/core/lib/profiling/basic_timers.cc",
         "src/core/lib/profiling/stap_timers.cc",
         "src/core/lib/profiling/timers.h",
     ]
     deps = [
-        ":y_absl/time:time",
-        ":y_absl/synchronization:synchronization",
-        ":y_absl/strings:strings",
-        ":y_absl/strings:str_format",
-        ":y_absl/memory:memory",
         ":y_absl/base:base",
+        ":y_absl/memory:memory",
+        ":y_absl/status:status",
+        ":y_absl/strings:str_format",
+        ":y_absl/strings:strings",
+        ":y_absl/synchronization:synchronization",
+        ":y_absl/time:time",
+        ":y_absl/types:optional",
     ]
     
     public_configs = [
@@ -216,6 +225,8 @@ config("grpc_config") {
         "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/health/health_check_client.cc",
@@ -244,14 +255,17 @@ config("grpc_config") {
         "src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h",
         "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/ring_hash/ring_hash.h",
         "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_target/weighted_target.cc",
         "src/core/ext/filters/client_channel/lb_policy/xds/cds.cc",
-        "src/core/ext/filters/client_channel/lb_policy/xds/eds.cc",
-        "src/core/ext/filters/client_channel/lb_policy/xds/eds_drop.cc",
         "src/core/ext/filters/client_channel/lb_policy/xds/xds.h",
+        "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_cluster_resolver.cc",
         "src/core/ext/filters/client_channel/lb_policy_factory.h",
         "src/core/ext/filters/client_channel/lb_policy_registry.cc",
         "src/core/ext/filters/client_channel/lb_policy_registry.h",
@@ -263,14 +277,12 @@ config("grpc_config") {
         "src/core/ext/filters/client_channel/resolver.cc",
         "src/core/ext/filters/client_channel/resolver.h",
         "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.cc",
         "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_libuv.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.h",
-        "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc",
         "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.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",
@@ -279,6 +291,7 @@ config("grpc_config") {
         "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/fake/fake_resolver.h",
+        "src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc",
         "src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc",
         "src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc",
         "src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h",
@@ -287,8 +300,6 @@ config("grpc_config") {
         "src/core/ext/filters/client_channel/resolver_registry.h",
         "src/core/ext/filters/client_channel/resolver_result_parsing.cc",
         "src/core/ext/filters/client_channel/resolver_result_parsing.h",
-        "src/core/ext/filters/client_channel/resolving_lb_policy.cc",
-        "src/core/ext/filters/client_channel/resolving_lb_policy.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/server_address.cc",
@@ -307,6 +318,10 @@ config("grpc_config") {
         "src/core/ext/filters/client_idle/client_idle_filter.cc",
         "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",
+        "src/core/ext/filters/fault_injection/fault_injection_filter.h",
+        "src/core/ext/filters/fault_injection/service_config_parser.cc",
+        "src/core/ext/filters/fault_injection/service_config_parser.h",
         "src/core/ext/filters/http/client/http_client_filter.cc",
         "src/core/ext/filters/http/client/http_client_filter.h",
         "src/core/ext/filters/http/client_authority_filter.cc",
@@ -387,12 +402,16 @@ config("grpc_config") {
         "src/core/ext/transport/inproc/inproc_plugin.cc",
         "src/core/ext/transport/inproc/inproc_transport.cc",
         "src/core/ext/transport/inproc/inproc_transport.h",
+        "src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c",
+        "src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h",
         "src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c",
         "src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h",
         "src/core/ext/upb-generated/envoy/annotations/resource.upb.c",
         "src/core/ext/upb-generated/envoy/annotations/resource.upb.h",
         "src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c",
         "src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h",
+        "src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c",
+        "src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h",
         "src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c",
         "src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h",
         "src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c",
@@ -441,6 +460,10 @@ config("grpc_config") {
         "src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h",
         "src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c",
         "src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h",
+        "src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c",
+        "src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h",
+        "src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c",
+        "src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h",
         "src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c",
         "src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h",
         "src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c",
@@ -451,6 +474,14 @@ config("grpc_config") {
         "src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h",
         "src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c",
         "src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h",
+        "src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c",
+        "src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h",
+        "src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c",
+        "src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h",
+        "src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c",
+        "src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h",
+        "src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c",
+        "src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h",
         "src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c",
         "src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h",
         "src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c",
@@ -477,8 +508,12 @@ config("grpc_config") {
         "src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h",
         "src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c",
         "src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h",
+        "src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c",
+        "src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h",
+        "src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c",
+        "src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c",
@@ -487,6 +522,8 @@ config("grpc_config") {
         "src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h",
+        "src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c",
+        "src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c",
         "src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h",
         "src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c",
@@ -511,8 +548,6 @@ config("grpc_config") {
         "src/core/ext/upb-generated/google/api/http.upb.h",
         "src/core/ext/upb-generated/google/protobuf/any.upb.c",
         "src/core/ext/upb-generated/google/protobuf/any.upb.h",
-        "src/core/ext/upb-generated/google/protobuf/descriptor.upb.c",
-        "src/core/ext/upb-generated/google/protobuf/descriptor.upb.h",
         "src/core/ext/upb-generated/google/protobuf/duration.upb.c",
         "src/core/ext/upb-generated/google/protobuf/duration.upb.h",
         "src/core/ext/upb-generated/google/protobuf/empty.upb.c",
@@ -545,37 +580,225 @@ config("grpc_config") {
         "src/core/ext/upb-generated/udpa/annotations/status.upb.h",
         "src/core/ext/upb-generated/udpa/annotations/versioning.upb.c",
         "src/core/ext/upb-generated/udpa/annotations/versioning.upb.h",
-        "src/core/ext/upb-generated/udpa/core/v1/authority.upb.c",
-        "src/core/ext/upb-generated/udpa/core/v1/authority.upb.h",
-        "src/core/ext/upb-generated/udpa/core/v1/collection_entry.upb.c",
-        "src/core/ext/upb-generated/udpa/core/v1/collection_entry.upb.h",
-        "src/core/ext/upb-generated/udpa/core/v1/context_params.upb.c",
-        "src/core/ext/upb-generated/udpa/core/v1/context_params.upb.h",
-        "src/core/ext/upb-generated/udpa/core/v1/resource.upb.c",
-        "src/core/ext/upb-generated/udpa/core/v1/resource.upb.h",
-        "src/core/ext/upb-generated/udpa/core/v1/resource_locator.upb.c",
-        "src/core/ext/upb-generated/udpa/core/v1/resource_locator.upb.h",
-        "src/core/ext/upb-generated/udpa/core/v1/resource_name.upb.c",
-        "src/core/ext/upb-generated/udpa/core/v1/resource_name.upb.h",
         "src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c",
         "src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h",
+        "src/core/ext/upb-generated/udpa/type/v1/typed_struct.upb.c",
+        "src/core/ext/upb-generated/udpa/type/v1/typed_struct.upb.h",
         "src/core/ext/upb-generated/validate/validate.upb.c",
         "src/core/ext/upb-generated/validate/validate.upb.h",
+        "src/core/ext/upb-generated/xds/core/v3/authority.upb.c",
+        "src/core/ext/upb-generated/xds/core/v3/authority.upb.h",
+        "src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c",
+        "src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h",
+        "src/core/ext/upb-generated/xds/core/v3/context_params.upb.c",
+        "src/core/ext/upb-generated/xds/core/v3/context_params.upb.h",
+        "src/core/ext/upb-generated/xds/core/v3/resource.upb.c",
+        "src/core/ext/upb-generated/xds/core/v3/resource.upb.h",
+        "src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c",
+        "src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h",
+        "src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c",
+        "src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h",
+        "src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h",
+        "src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c",
+        "src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/api/http.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/api/http.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h",
+        "src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c",
+        "src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h",
+        "src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c",
+        "src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h",
+        "src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c",
+        "src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h",
+        "src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c",
+        "src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h",
+        "src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c",
+        "src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h",
+        "src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c",
+        "src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h",
+        "src/core/ext/upbdefs-generated/udpa/type/v1/typed_struct.upbdefs.c",
+        "src/core/ext/upbdefs-generated/udpa/type/v1/typed_struct.upbdefs.h",
+        "src/core/ext/upbdefs-generated/validate/validate.upbdefs.c",
+        "src/core/ext/upbdefs-generated/validate/validate.upbdefs.h",
+        "src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c",
+        "src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h",
+        "src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c",
+        "src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h",
+        "src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c",
+        "src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h",
+        "src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c",
+        "src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h",
+        "src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c",
+        "src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h",
+        "src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c",
+        "src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h",
         "src/core/ext/xds/certificate_provider_factory.h",
         "src/core/ext/xds/certificate_provider_registry.cc",
         "src/core/ext/xds/certificate_provider_registry.h",
+        "src/core/ext/xds/certificate_provider_store.cc",
         "src/core/ext/xds/certificate_provider_store.h",
-        "src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc",
-        "src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h",
+        "src/core/ext/xds/file_watcher_certificate_provider_factory.cc",
+        "src/core/ext/xds/file_watcher_certificate_provider_factory.h",
         "src/core/ext/xds/xds_api.cc",
         "src/core/ext/xds/xds_api.h",
         "src/core/ext/xds/xds_bootstrap.cc",
         "src/core/ext/xds/xds_bootstrap.h",
+        "src/core/ext/xds/xds_certificate_provider.cc",
+        "src/core/ext/xds/xds_certificate_provider.h",
         "src/core/ext/xds/xds_channel_args.h",
         "src/core/ext/xds/xds_client.cc",
         "src/core/ext/xds/xds_client.h",
         "src/core/ext/xds/xds_client_stats.cc",
         "src/core/ext/xds/xds_client_stats.h",
+        "src/core/ext/xds/xds_http_fault_filter.cc",
+        "src/core/ext/xds/xds_http_fault_filter.h",
+        "src/core/ext/xds/xds_http_filters.cc",
+        "src/core/ext/xds/xds_http_filters.h",
+        "src/core/ext/xds/xds_server_config_fetcher.cc",
         "src/core/lib/avl/avl.cc",
         "src/core/lib/avl/avl.h",
         "src/core/lib/backoff/backoff.cc",
@@ -699,7 +922,6 @@ config("grpc_config") {
         "src/core/lib/iomgr/iomgr_internal.cc",
         "src/core/lib/iomgr/iomgr_internal.h",
         "src/core/lib/iomgr/iomgr_posix.cc",
-        "src/core/lib/iomgr/iomgr_posix.h",
         "src/core/lib/iomgr/iomgr_posix_cfstream.cc",
         "src/core/lib/iomgr/iomgr_uv.cc",
         "src/core/lib/iomgr/iomgr_windows.cc",
@@ -814,18 +1036,8 @@ config("grpc_config") {
         "src/core/lib/json/json_util.cc",
         "src/core/lib/json/json_util.h",
         "src/core/lib/json/json_writer.cc",
-        "src/core/lib/security/authorization/authorization_engine.cc",
-        "src/core/lib/security/authorization/authorization_engine.h",
-        "src/core/lib/security/authorization/evaluate_args.cc",
-        "src/core/lib/security/authorization/evaluate_args.h",
-        "src/core/lib/security/authorization/mock_cel/activation.h",
-        "src/core/lib/security/authorization/mock_cel/cel_expr_builder_factory.h",
-        "src/core/lib/security/authorization/mock_cel/cel_expression.h",
-        "src/core/lib/security/authorization/mock_cel/cel_value.h",
-        "src/core/lib/security/authorization/mock_cel/evaluator_core.h",
-        "src/core/lib/security/authorization/mock_cel/flat_expr_builder.h",
-        "src/core/lib/security/authorization/mock_cel/statusor.h",
-        "src/core/lib/security/certificate_provider.h",
+        "src/core/lib/matchers/matchers.cc",
+        "src/core/lib/matchers/matchers.h",
         "src/core/lib/security/context/security_context.cc",
         "src/core/lib/security/context/security_context.h",
         "src/core/lib/security/credentials/alts/alts_credentials.cc",
@@ -844,6 +1056,16 @@ config("grpc_config") {
         "src/core/lib/security/credentials/credentials.cc",
         "src/core/lib/security/credentials/credentials.h",
         "src/core/lib/security/credentials/credentials_metadata.cc",
+        "src/core/lib/security/credentials/external/aws_external_account_credentials.cc",
+        "src/core/lib/security/credentials/external/aws_external_account_credentials.h",
+        "src/core/lib/security/credentials/external/aws_request_signer.cc",
+        "src/core/lib/security/credentials/external/aws_request_signer.h",
+        "src/core/lib/security/credentials/external/external_account_credentials.cc",
+        "src/core/lib/security/credentials/external/external_account_credentials.h",
+        "src/core/lib/security/credentials/external/file_external_account_credentials.cc",
+        "src/core/lib/security/credentials/external/file_external_account_credentials.h",
+        "src/core/lib/security/credentials/external/url_external_account_credentials.cc",
+        "src/core/lib/security/credentials/external/url_external_account_credentials.h",
         "src/core/lib/security/credentials/fake/fake_credentials.cc",
         "src/core/lib/security/credentials/fake/fake_credentials.h",
         "src/core/lib/security/credentials/google_default/credentials_generic.cc",
@@ -851,6 +1073,7 @@ config("grpc_config") {
         "src/core/lib/security/credentials/google_default/google_default_credentials.h",
         "src/core/lib/security/credentials/iam/iam_credentials.cc",
         "src/core/lib/security/credentials/iam/iam_credentials.h",
+        "src/core/lib/security/credentials/insecure/insecure_credentials.cc",
         "src/core/lib/security/credentials/jwt/json_token.cc",
         "src/core/lib/security/credentials/jwt/json_token.h",
         "src/core/lib/security/credentials/jwt/jwt_credentials.cc",
@@ -867,16 +1090,22 @@ config("grpc_config") {
         "src/core/lib/security/credentials/ssl/ssl_credentials.h",
         "src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc",
         "src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h",
+        "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc",
+        "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h",
         "src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc",
         "src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h",
         "src/core/lib/security/credentials/tls/tls_credentials.cc",
         "src/core/lib/security/credentials/tls/tls_credentials.h",
+        "src/core/lib/security/credentials/tls/tls_utils.cc",
+        "src/core/lib/security/credentials/tls/tls_utils.h",
         "src/core/lib/security/credentials/xds/xds_credentials.cc",
         "src/core/lib/security/credentials/xds/xds_credentials.h",
         "src/core/lib/security/security_connector/alts/alts_security_connector.cc",
         "src/core/lib/security/security_connector/alts/alts_security_connector.h",
         "src/core/lib/security/security_connector/fake/fake_security_connector.cc",
         "src/core/lib/security/security_connector/fake/fake_security_connector.h",
+        "src/core/lib/security/security_connector/insecure/insecure_security_connector.cc",
+        "src/core/lib/security/security_connector/insecure/insecure_security_connector.h",
         "src/core/lib/security/security_connector/load_system_roots.h",
         "src/core/lib/security/security_connector/load_system_roots_fallback.cc",
         "src/core/lib/security/security_connector/load_system_roots_linux.cc",
@@ -1034,18 +1263,18 @@ config("grpc_config") {
         "src/core/tsi/transport_security_grpc.cc",
         "src/core/tsi/transport_security_grpc.h",
         "src/core/tsi/transport_security_interface.h",
+        "third_party/xxhash/xxhash.h",
     ]
     deps = [
-        "//third_party/boringssl",
         "//third_party/zlib",
+        ":y_absl/container:flat_hash_map",
+        ":y_absl/container:inlined_vector",
+        ":y_absl/functional:bind_front",
+        ":y_absl/status:statusor",
         ":gpr",
+        "//third_party/boringssl",
         ":address_sorting",
         ":upb",
-        ":y_absl/types:optional",
-        ":y_absl/strings:strings",
-        ":y_absl/status:status",
-        ":y_absl/container:inlined_vector",
-        ":y_absl/container:flat_hash_set",
         "//third_party/cares",
         ":address_sorting",
     ]
@@ -1183,6 +1412,7 @@ config("grpc_config") {
         "include/grpcpp/impl/codegen/message_allocator.h",
         "include/grpcpp/impl/codegen/metadata_map.h",
         "include/grpcpp/impl/codegen/method_handler.h",
+        "include/grpcpp/impl/codegen/method_handler_impl.h",
         "include/grpcpp/impl/codegen/proto_buffer_reader.h",
         "include/grpcpp/impl/codegen/proto_buffer_writer.h",
         "include/grpcpp/impl/codegen/proto_utils.h",
@@ -1218,6 +1448,7 @@ config("grpc_config") {
         "include/grpcpp/security/auth_metadata_processor.h",
         "include/grpcpp/security/credentials.h",
         "include/grpcpp/security/server_credentials.h",
+        "include/grpcpp/security/tls_certificate_provider.h",
         "include/grpcpp/security/tls_credentials_options.h",
         "include/grpcpp/server.h",
         "include/grpcpp/server_builder.h",
@@ -1245,6 +1476,7 @@ config("grpc_config") {
         "include/grpcpp/support/sync_stream.h",
         "include/grpcpp/support/time.h",
         "include/grpcpp/support/validate_service_config.h",
+        "include/grpcpp/xds_server_builder.h",
         "src/cpp/client/channel_cc.cc",
         "src/cpp/client/client_callback.cc",
         "src/cpp/client/client_context.cc",
@@ -1257,6 +1489,7 @@ config("grpc_config") {
         "src/cpp/client/insecure_credentials.cc",
         "src/cpp/client/secure_credentials.cc",
         "src/cpp/client/secure_credentials.h",
+        "src/cpp/client/xds_credentials.cc",
         "src/cpp/codegen/codegen_init.cc",
         "src/cpp/common/alarm.cc",
         "src/cpp/common/auth_property_iterator.cc",
@@ -1271,6 +1504,7 @@ config("grpc_config") {
         "src/cpp/common/secure_auth_context.h",
         "src/cpp/common/secure_channel_arguments.cc",
         "src/cpp/common/secure_create_auth_context.cc",
+        "src/cpp/common/tls_certificate_provider.cc",
         "src/cpp/common/tls_credentials_options.cc",
         "src/cpp/common/tls_credentials_options_util.cc",
         "src/cpp/common/tls_credentials_options_util.h",
@@ -1297,6 +1531,7 @@ config("grpc_config") {
         "src/cpp/server/server_credentials.cc",
         "src/cpp/server/server_posix.cc",
         "src/cpp/server/thread_pool_interface.h",
+        "src/cpp/server/xds_server_credentials.cc",
         "src/cpp/thread_manager/thread_manager.cc",
         "src/cpp/thread_manager/thread_manager.h",
         "src/cpp/util/byte_buffer_cc.cc",
@@ -1307,9 +1542,6 @@ config("grpc_config") {
     deps = [
         "//third_party/protobuf:protobuf_lite",
         ":grpc",
-        ":gpr",
-        ":address_sorting",
-        ":upb",
     ]
     
     public_configs = [

+ 18 - 11
contrib/libs/grpc/BUILDING.md

@@ -19,8 +19,6 @@ If you plan to build using CMake
 
 If you are a contributor and plan to build and run tests, install the following as well:
 ```sh
- $ # libgflags-dev is only required if building with make (deprecated)
- $ [sudo] apt-get install libgflags-dev
  $ # clang and LLVM C++ lib is only required for sanitizer builds
  $ [sudo] apt-get install clang-5.0 libc++-dev
 ```
@@ -45,12 +43,6 @@ packages from [Homebrew](https://brew.sh):
 
 If you plan to build using CMake, follow the instructions from https://cmake.org/download/
 
-If you are a contributor and plan to build and run tests, install the following as well:
-```sh
- $ # gflags is only required if building with make (deprecated) 
- $ brew install gflags
-```
-
 *Tip*: when building,
 you *may* want to explicitly set the `LIBTOOL` and `LIBTOOLIZE`
 environment variables when running `make` to ensure the version
@@ -152,7 +144,7 @@ you will be able to browse and build the code.
 > cmake --build . --config Release
 ```
 
-If you want to build DLLs, run `cmake` with `-DBUILD_SHARED_LIBS=ON`.
+Using gRPC C++ as a DLL is not recommended, but you can still enable it by running `cmake` with `-DBUILD_SHARED_LIBS=ON`. 
 
 ### Windows, Using Ninja (faster build).
 
@@ -168,7 +160,16 @@ installed to be able to compile the C/C++ sources.
 > cmake --build .
 ```
 
-If you want to build DLLs, run `cmake` with `-DBUILD_SHARED_LIBS=ON`.
+Using gRPC C++ as a DLL is not recommended, but you can still enable it by running `cmake` with `-DBUILD_SHARED_LIBS=ON`.
+
+### Windows: A note on building shared libs (DLLs)
+
+Windows DLL build is supported at a "best effort" basis and we don't recommend using gRPC C++ as a DLL as there are some known drawbacks around how C++ DLLs work on Windows. For example, there is no stable C++ ABI and you can't safely allocate memory in one DLL, and free it in another etc.
+
+That said, we don't actively prohibit building DLLs on windows (it can be enabled in cmake with `-DBUILD_SHARED_LIBS=ON`), and are free to use the DLL builds
+at your own risk.
+- you've been warned that there are some important drawbacks and some things might not work at all or will be broken in interesting ways.
+- we don't have extensive testing for DLL builds in place (to avoid maintenance costs, increased test duration etc.) so regressions / build breakages might occur
 
 ### Dependency management
 
@@ -242,7 +243,13 @@ $ cmake ../.. -DCMAKE_TOOLCHAIN_FILE=path/to/file
 $ make
 ```
 
-[Cross-compile example](test/distrib/cpp/run_distrib_test_raspberry_pi.sh)
+[Cross-compile example](test/distrib/cpp/run_distrib_test_cmake_aarch64_cross.sh)
+
+### A note on SONAME and its ABI compatibility implications in the cmake build
+
+Best efforts are made to bump the SONAME revision during ABI breaches. While a
+change in the SONAME clearly indicates an ABI incompatibility, no hard guarantees
+can be made about any sort of ABI stability across the same SONAME version.
 
 ## Building with make on UNIX systems (deprecated)
 

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