grpc 1.84.0 → 1.85.0.pre1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Makefile +40 -27
- data/include/grpc/event_engine/memory_allocator.h +1 -0
- data/include/grpc/grpc.h +3 -0
- data/include/grpc/grpc_security_constants.h +2 -0
- data/include/grpc/impl/channel_arg_names.h +4 -0
- data/src/core/call/call_filters.h +10 -10
- data/src/core/{lib/security/authorization → call}/evaluate_args.cc +22 -1
- data/src/core/{lib/security/authorization → call}/evaluate_args.h +19 -5
- data/src/core/call/filter_fusion.h +15 -15
- data/src/core/call/interception_chain.h +3 -3
- data/src/core/call/metadata_batch.cc +1 -0
- data/src/core/call/metadata_batch.h +45 -33
- data/src/core/call/parsed_metadata.h +3 -3
- data/src/core/call/request_buffer.cc +6 -6
- data/src/core/call/request_buffer.h +1 -1
- data/src/core/channelz/channel_trace.cc +5 -5
- data/src/core/channelz/channel_trace.h +1 -1
- data/src/core/channelz/channelz.cc +9 -9
- data/src/core/channelz/channelz.h +12 -12
- data/src/core/channelz/channelz_registry.cc +10 -10
- data/src/core/channelz/ztrace_collector.h +5 -5
- data/src/core/client_channel/client_channel.cc +4 -4
- data/src/core/client_channel/client_channel_filter.cc +14 -14
- data/src/core/client_channel/global_subchannel_pool.cc +4 -4
- data/src/core/client_channel/subchannel.cc +24 -23
- data/src/core/client_channel/subchannel_stream_client.cc +5 -5
- data/src/core/credentials/call/external/aws_external_account_credentials.cc +7 -7
- data/src/core/credentials/call/external/aws_request_signer.cc +16 -0
- data/src/core/credentials/call/external/external_account_credentials.cc +4 -4
- data/src/core/credentials/call/regional_access_boundary_fetcher.cc +9 -9
- data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.cc +4 -4
- data/src/core/credentials/transport/google_default/google_default_credentials.cc +3 -3
- data/src/core/credentials/transport/ssl/ssl_security_connector.cc +1 -1
- data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.cc +9 -9
- data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.h +1 -1
- data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.cc +6 -6
- data/src/core/credentials/transport/tls/grpc_tls_certificate_verifier.cc +3 -3
- data/src/core/credentials/transport/tls/grpc_tls_crl_provider.cc +4 -4
- data/src/core/credentials/transport/tls/ssl_utils.cc +10 -0
- data/src/core/credentials/transport/tls/tls_security_connector.cc +10 -10
- data/src/core/credentials/transport/tls/tls_security_connector.h +6 -6
- data/src/core/credentials/transport/tls/tls_utils.h +9 -0
- data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +1 -1
- data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +1 -1
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +2 -2
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +1 -1
- data/src/core/ext/filters/http/message_compress/compression_filter.cc +15 -0
- data/src/core/ext/filters/rbac/rbac_filter.h +1 -1
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +5 -5
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +30 -21
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +5 -11
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +14 -11
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +1 -0
- data/src/core/ext/transport/chttp2/transport/flow_control.h +0 -4
- data/src/core/ext/transport/chttp2/transport/frame.h +9 -0
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +12 -9
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +4 -2
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +16 -18
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +2 -1
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.cc +277 -189
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.h +40 -17
- data/src/core/ext/transport/chttp2/transport/http2_transport.cc +12 -24
- data/src/core/ext/transport/chttp2/transport/http2_transport.h +3 -29
- data/src/core/ext/transport/chttp2/transport/internal.h +2 -2
- data/src/core/ext/transport/chttp2/transport/parsing.cc +3 -2
- data/src/core/ext/transport/chttp2/transport/read_context.h +96 -3
- data/src/core/ext/transport/chttp2/transport/reclaimer.cc +32 -0
- data/src/core/ext/transport/chttp2/transport/reclaimer.h +64 -0
- data/src/core/ext/transport/chttp2/transport/security_frame.h +8 -8
- data/src/core/ext/transport/chttp2/transport/stream_data_queue.h +17 -9
- data/src/core/ext/transport/chttp2/transport/write_cycle.h +23 -3
- data/src/core/ext/transport/inproc/inproc_transport.cc +5 -5
- data/src/core/ext/upb-gen/grpc/channelz/v1/channelz.upb.h +137 -73
- data/src/core/ext/upb-gen/grpc/channelz/v1/channelz.upb_minitable.c +45 -25
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/altscontext.upb.h +6 -6
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/altscontext.upb_minitable.c +4 -4
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/altscontext.upb_minitable.h +5 -5
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/handshaker.upb.h +46 -26
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/handshaker.upb_minitable.c +17 -14
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/handshaker.upb_minitable.h +5 -5
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/transport_security_common.upb.h +5 -5
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/transport_security_common.upb_minitable.c +3 -3
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/gcp/transport_security_common.upb_minitable.h +5 -5
- data/src/core/ext/upb-gen/grpc/health/v1/health.upb.h +329 -0
- data/src/core/ext/upb-gen/grpc/health/v1/health.upb_minitable.c +128 -0
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/health/v1/health.upb_minitable.h +8 -5
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lb/v1/load_balancer.upb.h +5 -5
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lb/v1/load_balancer.upb_minitable.c +3 -3
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lb/v1/load_balancer.upb_minitable.h +5 -5
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lookup/v1/rls.upb.h +185 -23
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lookup/v1/rls.upb_minitable.c +20 -12
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lookup/v1/rls.upb_minitable.h +5 -5
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lookup/v1/rls_config.upb.h +58 -42
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lookup/v1/rls_config.upb_minitable.c +17 -12
- data/src/core/ext/upb-gen/{src/proto/grpc → grpc}/lookup/v1/rls_config.upb_minitable.h +5 -5
- data/src/core/ext/upbdefs-gen/grpc/channelz/v1/channelz.upbdefs.c +567 -549
- data/src/core/ext/upbdefs-gen/grpc/lookup/v1/rls_config.upbdefs.c +182 -0
- data/src/core/ext/upbdefs-gen/{src/proto/grpc → grpc}/lookup/v1/rls_config.upbdefs.h +14 -14
- data/src/core/filter/ext_proc/ext_proc_filter.cc +1603 -46
- data/src/core/filter/ext_proc/ext_proc_filter.h +55 -22
- data/src/core/filter/ext_proc/ext_proc_messages.cc +106 -51
- data/src/core/filter/ext_proc/ext_proc_messages.h +36 -9
- data/src/core/handshaker/handshaker.cc +4 -4
- data/src/core/handshaker/http_connect/http_connect_client_handshaker.cc +3 -3
- data/src/core/handshaker/security/pipelined_secure_endpoint.cc +10 -10
- data/src/core/handshaker/security/secure_endpoint.cc +13 -13
- data/src/core/handshaker/security/security_handshaker.cc +6 -6
- data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +4 -4
- data/src/core/lib/channel/channel_args.cc +20 -0
- data/src/core/lib/channel/channel_args.h +17 -17
- data/src/core/lib/channel/promise_based_filter.cc +2 -2
- data/src/core/lib/channel/promise_based_filter.h +66 -27
- data/src/core/lib/debug/trace_flags.cc +2 -0
- data/src/core/lib/debug/trace_flags.h +1 -0
- data/src/core/lib/event_engine/ares_resolver.cc +14 -14
- data/src/core/lib/event_engine/cf_engine/cf_engine.cc +7 -7
- data/src/core/lib/event_engine/cf_engine/cfsocket_listener.cc +4 -4
- data/src/core/lib/event_engine/default_event_engine.cc +5 -5
- data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +9 -9
- data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +16 -14
- data/src/core/lib/event_engine/posix_engine/file_descriptor_collection.cc +6 -6
- data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +3 -3
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +1 -1
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +7 -7
- data/src/core/lib/event_engine/posix_engine/posix_engine.cc +17 -17
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +3 -3
- data/src/core/lib/event_engine/posix_engine/timer.cc +5 -5
- data/src/core/lib/event_engine/posix_engine/timer_manager.cc +5 -5
- data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +3 -3
- data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +1 -1
- data/src/core/lib/event_engine/thread_pool/thread_count.cc +1 -1
- data/src/core/lib/event_engine/thread_pool/thread_count.h +3 -3
- data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +50 -21
- data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +3 -3
- data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +3 -3
- data/src/core/lib/event_engine/windows/windows_engine.cc +15 -15
- data/src/core/lib/event_engine/windows/windows_listener.cc +6 -6
- data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +6 -6
- data/src/core/lib/experiments/experiments.cc +48 -0
- data/src/core/lib/experiments/experiments.h +24 -0
- data/src/core/lib/iomgr/buffer_list.cc +3 -3
- data/src/core/lib/iomgr/buffer_list.h +1 -1
- data/src/core/lib/iomgr/combiner.cc +0 -1
- data/src/core/lib/iomgr/ev_apple.cc +4 -4
- data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +2 -2
- data/src/core/lib/iomgr/tcp_client_posix.cc +3 -3
- data/src/core/lib/iomgr/tcp_posix.cc +7 -7
- data/src/core/lib/promise/activity.cc +1 -1
- data/src/core/lib/promise/activity.h +1 -1
- data/src/core/lib/promise/arena_promise.h +7 -7
- data/src/core/lib/promise/detail/promise_factory.h +8 -8
- data/src/core/lib/promise/detail/promise_like.h +4 -4
- data/src/core/lib/promise/inter_activity_latch.h +6 -6
- data/src/core/lib/promise/inter_activity_pipe.h +1 -1
- data/src/core/lib/promise/observable.h +3 -3
- data/src/core/lib/promise/party.cc +1 -1
- data/src/core/lib/promise/try_seq.h +2 -2
- data/src/core/lib/resource_quota/arena.h +3 -3
- data/src/core/lib/resource_quota/memory_quota.cc +16 -16
- data/src/core/lib/resource_quota/memory_quota.h +1 -1
- data/src/core/lib/resource_quota/thread_quota.cc +3 -3
- data/src/core/lib/security/authorization/audit_logging.cc +5 -5
- data/src/core/lib/security/authorization/authorization_engine.h +1 -1
- data/src/core/lib/security/authorization/grpc_authorization_engine.h +1 -1
- data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +1 -1
- data/src/core/lib/security/authorization/grpc_server_authz_filter.h +1 -1
- data/src/core/lib/security/authorization/matchers.h +1 -1
- data/src/core/lib/surface/call.cc +8 -7
- data/src/core/lib/surface/call.h +3 -3
- data/src/core/lib/surface/call_utils.h +4 -0
- data/src/core/lib/surface/channel.cc +1 -1
- data/src/core/lib/surface/channel.h +1 -1
- data/src/core/lib/surface/channel_init.cc +1 -1
- data/src/core/lib/surface/init.cc +7 -7
- data/src/core/lib/surface/lame_client.cc +1 -1
- data/src/core/lib/surface/legacy_channel.cc +2 -2
- data/src/core/lib/surface/version.cc +1 -1
- data/src/core/lib/transport/transport_framing_endpoint_extension.h +3 -3
- data/src/core/load_balancing/autosharding/autosharding.cc +931 -0
- data/src/core/load_balancing/autosharding/autosharding.h +78 -0
- data/src/core/load_balancing/grpclb/grpclb_client_stats.cc +2 -2
- data/src/core/load_balancing/grpclb/load_balancer_api.cc +1 -1
- data/src/core/load_balancing/grpclb/load_balancer_api.h +3 -1
- data/src/core/load_balancing/health_check_client.cc +7 -7
- data/src/core/load_balancing/lb_policy.cc +1 -1
- data/src/core/load_balancing/oob_backend_metric.cc +5 -5
- data/src/core/load_balancing/outlier_detection/outlier_detection.cc +2 -2
- data/src/core/load_balancing/ring_hash/ring_hash.cc +109 -37
- data/src/core/load_balancing/rls/rls.cc +23 -17
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +10 -10
- data/src/core/load_balancing/xds/cds.cc +6 -5
- data/src/core/load_balancing/xds/xds_cluster_impl.cc +2 -2
- data/src/core/load_balancing/xds/xds_override_host.cc +10 -10
- data/src/core/mitigation_engine/mitigation_engine.h +28 -4
- data/src/core/plugin_registry/grpc_plugin_registry.cc +2 -0
- data/src/core/resolver/dns/dns_resolver.cc +7 -7
- data/src/core/resolver/fake/fake_resolver.cc +5 -5
- data/src/core/resolver/google_c2p/google_c2p_resolver.cc +38 -30
- data/src/core/server/server.cc +30 -30
- data/src/core/server/server.h +4 -3
- data/src/core/server/server_config_selector_filter.cc +3 -3
- data/src/core/server/xds_server_config_fetcher_legacy.cc +15 -15
- data/src/core/telemetry/default_tcp_tracer.cc +1 -1
- data/src/core/telemetry/instrument.cc +30 -16
- data/src/core/telemetry/instrument.h +3 -3
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +3 -3
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +4 -4
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +2 -2
- data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +1 -1
- data/src/core/tsi/alts/handshaker/transport_security_common_api.h +1 -1
- data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +5 -5
- data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +3 -3
- data/src/core/tsi/ssl_transport_security.cc +46 -13
- data/src/core/tsi/ssl_transport_security.h +7 -0
- data/src/core/tsi/ssl_transport_security_utils.cc +16 -6
- data/src/core/util/event_log.cc +3 -3
- data/src/core/util/http_client/httpcli.cc +5 -5
- data/src/core/util/http_client/httpcli.h +1 -1
- data/src/core/util/json/json_object_loader.cc +7 -0
- data/src/core/util/json/json_object_loader.h +17 -2
- data/src/core/util/latent_see.cc +123 -36
- data/src/core/util/latent_see.h +14 -1
- data/src/core/util/mpscq.cc +1 -1
- data/src/core/util/notification.h +4 -4
- data/src/core/util/sync.h +20 -6
- data/src/core/util/table.h +20 -22
- data/src/core/util/work_serializer.cc +2 -2
- data/src/core/xds/grpc/blackboard.cc +4 -3
- data/src/core/xds/grpc/certificate_provider_store.cc +2 -2
- data/src/core/xds/grpc/streaming_call_promise_wrapper.cc +181 -0
- data/src/core/xds/grpc/streaming_call_promise_wrapper.h +213 -0
- data/src/core/xds/grpc/xds_bootstrap_grpc_builder.cc +2 -2
- data/src/core/xds/grpc/xds_client_grpc.cc +8 -8
- data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +2 -2
- data/src/core/xds/grpc/xds_endpoint.cc +1 -1
- data/src/core/xds/grpc/xds_endpoint_parser.cc +11 -0
- data/src/core/xds/grpc/xds_grpc_service_parser.cc +12 -10
- data/src/core/xds/grpc/xds_http_ext_proc_filter.cc +17 -14
- data/src/core/xds/grpc/xds_matcher.h +2 -2
- data/src/core/xds/grpc/xds_transport_grpc.cc +125 -85
- data/src/core/xds/grpc/xds_transport_grpc.h +19 -4
- data/src/core/xds/xds_client/lrs_client.cc +22 -19
- data/src/core/xds/xds_client/xds_client.cc +19 -16
- data/src/core/xds/xds_client/xds_transport.h +49 -3
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +2 -0
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +3 -0
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/README.md +1 -1
- data/src/ruby/pb/generate_proto_ruby.sh +1 -1
- data/third_party/abseil-cpp/absl/algorithm/algorithm.h +34 -2
- data/third_party/abseil-cpp/absl/algorithm/container.h +345 -147
- data/third_party/abseil-cpp/absl/base/attributes.h +67 -44
- data/third_party/abseil-cpp/absl/base/call_once.h +1 -0
- data/third_party/abseil-cpp/absl/base/casts.cc +61 -0
- data/third_party/abseil-cpp/absl/base/casts.h +135 -2
- data/third_party/abseil-cpp/absl/base/config.h +63 -41
- data/third_party/abseil-cpp/absl/base/fast_type_id.h +30 -2
- data/third_party/abseil-cpp/absl/base/internal/dynamic_annotations.h +1 -1
- data/third_party/abseil-cpp/absl/base/internal/hardening.h +136 -0
- data/third_party/abseil-cpp/absl/base/internal/iterator_traits.h +6 -2
- data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +39 -4
- data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +6 -0
- data/third_party/abseil-cpp/absl/base/internal/low_level_scheduling.h +77 -15
- data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +3 -4
- data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +26 -24
- data/third_party/abseil-cpp/absl/base/internal/spinlock.h +74 -29
- data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +1 -11
- data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +52 -0
- data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +5 -1
- data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +5 -0
- data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +1 -1
- data/third_party/abseil-cpp/absl/base/macros.h +76 -37
- data/third_party/abseil-cpp/absl/base/nullability.h +5 -5
- data/third_party/abseil-cpp/absl/base/optimization.h +4 -5
- data/third_party/abseil-cpp/absl/base/options.h +46 -18
- data/third_party/abseil-cpp/absl/base/policy_checks.h +5 -5
- data/third_party/abseil-cpp/absl/base/{internal/throw_delegate.cc → throw_delegate.cc} +9 -7
- data/third_party/abseil-cpp/absl/base/{internal/throw_delegate.h → throw_delegate.h} +4 -14
- data/third_party/abseil-cpp/absl/cleanup/cleanup.h +7 -2
- data/third_party/abseil-cpp/absl/cleanup/internal/cleanup.h +3 -2
- data/third_party/abseil-cpp/absl/container/btree_map.h +60 -10
- data/third_party/abseil-cpp/absl/container/btree_set.h +61 -15
- data/third_party/abseil-cpp/absl/container/fixed_array.h +19 -21
- data/third_party/abseil-cpp/absl/container/flat_hash_map.h +49 -27
- data/third_party/abseil-cpp/absl/container/flat_hash_set.h +50 -26
- data/third_party/abseil-cpp/absl/container/inlined_vector.h +42 -36
- data/third_party/abseil-cpp/absl/container/internal/btree.h +32 -24
- data/third_party/abseil-cpp/absl/container/internal/btree_container.h +30 -22
- data/third_party/abseil-cpp/absl/container/internal/common.h +57 -5
- data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +1 -1
- data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +40 -36
- data/third_party/abseil-cpp/absl/container/internal/container_memory.h +119 -39
- data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +14 -2
- data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +14 -22
- data/third_party/abseil-cpp/absl/container/internal/hashtable_control_bytes.h +52 -52
- data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +7 -7
- data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +7 -7
- data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +32 -40
- data/third_party/abseil-cpp/absl/container/internal/layout.h +13 -13
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +95 -72
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +633 -365
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1016 -749
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_set_resize_impl.h +0 -1
- data/third_party/abseil-cpp/absl/container/node_hash_map.h +58 -35
- data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +23 -6
- data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.h +7 -1
- data/third_party/abseil-cpp/absl/crc/internal/crc.cc +4 -6
- data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +41 -0
- data/third_party/abseil-cpp/absl/crc/internal/crc_internal.h +0 -16
- data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_arm_combined.cc +5 -0
- data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +304 -188
- data/third_party/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h +4 -2
- data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +2 -2
- data/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.h +8 -0
- data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +4 -4
- data/third_party/abseil-cpp/absl/debugging/internal/examine_stack.cc +15 -1
- data/third_party/abseil-cpp/absl/debugging/internal/examine_stack.h +7 -1
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +12 -1
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +6 -5
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +13 -11
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +14 -7
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +3 -2
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +6 -1
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +14 -8
- data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +48 -38
- data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +4 -0
- data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +63 -118
- data/third_party/abseil-cpp/absl/debugging/stacktrace.h +7 -47
- data/third_party/abseil-cpp/absl/debugging/symbolize.cc +20 -2
- data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +83 -149
- data/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +4 -17
- data/third_party/abseil-cpp/absl/debugging/symbolize_unimplemented.inc +4 -4
- data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +2 -4
- data/third_party/abseil-cpp/absl/flags/commandlineflag.h +8 -6
- data/third_party/abseil-cpp/absl/flags/declare.h +9 -0
- data/third_party/abseil-cpp/absl/flags/flag.h +2 -1
- data/third_party/abseil-cpp/absl/flags/internal/commandlineflag.h +1 -1
- data/third_party/abseil-cpp/absl/flags/internal/flag.cc +19 -18
- data/third_party/abseil-cpp/absl/flags/internal/flag.h +33 -34
- data/third_party/abseil-cpp/absl/flags/internal/program_name.cc +2 -2
- data/third_party/abseil-cpp/absl/flags/marshalling.cc +1 -16
- data/third_party/abseil-cpp/absl/flags/marshalling.h +2 -28
- data/third_party/abseil-cpp/absl/flags/reflection.cc +11 -7
- data/third_party/abseil-cpp/absl/flags/usage_config.cc +2 -2
- data/third_party/abseil-cpp/absl/functional/any_invocable.h +22 -19
- data/third_party/abseil-cpp/absl/functional/bind_front.h +7 -1
- data/third_party/abseil-cpp/absl/functional/function_ref.h +125 -20
- data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +43 -31
- data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +4 -4
- data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +44 -6
- data/third_party/abseil-cpp/absl/hash/hash.h +1 -1
- data/third_party/abseil-cpp/absl/hash/internal/city.cc +39 -51
- data/third_party/abseil-cpp/absl/hash/internal/hash.cc +379 -14
- data/third_party/abseil-cpp/absl/hash/internal/hash.h +457 -353
- data/third_party/abseil-cpp/absl/log/absl_vlog_is_on.h +0 -2
- data/third_party/abseil-cpp/absl/log/internal/check_impl.h +2 -1
- data/third_party/abseil-cpp/absl/log/internal/check_op.cc +4 -0
- data/third_party/abseil-cpp/absl/log/internal/check_op.h +128 -50
- data/third_party/abseil-cpp/absl/log/internal/conditions.h +38 -35
- data/third_party/abseil-cpp/absl/log/internal/log_impl.h +108 -110
- data/third_party/abseil-cpp/absl/log/internal/log_message.cc +10 -6
- data/third_party/abseil-cpp/absl/log/internal/log_message.h +19 -1
- data/third_party/abseil-cpp/absl/log/internal/log_sink_set.cc +4 -4
- data/third_party/abseil-cpp/absl/log/internal/nullstream.h +1 -1
- data/third_party/abseil-cpp/absl/log/internal/proto.cc +13 -0
- data/third_party/abseil-cpp/absl/log/internal/strip.h +30 -31
- data/third_party/abseil-cpp/absl/log/internal/structured_proto.cc +5 -5
- data/third_party/abseil-cpp/absl/log/internal/structured_proto.h +6 -5
- data/third_party/abseil-cpp/absl/log/internal/vlog_config.cc +30 -30
- data/third_party/abseil-cpp/absl/log/internal/vlog_config.h +0 -1
- data/third_party/abseil-cpp/absl/log/log.h +2 -2
- data/third_party/abseil-cpp/absl/log/log_entry.cc +263 -0
- data/third_party/abseil-cpp/absl/log/log_entry.h +2 -0
- data/third_party/abseil-cpp/absl/log/vlog_is_on.h +0 -2
- data/third_party/abseil-cpp/absl/memory/memory.h +55 -5
- data/third_party/abseil-cpp/absl/meta/type_traits.h +161 -56
- data/third_party/abseil-cpp/absl/numeric/int128.h +41 -21
- data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +16 -22
- data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +5 -7
- data/third_party/abseil-cpp/absl/numeric/internal/bits.h +32 -4
- data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +9 -9
- data/third_party/abseil-cpp/absl/random/beta_distribution.h +2 -2
- data/third_party/abseil-cpp/absl/random/bit_gen_ref.h +26 -53
- data/third_party/abseil-cpp/absl/random/discrete_distribution.h +1 -1
- data/third_party/abseil-cpp/absl/random/distributions.h +17 -17
- data/third_party/abseil-cpp/absl/random/exponential_distribution.h +1 -1
- data/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +8 -21
- data/third_party/abseil-cpp/absl/random/internal/entropy_pool.cc +2 -2
- data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +1 -1
- data/third_party/abseil-cpp/absl/random/internal/generate_real.h +1 -1
- data/third_party/abseil-cpp/absl/random/internal/iostream_state_saver.h +2 -2
- data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +2 -2
- data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +6 -6
- data/third_party/abseil-cpp/absl/random/internal/platform.h +0 -13
- data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +6 -6
- data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +2 -2
- data/third_party/abseil-cpp/absl/random/internal/salted_seed_seq.h +6 -5
- data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +5 -31
- data/third_party/abseil-cpp/absl/random/internal/seed_material.h +2 -1
- data/third_party/abseil-cpp/absl/random/internal/traits.h +21 -0
- data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +23 -23
- data/third_party/abseil-cpp/absl/random/mocking_access.h +74 -0
- data/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +1 -1
- data/third_party/abseil-cpp/absl/status/internal/status_internal.cc +63 -18
- data/third_party/abseil-cpp/absl/status/internal/status_internal.h +30 -4
- data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +225 -63
- data/third_party/abseil-cpp/absl/status/status.cc +66 -70
- data/third_party/abseil-cpp/absl/status/status.h +254 -23
- data/third_party/abseil-cpp/absl/status/status_payload_printer.h +3 -2
- data/third_party/abseil-cpp/absl/status/statusor.h +117 -137
- data/third_party/abseil-cpp/absl/strings/ascii.h +10 -6
- data/third_party/abseil-cpp/absl/strings/cord.cc +41 -17
- data/third_party/abseil-cpp/absl/strings/cord.h +26 -17
- data/third_party/abseil-cpp/absl/strings/cord_buffer.h +4 -2
- data/third_party/abseil-cpp/absl/strings/escaping.cc +305 -125
- data/third_party/abseil-cpp/absl/strings/escaping.h +12 -2
- data/third_party/abseil-cpp/absl/strings/internal/append_and_overwrite.h +93 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +2 -2
- data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +6 -6
- data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +27 -21
- data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +11 -19
- data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc +6 -0
- data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h +1 -0
- data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +0 -141
- data/third_party/abseil-cpp/absl/strings/internal/escaping.h +2 -24
- data/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h +31 -36
- data/third_party/abseil-cpp/absl/strings/internal/stl_type_traits.h +39 -39
- data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +14 -22
- data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +2 -2
- data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +2 -4
- data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +921 -231
- data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +18 -16
- data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +16 -12
- data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.h +12 -0
- data/third_party/abseil-cpp/absl/strings/numbers.cc +477 -8
- data/third_party/abseil-cpp/absl/strings/numbers.h +29 -12
- data/third_party/abseil-cpp/absl/strings/resize_and_overwrite.h +198 -0
- data/third_party/abseil-cpp/absl/strings/str_cat.cc +96 -91
- data/third_party/abseil-cpp/absl/strings/str_cat.h +53 -13
- data/third_party/abseil-cpp/absl/strings/str_split.h +14 -9
- data/third_party/abseil-cpp/absl/strings/string_view.h +10 -716
- data/third_party/abseil-cpp/absl/strings/substitute.cc +24 -24
- data/third_party/abseil-cpp/absl/strings/substitute.h +2 -2
- data/third_party/abseil-cpp/absl/synchronization/barrier.cc +1 -1
- data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +2 -2
- data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +24 -3
- data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +30 -33
- data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +2 -2
- data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +5 -0
- data/third_party/abseil-cpp/absl/synchronization/mutex.cc +41 -29
- data/third_party/abseil-cpp/absl/synchronization/mutex.h +199 -94
- data/third_party/abseil-cpp/absl/synchronization/notification.cc +5 -5
- data/third_party/abseil-cpp/absl/synchronization/notification.h +1 -1
- data/third_party/abseil-cpp/absl/time/clock.cc +29 -30
- data/third_party/abseil-cpp/absl/time/clock.h +3 -0
- data/third_party/abseil-cpp/absl/time/duration.cc +2 -2
- data/third_party/abseil-cpp/absl/time/format.cc +3 -10
- data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +12 -0
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +131 -91
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +6 -103
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.cc +185 -0
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.h +37 -0
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +10 -15
- data/third_party/abseil-cpp/absl/time/time.cc +4 -4
- data/third_party/abseil-cpp/absl/time/time.h +14 -13
- data/third_party/abseil-cpp/absl/types/compare.h +64 -63
- data/third_party/abseil-cpp/absl/types/internal/span.h +6 -6
- data/third_party/abseil-cpp/absl/types/optional.h +31 -4
- data/third_party/abseil-cpp/absl/types/optional_ref.h +295 -0
- data/third_party/{boringssl-with-bazel/crypto/x509/x_val.cc → abseil-cpp/absl/types/source_location.cc} +4 -14
- data/third_party/abseil-cpp/absl/types/source_location.h +172 -0
- data/third_party/abseil-cpp/absl/types/span.h +67 -38
- data/third_party/abseil-cpp/absl/types/variant.h +75 -18
- data/third_party/abseil-cpp/absl/utility/utility.h +112 -16
- data/third_party/boringssl-with-bazel/crypto/aes/aes.cc +3 -0
- data/third_party/boringssl-with-bazel/crypto/armv8_feature_parsing.h +67 -0
- data/third_party/boringssl-with-bazel/crypto/asn1/a_bitstr.cc +143 -105
- data/third_party/boringssl-with-bazel/crypto/asn1/a_bool.cc +5 -8
- data/third_party/boringssl-with-bazel/crypto/asn1/a_d2i_fp.cc +3 -3
- data/third_party/boringssl-with-bazel/crypto/asn1/a_dup.cc +6 -6
- data/third_party/boringssl-with-bazel/crypto/asn1/a_gentm.cc +33 -12
- data/third_party/boringssl-with-bazel/crypto/asn1/a_i2d_fp.cc +7 -6
- data/third_party/boringssl-with-bazel/crypto/asn1/a_int.cc +80 -52
- data/third_party/boringssl-with-bazel/crypto/asn1/a_mbstr.cc +7 -4
- data/third_party/boringssl-with-bazel/crypto/asn1/a_object.cc +70 -72
- data/third_party/boringssl-with-bazel/crypto/asn1/a_strex.cc +38 -42
- data/third_party/boringssl-with-bazel/crypto/asn1/a_strnid.cc +41 -39
- data/third_party/boringssl-with-bazel/crypto/asn1/a_time.cc +59 -35
- data/third_party/boringssl-with-bazel/crypto/asn1/a_type.cc +275 -15
- data/third_party/boringssl-with-bazel/crypto/asn1/a_utctm.cc +32 -13
- data/third_party/boringssl-with-bazel/crypto/asn1/asn1_lib.cc +128 -30
- data/third_party/boringssl-with-bazel/crypto/asn1/asn_pack.cc +10 -10
- data/third_party/boringssl-with-bazel/crypto/asn1/f_int.cc +1 -1
- data/third_party/boringssl-with-bazel/crypto/asn1/f_string.cc +1 -1
- data/third_party/boringssl-with-bazel/crypto/asn1/internal.h +261 -115
- data/third_party/boringssl-with-bazel/crypto/asn1/posix_time.cc +8 -5
- data/third_party/boringssl-with-bazel/crypto/asn1/tasn_dec.cc +373 -725
- data/third_party/boringssl-with-bazel/crypto/asn1/tasn_enc.cc +211 -526
- data/third_party/boringssl-with-bazel/crypto/asn1/tasn_fre.cc +22 -19
- data/third_party/boringssl-with-bazel/crypto/asn1/tasn_new.cc +26 -24
- data/third_party/boringssl-with-bazel/crypto/asn1/tasn_typ.cc +19 -5
- data/third_party/boringssl-with-bazel/crypto/asn1/tasn_utl.cc +47 -51
- data/third_party/boringssl-with-bazel/crypto/base64/base64.cc +14 -15
- data/third_party/boringssl-with-bazel/crypto/bcm_support.h +7 -29
- data/third_party/boringssl-with-bazel/crypto/bio/bio.cc +234 -176
- data/third_party/boringssl-with-bazel/crypto/bio/bio_mem.cc +72 -86
- data/third_party/boringssl-with-bazel/crypto/bio/connect.cc +153 -199
- data/third_party/boringssl-with-bazel/crypto/bio/errno.cc +3 -1
- data/third_party/boringssl-with-bazel/crypto/bio/fd.cc +56 -55
- data/third_party/boringssl-with-bazel/crypto/bio/file.cc +70 -78
- data/third_party/boringssl-with-bazel/crypto/bio/hexdump.cc +6 -4
- data/third_party/boringssl-with-bazel/crypto/bio/internal.h +69 -17
- data/third_party/boringssl-with-bazel/crypto/bio/pair.cc +117 -136
- data/third_party/boringssl-with-bazel/crypto/bio/printf.cc +1 -1
- data/third_party/boringssl-with-bazel/crypto/bio/socket.cc +116 -50
- data/third_party/boringssl-with-bazel/crypto/bio/socket_helper.cc +53 -5
- data/third_party/boringssl-with-bazel/crypto/blake2/blake2.cc +9 -5
- data/third_party/boringssl-with-bazel/crypto/bn/bn_asn1.cc +2 -2
- data/third_party/boringssl-with-bazel/crypto/bn/convert.cc +56 -70
- data/third_party/boringssl-with-bazel/crypto/bn/div.cc +102 -0
- data/third_party/boringssl-with-bazel/crypto/bn/exponentiation.cc +26 -42
- data/third_party/boringssl-with-bazel/crypto/bn/sqrt.cc +93 -0
- data/third_party/boringssl-with-bazel/crypto/buf/buf.cc +6 -5
- data/third_party/boringssl-with-bazel/crypto/bytestring/asn1_compat.cc +6 -5
- data/third_party/boringssl-with-bazel/crypto/bytestring/ber.cc +22 -20
- data/third_party/boringssl-with-bazel/crypto/bytestring/cbb.cc +119 -59
- data/third_party/boringssl-with-bazel/crypto/bytestring/cbs.cc +115 -31
- data/third_party/boringssl-with-bazel/crypto/bytestring/internal.h +79 -24
- data/third_party/boringssl-with-bazel/crypto/bytestring/unicode.cc +2 -2
- data/third_party/boringssl-with-bazel/crypto/chacha/chacha.cc +5 -3
- data/third_party/boringssl-with-bazel/crypto/chacha/internal.h +23 -22
- data/third_party/boringssl-with-bazel/crypto/cipher/derive_key.cc +14 -18
- data/third_party/boringssl-with-bazel/crypto/cipher/e_aesctrhmac.cc +73 -58
- data/third_party/boringssl-with-bazel/crypto/cipher/e_aeseax.cc +132 -70
- data/third_party/boringssl-with-bazel/crypto/cipher/e_aesgcmsiv.cc +390 -249
- data/third_party/boringssl-with-bazel/crypto/cipher/e_chacha20poly1305.cc +200 -137
- data/third_party/boringssl-with-bazel/crypto/cipher/e_des.cc +45 -29
- data/third_party/boringssl-with-bazel/crypto/cipher/e_null.cc +9 -5
- data/third_party/boringssl-with-bazel/crypto/cipher/e_rc2.cc +43 -28
- data/third_party/boringssl-with-bazel/crypto/cipher/e_rc4.cc +7 -5
- data/third_party/boringssl-with-bazel/crypto/cipher/e_tls.cc +250 -237
- data/third_party/boringssl-with-bazel/crypto/cipher/get_cipher.cc +12 -12
- data/third_party/boringssl-with-bazel/crypto/cipher/internal.h +59 -59
- data/third_party/boringssl-with-bazel/crypto/cipher/tls_cbc.cc +111 -111
- data/third_party/boringssl-with-bazel/crypto/cms/cms.cc +48 -42
- data/third_party/boringssl-with-bazel/crypto/conf/conf.cc +69 -63
- data/third_party/boringssl-with-bazel/crypto/conf/internal.h +11 -12
- data/third_party/boringssl-with-bazel/crypto/cpu_aarch64_apple.cc +8 -5
- data/third_party/boringssl-with-bazel/crypto/cpu_aarch64_fuchsia.cc +6 -1
- data/third_party/boringssl-with-bazel/crypto/cpu_aarch64_linux.cc +7 -1
- data/third_party/boringssl-with-bazel/crypto/cpu_aarch64_openbsd.cc +7 -21
- data/third_party/boringssl-with-bazel/crypto/cpu_aarch64_sysreg.cc +15 -41
- data/third_party/boringssl-with-bazel/crypto/cpu_aarch64_win.cc +16 -3
- data/third_party/boringssl-with-bazel/crypto/cpu_arm_freebsd.cc +4 -2
- data/third_party/boringssl-with-bazel/crypto/cpu_arm_linux.cc +54 -31
- data/third_party/boringssl-with-bazel/crypto/cpu_arm_linux.h +79 -101
- data/third_party/boringssl-with-bazel/crypto/cpu_intel.cc +51 -45
- data/third_party/boringssl-with-bazel/crypto/crypto.cc +26 -55
- data/third_party/boringssl-with-bazel/crypto/curve25519/curve25519.cc +28 -25
- data/third_party/boringssl-with-bazel/crypto/curve25519/curve25519_tables.h +6 -6
- data/third_party/boringssl-with-bazel/crypto/curve25519/internal.h +14 -15
- data/third_party/boringssl-with-bazel/crypto/curve25519/spake25519.cc +23 -20
- data/third_party/boringssl-with-bazel/crypto/des/des.cc +27 -19
- data/third_party/boringssl-with-bazel/crypto/des/internal.h +4 -9
- data/third_party/boringssl-with-bazel/crypto/dh/dh_asn1.cc +34 -49
- data/third_party/boringssl-with-bazel/crypto/dh/params.cc +44 -41
- data/third_party/boringssl-with-bazel/crypto/digest/digest_extra.cc +87 -40
- data/third_party/boringssl-with-bazel/crypto/dsa/dsa.cc +237 -260
- data/third_party/boringssl-with-bazel/crypto/dsa/dsa_asn1.cc +100 -173
- data/third_party/boringssl-with-bazel/crypto/dsa/internal.h +23 -21
- data/third_party/boringssl-with-bazel/crypto/ec/ec_asn1.cc +181 -209
- data/third_party/boringssl-with-bazel/crypto/ec/ec_derive.cc +26 -28
- data/third_party/boringssl-with-bazel/crypto/ec/hash_to_curve.cc +265 -174
- data/third_party/boringssl-with-bazel/crypto/ec/internal.h +54 -18
- data/third_party/boringssl-with-bazel/crypto/ecdh/ecdh.cc +7 -5
- data/third_party/boringssl-with-bazel/crypto/ecdsa/ecdsa_asn1.cc +50 -70
- data/third_party/boringssl-with-bazel/crypto/ecdsa/ecdsa_p1363.cc +54 -0
- data/third_party/boringssl-with-bazel/crypto/engine/engine.cc +7 -7
- data/third_party/boringssl-with-bazel/crypto/err/err.cc +116 -105
- data/third_party/boringssl-with-bazel/crypto/err/internal.h +8 -21
- data/third_party/boringssl-with-bazel/crypto/evp/evp.cc +238 -166
- data/third_party/boringssl-with-bazel/crypto/evp/evp_asn1.cc +202 -234
- data/third_party/boringssl-with-bazel/crypto/evp/evp_ctx.cc +260 -159
- data/third_party/boringssl-with-bazel/crypto/evp/evp_kem.cc +82 -0
- data/third_party/boringssl-with-bazel/crypto/evp/internal.h +292 -137
- data/third_party/boringssl-with-bazel/crypto/evp/p_dh.cc +198 -25
- data/third_party/boringssl-with-bazel/crypto/evp/p_dsa.cc +333 -0
- data/third_party/boringssl-with-bazel/crypto/evp/p_ec.cc +427 -42
- data/third_party/boringssl-with-bazel/crypto/evp/p_ed25519.cc +270 -14
- data/third_party/boringssl-with-bazel/crypto/evp/p_hkdf.cc +70 -102
- data/third_party/boringssl-with-bazel/crypto/evp/p_mldsa.cc +549 -0
- data/third_party/boringssl-with-bazel/crypto/evp/p_mlkem.cc +485 -0
- data/third_party/boringssl-with-bazel/crypto/evp/p_rsa.cc +666 -158
- data/third_party/boringssl-with-bazel/crypto/evp/p_x25519.cc +290 -28
- data/third_party/boringssl-with-bazel/crypto/evp/p_xwing.cc +273 -0
- data/third_party/boringssl-with-bazel/crypto/evp/pbkdf.cc +14 -7
- data/third_party/boringssl-with-bazel/crypto/evp/print.cc +34 -89
- data/third_party/boringssl-with-bazel/crypto/evp/scrypt.cc +23 -21
- data/third_party/boringssl-with-bazel/crypto/evp/sign.cc +23 -42
- data/third_party/boringssl-with-bazel/crypto/ex_data.cc +40 -41
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/aes.cc.inc +34 -28
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/aes_nohw.cc.inc +119 -121
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/cbc.cc.inc +16 -14
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/cfb.cc.inc +12 -10
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/ctr.cc.inc +7 -5
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/gcm.cc.inc +39 -29
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/gcm_nohw.cc.inc +15 -13
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/internal.h +193 -177
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/key_wrap.cc.inc +5 -3
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/mode_wrappers.cc.inc +7 -3
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/aes/ofb.cc.inc +7 -5
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bcm.cc +24 -19
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bcm_interface.h +512 -384
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/add.cc.inc +7 -5
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +63 -44
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/bn.cc.inc +40 -37
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/bytes.cc.inc +27 -22
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/cmp.cc.inc +9 -7
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/ctx.cc.inc +62 -126
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/div.cc.inc +92 -167
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/div_extra.cc.inc +15 -12
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/exponentiation.cc.inc +96 -93
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/gcd.cc.inc +73 -92
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/gcd_extra.cc.inc +59 -71
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/generic.cc.inc +54 -57
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/internal.h +333 -255
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/jacobi.cc.inc +12 -19
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/montgomery.cc.inc +80 -95
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/montgomery_inv.cc.inc +53 -96
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/mul.cc.inc +58 -419
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/prime.cc.inc +164 -213
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/random.cc.inc +27 -26
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/rsaz_exp.cc.inc +12 -10
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/rsaz_exp.h +47 -49
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/shift.cc.inc +14 -17
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/bn/sqrt.cc.inc +19 -108
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/cipher/aead.cc.inc +427 -105
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/cipher/cipher.cc.inc +412 -212
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/cipher/e_aes.cc.inc +230 -225
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/cipher/e_aesccm.cc.inc +115 -84
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/cipher/internal.h +374 -27
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/cmac/cmac.cc.inc +28 -23
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/delocate.h +36 -40
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/dh/check.cc.inc +68 -78
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/dh/dh.cc.inc +154 -196
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/dh/internal.h +24 -24
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/digest/digest.cc.inc +40 -69
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/digest/digests.cc.inc +13 -7
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/digest/internal.h +13 -11
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/digest/md32_common.h +86 -81
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/digestsign/digestsign.cc.inc +38 -34
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/ec.cc.inc +187 -196
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/ec_key.cc.inc +196 -154
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/ec_montgomery.cc.inc +65 -125
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/felem.cc.inc +85 -22
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/internal.h +281 -287
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/oct.cc.inc +23 -22
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/p256.cc.inc +514 -573
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/p256_internal.h +193 -0
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/scalar.cc.inc +44 -39
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/simple.cc.inc +58 -90
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/simple_mul.cc.inc +39 -34
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/util.cc.inc +6 -3
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/wnaf.cc.inc +23 -20
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ecdh/ecdh.cc.inc +6 -3
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +47 -37
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ecdsa/internal.h +5 -10
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/entropy/internal.h +38 -0
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/entropy/jitter.cc.inc +463 -0
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/entropy/sha512.cc.inc +329 -0
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/hkdf/hkdf.cc.inc +8 -6
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/hmac/hmac.cc.inc +19 -16
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/keccak/internal.h +41 -15
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/keccak/keccak.cc.inc +172 -44
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/mldsa/fips_known_values.inc +5 -5
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/mldsa/mldsa.cc.inc +1632 -766
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/mlkem/fips_known_values.inc +5 -5
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/mlkem/mlkem.cc.inc +740 -436
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rand/android_entropy_client.cc.inc +82 -0
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rand/ctrdrbg.cc.inc +240 -53
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rand/internal.h +41 -26
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rand/rand.cc.inc +221 -218
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rsa/internal.h +64 -67
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rsa/padding.cc.inc +49 -57
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rsa/rsa.cc.inc +247 -234
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rsa/rsa_impl.cc.inc +392 -692
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/self_check/fips.cc.inc +10 -10
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/self_check/self_check.cc.inc +479 -449
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/service_indicator/internal.h +34 -11
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +46 -43
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/sha/internal.h +61 -70
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/sha/sha1.cc.inc +27 -13
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/sha/sha256.cc.inc +46 -30
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/sha/sha512.cc.inc +47 -47
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/address.h +98 -73
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/fors.cc.inc +108 -98
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/fors.h +14 -24
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/merkle.cc.inc +94 -91
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/merkle.h +19 -31
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/params.h +156 -56
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +318 -132
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/thash.cc.inc +234 -81
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/thash.h +20 -34
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/wots.cc.inc +97 -96
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/slhdsa/wots.h +10 -20
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/tls/internal.h +2 -16
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/tls/kdf.cc.inc +26 -26
- data/third_party/boringssl-with-bazel/crypto/fuzzer_mode.cc +5 -5
- data/third_party/boringssl-with-bazel/crypto/hpke/hpke.cc +461 -97
- data/third_party/boringssl-with-bazel/crypto/hrss/hrss.cc +153 -149
- data/third_party/boringssl-with-bazel/crypto/hrss/internal.h +9 -13
- data/third_party/boringssl-with-bazel/crypto/internal.h +531 -394
- data/third_party/boringssl-with-bazel/crypto/kyber/internal.h +117 -12
- data/third_party/boringssl-with-bazel/crypto/kyber/kyber.cc +59 -58
- data/third_party/boringssl-with-bazel/crypto/lhash/internal.h +38 -37
- data/third_party/boringssl-with-bazel/crypto/lhash/lhash.cc +68 -65
- data/third_party/boringssl-with-bazel/crypto/md4/md4.cc +19 -6
- data/third_party/boringssl-with-bazel/crypto/md5/internal.h +6 -9
- data/third_party/boringssl-with-bazel/crypto/md5/md5.cc +18 -6
- data/third_party/boringssl-with-bazel/crypto/mem.cc +61 -65
- data/third_party/boringssl-with-bazel/crypto/mem_internal.h +671 -0
- data/third_party/boringssl-with-bazel/crypto/mldsa/mldsa.cc +238 -32
- data/third_party/boringssl-with-bazel/crypto/mlkem/mlkem.cc +21 -65
- data/third_party/boringssl-with-bazel/crypto/obj/obj.cc +132 -157
- data/third_party/boringssl-with-bazel/crypto/obj/obj_dat.h +79 -1
- data/third_party/boringssl-with-bazel/crypto/obj/obj_xref.cc +14 -11
- data/third_party/boringssl-with-bazel/crypto/params_internal.h +30 -0
- data/third_party/boringssl-with-bazel/crypto/pem/internal.h +20 -15
- data/third_party/boringssl-with-bazel/crypto/pem/pem_all.cc +20 -19
- data/third_party/boringssl-with-bazel/crypto/pem/pem_info.cc +72 -76
- data/third_party/boringssl-with-bazel/crypto/pem/pem_lib.cc +215 -217
- data/third_party/boringssl-with-bazel/crypto/pem/pem_oth.cc +6 -6
- data/third_party/boringssl-with-bazel/crypto/pem/pem_pk8.cc +13 -13
- data/third_party/boringssl-with-bazel/crypto/pem/pem_pkey.cc +11 -11
- data/third_party/boringssl-with-bazel/crypto/pkcs7/internal.h +12 -17
- data/third_party/boringssl-with-bazel/crypto/pkcs7/pkcs7.cc +29 -27
- data/third_party/boringssl-with-bazel/crypto/pkcs7/pkcs7_x509.cc +55 -49
- data/third_party/boringssl-with-bazel/crypto/pkcs8/internal.h +21 -26
- data/third_party/boringssl-with-bazel/crypto/pkcs8/p5_pbev2.cc +33 -31
- data/third_party/boringssl-with-bazel/crypto/pkcs8/pkcs8.cc +73 -81
- data/third_party/boringssl-with-bazel/crypto/pkcs8/pkcs8_x509.cc +139 -138
- data/third_party/boringssl-with-bazel/crypto/poly1305/internal.h +3 -7
- data/third_party/boringssl-with-bazel/crypto/poly1305/poly1305.cc +5 -4
- data/third_party/boringssl-with-bazel/crypto/poly1305/poly1305_arm.cc +43 -47
- data/third_party/boringssl-with-bazel/crypto/poly1305/poly1305_vec.cc +29 -26
- data/third_party/boringssl-with-bazel/crypto/pool/internal.h +64 -20
- data/third_party/boringssl-with-bazel/crypto/pool/pool.cc +177 -157
- data/third_party/boringssl-with-bazel/crypto/rand/deterministic.cc +9 -16
- data/third_party/boringssl-with-bazel/crypto/rand/fork_detect.cc +70 -42
- data/third_party/boringssl-with-bazel/crypto/rand/forkunsafe.cc +7 -7
- data/third_party/boringssl-with-bazel/crypto/rand/getentropy.cc +6 -13
- data/third_party/boringssl-with-bazel/crypto/rand/internal.h +16 -4
- data/third_party/boringssl-with-bazel/crypto/rand/ios.cc +4 -11
- data/third_party/boringssl-with-bazel/crypto/rand/rand.cc +11 -9
- data/third_party/boringssl-with-bazel/crypto/rand/trusty.cc +4 -11
- data/third_party/boringssl-with-bazel/crypto/rand/urandom.cc +16 -195
- data/third_party/boringssl-with-bazel/crypto/rand/windows.cc +12 -19
- data/third_party/boringssl-with-bazel/crypto/refcount.cc +7 -17
- data/third_party/boringssl-with-bazel/crypto/rsa/internal.h +22 -7
- data/third_party/boringssl-with-bazel/crypto/rsa/rsa_asn1.cc +199 -78
- data/third_party/boringssl-with-bazel/crypto/rsa/rsa_crypt.cc +49 -50
- data/third_party/boringssl-with-bazel/crypto/rsa/rsa_extra.cc +11 -0
- data/third_party/boringssl-with-bazel/crypto/rsa/rsa_print.cc +4 -6
- data/third_party/boringssl-with-bazel/crypto/sha/sha1.cc +3 -0
- data/third_party/boringssl-with-bazel/crypto/sha/sha256.cc +3 -1
- data/third_party/boringssl-with-bazel/crypto/sha/sha512.cc +6 -4
- data/third_party/boringssl-with-bazel/crypto/siphash/siphash.cc +2 -0
- data/third_party/boringssl-with-bazel/crypto/slhdsa/slhdsa.cc +43 -6
- data/third_party/boringssl-with-bazel/crypto/spake2plus/internal.h +31 -31
- data/third_party/boringssl-with-bazel/crypto/spake2plus/spake2plus.cc +1 -1
- data/third_party/boringssl-with-bazel/crypto/stack/stack.cc +89 -130
- data/third_party/boringssl-with-bazel/crypto/thread.cc +14 -14
- data/third_party/boringssl-with-bazel/crypto/thread_none.cc +10 -13
- data/third_party/boringssl-with-bazel/crypto/thread_pthread.cc +22 -35
- data/third_party/boringssl-with-bazel/crypto/thread_win.cc +29 -40
- data/third_party/boringssl-with-bazel/crypto/trust_token/internal.h +81 -88
- data/third_party/boringssl-with-bazel/crypto/trust_token/pmbtoken.cc +160 -144
- data/third_party/boringssl-with-bazel/crypto/trust_token/trust_token.cc +96 -80
- data/third_party/boringssl-with-bazel/crypto/trust_token/voprf.cc +90 -87
- data/third_party/boringssl-with-bazel/crypto/x509/a_digest.cc +5 -5
- data/third_party/boringssl-with-bazel/crypto/x509/a_sign.cc +51 -48
- data/third_party/boringssl-with-bazel/crypto/x509/a_verify.cc +30 -34
- data/third_party/boringssl-with-bazel/crypto/x509/algorithm.cc +47 -16
- data/third_party/boringssl-with-bazel/crypto/x509/asn1_gen.cc +41 -43
- data/third_party/boringssl-with-bazel/crypto/x509/by_dir.cc +183 -237
- data/third_party/boringssl-with-bazel/crypto/x509/by_file.cc +29 -30
- data/third_party/boringssl-with-bazel/crypto/x509/internal.h +276 -180
- data/third_party/boringssl-with-bazel/crypto/x509/name_print.cc +15 -13
- data/third_party/boringssl-with-bazel/crypto/x509/policy.cc +415 -525
- data/third_party/boringssl-with-bazel/crypto/x509/rsa_pss.cc +94 -271
- data/third_party/boringssl-with-bazel/crypto/x509/t_crl.cc +11 -8
- data/third_party/boringssl-with-bazel/crypto/x509/t_req.cc +26 -23
- data/third_party/boringssl-with-bazel/crypto/x509/t_x509.cc +26 -22
- data/third_party/boringssl-with-bazel/crypto/x509/t_x509a.cc +3 -1
- data/third_party/boringssl-with-bazel/crypto/x509/v3_akey.cc +69 -76
- data/third_party/boringssl-with-bazel/crypto/x509/v3_akeya.cc +2 -2
- data/third_party/boringssl-with-bazel/crypto/x509/v3_alt.cc +112 -69
- data/third_party/boringssl-with-bazel/crypto/x509/v3_bcons.cc +15 -14
- data/third_party/boringssl-with-bazel/crypto/x509/v3_bitst.cc +16 -18
- data/third_party/boringssl-with-bazel/crypto/x509/v3_conf.cc +62 -67
- data/third_party/boringssl-with-bazel/crypto/x509/v3_cpols.cc +143 -170
- data/third_party/boringssl-with-bazel/crypto/x509/v3_crld.cc +121 -165
- data/third_party/boringssl-with-bazel/crypto/x509/v3_enum.cc +13 -12
- data/third_party/boringssl-with-bazel/crypto/x509/v3_extku.cc +17 -34
- data/third_party/boringssl-with-bazel/crypto/x509/v3_genn.cc +20 -10
- data/third_party/boringssl-with-bazel/crypto/x509/v3_ia5.cc +22 -18
- data/third_party/boringssl-with-bazel/crypto/x509/v3_info.cc +45 -47
- data/third_party/boringssl-with-bazel/crypto/x509/v3_int.cc +35 -33
- data/third_party/boringssl-with-bazel/crypto/x509/v3_lib.cc +106 -61
- data/third_party/boringssl-with-bazel/crypto/x509/v3_ncons.cc +642 -358
- data/third_party/boringssl-with-bazel/crypto/x509/v3_ocsp.cc +25 -22
- data/third_party/boringssl-with-bazel/crypto/x509/v3_pcons.cc +15 -14
- data/third_party/boringssl-with-bazel/crypto/x509/v3_pmaps.cc +16 -15
- data/third_party/boringssl-with-bazel/crypto/x509/v3_prn.cc +6 -6
- data/third_party/boringssl-with-bazel/crypto/x509/v3_purp.cc +150 -137
- data/third_party/boringssl-with-bazel/crypto/x509/v3_skey.cc +23 -26
- data/third_party/boringssl-with-bazel/crypto/x509/v3_utl.cc +151 -178
- data/third_party/boringssl-with-bazel/crypto/x509/x509.cc +1 -1
- data/third_party/boringssl-with-bazel/crypto/x509/x509_att.cc +32 -30
- data/third_party/boringssl-with-bazel/crypto/x509/x509_cmp.cc +95 -88
- data/third_party/boringssl-with-bazel/crypto/x509/x509_d2.cc +9 -9
- data/third_party/boringssl-with-bazel/crypto/x509/x509_def.cc +6 -8
- data/third_party/boringssl-with-bazel/crypto/x509/x509_ext.cc +46 -24
- data/third_party/boringssl-with-bazel/crypto/x509/x509_lu.cc +211 -195
- data/third_party/boringssl-with-bazel/crypto/x509/x509_obj.cc +20 -16
- data/third_party/boringssl-with-bazel/crypto/x509/x509_req.cc +37 -46
- data/third_party/boringssl-with-bazel/crypto/x509/x509_set.cc +62 -90
- data/third_party/boringssl-with-bazel/crypto/x509/x509_trs.cc +18 -13
- data/third_party/boringssl-with-bazel/crypto/x509/x509_v3.cc +33 -33
- data/third_party/boringssl-with-bazel/crypto/x509/x509_vfy.cc +109 -110
- data/third_party/boringssl-with-bazel/crypto/x509/x509_vpm.cc +56 -47
- data/third_party/boringssl-with-bazel/crypto/x509/x509cset.cc +27 -40
- data/third_party/boringssl-with-bazel/crypto/x509/x509name.cc +77 -67
- data/third_party/boringssl-with-bazel/crypto/x509/x509rset.cc +5 -17
- data/third_party/boringssl-with-bazel/crypto/x509/x509spki.cc +13 -13
- data/third_party/boringssl-with-bazel/crypto/x509/x_algor.cc +131 -24
- data/third_party/boringssl-with-bazel/crypto/x509/x_all.cc +72 -39
- data/third_party/boringssl-with-bazel/crypto/x509/x_attrib.cc +10 -4
- data/third_party/boringssl-with-bazel/crypto/x509/x_crl.cc +77 -44
- data/third_party/boringssl-with-bazel/crypto/x509/x_exten.cc +6 -0
- data/third_party/boringssl-with-bazel/crypto/x509/x_name.cc +311 -383
- data/third_party/boringssl-with-bazel/crypto/x509/x_pubkey.cc +129 -82
- data/third_party/boringssl-with-bazel/crypto/x509/x_req.cc +11 -6
- data/third_party/boringssl-with-bazel/crypto/x509/x_sig.cc +4 -4
- data/third_party/boringssl-with-bazel/crypto/x509/x_spki.cc +11 -1
- data/third_party/boringssl-with-bazel/crypto/x509/x_x509.cc +285 -280
- data/third_party/boringssl-with-bazel/crypto/x509/x_x509a.cc +60 -60
- data/third_party/boringssl-with-bazel/crypto/xwing/xwing.cc +257 -0
- data/third_party/boringssl-with-bazel/gen/boringssl_prefix_symbols_internal_x86_64_win_asm.inc +301 -0
- data/third_party/boringssl-with-bazel/gen/boringssl_prefix_symbols_internal_x86_win_asm.inc +301 -0
- data/third_party/boringssl-with-bazel/gen/crypto/err_data.cc +526 -500
- data/third_party/boringssl-with-bazel/include/openssl/aead.h +286 -114
- data/third_party/boringssl-with-bazel/include/openssl/aes.h +43 -43
- data/third_party/boringssl-with-bazel/include/openssl/asm_base.h +29 -16
- data/third_party/boringssl-with-bazel/include/openssl/asn1.h +641 -631
- data/third_party/boringssl-with-bazel/include/openssl/asn1t.h +7 -9
- data/third_party/boringssl-with-bazel/include/openssl/base.h +34 -54
- data/third_party/boringssl-with-bazel/include/openssl/base64.h +30 -30
- data/third_party/boringssl-with-bazel/include/openssl/bio.h +373 -316
- data/third_party/boringssl-with-bazel/include/openssl/blake2.h +15 -11
- data/third_party/boringssl-with-bazel/include/openssl/blowfish.h +10 -3
- data/third_party/boringssl-with-bazel/include/openssl/bn.h +298 -306
- data/third_party/boringssl-with-bazel/include/openssl/buf.h +14 -14
- data/third_party/boringssl-with-bazel/include/openssl/bytestring.h +272 -207
- data/third_party/boringssl-with-bazel/include/openssl/cast.h +45 -8
- data/third_party/boringssl-with-bazel/include/openssl/chacha.h +3 -3
- data/third_party/boringssl-with-bazel/include/openssl/cipher.h +334 -152
- data/third_party/boringssl-with-bazel/include/openssl/cmac.h +13 -13
- data/third_party/boringssl-with-bazel/include/openssl/cms.h +35 -34
- data/third_party/boringssl-with-bazel/include/openssl/conf.h +15 -14
- data/third_party/boringssl-with-bazel/include/openssl/crypto.h +15 -13
- data/third_party/boringssl-with-bazel/include/openssl/ctrdrbg.h +49 -15
- data/third_party/boringssl-with-bazel/include/openssl/curve25519.h +24 -24
- data/third_party/boringssl-with-bazel/include/openssl/des.h +22 -16
- data/third_party/boringssl-with-bazel/include/openssl/dh.h +95 -95
- data/third_party/boringssl-with-bazel/include/openssl/digest.h +140 -71
- data/third_party/boringssl-with-bazel/include/openssl/dsa.h +101 -101
- data/third_party/boringssl-with-bazel/include/openssl/ec.h +143 -119
- data/third_party/boringssl-with-bazel/include/openssl/ec_key.h +97 -97
- data/third_party/boringssl-with-bazel/include/openssl/ecdh.h +9 -9
- data/third_party/boringssl-with-bazel/include/openssl/ecdsa.h +89 -46
- data/third_party/boringssl-with-bazel/include/openssl/engine.h +5 -5
- data/third_party/boringssl-with-bazel/include/openssl/err.h +73 -71
- data/third_party/boringssl-with-bazel/include/openssl/evp.h +824 -344
- data/third_party/boringssl-with-bazel/include/openssl/evp_errors.h +9 -2
- data/third_party/boringssl-with-bazel/include/openssl/ex_data.h +27 -32
- data/third_party/boringssl-with-bazel/include/openssl/hkdf.h +6 -6
- data/third_party/boringssl-with-bazel/include/openssl/hmac.h +31 -31
- data/third_party/boringssl-with-bazel/include/openssl/hpke.h +133 -117
- data/third_party/boringssl-with-bazel/include/openssl/hrss.h +14 -8
- data/third_party/boringssl-with-bazel/include/openssl/kdf.h +20 -19
- data/third_party/boringssl-with-bazel/include/openssl/lhash.h +4 -25
- data/third_party/boringssl-with-bazel/include/openssl/md4.h +14 -7
- data/third_party/boringssl-with-bazel/include/openssl/md5.h +7 -7
- data/third_party/boringssl-with-bazel/include/openssl/mem.h +38 -38
- data/third_party/boringssl-with-bazel/include/openssl/mldsa.h +380 -24
- data/third_party/boringssl-with-bazel/include/openssl/mlkem.h +43 -43
- data/third_party/boringssl-with-bazel/include/openssl/nid.h +1297 -2
- data/third_party/boringssl-with-bazel/include/openssl/obj.h +49 -49
- data/third_party/boringssl-with-bazel/include/openssl/opensslconf.h +30 -0
- data/third_party/boringssl-with-bazel/include/openssl/params.h +42 -0
- data/third_party/boringssl-with-bazel/include/openssl/pem.h +39 -30
- data/third_party/boringssl-with-bazel/include/openssl/pkcs7.h +40 -40
- data/third_party/boringssl-with-bazel/include/openssl/pkcs8.h +69 -63
- data/third_party/boringssl-with-bazel/include/openssl/poly1305.h +8 -5
- data/third_party/boringssl-with-bazel/include/openssl/pool.h +54 -25
- data/third_party/boringssl-with-bazel/include/openssl/posix_time.h +6 -6
- data/third_party/boringssl-with-bazel/include/openssl/prefix_symbols.h +7866 -0
- data/third_party/boringssl-with-bazel/include/openssl/prefix_symbols_internal_S.h +585 -0
- data/third_party/boringssl-with-bazel/include/openssl/prefix_symbols_internal_c.h +305 -0
- data/third_party/boringssl-with-bazel/include/openssl/rand.h +18 -18
- data/third_party/boringssl-with-bazel/include/openssl/rc4.h +4 -4
- data/third_party/boringssl-with-bazel/include/openssl/ripemd.h +15 -10
- data/third_party/boringssl-with-bazel/include/openssl/rsa.h +272 -235
- data/third_party/boringssl-with-bazel/include/openssl/service_indicator.h +4 -81
- data/third_party/boringssl-with-bazel/include/openssl/sha.h +43 -166
- data/third_party/boringssl-with-bazel/include/openssl/sha2.h +201 -0
- data/third_party/boringssl-with-bazel/include/openssl/slhdsa.h +100 -48
- data/third_party/boringssl-with-bazel/include/openssl/span.h +190 -75
- data/third_party/boringssl-with-bazel/include/openssl/ssl.h +2168 -1567
- data/third_party/boringssl-with-bazel/include/openssl/ssl3.h +11 -69
- data/third_party/boringssl-with-bazel/include/openssl/stack.h +135 -80
- data/third_party/boringssl-with-bazel/include/openssl/target.h +13 -1
- data/third_party/boringssl-with-bazel/include/openssl/thread.h +0 -10
- data/third_party/boringssl-with-bazel/include/openssl/tls1.h +31 -310
- data/third_party/boringssl-with-bazel/include/openssl/tls_prf.h +47 -0
- data/third_party/boringssl-with-bazel/include/openssl/trust_token.h +97 -92
- data/third_party/boringssl-with-bazel/include/openssl/type_check.h +1 -1
- data/third_party/boringssl-with-bazel/include/openssl/x509.h +1805 -1857
- data/third_party/boringssl-with-bazel/include/openssl/x509v3.h +1 -1
- data/third_party/boringssl-with-bazel/include/openssl/xwing.h +115 -0
- data/third_party/boringssl-with-bazel/ssl/bio_ssl.cc +24 -19
- data/third_party/boringssl-with-bazel/ssl/d1_both.cc +59 -57
- data/third_party/boringssl-with-bazel/ssl/d1_lib.cc +53 -42
- data/third_party/boringssl-with-bazel/ssl/d1_pkt.cc +4 -4
- data/third_party/boringssl-with-bazel/ssl/d1_srtp.cc +2 -2
- data/third_party/boringssl-with-bazel/ssl/dtls_method.cc +10 -10
- data/third_party/boringssl-with-bazel/ssl/dtls_record.cc +6 -6
- data/third_party/boringssl-with-bazel/ssl/encrypted_client_hello.cc +61 -71
- data/third_party/boringssl-with-bazel/ssl/extensions.cc +967 -366
- data/third_party/boringssl-with-bazel/ssl/handoff.cc +77 -38
- data/third_party/boringssl-with-bazel/ssl/handshake.cc +63 -30
- data/third_party/boringssl-with-bazel/ssl/handshake_client.cc +129 -85
- data/third_party/boringssl-with-bazel/ssl/handshake_server.cc +116 -68
- data/third_party/boringssl-with-bazel/ssl/internal.h +983 -1207
- data/third_party/boringssl-with-bazel/ssl/s3_both.cc +34 -29
- data/third_party/boringssl-with-bazel/ssl/s3_lib.cc +4 -3
- data/third_party/boringssl-with-bazel/ssl/s3_pkt.cc +12 -12
- data/third_party/boringssl-with-bazel/ssl/ssl_aead_ctx.cc +5 -5
- data/third_party/boringssl-with-bazel/ssl/ssl_asn1.cc +114 -59
- data/third_party/boringssl-with-bazel/ssl/ssl_buffer.cc +17 -18
- data/third_party/boringssl-with-bazel/ssl/ssl_cert.cc +99 -61
- data/third_party/boringssl-with-bazel/ssl/ssl_cipher.cc +143 -134
- data/third_party/boringssl-with-bazel/ssl/ssl_credential.cc +188 -90
- data/third_party/boringssl-with-bazel/ssl/ssl_file.cc +132 -225
- data/third_party/boringssl-with-bazel/ssl/ssl_key_share.cc +79 -7
- data/third_party/boringssl-with-bazel/ssl/ssl_lib.cc +698 -302
- data/third_party/boringssl-with-bazel/ssl/ssl_privkey.cc +102 -45
- data/third_party/boringssl-with-bazel/ssl/ssl_session.cc +117 -102
- data/third_party/boringssl-with-bazel/ssl/ssl_transcript.cc +3 -3
- data/third_party/boringssl-with-bazel/ssl/ssl_versions.cc +24 -24
- data/third_party/boringssl-with-bazel/ssl/ssl_x509.cc +184 -170
- data/third_party/boringssl-with-bazel/ssl/t1_enc.cc +12 -10
- data/third_party/boringssl-with-bazel/ssl/tls13_both.cc +86 -54
- data/third_party/boringssl-with-bazel/ssl/tls13_client.cc +176 -90
- data/third_party/boringssl-with-bazel/ssl/tls13_enc.cc +166 -112
- data/third_party/boringssl-with-bazel/ssl/tls13_server.cc +188 -97
- data/third_party/boringssl-with-bazel/ssl/tls_method.cc +23 -23
- data/third_party/boringssl-with-bazel/ssl/tls_record.cc +17 -14
- data/third_party/boringssl-with-bazel/third_party/fiat/bedrock_unverified_bareminimum.c.inc +47 -0
- data/third_party/boringssl-with-bazel/third_party/fiat/bedrock_unverified_platform.c.inc +137 -0
- data/third_party/boringssl-with-bazel/third_party/fiat/curve25519_64_adx.h +37 -33
- data/third_party/boringssl-with-bazel/third_party/fiat/p256_64.h +4 -93
- data/third_party/boringssl-with-bazel/third_party/fiat/p256_64_msvc.h +4 -69
- data/third_party/boringssl-with-bazel/third_party/fiat/p256_field_32.br.c.inc +71 -0
- data/third_party/boringssl-with-bazel/third_party/fiat/p256_field_64.br.c.inc +84 -0
- data/third_party/boringssl-with-bazel/third_party/fiat/p256_point.br.c.inc +166 -0
- metadata +77 -52
- data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +0 -240
- data/src/core/ext/transport/chttp2/transport/bin_decoder.h +0 -56
- data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +0 -157
- data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +0 -72
- data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +0 -181
- data/third_party/abseil-cpp/absl/base/internal/identity.h +0 -39
- data/third_party/abseil-cpp/absl/base/internal/nullability_deprecated.h +0 -106
- data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +0 -105
- data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.h +0 -50
- data/third_party/abseil-cpp/absl/strings/string_view.cc +0 -257
- data/third_party/boringssl-with-bazel/crypto/evp/p_dh_asn1.cc +0 -142
- data/third_party/boringssl-with-bazel/crypto/evp/p_dsa_asn1.cc +0 -279
- data/third_party/boringssl-with-bazel/crypto/evp/p_ec_asn1.cc +0 -286
- data/third_party/boringssl-with-bazel/crypto/evp/p_ed25519_asn1.cc +0 -225
- data/third_party/boringssl-with-bazel/crypto/evp/p_rsa_asn1.cc +0 -198
- data/third_party/boringssl-with-bazel/crypto/evp/p_x25519_asn1.cc +0 -237
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/p224-64.cc.inc +0 -1163
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/p256-nistz.cc.inc +0 -741
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/ec/p256-nistz.h +0 -207
- data/third_party/boringssl-with-bazel/crypto/fipsmodule/rsa/blinding.cc.inc +0 -147
- data/third_party/boringssl-with-bazel/crypto/rand/getrandom_fillin.h +0 -64
- data/third_party/boringssl-with-bazel/crypto/rand/passive.cc +0 -178
- data/third_party/boringssl-with-bazel/crypto/x509/ext_dat.h +0 -92
- data/third_party/boringssl-with-bazel/include/openssl/bcm_public.h +0 -82
- data/third_party/boringssl-with-bazel/include/openssl/experimental/kyber.h +0 -146
data/src/core/server/server.cc
CHANGED
|
@@ -100,7 +100,7 @@ void Server::ListenerState::ConfigFetcherWatcher::UpdateConnectionManager(
|
|
|
100
100
|
RefCountedPtr<ServerConfigFetcher::ConnectionManager>
|
|
101
101
|
connection_manager_to_destroy;
|
|
102
102
|
{
|
|
103
|
-
MutexLock lock(
|
|
103
|
+
MutexLock lock(listener_state_->mu_);
|
|
104
104
|
connection_manager_to_destroy = listener_state_->connection_manager_;
|
|
105
105
|
listener_state_->connection_manager_ = std::move(connection_manager);
|
|
106
106
|
listener_state_->DrainConnectionsLocked();
|
|
@@ -115,7 +115,7 @@ void Server::ListenerState::ConfigFetcherWatcher::UpdateConnectionManager(
|
|
|
115
115
|
}
|
|
116
116
|
|
|
117
117
|
void Server::ListenerState::ConfigFetcherWatcher::StopServing() {
|
|
118
|
-
MutexLock lock(
|
|
118
|
+
MutexLock lock(listener_state_->mu_);
|
|
119
119
|
listener_state_->is_serving_ = false;
|
|
120
120
|
listener_state_->DrainConnectionsLocked();
|
|
121
121
|
}
|
|
@@ -151,7 +151,7 @@ void Server::ListenerState::Start() {
|
|
|
151
151
|
std::move(watcher));
|
|
152
152
|
} else {
|
|
153
153
|
{
|
|
154
|
-
MutexLock lock(
|
|
154
|
+
MutexLock lock(mu_);
|
|
155
155
|
started_ = true;
|
|
156
156
|
is_serving_ = true;
|
|
157
157
|
}
|
|
@@ -163,7 +163,7 @@ void Server::ListenerState::Stop() {
|
|
|
163
163
|
absl::flat_hash_set<OrphanablePtr<ListenerInterface::LogicalConnection>>
|
|
164
164
|
connections;
|
|
165
165
|
{
|
|
166
|
-
MutexLock lock(
|
|
166
|
+
MutexLock lock(mu_);
|
|
167
167
|
// Orphan the connections so that they can start cleaning up.
|
|
168
168
|
connections = std::move(connections_);
|
|
169
169
|
connections_.clear();
|
|
@@ -184,7 +184,7 @@ std::optional<ChannelArgs> Server::ListenerState::AddLogicalConnection(
|
|
|
184
184
|
const ChannelArgs& args, grpc_endpoint* endpoint) {
|
|
185
185
|
RefCountedPtr<ServerConfigFetcher::ConnectionManager> connection_manager;
|
|
186
186
|
{
|
|
187
|
-
MutexLock lock(
|
|
187
|
+
MutexLock lock(mu_);
|
|
188
188
|
if (!is_serving_) {
|
|
189
189
|
// Not serving
|
|
190
190
|
return std::nullopt;
|
|
@@ -224,7 +224,7 @@ std::optional<ChannelArgs> Server::ListenerState::AddLogicalConnection(
|
|
|
224
224
|
}
|
|
225
225
|
new_args = (*args_result).SetObject(security_connector);
|
|
226
226
|
}
|
|
227
|
-
MutexLock lock(
|
|
227
|
+
MutexLock lock(mu_);
|
|
228
228
|
// Since we let go of the lock earlier, we need to protect ourselves against
|
|
229
229
|
// time-of-check-to-time-of-use cases. The server may have stopped serving
|
|
230
230
|
// or the connection manager may have changed before we add the connection
|
|
@@ -247,7 +247,7 @@ void Server::ListenerState::OnHandshakeDone(
|
|
|
247
247
|
OrphanablePtr<ListenerInterface::LogicalConnection> connection_to_remove;
|
|
248
248
|
{
|
|
249
249
|
// Remove the connection if it wasn't already removed.
|
|
250
|
-
MutexLock lock(
|
|
250
|
+
MutexLock lock(mu_);
|
|
251
251
|
auto connection_handle = connections_.extract(connection);
|
|
252
252
|
if (!connection_handle.empty()) {
|
|
253
253
|
connection_to_remove = std::move(connection_handle.value());
|
|
@@ -261,7 +261,7 @@ void Server::ListenerState::RemoveLogicalConnection(
|
|
|
261
261
|
ListenerInterface::LogicalConnection* connection) {
|
|
262
262
|
OrphanablePtr<ListenerInterface::LogicalConnection> connection_to_remove;
|
|
263
263
|
// Remove the connection if it wasn't already removed.
|
|
264
|
-
MutexLock lock(
|
|
264
|
+
MutexLock lock(mu_);
|
|
265
265
|
auto connection_handle = connections_.extract(connection);
|
|
266
266
|
if (!connection_handle.empty()) {
|
|
267
267
|
connection_to_remove = std::move(connection_handle.value());
|
|
@@ -306,7 +306,7 @@ void Server::ListenerState::OnDrainGraceTimer() {
|
|
|
306
306
|
absl::flat_hash_set<OrphanablePtr<ListenerInterface::LogicalConnection>>
|
|
307
307
|
connections_to_be_drained;
|
|
308
308
|
{
|
|
309
|
-
MutexLock lock(
|
|
309
|
+
MutexLock lock(mu_);
|
|
310
310
|
if (connections_to_be_drained_list_.empty()) {
|
|
311
311
|
return;
|
|
312
312
|
}
|
|
@@ -605,7 +605,7 @@ class Server::RealRequestMatcher : public RequestMatcherInterface {
|
|
|
605
605
|
while (true) {
|
|
606
606
|
NextPendingCall pending_call;
|
|
607
607
|
{
|
|
608
|
-
MutexLock lock(
|
|
608
|
+
MutexLock lock(server_->mu_call_);
|
|
609
609
|
while (!pending_filter_stack_.empty() &&
|
|
610
610
|
pending_filter_stack_.front().Age() >
|
|
611
611
|
server_->max_time_in_pending_queue_) {
|
|
@@ -675,7 +675,7 @@ class Server::RealRequestMatcher : public RequestMatcherInterface {
|
|
|
675
675
|
size_t cq_idx = 0;
|
|
676
676
|
size_t loop_count;
|
|
677
677
|
{
|
|
678
|
-
MutexLock lock(
|
|
678
|
+
MutexLock lock(server_->mu_call_);
|
|
679
679
|
for (loop_count = 0; loop_count < requests_per_cq_.size(); loop_count++) {
|
|
680
680
|
cq_idx =
|
|
681
681
|
(start_request_queue_index + loop_count) % requests_per_cq_.size();
|
|
@@ -720,7 +720,7 @@ class Server::RealRequestMatcher : public RequestMatcherInterface {
|
|
|
720
720
|
size_t loop_count;
|
|
721
721
|
{
|
|
722
722
|
std::vector<std::shared_ptr<ActivityWaiter>> removed_pending;
|
|
723
|
-
MutexLock lock(
|
|
723
|
+
MutexLock lock(server_->mu_call_);
|
|
724
724
|
while (!pending_promises_.empty() &&
|
|
725
725
|
pending_promises_.front()->Age() >
|
|
726
726
|
server_->max_time_in_pending_queue_) {
|
|
@@ -1027,7 +1027,7 @@ class Server::TransportConnectivityWatcher
|
|
|
1027
1027
|
// Don't do anything until we are being shut down.
|
|
1028
1028
|
if (new_state != GRPC_CHANNEL_SHUTDOWN) return;
|
|
1029
1029
|
// Shut down channel.
|
|
1030
|
-
MutexLock lock(
|
|
1030
|
+
MutexLock lock(server_->mu_global_);
|
|
1031
1031
|
server_->connections_.erase(transport_.get());
|
|
1032
1032
|
--server_->connections_open_;
|
|
1033
1033
|
server_->stream_quota_->DecrementOpenChannels();
|
|
@@ -1214,7 +1214,7 @@ Server::~Server() {
|
|
|
1214
1214
|
}
|
|
1215
1215
|
|
|
1216
1216
|
void Server::AddData(channelz::DataSink sink) {
|
|
1217
|
-
MutexLock global_lock(
|
|
1217
|
+
MutexLock global_lock(mu_global_);
|
|
1218
1218
|
sink.AddData(
|
|
1219
1219
|
"server",
|
|
1220
1220
|
channelz::PropertyList()
|
|
@@ -1279,7 +1279,7 @@ void Server::Start() {
|
|
|
1279
1279
|
}
|
|
1280
1280
|
}
|
|
1281
1281
|
{
|
|
1282
|
-
MutexLock lock(
|
|
1282
|
+
MutexLock lock(mu_global_);
|
|
1283
1283
|
starting_ = true;
|
|
1284
1284
|
}
|
|
1285
1285
|
// Register the interested parties from the config fetcher to the cq pollsets
|
|
@@ -1295,7 +1295,7 @@ void Server::Start() {
|
|
|
1295
1295
|
for (auto& listener_state : listener_states_) {
|
|
1296
1296
|
listener_state->Start();
|
|
1297
1297
|
}
|
|
1298
|
-
MutexLock lock(
|
|
1298
|
+
MutexLock lock(mu_global_);
|
|
1299
1299
|
starting_ = false;
|
|
1300
1300
|
starting_cv_.Signal();
|
|
1301
1301
|
}
|
|
@@ -1325,7 +1325,7 @@ grpc_error_handle Server::SetupTransport(
|
|
|
1325
1325
|
channel_stack_type);
|
|
1326
1326
|
if (!destination.ok()) return destination.status();
|
|
1327
1327
|
t->SetCallDestination(std::move(*destination));
|
|
1328
|
-
MutexLock lock(
|
|
1328
|
+
MutexLock lock(mu_global_);
|
|
1329
1329
|
if (ShutdownCalled()) {
|
|
1330
1330
|
t->DisconnectWithError(GRPC_ERROR_CREATE("Server shutdown"));
|
|
1331
1331
|
}
|
|
@@ -1384,7 +1384,7 @@ grpc_error_handle Server::SetupTransport(
|
|
|
1384
1384
|
}
|
|
1385
1385
|
|
|
1386
1386
|
bool Server::HasOpenConnections() {
|
|
1387
|
-
MutexLock lock(
|
|
1387
|
+
MutexLock lock(mu_global_);
|
|
1388
1388
|
return !channels_.empty() || !connections_.empty();
|
|
1389
1389
|
}
|
|
1390
1390
|
|
|
@@ -1461,7 +1461,7 @@ void Server::MaybeFinishShutdown() {
|
|
|
1461
1461
|
return;
|
|
1462
1462
|
}
|
|
1463
1463
|
{
|
|
1464
|
-
MutexLock lock(
|
|
1464
|
+
MutexLock lock(mu_call_);
|
|
1465
1465
|
KillPendingWorkLocked(GRPC_ERROR_CREATE("Server Shutdown"));
|
|
1466
1466
|
}
|
|
1467
1467
|
if (!channels_.empty() || connections_open_ > 0 ||
|
|
@@ -1508,7 +1508,7 @@ std::vector<RefCountedPtr<Channel>> Server::GetChannelsLocked() const {
|
|
|
1508
1508
|
|
|
1509
1509
|
void Server::ListenerDestroyDone(void* arg, grpc_error_handle /*error*/) {
|
|
1510
1510
|
Server* server = static_cast<Server*>(arg);
|
|
1511
|
-
MutexLock lock(
|
|
1511
|
+
MutexLock lock(server->mu_global_);
|
|
1512
1512
|
server->listeners_destroyed_++;
|
|
1513
1513
|
server->MaybeFinishShutdown();
|
|
1514
1514
|
}
|
|
@@ -1540,7 +1540,7 @@ void Server::ShutdownAndNotify(grpc_completion_queue* cq, void* tag) {
|
|
|
1540
1540
|
absl::flat_hash_set<OrphanablePtr<ServerTransport>> removing_connections;
|
|
1541
1541
|
{
|
|
1542
1542
|
// Wait for startup to be finished. Locks mu_global.
|
|
1543
|
-
MutexLock lock(
|
|
1543
|
+
MutexLock lock(mu_global_);
|
|
1544
1544
|
while (starting_) {
|
|
1545
1545
|
starting_cv_.Wait(&mu_global_);
|
|
1546
1546
|
}
|
|
@@ -1560,7 +1560,7 @@ void Server::ShutdownAndNotify(grpc_completion_queue* cq, void* tag) {
|
|
|
1560
1560
|
removing_connections.swap(connections_);
|
|
1561
1561
|
// Collect all unregistered then registered calls.
|
|
1562
1562
|
{
|
|
1563
|
-
MutexLock lock(
|
|
1563
|
+
MutexLock lock(mu_call_);
|
|
1564
1564
|
KillPendingWorkLocked(GRPC_ERROR_CREATE("Server Shutdown"));
|
|
1565
1565
|
}
|
|
1566
1566
|
ShutdownUnrefOnShutdownCall();
|
|
@@ -1584,7 +1584,7 @@ void Server::StopListening() {
|
|
|
1584
1584
|
void Server::CancelAllCalls() {
|
|
1585
1585
|
ChannelBroadcaster broadcaster;
|
|
1586
1586
|
{
|
|
1587
|
-
MutexLock lock(
|
|
1587
|
+
MutexLock lock(mu_global_);
|
|
1588
1588
|
broadcaster.FillChannelsLocked(GetChannelsLocked());
|
|
1589
1589
|
}
|
|
1590
1590
|
broadcaster.BroadcastShutdown(
|
|
@@ -1594,7 +1594,7 @@ void Server::CancelAllCalls() {
|
|
|
1594
1594
|
void Server::SendGoaways() {
|
|
1595
1595
|
ChannelBroadcaster broadcaster;
|
|
1596
1596
|
{
|
|
1597
|
-
MutexLock lock(
|
|
1597
|
+
MutexLock lock(mu_global_);
|
|
1598
1598
|
broadcaster.FillChannelsLocked(GetChannelsLocked());
|
|
1599
1599
|
}
|
|
1600
1600
|
broadcaster.BroadcastShutdown(/*send_goaway=*/true, absl::OkStatus());
|
|
@@ -1602,7 +1602,7 @@ void Server::SendGoaways() {
|
|
|
1602
1602
|
|
|
1603
1603
|
void Server::Orphan() {
|
|
1604
1604
|
{
|
|
1605
|
-
MutexLock lock(
|
|
1605
|
+
MutexLock lock(mu_global_);
|
|
1606
1606
|
GRPC_CHECK(ShutdownCalled() || listener_states_.empty());
|
|
1607
1607
|
GRPC_CHECK(listeners_destroyed_ == listener_states_.size());
|
|
1608
1608
|
}
|
|
@@ -1714,7 +1714,7 @@ class Server::ChannelData::ConnectivityWatcher
|
|
|
1714
1714
|
if (new_state != GRPC_CHANNEL_SHUTDOWN) return;
|
|
1715
1715
|
chand_->server_->stream_quota_->DecrementOpenChannels();
|
|
1716
1716
|
// Shut down channel.
|
|
1717
|
-
MutexLock lock(
|
|
1717
|
+
MutexLock lock(chand_->server_->mu_global_);
|
|
1718
1718
|
chand_->Destroy();
|
|
1719
1719
|
}
|
|
1720
1720
|
|
|
@@ -1729,7 +1729,7 @@ class Server::ChannelData::ConnectivityWatcher
|
|
|
1729
1729
|
Server::ChannelData::~ChannelData() {
|
|
1730
1730
|
if (server_ != nullptr) {
|
|
1731
1731
|
server_->stream_quota_->DecrementOpenChannels();
|
|
1732
|
-
MutexLock lock(
|
|
1732
|
+
MutexLock lock(server_->mu_global_);
|
|
1733
1733
|
if (list_position_.has_value()) {
|
|
1734
1734
|
server_->channels_.erase(*list_position_);
|
|
1735
1735
|
list_position_.reset();
|
|
@@ -1748,7 +1748,7 @@ void Server::ChannelData::InitTransport(RefCountedPtr<Server> server,
|
|
|
1748
1748
|
channelz_socket_uuid_ = channelz_socket_uuid;
|
|
1749
1749
|
// Publish channel.
|
|
1750
1750
|
{
|
|
1751
|
-
MutexLock lock(
|
|
1751
|
+
MutexLock lock(server_->mu_global_);
|
|
1752
1752
|
server_->channels_.push_front(this);
|
|
1753
1753
|
list_position_ = server_->channels_.begin();
|
|
1754
1754
|
}
|
|
@@ -1898,7 +1898,7 @@ Server::CallData::CallData(grpc_call_element* elem,
|
|
|
1898
1898
|
GRPC_CLOSURE_INIT(&recv_trailing_metadata_ready_, RecvTrailingMetadataReady,
|
|
1899
1899
|
elem, grpc_schedule_on_exec_ctx);
|
|
1900
1900
|
|
|
1901
|
-
// TODO(snohria): Add the same for Call-V3 as well.
|
|
1901
|
+
// TODO(snohria) : [PH2][P1] : Add the same for Call-V3 as well.
|
|
1902
1902
|
server_->stream_quota_->IncrementOutstandingRequests();
|
|
1903
1903
|
}
|
|
1904
1904
|
|
|
@@ -1908,7 +1908,7 @@ Server::CallData::~CallData() {
|
|
|
1908
1908
|
grpc_byte_buffer_destroy(payload_);
|
|
1909
1909
|
|
|
1910
1910
|
if (server_ != nullptr) {
|
|
1911
|
-
// TODO(snohria): Add the same for Call-V3 as well.
|
|
1911
|
+
// TODO(snohria) : [PH2][P1] : Add the same for Call-V3 as well.
|
|
1912
1912
|
server_->stream_quota_->DecrementOutstandingRequests();
|
|
1913
1913
|
}
|
|
1914
1914
|
}
|
data/src/core/server/server.h
CHANGED
|
@@ -616,7 +616,8 @@ class Server : public ServerInterface,
|
|
|
616
616
|
size_t* cq_idx, grpc_completion_queue* cq_for_notification, void* tag,
|
|
617
617
|
grpc_byte_buffer** optional_payload, RegisteredMethod* rm);
|
|
618
618
|
|
|
619
|
-
std::vector<RefCountedPtr<Channel>> GetChannelsLocked() const
|
|
619
|
+
std::vector<RefCountedPtr<Channel>> GetChannelsLocked() const
|
|
620
|
+
ABSL_EXCLUSIVE_LOCKS_REQUIRED(mu_global_);
|
|
620
621
|
|
|
621
622
|
// Take a shutdown ref for a request (increment by 2) and return if shutdown
|
|
622
623
|
// has not been called.
|
|
@@ -630,7 +631,7 @@ class Server : public ServerInterface,
|
|
|
630
631
|
// appropriate.
|
|
631
632
|
void ShutdownUnrefOnRequest() ABSL_LOCKS_EXCLUDED(mu_global_) {
|
|
632
633
|
if (shutdown_refs_.fetch_sub(2, std::memory_order_acq_rel) == 2) {
|
|
633
|
-
MutexLock lock(
|
|
634
|
+
MutexLock lock(mu_global_);
|
|
634
635
|
MaybeFinishShutdown();
|
|
635
636
|
}
|
|
636
637
|
}
|
|
@@ -717,7 +718,7 @@ class Server : public ServerInterface,
|
|
|
717
718
|
.value_or(3000)))};
|
|
718
719
|
const Duration max_time_in_pending_queue_;
|
|
719
720
|
|
|
720
|
-
std::list<ChannelData*> channels_;
|
|
721
|
+
std::list<ChannelData*> channels_ ABSL_GUARDED_BY(mu_global_);
|
|
721
722
|
absl::flat_hash_set<OrphanablePtr<ServerTransport>> connections_
|
|
722
723
|
ABSL_GUARDED_BY(mu_global_);
|
|
723
724
|
RefCountedPtr<ServerConfigFetcher::ConnectionManager> connection_manager_
|
|
@@ -81,7 +81,7 @@ class LegacyServerConfigSelectorFilter final
|
|
|
81
81
|
};
|
|
82
82
|
|
|
83
83
|
absl::StatusOr<RefCountedPtr<ServerConfigSelector>> config_selector() {
|
|
84
|
-
MutexLock lock(
|
|
84
|
+
MutexLock lock(mu_);
|
|
85
85
|
return config_selector_.value();
|
|
86
86
|
}
|
|
87
87
|
|
|
@@ -94,7 +94,7 @@ class LegacyServerConfigSelectorFilter final
|
|
|
94
94
|
: filter_(filter) {}
|
|
95
95
|
void OnServerConfigSelectorUpdate(
|
|
96
96
|
absl::StatusOr<RefCountedPtr<ServerConfigSelector>> update) override {
|
|
97
|
-
MutexLock lock(
|
|
97
|
+
MutexLock lock(filter_->mu_);
|
|
98
98
|
filter_->config_selector_ = std::move(update);
|
|
99
99
|
}
|
|
100
100
|
|
|
@@ -128,7 +128,7 @@ LegacyServerConfigSelectorFilter::LegacyServerConfigSelectorFilter(
|
|
|
128
128
|
GRPC_CHECK(server_config_selector_provider_ != nullptr);
|
|
129
129
|
watcher_ = std::make_shared<ServerConfigSelectorWatcher>(Ref());
|
|
130
130
|
auto config_selector = server_config_selector_provider_->Watch(watcher_);
|
|
131
|
-
MutexLock lock(
|
|
131
|
+
MutexLock lock(mu_);
|
|
132
132
|
// It's possible for the watcher to have already updated config_selector_
|
|
133
133
|
if (!config_selector_.has_value()) {
|
|
134
134
|
config_selector_ = std::move(config_selector);
|
|
@@ -174,7 +174,7 @@ class XdsServerConfigFetcher::ListenerWatcher final
|
|
|
174
174
|
// filter_chain_match_manager_ in use.
|
|
175
175
|
void PendingFilterChainMatchManagerReady(
|
|
176
176
|
FilterChainMatchManager* filter_chain_match_manager) {
|
|
177
|
-
MutexLock lock(
|
|
177
|
+
MutexLock lock(mu_);
|
|
178
178
|
PendingFilterChainMatchManagerReadyLocked(filter_chain_match_manager);
|
|
179
179
|
}
|
|
180
180
|
void PendingFilterChainMatchManagerReadyLocked(
|
|
@@ -534,13 +534,13 @@ void XdsServerConfigFetcher::StartWatch(
|
|
|
534
534
|
XdsListenerResourceType::StartWatch(xds_client_.get(),
|
|
535
535
|
listener_watcher_ptr->ResourceName(),
|
|
536
536
|
std::move(listener_watcher));
|
|
537
|
-
MutexLock lock(
|
|
537
|
+
MutexLock lock(mu_);
|
|
538
538
|
listener_watchers_.emplace(watcher_ptr, listener_watcher_ptr);
|
|
539
539
|
}
|
|
540
540
|
|
|
541
541
|
void XdsServerConfigFetcher::CancelWatch(
|
|
542
542
|
ServerConfigFetcher::WatcherInterface* watcher) {
|
|
543
|
-
MutexLock lock(
|
|
543
|
+
MutexLock lock(mu_);
|
|
544
544
|
auto it = listener_watchers_.find(watcher);
|
|
545
545
|
if (it != listener_watchers_.end()) {
|
|
546
546
|
// Cancel the watch on the listener before erasing
|
|
@@ -570,7 +570,7 @@ void XdsServerConfigFetcher::ListenerWatcher::OnResourceChanged(
|
|
|
570
570
|
absl::StatusOr<std::shared_ptr<const XdsListenerResource>> listener,
|
|
571
571
|
RefCountedPtr<ReadDelayHandle> /* read_delay_handle */) {
|
|
572
572
|
if (!listener.ok()) {
|
|
573
|
-
MutexLock lock(
|
|
573
|
+
MutexLock lock(mu_);
|
|
574
574
|
OnFatalError(AddMessagePrefix(absl::StrCat("LDS resource ", ResourceName()),
|
|
575
575
|
listener.status()));
|
|
576
576
|
return;
|
|
@@ -581,13 +581,13 @@ void XdsServerConfigFetcher::ListenerWatcher::OnResourceChanged(
|
|
|
581
581
|
auto* tcp_listener =
|
|
582
582
|
std::get_if<XdsListenerResource::TcpListener>(&(*listener)->listener);
|
|
583
583
|
if (tcp_listener == nullptr) {
|
|
584
|
-
MutexLock lock(
|
|
584
|
+
MutexLock lock(mu_);
|
|
585
585
|
OnFatalError(absl::FailedPreconditionError(absl::StrCat(
|
|
586
586
|
"LDS resource ", ResourceName(), " is not a TCP listener")));
|
|
587
587
|
return;
|
|
588
588
|
}
|
|
589
589
|
if (tcp_listener->address != listening_address_) {
|
|
590
|
-
MutexLock lock(
|
|
590
|
+
MutexLock lock(mu_);
|
|
591
591
|
OnFatalError(absl::FailedPreconditionError(
|
|
592
592
|
absl::StrCat("LDS resource ", ResourceName(),
|
|
593
593
|
" address does not match listening address")));
|
|
@@ -596,7 +596,7 @@ void XdsServerConfigFetcher::ListenerWatcher::OnResourceChanged(
|
|
|
596
596
|
auto new_filter_chain_match_manager = MakeRefCounted<FilterChainMatchManager>(
|
|
597
597
|
xds_client_.Ref(DEBUG_LOCATION, "FilterChainMatchManager"),
|
|
598
598
|
tcp_listener->filter_chain_map, tcp_listener->default_filter_chain);
|
|
599
|
-
MutexLock lock(
|
|
599
|
+
MutexLock lock(mu_);
|
|
600
600
|
if (filter_chain_match_manager_ == nullptr ||
|
|
601
601
|
!(new_filter_chain_match_manager->filter_chain_map() ==
|
|
602
602
|
filter_chain_match_manager_->filter_chain_map() &&
|
|
@@ -744,7 +744,7 @@ void XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
|
744
744
|
std::vector<WatcherToStart> watchers_to_start;
|
|
745
745
|
watchers_to_start.reserve(resource_names.size());
|
|
746
746
|
{
|
|
747
|
-
MutexLock lock(
|
|
747
|
+
MutexLock lock(mu_);
|
|
748
748
|
for (const auto& resource_name : resource_names) {
|
|
749
749
|
++rds_resources_yet_to_fetch_;
|
|
750
750
|
auto route_config_watcher = MakeRefCounted<RouteConfigWatcher>(
|
|
@@ -773,7 +773,7 @@ void XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
|
773
773
|
|
|
774
774
|
void XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
775
775
|
Orphaned() {
|
|
776
|
-
MutexLock lock(
|
|
776
|
+
MutexLock lock(mu_);
|
|
777
777
|
// Cancel the RDS watches to clear up the weak refs
|
|
778
778
|
for (const auto& entry : rds_map_) {
|
|
779
779
|
XdsRouteConfigResourceType::CancelWatch(xds_client_.get(), entry.first,
|
|
@@ -788,7 +788,7 @@ absl::StatusOr<RefCountedPtr<XdsCertificateProvider>>
|
|
|
788
788
|
XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
789
789
|
CreateOrGetXdsCertificateProviderFromFilterChainData(
|
|
790
790
|
const XdsListenerResource::FilterChainData* filter_chain) {
|
|
791
|
-
MutexLock lock(
|
|
791
|
+
MutexLock lock(mu_);
|
|
792
792
|
auto it = certificate_providers_map_.find(filter_chain);
|
|
793
793
|
if (it != certificate_providers_map_.end()) return it->second;
|
|
794
794
|
// Configure root cert.
|
|
@@ -842,7 +842,7 @@ void XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
|
842
842
|
route_config) {
|
|
843
843
|
RefCountedPtr<ListenerWatcher> listener_watcher;
|
|
844
844
|
{
|
|
845
|
-
MutexLock lock(
|
|
845
|
+
MutexLock lock(mu_);
|
|
846
846
|
auto& state = rds_map_[resource_name];
|
|
847
847
|
if (!state.rds_update.has_value()) {
|
|
848
848
|
if (--rds_resources_yet_to_fetch_ == 0) {
|
|
@@ -1074,7 +1074,7 @@ absl::StatusOr<ChannelArgs> XdsServerConfigFetcher::ListenerWatcher::
|
|
|
1074
1074
|
absl::StatusOr<std::shared_ptr<const XdsRouteConfigResource>>
|
|
1075
1075
|
initial_resource;
|
|
1076
1076
|
{
|
|
1077
|
-
MutexLock lock(
|
|
1077
|
+
MutexLock lock(mu_);
|
|
1078
1078
|
initial_resource = rds_map_[rds_name].rds_update.value();
|
|
1079
1079
|
}
|
|
1080
1080
|
server_config_selector_provider =
|
|
@@ -1248,7 +1248,7 @@ XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
|
1248
1248
|
std::shared_ptr<ServerConfigSelectorWatcher> watcher) {
|
|
1249
1249
|
absl::StatusOr<std::shared_ptr<const XdsRouteConfigResource>> resource;
|
|
1250
1250
|
{
|
|
1251
|
-
MutexLock lock(
|
|
1251
|
+
MutexLock lock(mu_);
|
|
1252
1252
|
GRPC_CHECK(watcher_ == nullptr);
|
|
1253
1253
|
watcher_ = std::move(watcher);
|
|
1254
1254
|
resource = resource_;
|
|
@@ -1265,7 +1265,7 @@ XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
|
1265
1265
|
void XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
1266
1266
|
DynamicXdsServerConfigSelectorProvider::CancelWatch(
|
|
1267
1267
|
std::shared_ptr<ServerConfigSelectorWatcher> watcher) {
|
|
1268
|
-
MutexLock lock(
|
|
1268
|
+
MutexLock lock(mu_);
|
|
1269
1269
|
GRPC_CHECK(watcher == watcher_);
|
|
1270
1270
|
watcher_.reset();
|
|
1271
1271
|
}
|
|
@@ -1274,7 +1274,7 @@ void XdsServerConfigFetcher::ListenerWatcher::FilterChainMatchManager::
|
|
|
1274
1274
|
DynamicXdsServerConfigSelectorProvider::OnRouteConfigChanged(
|
|
1275
1275
|
absl::StatusOr<std::shared_ptr<const XdsRouteConfigResource>>
|
|
1276
1276
|
rds_update) {
|
|
1277
|
-
MutexLock lock(
|
|
1277
|
+
MutexLock lock(mu_);
|
|
1278
1278
|
if (!rds_update.ok()) {
|
|
1279
1279
|
rds_update = absl::UnavailableError(absl::StrCat(
|
|
1280
1280
|
"RDS resource ", resource_name_, ": ", rds_update.status().message()));
|
|
@@ -179,7 +179,7 @@ CollectionScope::CollectionScope(
|
|
|
179
179
|
if (parent != nullptr) {
|
|
180
180
|
labels_of_interest_.Merge(parent->labels_of_interest_);
|
|
181
181
|
auto& shard = parent->child_shard(this);
|
|
182
|
-
MutexLock lock(
|
|
182
|
+
MutexLock lock(shard.mu);
|
|
183
183
|
shard.children.insert(this);
|
|
184
184
|
}
|
|
185
185
|
}
|
|
@@ -189,7 +189,7 @@ CollectionScope::~CollectionScope() {
|
|
|
189
189
|
for (const auto& parent : parents_) {
|
|
190
190
|
if (parent != nullptr) {
|
|
191
191
|
auto& shard = parent->child_shard(this);
|
|
192
|
-
MutexLock lock(
|
|
192
|
+
MutexLock lock(shard.mu);
|
|
193
193
|
shard.children.erase(this);
|
|
194
194
|
}
|
|
195
195
|
}
|
|
@@ -197,7 +197,7 @@ CollectionScope::~CollectionScope() {
|
|
|
197
197
|
// TODO(ctiller): Consider a different entry point than GetDomainStorage
|
|
198
198
|
// for this post-aggregation. We ought to be able to do this step without
|
|
199
199
|
// accessing full_labels.
|
|
200
|
-
MutexLock lock(
|
|
200
|
+
MutexLock lock(shard.mu);
|
|
201
201
|
for (auto& storage_pair : shard.storage) {
|
|
202
202
|
for (const auto& parent : parents_) {
|
|
203
203
|
if (parent != nullptr) {
|
|
@@ -213,7 +213,7 @@ CollectionScope::~CollectionScope() {
|
|
|
213
213
|
size_t CollectionScope::TestOnlyCountStorageHeld() const {
|
|
214
214
|
size_t count = 0;
|
|
215
215
|
for (const auto& shard : storage_shards_) {
|
|
216
|
-
MutexLock lock(
|
|
216
|
+
MutexLock lock(shard.mu);
|
|
217
217
|
count += shard.storage.size();
|
|
218
218
|
}
|
|
219
219
|
return count;
|
|
@@ -229,7 +229,7 @@ void CollectionScope::ForEachUniqueStorage(
|
|
|
229
229
|
absl::FunctionRef<void(instrument_detail::DomainStorage*)> cb,
|
|
230
230
|
absl::flat_hash_set<instrument_detail::DomainStorage*>& visited) {
|
|
231
231
|
for (auto& shard : storage_shards_) {
|
|
232
|
-
MutexLock lock(
|
|
232
|
+
MutexLock lock(shard.mu);
|
|
233
233
|
for (const auto& s : shard.storage) {
|
|
234
234
|
if (visited.insert(s.second.get()).second) {
|
|
235
235
|
cb(s.second.get());
|
|
@@ -237,7 +237,7 @@ void CollectionScope::ForEachUniqueStorage(
|
|
|
237
237
|
}
|
|
238
238
|
}
|
|
239
239
|
for (auto& shard : child_shards_) {
|
|
240
|
-
MutexLock lock(
|
|
240
|
+
MutexLock lock(shard.mu);
|
|
241
241
|
for (auto* child : shard.children) {
|
|
242
242
|
child->ForEachUniqueStorage(cb, visited);
|
|
243
243
|
}
|
|
@@ -246,11 +246,11 @@ void CollectionScope::ForEachUniqueStorage(
|
|
|
246
246
|
|
|
247
247
|
void CollectionScope::TestOnlyReset() {
|
|
248
248
|
for (auto& shard : storage_shards_) {
|
|
249
|
-
MutexLock lock(
|
|
249
|
+
MutexLock lock(shard.mu);
|
|
250
250
|
shard.storage.clear();
|
|
251
251
|
}
|
|
252
252
|
for (auto& shard : child_shards_) {
|
|
253
|
-
MutexLock lock(
|
|
253
|
+
MutexLock lock(shard.mu);
|
|
254
254
|
shard.children.clear();
|
|
255
255
|
}
|
|
256
256
|
}
|
|
@@ -341,12 +341,26 @@ void MetricsQuery::Run(RefCountedPtr<CollectionScope> scope,
|
|
|
341
341
|
const auto& storages = pair.second.storage;
|
|
342
342
|
GRPC_CHECK(!metrics.empty());
|
|
343
343
|
if (storages.empty()) continue;
|
|
344
|
+
const InstrumentLabelList domain_labels = domain->label_names();
|
|
345
|
+
InstrumentLabelList label_keys;
|
|
346
|
+
for (size_t i = 0; i < domain_labels.size(); ++i) {
|
|
347
|
+
if (scope->ObservesLabel(domain_labels[i])) {
|
|
348
|
+
label_keys.Append(domain_labels[i]);
|
|
349
|
+
}
|
|
350
|
+
}
|
|
344
351
|
this->Apply(
|
|
345
|
-
|
|
352
|
+
label_keys,
|
|
346
353
|
[&](MetricsSink& sink) {
|
|
354
|
+
std::vector<std::string> label_values;
|
|
355
|
+
label_values.reserve(label_keys.size());
|
|
347
356
|
for (auto& storage : storages) {
|
|
348
|
-
|
|
349
|
-
const auto
|
|
357
|
+
label_values.clear();
|
|
358
|
+
const auto storage_labels = storage->label();
|
|
359
|
+
for (size_t i = 0; i < domain_labels.size(); ++i) {
|
|
360
|
+
if (scope->ObservesLabel(domain_labels[i])) {
|
|
361
|
+
label_values.emplace_back(storage_labels[i]);
|
|
362
|
+
}
|
|
363
|
+
}
|
|
350
364
|
instrument_detail::GaugeStorage gauge_storage(storage->domain());
|
|
351
365
|
storage->FillGaugeStorage(gauge_storage);
|
|
352
366
|
for (const auto* metric : metrics) {
|
|
@@ -859,7 +873,7 @@ void QueryableDomain::ForEachInstrument(
|
|
|
859
873
|
size_t QueryableDomain::TestOnlyCountStorageHeld() const {
|
|
860
874
|
size_t count = 0;
|
|
861
875
|
for (size_t i = 0; i < map_shards_size_; ++i) {
|
|
862
|
-
MutexLock lock(
|
|
876
|
+
MutexLock lock(map_shards_[i].mu);
|
|
863
877
|
map_shards_[i].storage_map.ForEach(
|
|
864
878
|
[&count](const auto&, const auto&) { count++; });
|
|
865
879
|
}
|
|
@@ -981,7 +995,7 @@ RefCountedPtr<DomainStorage> QueryableDomain::GetDomainStorage(
|
|
|
981
995
|
}
|
|
982
996
|
size_t shard_idx = absl::HashOf(key_labels) % scope->storage_shards_.size();
|
|
983
997
|
auto& shard = scope->storage_shards_[shard_idx];
|
|
984
|
-
MutexLock lock(
|
|
998
|
+
MutexLock lock(shard.mu);
|
|
985
999
|
auto it = shard.storage.find({this, key_labels});
|
|
986
1000
|
if (it != shard.storage.end()) {
|
|
987
1001
|
return it->second;
|
|
@@ -1044,7 +1058,7 @@ class GlobalCollectionScopeManager {
|
|
|
1044
1058
|
RefCountedPtr<CollectionScope> CreateRootScope(InstrumentLabelSet labels,
|
|
1045
1059
|
size_t child_shards_count,
|
|
1046
1060
|
size_t storage_shards_count) {
|
|
1047
|
-
MutexLock lock(
|
|
1061
|
+
MutexLock lock(mu_);
|
|
1048
1062
|
if (auto* building = std::get_if<Building>(&state_); building != nullptr) {
|
|
1049
1063
|
auto scope = CreateCollectionScope({}, labels, child_shards_count,
|
|
1050
1064
|
storage_shards_count);
|
|
@@ -1085,7 +1099,7 @@ class GlobalCollectionScopeManager {
|
|
|
1085
1099
|
}
|
|
1086
1100
|
|
|
1087
1101
|
RefCountedPtr<CollectionScope> GetGlobalScope() {
|
|
1088
|
-
MutexLock lock(
|
|
1102
|
+
MutexLock lock(mu_);
|
|
1089
1103
|
if (auto* building = std::get_if<Building>(&state_); building != nullptr) {
|
|
1090
1104
|
auto global_scope = CreateCollectionScope(building->root_scopes,
|
|
1091
1105
|
InstrumentLabelSet(), 32, 32);
|
|
@@ -1098,7 +1112,7 @@ class GlobalCollectionScopeManager {
|
|
|
1098
1112
|
|
|
1099
1113
|
void TestOnlyReset() {
|
|
1100
1114
|
std::variant<Building, Published> state;
|
|
1101
|
-
MutexLock lock(
|
|
1115
|
+
MutexLock lock(mu_);
|
|
1102
1116
|
state = std::exchange(state_, Building{});
|
|
1103
1117
|
if (auto* published = std::get_if<Published>(&state);
|
|
1104
1118
|
published != nullptr) {
|
|
@@ -1043,7 +1043,7 @@ class InstrumentDomainImpl final : public QueryableDomain {
|
|
|
1043
1043
|
uint64_t SumCounter(size_t offset) override { return backend_.Sum(offset); }
|
|
1044
1044
|
void FillGaugeStorage(GaugeStorage& storage) override {
|
|
1045
1045
|
GaugeSink sink(storage);
|
|
1046
|
-
MutexLock lock(
|
|
1046
|
+
MutexLock lock(gauge_providers_mu_);
|
|
1047
1047
|
for (auto* provider : gauge_providers_) {
|
|
1048
1048
|
provider->PopulateGaugeData(sink);
|
|
1049
1049
|
}
|
|
@@ -1059,12 +1059,12 @@ class InstrumentDomainImpl final : public QueryableDomain {
|
|
|
1059
1059
|
backend_(instrument_domain->allocated_counter_slots()) {}
|
|
1060
1060
|
|
|
1061
1061
|
void RegisterGaugeProvider(GaugeProvider* provider) {
|
|
1062
|
-
MutexLock lock(
|
|
1062
|
+
MutexLock lock(gauge_providers_mu_);
|
|
1063
1063
|
gauge_providers_.push_back(provider);
|
|
1064
1064
|
}
|
|
1065
1065
|
|
|
1066
1066
|
void UnregisterGaugeProvider(GaugeProvider* provider) {
|
|
1067
|
-
MutexLock lock(
|
|
1067
|
+
MutexLock lock(gauge_providers_mu_);
|
|
1068
1068
|
gauge_providers_.erase(std::remove(gauge_providers_.begin(),
|
|
1069
1069
|
gauge_providers_.end(), provider),
|
|
1070
1070
|
gauge_providers_.end());
|
|
@@ -154,7 +154,7 @@ static void maybe_complete_tsi_next(
|
|
|
154
154
|
recv_message_result* pending_recv_message_result) {
|
|
155
155
|
recv_message_result* r;
|
|
156
156
|
{
|
|
157
|
-
grpc_core::MutexLock lock(
|
|
157
|
+
grpc_core::MutexLock lock(client->mu);
|
|
158
158
|
client->receive_status_finished |= receive_status_finished;
|
|
159
159
|
if (pending_recv_message_result != nullptr) {
|
|
160
160
|
GRPC_CHECK_EQ(client->pending_recv_message_result, nullptr);
|
|
@@ -374,7 +374,7 @@ class HandshakeQueue {
|
|
|
374
374
|
|
|
375
375
|
void RequestHandshake(alts_grpc_handshaker_client* client) {
|
|
376
376
|
{
|
|
377
|
-
grpc_core::MutexLock lock(
|
|
377
|
+
grpc_core::MutexLock lock(mu_);
|
|
378
378
|
if (outstanding_handshakes_ == max_outstanding_handshakes_) {
|
|
379
379
|
// Max number already running, add to queue.
|
|
380
380
|
queued_handshakes_.push_back(client);
|
|
@@ -389,7 +389,7 @@ class HandshakeQueue {
|
|
|
389
389
|
void HandshakeDone() {
|
|
390
390
|
alts_grpc_handshaker_client* client = nullptr;
|
|
391
391
|
{
|
|
392
|
-
grpc_core::MutexLock lock(
|
|
392
|
+
grpc_core::MutexLock lock(mu_);
|
|
393
393
|
if (queued_handshakes_.empty()) {
|
|
394
394
|
// Nothing more in queue. Decrement count and return immediately.
|
|
395
395
|
--outstanding_handshakes_;
|
|
@@ -488,7 +488,7 @@ static tsi_result alts_tsi_handshaker_continue_handshaker_next(
|
|
|
488
488
|
return TSI_FAILED_PRECONDITION;
|
|
489
489
|
}
|
|
490
490
|
{
|
|
491
|
-
grpc_core::MutexLock lock(
|
|
491
|
+
grpc_core::MutexLock lock(handshaker->mu);
|
|
492
492
|
GRPC_CHECK_EQ(handshaker->client, nullptr);
|
|
493
493
|
handshaker->client = client;
|
|
494
494
|
if (handshaker->shutdown) {
|
|
@@ -592,7 +592,7 @@ static tsi_result handshaker_next(
|
|
|
592
592
|
alts_tsi_handshaker* handshaker =
|
|
593
593
|
reinterpret_cast<alts_tsi_handshaker*>(self);
|
|
594
594
|
{
|
|
595
|
-
grpc_core::MutexLock lock(
|
|
595
|
+
grpc_core::MutexLock lock(handshaker->mu);
|
|
596
596
|
if (handshaker->shutdown) {
|
|
597
597
|
LOG(INFO) << "TSI handshake shutdown";
|
|
598
598
|
if (error != nullptr) *error = "handshake shutdown";
|
|
@@ -656,7 +656,7 @@ static void handshaker_shutdown(tsi_handshaker* self, bool /*peer_closed*/) {
|
|
|
656
656
|
GRPC_CHECK_NE(self, nullptr);
|
|
657
657
|
alts_tsi_handshaker* handshaker =
|
|
658
658
|
reinterpret_cast<alts_tsi_handshaker*>(self);
|
|
659
|
-
grpc_core::MutexLock lock(
|
|
659
|
+
grpc_core::MutexLock lock(handshaker->mu);
|
|
660
660
|
if (handshaker->shutdown) {
|
|
661
661
|
return;
|
|
662
662
|
}
|
|
@@ -700,7 +700,7 @@ static const tsi_handshaker_vtable handshaker_vtable_dedicated = {
|
|
|
700
700
|
|
|
701
701
|
bool alts_tsi_handshaker_has_shutdown(alts_tsi_handshaker* handshaker) {
|
|
702
702
|
GRPC_CHECK_NE(handshaker, nullptr);
|
|
703
|
-
grpc_core::MutexLock lock(
|
|
703
|
+
grpc_core::MutexLock lock(handshaker->mu);
|
|
704
704
|
return handshaker->shutdown;
|
|
705
705
|
}
|
|
706
706
|
|