grpc 1.75.0.pre1 → 1.76.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 +18 -5
- data/include/grpc/credentials.h +21 -5
- data/src/core/call/call_filters.cc +4 -4
- data/src/core/call/call_filters.h +36 -36
- data/src/core/call/call_spine.h +27 -27
- data/src/core/call/client_call.cc +6 -5
- data/src/core/call/filter_fusion.h +5 -5
- data/src/core/call/metadata_batch.h +3 -3
- data/src/core/call/security_context.cc +1 -1
- data/src/core/call/server_call.cc +4 -4
- data/src/core/call/server_call.h +1 -1
- data/src/core/channelz/channelz.cc +12 -18
- data/src/core/channelz/channelz.h +32 -16
- data/src/core/channelz/channelz_registry.h +11 -0
- data/src/core/channelz/property_list.cc +18 -0
- data/src/core/channelz/property_list.h +10 -1
- data/src/core/channelz/text_encode.cc +66 -0
- data/src/core/channelz/text_encode.h +29 -0
- data/src/core/channelz/v2tov1/convert.cc +11 -0
- data/src/core/channelz/v2tov1/legacy_api.cc +15 -8
- data/src/core/channelz/ztrace_collector.h +247 -86
- data/src/core/client_channel/backup_poller.cc +5 -6
- data/src/core/client_channel/client_channel.cc +20 -13
- data/src/core/client_channel/client_channel_filter.cc +53 -45
- data/src/core/client_channel/client_channel_filter.h +2 -2
- data/src/core/client_channel/client_channel_internal.h +3 -4
- data/src/core/client_channel/config_selector.h +3 -3
- data/src/core/client_channel/dynamic_filters.cc +3 -3
- data/src/core/client_channel/global_subchannel_pool.cc +0 -37
- data/src/core/client_channel/global_subchannel_pool.h +0 -27
- data/src/core/client_channel/load_balanced_call_destination.cc +7 -7
- data/src/core/client_channel/local_subchannel_pool.cc +4 -4
- data/src/core/client_channel/retry_filter.h +3 -3
- data/src/core/client_channel/retry_filter_legacy_call_data.cc +5 -5
- data/src/core/client_channel/subchannel.cc +8 -8
- data/src/core/client_channel/subchannel_stream_client.cc +4 -4
- data/src/core/config/config_vars.cc +30 -1
- data/src/core/config/config_vars.h +21 -0
- data/src/core/config/core_configuration.cc +5 -5
- data/src/core/config/core_configuration.h +7 -7
- data/src/core/config/load_config.cc +12 -0
- data/src/core/config/load_config.h +2 -0
- data/src/core/credentials/call/call_credentials.h +2 -2
- data/src/core/credentials/call/call_creds_util.cc +4 -3
- data/src/core/credentials/call/composite/composite_call_credentials.cc +4 -4
- data/src/core/credentials/call/external/aws_external_account_credentials.cc +3 -3
- data/src/core/credentials/call/external/external_account_credentials.cc +1 -1
- data/src/core/credentials/call/external/url_external_account_credentials.cc +1 -1
- data/src/core/credentials/call/iam/iam_credentials.cc +4 -4
- data/src/core/credentials/call/jwt/json_token.cc +3 -3
- data/src/core/credentials/call/jwt/jwt_credentials.cc +2 -2
- data/src/core/credentials/call/jwt/jwt_verifier.cc +14 -13
- data/src/core/credentials/call/oauth2/oauth2_credentials.cc +20 -12
- data/src/core/credentials/call/plugin/plugin_credentials.cc +2 -2
- data/src/core/credentials/transport/alts/alts_credentials.cc +4 -4
- data/src/core/credentials/transport/alts/alts_security_connector.cc +14 -12
- data/src/core/credentials/transport/alts/grpc_alts_credentials_client_options.cc +22 -2
- data/src/core/credentials/transport/alts/grpc_alts_credentials_options.cc +10 -1
- data/src/core/credentials/transport/alts/grpc_alts_credentials_options.h +31 -0
- data/src/core/credentials/transport/alts/grpc_alts_credentials_server_options.cc +8 -3
- data/src/core/credentials/transport/composite/composite_channel_credentials.cc +5 -5
- data/src/core/credentials/transport/fake/fake_security_connector.cc +2 -2
- data/src/core/credentials/transport/google_default/google_default_credentials.cc +78 -28
- data/src/core/credentials/transport/insecure/insecure_security_connector.cc +3 -3
- data/src/core/credentials/transport/local/local_security_connector.cc +8 -8
- data/src/core/credentials/transport/security_connector.cc +5 -5
- data/src/core/credentials/transport/ssl/ssl_credentials.cc +12 -12
- data/src/core/credentials/transport/ssl/ssl_credentials.h +2 -2
- data/src/core/credentials/transport/ssl/ssl_security_connector.cc +3 -3
- data/src/core/credentials/transport/tls/certificate_provider_registry.cc +2 -2
- data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.cc +24 -24
- data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.cc +5 -5
- data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h +2 -2
- data/src/core/credentials/transport/tls/grpc_tls_certificate_verifier.cc +2 -2
- data/src/core/credentials/transport/tls/grpc_tls_certificate_verifier.h +2 -2
- data/src/core/credentials/transport/tls/grpc_tls_credentials_options.cc +17 -17
- data/src/core/credentials/transport/tls/ssl_utils.cc +14 -9
- data/src/core/credentials/transport/tls/tls_credentials.cc +2 -2
- data/src/core/credentials/transport/tls/tls_security_connector.cc +11 -11
- data/src/core/credentials/transport/transport_credentials.cc +2 -2
- data/src/core/credentials/transport/transport_credentials.h +2 -2
- data/src/core/credentials/transport/xds/xds_credentials.cc +5 -5
- data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +2 -0
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +1 -1
- data/src/core/ext/filters/http/message_compress/compression_filter.cc +8 -8
- data/src/core/ext/filters/http/message_compress/compression_filter.h +3 -3
- data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +7 -7
- data/src/core/ext/transport/chttp2/alpn/alpn.cc +2 -2
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +10 -9
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +10 -7
- data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +5 -5
- data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +6 -6
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +96 -88
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +3 -3
- data/src/core/ext/transport/chttp2/transport/flow_control.h +12 -7
- data/src/core/ext/transport/chttp2/transport/flow_control_manager.h +60 -0
- data/src/core/ext/transport/chttp2/transport/frame.cc +32 -10
- data/src/core/ext/transport/chttp2/transport/frame.h +16 -2
- data/src/core/ext/transport/chttp2/transport/frame_data.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +4 -4
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +3 -3
- data/src/core/ext/transport/chttp2/transport/header_assembler.h +28 -12
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +4 -2
- data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +8 -8
- data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +2 -2
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +27 -27
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +2 -3
- data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +4 -4
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +543 -366
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +198 -277
- data/src/core/ext/transport/chttp2/transport/http2_settings_manager.cc +3 -0
- data/src/core/ext/transport/chttp2/transport/http2_settings_manager.h +11 -0
- data/src/core/ext/transport/chttp2/transport/http2_settings_promises.h +179 -0
- data/src/core/ext/transport/chttp2/transport/http2_transport.cc +51 -23
- data/src/core/ext/transport/chttp2/transport/http2_transport.h +13 -6
- data/src/core/ext/transport/chttp2/transport/http2_ztrace_collector.h +115 -71
- data/src/core/ext/transport/chttp2/transport/internal.h +6 -14
- data/src/core/ext/transport/chttp2/transport/message_assembler.h +7 -7
- data/src/core/ext/transport/chttp2/transport/parsing.cc +17 -15
- data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/ping_promise.cc +62 -26
- data/src/core/ext/transport/chttp2/transport/ping_promise.h +58 -22
- data/src/core/ext/transport/chttp2/transport/stream.h +207 -0
- data/src/core/ext/transport/chttp2/transport/stream_data_queue.h +328 -187
- data/src/core/ext/transport/chttp2/transport/stream_lists.cc +7 -7
- data/src/core/ext/transport/chttp2/transport/transport_common.cc +17 -1
- data/src/core/ext/transport/chttp2/transport/transport_common.h +52 -0
- data/src/core/ext/transport/chttp2/transport/varint.h +2 -2
- data/src/core/ext/transport/chttp2/transport/writable_streams.h +181 -79
- data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/writing.cc +3 -3
- data/src/core/ext/transport/inproc/inproc_transport.cc +1 -1
- data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +3 -3
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb.h +740 -0
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb_minitable.c +218 -0
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb_minitable.h +46 -0
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +87 -55
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +23 -21
- data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/channelz.upbdefs.c +80 -0
- data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/channelz.upbdefs.h +47 -0
- data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/service.upbdefs.c +129 -0
- data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/service.upbdefs.h +72 -0
- data/src/core/filter/auth/server_auth_filter.cc +2 -2
- data/src/core/handshaker/handshaker.cc +3 -3
- data/src/core/handshaker/http_connect/http_proxy_mapper.cc +2 -2
- data/src/core/handshaker/security/legacy_secure_endpoint.cc +2 -2
- data/src/core/handshaker/security/pipelined_secure_endpoint.cc +31 -8
- data/src/core/handshaker/security/secure_endpoint.cc +16 -6
- data/src/core/handshaker/security/security_handshaker.cc +3 -3
- data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +2 -2
- data/src/core/lib/channel/channel_stack.cc +8 -5
- data/src/core/lib/channel/channel_stack.h +3 -0
- data/src/core/lib/channel/channel_stack_builder_impl.cc +1 -0
- data/src/core/lib/channel/connected_channel.cc +2 -2
- data/src/core/lib/channel/promise_based_filter.cc +69 -64
- data/src/core/lib/channel/promise_based_filter.h +16 -15
- data/src/core/lib/compression/compression_internal.cc +2 -2
- data/src/core/lib/compression/message_compress.cc +7 -7
- data/src/core/lib/event_engine/ares_resolver.cc +22 -20
- data/src/core/lib/event_engine/cf_engine/cf_engine.cc +2 -2
- data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +2 -2
- data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +2 -2
- data/src/core/lib/event_engine/extensions/channelz.h +2 -2
- data/src/core/lib/event_engine/extensions/supports_fd.h +5 -5
- data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +8 -8
- data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +10 -10
- data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +2 -2
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +23 -22
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +11 -11
- data/src/core/lib/event_engine/posix_engine/posix_engine.cc +168 -170
- data/src/core/lib/event_engine/posix_engine/posix_engine.h +33 -54
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +4 -3
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +5 -5
- data/src/core/lib/event_engine/posix_engine/posix_interface.h +1 -1
- data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +1 -1
- data/src/core/lib/event_engine/posix_engine/timer_manager.cc +3 -3
- data/src/core/lib/event_engine/resolved_address.cc +3 -3
- data/src/core/lib/event_engine/shim.cc +8 -11
- data/src/core/lib/event_engine/shim.h +2 -1
- data/src/core/lib/event_engine/slice.cc +2 -2
- data/src/core/lib/event_engine/tcp_socket_utils.cc +11 -11
- data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +7 -7
- data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +31 -31
- data/src/core/lib/event_engine/windows/iocp.cc +10 -10
- data/src/core/lib/event_engine/windows/win_socket.cc +6 -6
- data/src/core/lib/event_engine/windows/windows_endpoint.cc +11 -11
- data/src/core/lib/event_engine/windows/windows_engine.cc +16 -14
- data/src/core/lib/event_engine/windows/windows_listener.cc +7 -7
- data/src/core/lib/experiments/experiments.cc +105 -18
- data/src/core/lib/experiments/experiments.h +43 -11
- data/src/core/lib/iomgr/call_combiner.cc +3 -3
- data/src/core/lib/iomgr/endpoint_cfstream.cc +6 -6
- data/src/core/lib/iomgr/endpoint_pair_posix.cc +5 -5
- data/src/core/lib/iomgr/endpoint_pair_windows.cc +15 -14
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +15 -15
- data/src/core/lib/iomgr/ev_poll_posix.cc +11 -11
- data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +5 -4
- data/src/core/lib/iomgr/event_engine_shims/endpoint.h +1 -1
- data/src/core/lib/iomgr/iocp_windows.cc +8 -8
- data/src/core/lib/iomgr/iomgr_windows.cc +3 -3
- data/src/core/lib/iomgr/lockfree_event.cc +2 -2
- data/src/core/lib/iomgr/polling_entity.cc +3 -3
- data/src/core/lib/iomgr/socket_utils_common_posix.cc +2 -2
- data/src/core/lib/iomgr/socket_windows.cc +4 -4
- data/src/core/lib/iomgr/tcp_client_posix.cc +4 -4
- data/src/core/lib/iomgr/tcp_client_windows.cc +4 -4
- data/src/core/lib/iomgr/tcp_posix.cc +42 -42
- data/src/core/lib/iomgr/tcp_server.cc +5 -0
- data/src/core/lib/iomgr/tcp_server.h +7 -0
- data/src/core/lib/iomgr/tcp_server_posix.cc +47 -27
- data/src/core/lib/iomgr/tcp_server_utils_posix.h +3 -0
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +5 -5
- data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +2 -2
- data/src/core/lib/iomgr/tcp_server_windows.cc +68 -29
- data/src/core/lib/iomgr/tcp_windows.cc +7 -7
- data/src/core/lib/iomgr/timer_generic.cc +2 -2
- data/src/core/lib/iomgr/timer_manager.cc +2 -2
- data/src/core/lib/iomgr/unix_sockets_posix.cc +2 -2
- data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +2 -2
- data/src/core/lib/promise/activity.cc +2 -2
- data/src/core/lib/promise/activity.h +6 -6
- data/src/core/lib/promise/context.h +2 -2
- data/src/core/lib/promise/detail/join_state.h +9 -9
- data/src/core/lib/promise/detail/seq_state.h +13 -13
- data/src/core/lib/promise/detail/status.h +2 -2
- data/src/core/lib/promise/for_each.h +5 -5
- data/src/core/lib/promise/interceptor_list.h +2 -2
- data/src/core/lib/promise/latch.h +7 -7
- data/src/core/lib/promise/mpsc.cc +26 -26
- data/src/core/lib/promise/mpsc.h +2 -2
- data/src/core/lib/promise/observable.h +4 -4
- data/src/core/lib/promise/party.cc +32 -25
- data/src/core/lib/promise/party.h +16 -19
- data/src/core/lib/promise/pipe.h +15 -15
- data/src/core/lib/promise/poll.h +5 -4
- data/src/core/lib/promise/promise.h +0 -2
- data/src/core/lib/promise/sleep.cc +3 -1
- data/src/core/lib/promise/status_flag.h +7 -7
- data/src/core/lib/promise/try_join.h +2 -2
- data/src/core/lib/promise/try_seq.h +2 -2
- data/src/core/lib/resource_quota/arena.h +15 -2
- data/src/core/lib/resource_quota/connection_quota.cc +9 -7
- data/src/core/lib/resource_quota/memory_quota.cc +45 -24
- data/src/core/lib/resource_quota/memory_quota.h +48 -16
- data/src/core/lib/resource_quota/telemetry.h +54 -0
- data/src/core/lib/resource_quota/thread_quota.cc +2 -2
- data/src/core/lib/resource_tracker/resource_tracker.cc +33 -0
- data/src/core/lib/resource_tracker/resource_tracker.h +46 -0
- data/src/core/lib/security/authorization/audit_logging.cc +5 -5
- data/src/core/lib/security/authorization/grpc_authorization_engine.cc +2 -2
- data/src/core/lib/security/authorization/stdout_logger.cc +3 -3
- data/src/core/lib/surface/byte_buffer_reader.cc +2 -2
- data/src/core/lib/surface/call.cc +16 -14
- data/src/core/lib/surface/call.h +1 -1
- data/src/core/lib/surface/call_utils.cc +2 -2
- data/src/core/lib/surface/call_utils.h +2 -2
- data/src/core/lib/surface/channel.cc +4 -4
- data/src/core/lib/surface/channel_create.cc +10 -6
- data/src/core/lib/surface/channel_init.cc +80 -23
- data/src/core/lib/surface/channel_init.h +26 -11
- data/src/core/lib/surface/completion_queue.cc +17 -16
- data/src/core/lib/surface/completion_queue_factory.cc +7 -7
- data/src/core/lib/surface/connection_context.h +45 -2
- data/src/core/lib/surface/filter_stack_call.cc +12 -23
- data/src/core/lib/surface/filter_stack_call.h +3 -4
- data/src/core/lib/surface/legacy_channel.cc +7 -7
- data/src/core/lib/surface/validate_metadata.h +2 -2
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.h +3 -3
- data/src/core/lib/transport/promise_endpoint.cc +3 -3
- data/src/core/lib/transport/promise_endpoint.h +8 -8
- data/src/core/lib/transport/timeout_encoding.cc +4 -4
- data/src/core/load_balancing/child_policy_handler.cc +4 -4
- data/src/core/load_balancing/endpoint_list.cc +2 -2
- data/src/core/load_balancing/grpclb/grpclb.cc +24 -24
- data/src/core/load_balancing/health_check_client.cc +4 -4
- data/src/core/load_balancing/health_check_client_internal.h +2 -2
- data/src/core/load_balancing/lb_policy_registry.cc +2 -2
- data/src/core/load_balancing/oob_backend_metric.cc +4 -4
- data/src/core/load_balancing/oob_backend_metric_internal.h +2 -2
- data/src/core/load_balancing/outlier_detection/outlier_detection.cc +2 -2
- data/src/core/load_balancing/pick_first/pick_first.cc +14 -14
- data/src/core/load_balancing/priority/priority.cc +23 -24
- data/src/core/load_balancing/ring_hash/ring_hash.cc +3 -3
- data/src/core/load_balancing/rls/rls.cc +13 -13
- data/src/core/load_balancing/round_robin/round_robin.cc +9 -9
- data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +3 -3
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +33 -26
- data/src/core/load_balancing/weighted_target/weighted_target.cc +5 -5
- data/src/core/load_balancing/xds/cds.cc +76 -32
- data/src/core/load_balancing/xds/xds_cluster_impl.cc +3 -3
- data/src/core/load_balancing/xds/xds_override_host.cc +4 -4
- data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +2 -2
- data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +33 -33
- data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +10 -10
- data/src/core/resolver/dns/dns_resolver_plugin.cc +6 -3
- data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +2 -2
- data/src/core/resolver/endpoint_addresses.cc +3 -3
- data/src/core/resolver/endpoint_addresses.h +3 -0
- data/src/core/resolver/fake/fake_resolver.cc +2 -2
- data/src/core/resolver/google_c2p/google_c2p_resolver.cc +41 -54
- data/src/core/resolver/polling_resolver.cc +3 -3
- data/src/core/resolver/resolver_registry.cc +5 -4
- data/src/core/resolver/xds/xds_dependency_manager.cc +5 -5
- data/src/core/resolver/xds/xds_resolver.cc +9 -9
- data/src/core/server/server.cc +38 -38
- data/src/core/server/server_call_tracer_filter.h +4 -4
- data/src/core/server/server_config_selector_filter.cc +2 -2
- data/src/core/server/xds_server_config_fetcher.cc +9 -8
- data/src/core/service_config/service_config_impl.h +2 -2
- data/src/core/telemetry/call_tracer.cc +39 -49
- data/src/core/telemetry/call_tracer.h +199 -22
- data/src/core/telemetry/histogram.h +205 -0
- data/src/core/telemetry/instrument.cc +719 -0
- data/src/core/telemetry/instrument.h +932 -0
- data/src/core/telemetry/metrics.cc +13 -5
- data/src/core/telemetry/metrics.h +3 -1
- data/src/core/telemetry/stats_data.cc +0 -19
- data/src/core/telemetry/stats_data.h +0 -19
- data/src/core/transport/auth_context.cc +2 -2
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +78 -45
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +1 -0
- data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +3 -3
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +39 -31
- data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +3 -3
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +3 -3
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +7 -7
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +3 -3
- data/src/core/tsi/fake_transport_security.cc +4 -4
- data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +4 -4
- data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +9 -9
- data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +3 -3
- data/src/core/tsi/ssl_transport_security.cc +26 -25
- data/src/core/tsi/ssl_transport_security_utils.cc +9 -9
- data/src/core/util/chunked_vector.h +4 -4
- data/src/core/util/event_log.cc +2 -2
- data/src/core/util/gcp_metadata_query.cc +2 -2
- data/src/core/util/grpc_check.cc +22 -0
- data/src/core/util/grpc_check.h +103 -0
- data/src/core/util/http_client/httpcli.cc +3 -3
- data/src/core/util/http_client/parser.cc +4 -4
- data/src/core/util/latent_see.h +7 -4
- data/src/core/util/lru_cache.h +4 -4
- data/src/core/util/memory_usage.h +16 -0
- data/src/core/util/posix/directory_reader.cc +3 -2
- data/src/core/util/posix/sync.cc +24 -24
- data/src/core/util/postmortem_emit.cc +52 -0
- data/src/core/util/postmortem_emit.h +30 -0
- data/src/core/util/ref_counted_ptr.h +5 -0
- data/src/core/util/trie_lookup.h +170 -0
- data/src/core/util/unique_ptr_with_bitset.h +5 -5
- data/src/core/xds/grpc/xds_bootstrap_grpc.h +6 -1
- data/src/core/xds/grpc/xds_certificate_provider.cc +3 -3
- data/src/core/xds/grpc/xds_client_grpc.cc +34 -15
- data/src/core/xds/grpc/xds_client_grpc.h +4 -1
- data/src/core/xds/grpc/xds_cluster_parser.cc +2 -2
- data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +2 -2
- data/src/core/xds/grpc/xds_endpoint_parser.cc +2 -2
- data/src/core/xds/grpc/xds_http_filter_registry.cc +4 -3
- data/src/core/xds/grpc/xds_listener_parser.cc +3 -3
- data/src/core/xds/grpc/xds_matcher.cc +277 -0
- data/src/core/xds/grpc/xds_matcher.h +432 -0
- data/src/core/xds/grpc/xds_matcher_action.cc +47 -0
- data/src/core/xds/grpc/xds_matcher_action.h +48 -0
- data/src/core/xds/grpc/xds_matcher_context.cc +29 -0
- data/src/core/xds/grpc/xds_matcher_context.h +46 -0
- data/src/core/xds/grpc/xds_matcher_input.cc +79 -0
- data/src/core/xds/grpc/xds_matcher_input.h +105 -0
- data/src/core/xds/grpc/xds_matcher_parse.cc +356 -0
- data/src/core/xds/grpc/xds_matcher_parse.h +39 -0
- data/src/core/xds/grpc/xds_metadata.cc +4 -3
- data/src/core/xds/grpc/xds_route_config_parser.cc +6 -6
- data/src/core/xds/grpc/xds_routing.cc +3 -3
- data/src/core/xds/grpc/xds_transport_grpc.cc +10 -10
- data/src/core/xds/xds_client/lrs_client.cc +6 -6
- data/src/core/xds/xds_client/xds_client.cc +9 -9
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +2 -2
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/third_party/abseil-cpp/absl/container/internal/node_slot_policy.h +95 -0
- data/third_party/abseil-cpp/absl/container/node_hash_map.h +687 -0
- metadata +37 -2
@@ -0,0 +1,80 @@
|
|
1
|
+
/* This file was generated by upb_generator from the input file:
|
2
|
+
*
|
3
|
+
* src/proto/grpc/channelz/v2/channelz.proto
|
4
|
+
*
|
5
|
+
* Do not edit -- your changes will be discarded when the file is
|
6
|
+
* regenerated.
|
7
|
+
* NO CHECKED-IN PROTOBUF GENCODE */
|
8
|
+
|
9
|
+
|
10
|
+
#include "upb/reflection/def.h"
|
11
|
+
#include "src/proto/grpc/channelz/v2/channelz.upbdefs.h"
|
12
|
+
#include "src/proto/grpc/channelz/v2/channelz.upb_minitable.h"
|
13
|
+
|
14
|
+
extern _upb_DefPool_Init google_protobuf_any_proto_upbdefinit;
|
15
|
+
extern _upb_DefPool_Init google_protobuf_timestamp_proto_upbdefinit;
|
16
|
+
|
17
|
+
static const char descriptor[578] = {
|
18
|
+
'\n', ')', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/',
|
19
|
+
'g', 'r', 'p', 'c', '/', 'c', 'h', 'a', 'n', 'n', 'e', 'l',
|
20
|
+
'z', '/', 'v', '2', '/', 'c', 'h', 'a', 'n', 'n', 'e', 'l',
|
21
|
+
'z', '.', 'p', 'r', 'o', 't', 'o', '\022', '\020', 'g', 'r', 'p',
|
22
|
+
'c', '.', 'c', 'h', 'a', 'n', 'n', 'e', 'l', 'z', '.', 'v',
|
23
|
+
'2', '\032', '\031', 'g', 'o', 'o', 'g', 'l', 'e', '/', 'p', 'r',
|
24
|
+
'o', 't', 'o', 'b', 'u', 'f', '/', 'a', 'n', 'y', '.', 'p',
|
25
|
+
'r', 'o', 't', 'o', '\032', '\037', 'g', 'o', 'o', 'g', 'l', 'e',
|
26
|
+
'/', 'p', 'r', 'o', 't', 'o', 'b', 'u', 'f', '/', 't', 'i',
|
27
|
+
'm', 'e', 's', 't', 'a', 'm', 'p', '.', 'p', 'r', 'o', 't',
|
28
|
+
'o', '\"', 'F', '\n', '\004', 'D', 'a', 't', 'a', '\022', '\022', '\n',
|
29
|
+
'\004', 'n', 'a', 'm', 'e', '\030', '\001', ' ', '\001', '(', '\t', 'R',
|
30
|
+
'\004', 'n', 'a', 'm', 'e', '\022', '*', '\n', '\005', 'v', 'a', 'l',
|
31
|
+
'u', 'e', '\030', '\002', ' ', '\001', '(', '\013', '2', '\024', '.', 'g',
|
32
|
+
'o', 'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b',
|
33
|
+
'u', 'f', '.', 'A', 'n', 'y', 'R', '\005', 'v', 'a', 'l', 'u',
|
34
|
+
'e', '\"', '\337', '\001', '\n', '\006', 'E', 'n', 't', 'i', 't', 'y',
|
35
|
+
'\022', '\016', '\n', '\002', 'i', 'd', '\030', '\001', ' ', '\001', '(', '\003',
|
36
|
+
'R', '\002', 'i', 'd', '\022', '\022', '\n', '\004', 'k', 'i', 'n', 'd',
|
37
|
+
'\030', '\002', ' ', '\001', '(', '\t', 'R', '\004', 'k', 'i', 'n', 'd',
|
38
|
+
'\022', '\030', '\n', '\007', 'p', 'a', 'r', 'e', 'n', 't', 's', '\030',
|
39
|
+
'\003', ' ', '\003', '(', '\003', 'R', '\007', 'p', 'a', 'r', 'e', 'n',
|
40
|
+
't', 's', '\022', '\032', '\n', '\010', 'o', 'r', 'p', 'h', 'a', 'n',
|
41
|
+
'e', 'd', '\030', '\004', ' ', '\001', '(', '\010', 'R', '\010', 'o', 'r',
|
42
|
+
'p', 'h', 'a', 'n', 'e', 'd', '\022', '\033', '\n', '\t', 't', 'i',
|
43
|
+
'm', 'e', 'd', '_', 'o', 'u', 't', '\030', '\005', ' ', '\001', '(',
|
44
|
+
'\010', 'R', '\010', 't', 'i', 'm', 'e', 'd', 'O', 'u', 't', '\022',
|
45
|
+
'*', '\n', '\004', 'd', 'a', 't', 'a', '\030', '\006', ' ', '\003', '(',
|
46
|
+
'\013', '2', '\026', '.', 'g', 'r', 'p', 'c', '.', 'c', 'h', 'a',
|
47
|
+
'n', 'n', 'e', 'l', 'z', '.', 'v', '2', '.', 'D', 'a', 't',
|
48
|
+
'a', 'R', '\004', 'd', 'a', 't', 'a', '\022', '2', '\n', '\005', 't',
|
49
|
+
'r', 'a', 'c', 'e', '\030', '\007', ' ', '\003', '(', '\013', '2', '\034',
|
50
|
+
'.', 'g', 'r', 'p', 'c', '.', 'c', 'h', 'a', 'n', 'n', 'e',
|
51
|
+
'l', 'z', '.', 'v', '2', '.', 'T', 'r', 'a', 'c', 'e', 'E',
|
52
|
+
'v', 'e', 'n', 't', 'R', '\005', 't', 'r', 'a', 'c', 'e', '\"',
|
53
|
+
'\224', '\001', '\n', '\n', 'T', 'r', 'a', 'c', 'e', 'E', 'v', 'e',
|
54
|
+
'n', 't', '\022', ' ', '\n', '\013', 'd', 'e', 's', 'c', 'r', 'i',
|
55
|
+
'p', 't', 'i', 'o', 'n', '\030', '\001', ' ', '\001', '(', '\t', 'R',
|
56
|
+
'\013', 'd', 'e', 's', 'c', 'r', 'i', 'p', 't', 'i', 'o', 'n',
|
57
|
+
'\022', '8', '\n', '\t', 't', 'i', 'm', 'e', 's', 't', 'a', 'm',
|
58
|
+
'p', '\030', '\002', ' ', '\001', '(', '\013', '2', '\032', '.', 'g', 'o',
|
59
|
+
'o', 'g', 'l', 'e', '.', 'p', 'r', 'o', 't', 'o', 'b', 'u',
|
60
|
+
'f', '.', 'T', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', 'R',
|
61
|
+
'\t', 't', 'i', 'm', 'e', 's', 't', 'a', 'm', 'p', '\022', '*',
|
62
|
+
'\n', '\004', 'd', 'a', 't', 'a', '\030', '\003', ' ', '\003', '(', '\013',
|
63
|
+
'2', '\026', '.', 'g', 'r', 'p', 'c', '.', 'c', 'h', 'a', 'n',
|
64
|
+
'n', 'e', 'l', 'z', '.', 'v', '2', '.', 'D', 'a', 't', 'a',
|
65
|
+
'R', '\004', 'd', 'a', 't', 'a', 'b', '\006', 'p', 'r', 'o', 't',
|
66
|
+
'o', '3',
|
67
|
+
};
|
68
|
+
|
69
|
+
static _upb_DefPool_Init *deps[3] = {
|
70
|
+
&google_protobuf_any_proto_upbdefinit,
|
71
|
+
&google_protobuf_timestamp_proto_upbdefinit,
|
72
|
+
NULL,
|
73
|
+
};
|
74
|
+
|
75
|
+
_upb_DefPool_Init src_proto_grpc_channelz_v2_channelz_proto_upbdefinit = {
|
76
|
+
deps,
|
77
|
+
&src_proto_grpc_channelz_v2_channelz_proto_upb_file_layout,
|
78
|
+
"src/proto/grpc/channelz/v2/channelz.proto",
|
79
|
+
UPB_STRINGVIEW_INIT(descriptor, sizeof(descriptor)),
|
80
|
+
};
|
@@ -0,0 +1,47 @@
|
|
1
|
+
/* This file was generated by upb_generator from the input file:
|
2
|
+
*
|
3
|
+
* src/proto/grpc/channelz/v2/channelz.proto
|
4
|
+
*
|
5
|
+
* Do not edit -- your changes will be discarded when the file is
|
6
|
+
* regenerated.
|
7
|
+
* NO CHECKED-IN PROTOBUF GENCODE */
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
#ifndef SRC_PROTO_GRPC_CHANNELZ_V2_CHANNELZ_PROTO_UPB_H__UPBDEFS_H_
|
12
|
+
#define SRC_PROTO_GRPC_CHANNELZ_V2_CHANNELZ_PROTO_UPB_H__UPBDEFS_H_
|
13
|
+
|
14
|
+
#include "upb/reflection/def.h"
|
15
|
+
#include "upb/reflection/internal/def_pool.h"
|
16
|
+
|
17
|
+
#include "upb/port/def.inc"
|
18
|
+
|
19
|
+
#ifdef __cplusplus
|
20
|
+
extern "C" {
|
21
|
+
#endif
|
22
|
+
|
23
|
+
extern _upb_DefPool_Init src_proto_grpc_channelz_v2_channelz_proto_upbdefinit;
|
24
|
+
|
25
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_Data_getmsgdef(upb_DefPool *s) {
|
26
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_channelz_proto_upbdefinit);
|
27
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.Data");
|
28
|
+
}
|
29
|
+
|
30
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_Entity_getmsgdef(upb_DefPool *s) {
|
31
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_channelz_proto_upbdefinit);
|
32
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.Entity");
|
33
|
+
}
|
34
|
+
|
35
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_TraceEvent_getmsgdef(upb_DefPool *s) {
|
36
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_channelz_proto_upbdefinit);
|
37
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.TraceEvent");
|
38
|
+
}
|
39
|
+
|
40
|
+
|
41
|
+
#ifdef __cplusplus
|
42
|
+
} /* extern "C" */
|
43
|
+
#endif
|
44
|
+
|
45
|
+
#include "upb/port/undef.inc"
|
46
|
+
|
47
|
+
#endif /* SRC_PROTO_GRPC_CHANNELZ_V2_CHANNELZ_PROTO_UPB_H__UPBDEFS_H_ */
|
@@ -0,0 +1,129 @@
|
|
1
|
+
/* This file was generated by upb_generator from the input file:
|
2
|
+
*
|
3
|
+
* src/proto/grpc/channelz/v2/service.proto
|
4
|
+
*
|
5
|
+
* Do not edit -- your changes will be discarded when the file is
|
6
|
+
* regenerated.
|
7
|
+
* NO CHECKED-IN PROTOBUF GENCODE */
|
8
|
+
|
9
|
+
|
10
|
+
#include "upb/reflection/def.h"
|
11
|
+
#include "src/proto/grpc/channelz/v2/service.upbdefs.h"
|
12
|
+
#include "src/proto/grpc/channelz/v2/service.upb_minitable.h"
|
13
|
+
|
14
|
+
extern _upb_DefPool_Init src_proto_grpc_channelz_v2_channelz_proto_upbdefinit;
|
15
|
+
|
16
|
+
static const char descriptor[1193] = {
|
17
|
+
'\n', '(', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/',
|
18
|
+
'g', 'r', 'p', 'c', '/', 'c', 'h', 'a', 'n', 'n', 'e', 'l',
|
19
|
+
'z', '/', 'v', '2', '/', 's', 'e', 'r', 'v', 'i', 'c', 'e',
|
20
|
+
'.', 'p', 'r', 'o', 't', 'o', '\022', '\020', 'g', 'r', 'p', 'c',
|
21
|
+
'.', 'c', 'h', 'a', 'n', 'n', 'e', 'l', 'z', '.', 'v', '2',
|
22
|
+
'\032', ')', 's', 'r', 'c', '/', 'p', 'r', 'o', 't', 'o', '/',
|
23
|
+
'g', 'r', 'p', 'c', '/', 'c', 'h', 'a', 'n', 'n', 'e', 'l',
|
24
|
+
'z', '/', 'v', '2', '/', 'c', 'h', 'a', 'n', 'n', 'e', 'l',
|
25
|
+
'z', '.', 'p', 'r', 'o', 't', 'o', '\"', 'j', '\n', '\024', 'Q',
|
26
|
+
'u', 'e', 'r', 'y', 'E', 'n', 't', 'i', 't', 'i', 'e', 's',
|
27
|
+
'R', 'e', 'q', 'u', 'e', 's', 't', '\022', '\022', '\n', '\004', 'k',
|
28
|
+
'i', 'n', 'd', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\004', 'k',
|
29
|
+
'i', 'n', 'd', '\022', '\026', '\n', '\006', 'p', 'a', 'r', 'e', 'n',
|
30
|
+
't', '\030', '\002', ' ', '\001', '(', '\003', 'R', '\006', 'p', 'a', 'r',
|
31
|
+
'e', 'n', 't', '\022', '&', '\n', '\017', 's', 't', 'a', 'r', 't',
|
32
|
+
'_', 'e', 'n', 't', 'i', 't', 'y', '_', 'i', 'd', '\030', '\003',
|
33
|
+
' ', '\001', '(', '\003', 'R', '\r', 's', 't', 'a', 'r', 't', 'E',
|
34
|
+
'n', 't', 'i', 't', 'y', 'I', 'd', '\"', '_', '\n', '\025', 'Q',
|
35
|
+
'u', 'e', 'r', 'y', 'E', 'n', 't', 'i', 't', 'i', 'e', 's',
|
36
|
+
'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '\022', '4', '\n', '\010',
|
37
|
+
'e', 'n', 't', 'i', 't', 'i', 'e', 's', '\030', '\001', ' ', '\003',
|
38
|
+
'(', '\013', '2', '\030', '.', 'g', 'r', 'p', 'c', '.', 'c', 'h',
|
39
|
+
'a', 'n', 'n', 'e', 'l', 'z', '.', 'v', '2', '.', 'E', 'n',
|
40
|
+
't', 'i', 't', 'y', 'R', '\010', 'e', 'n', 't', 'i', 't', 'i',
|
41
|
+
'e', 's', '\022', '\020', '\n', '\003', 'e', 'n', 'd', '\030', '\002', ' ',
|
42
|
+
'\001', '(', '\010', 'R', '\003', 'e', 'n', 'd', '\"', '\"', '\n', '\020',
|
43
|
+
'G', 'e', 't', 'E', 'n', 't', 'i', 't', 'y', 'R', 'e', 'q',
|
44
|
+
'u', 'e', 's', 't', '\022', '\016', '\n', '\002', 'i', 'd', '\030', '\001',
|
45
|
+
' ', '\001', '(', '\003', 'R', '\002', 'i', 'd', '\"', 'E', '\n', '\021',
|
46
|
+
'G', 'e', 't', 'E', 'n', 't', 'i', 't', 'y', 'R', 'e', 's',
|
47
|
+
'p', 'o', 'n', 's', 'e', '\022', '0', '\n', '\006', 'e', 'n', 't',
|
48
|
+
'i', 't', 'y', '\030', '\001', ' ', '\001', '(', '\013', '2', '\030', '.',
|
49
|
+
'g', 'r', 'p', 'c', '.', 'c', 'h', 'a', 'n', 'n', 'e', 'l',
|
50
|
+
'z', '.', 'v', '2', '.', 'E', 'n', 't', 'i', 't', 'y', 'R',
|
51
|
+
'\006', 'e', 'n', 't', 'i', 't', 'y', '\"', '\345', '\002', '\n', '\021',
|
52
|
+
'Q', 'u', 'e', 'r', 'y', 'T', 'r', 'a', 'c', 'e', 'R', 'e',
|
53
|
+
'q', 'u', 'e', 's', 't', '\022', '\016', '\n', '\002', 'i', 'd', '\030',
|
54
|
+
'\001', ' ', '\001', '(', '\003', 'R', '\002', 'i', 'd', '\022', '\022', '\n',
|
55
|
+
'\004', 'n', 'a', 'm', 'e', '\030', '\002', ' ', '\001', '(', '\t', 'R',
|
56
|
+
'\004', 'n', 'a', 'm', 'e', '\022', 'A', '\n', '\004', 'a', 'r', 'g',
|
57
|
+
's', '\030', '\004', ' ', '\003', '(', '\013', '2', '-', '.', 'g', 'r',
|
58
|
+
'p', 'c', '.', 'c', 'h', 'a', 'n', 'n', 'e', 'l', 'z', '.',
|
59
|
+
'v', '2', '.', 'Q', 'u', 'e', 'r', 'y', 'T', 'r', 'a', 'c',
|
60
|
+
'e', 'R', 'e', 'q', 'u', 'e', 's', 't', '.', 'A', 'r', 'g',
|
61
|
+
's', 'E', 'n', 't', 'r', 'y', 'R', '\004', 'a', 'r', 'g', 's',
|
62
|
+
'\032', '}', '\n', '\r', 'Q', 'u', 'e', 'r', 'y', 'A', 'r', 'g',
|
63
|
+
'V', 'a', 'l', 'u', 'e', '\022', '\035', '\n', '\t', 'i', 'n', 't',
|
64
|
+
'_', 'v', 'a', 'l', 'u', 'e', '\030', '\001', ' ', '\001', '(', '\003',
|
65
|
+
'H', '\000', 'R', '\010', 'i', 'n', 't', 'V', 'a', 'l', 'u', 'e',
|
66
|
+
'\022', '#', '\n', '\014', 's', 't', 'r', 'i', 'n', 'g', '_', 'v',
|
67
|
+
'a', 'l', 'u', 'e', '\030', '\002', ' ', '\001', '(', '\t', 'H', '\000',
|
68
|
+
'R', '\013', 's', 't', 'r', 'i', 'n', 'g', 'V', 'a', 'l', 'u',
|
69
|
+
'e', '\022', '\037', '\n', '\n', 'b', 'o', 'o', 'l', '_', 'v', 'a',
|
70
|
+
'l', 'u', 'e', '\030', '\003', ' ', '\001', '(', '\010', 'H', '\000', 'R',
|
71
|
+
'\t', 'b', 'o', 'o', 'l', 'V', 'a', 'l', 'u', 'e', 'B', '\007',
|
72
|
+
'\n', '\005', 'v', 'a', 'l', 'u', 'e', '\032', 'j', '\n', '\t', 'A',
|
73
|
+
'r', 'g', 's', 'E', 'n', 't', 'r', 'y', '\022', '\020', '\n', '\003',
|
74
|
+
'k', 'e', 'y', '\030', '\001', ' ', '\001', '(', '\t', 'R', '\003', 'k',
|
75
|
+
'e', 'y', '\022', 'G', '\n', '\005', 'v', 'a', 'l', 'u', 'e', '\030',
|
76
|
+
'\002', ' ', '\001', '(', '\013', '2', '1', '.', 'g', 'r', 'p', 'c',
|
77
|
+
'.', 'c', 'h', 'a', 'n', 'n', 'e', 'l', 'z', '.', 'v', '2',
|
78
|
+
'.', 'Q', 'u', 'e', 'r', 'y', 'T', 'r', 'a', 'c', 'e', 'R',
|
79
|
+
'e', 'q', 'u', 'e', 's', 't', '.', 'Q', 'u', 'e', 'r', 'y',
|
80
|
+
'A', 'r', 'g', 'V', 'a', 'l', 'u', 'e', 'R', '\005', 'v', 'a',
|
81
|
+
'l', 'u', 'e', ':', '\002', '8', '\001', '\"', 'x', '\n', '\022', 'Q',
|
82
|
+
'u', 'e', 'r', 'y', 'T', 'r', 'a', 'c', 'e', 'R', 'e', 's',
|
83
|
+
'p', 'o', 'n', 's', 'e', '\022', '4', '\n', '\006', 'e', 'v', 'e',
|
84
|
+
'n', 't', 's', '\030', '\001', ' ', '\003', '(', '\013', '2', '\034', '.',
|
85
|
+
'g', 'r', 'p', 'c', '.', 'c', 'h', 'a', 'n', 'n', 'e', 'l',
|
86
|
+
'z', '.', 'v', '2', '.', 'T', 'r', 'a', 'c', 'e', 'E', 'v',
|
87
|
+
'e', 'n', 't', 'R', '\006', 'e', 'v', 'e', 'n', 't', 's', '\022',
|
88
|
+
',', '\n', '\022', 'n', 'u', 'm', '_', 'e', 'v', 'e', 'n', 't',
|
89
|
+
's', '_', 'm', 'a', 't', 'c', 'h', 'e', 'd', '\030', '\002', ' ',
|
90
|
+
'\001', '(', '\003', 'R', '\020', 'n', 'u', 'm', 'E', 'v', 'e', 'n',
|
91
|
+
't', 's', 'M', 'a', 't', 'c', 'h', 'e', 'd', '2', '\235', '\002',
|
92
|
+
'\n', '\010', 'C', 'h', 'a', 'n', 'n', 'e', 'l', 'z', '\022', '`',
|
93
|
+
'\n', '\r', 'Q', 'u', 'e', 'r', 'y', 'E', 'n', 't', 'i', 't',
|
94
|
+
'i', 'e', 's', '\022', '&', '.', 'g', 'r', 'p', 'c', '.', 'c',
|
95
|
+
'h', 'a', 'n', 'n', 'e', 'l', 'z', '.', 'v', '2', '.', 'Q',
|
96
|
+
'u', 'e', 'r', 'y', 'E', 'n', 't', 'i', 't', 'i', 'e', 's',
|
97
|
+
'R', 'e', 'q', 'u', 'e', 's', 't', '\032', '\'', '.', 'g', 'r',
|
98
|
+
'p', 'c', '.', 'c', 'h', 'a', 'n', 'n', 'e', 'l', 'z', '.',
|
99
|
+
'v', '2', '.', 'Q', 'u', 'e', 'r', 'y', 'E', 'n', 't', 'i',
|
100
|
+
't', 'i', 'e', 's', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e',
|
101
|
+
'\022', 'T', '\n', '\t', 'G', 'e', 't', 'E', 'n', 't', 'i', 't',
|
102
|
+
'y', '\022', '\"', '.', 'g', 'r', 'p', 'c', '.', 'c', 'h', 'a',
|
103
|
+
'n', 'n', 'e', 'l', 'z', '.', 'v', '2', '.', 'G', 'e', 't',
|
104
|
+
'E', 'n', 't', 'i', 't', 'y', 'R', 'e', 'q', 'u', 'e', 's',
|
105
|
+
't', '\032', '#', '.', 'g', 'r', 'p', 'c', '.', 'c', 'h', 'a',
|
106
|
+
'n', 'n', 'e', 'l', 'z', '.', 'v', '2', '.', 'G', 'e', 't',
|
107
|
+
'E', 'n', 't', 'i', 't', 'y', 'R', 'e', 's', 'p', 'o', 'n',
|
108
|
+
's', 'e', '\022', 'Y', '\n', '\n', 'Q', 'u', 'e', 'r', 'y', 'T',
|
109
|
+
'r', 'a', 'c', 'e', '\022', '#', '.', 'g', 'r', 'p', 'c', '.',
|
110
|
+
'c', 'h', 'a', 'n', 'n', 'e', 'l', 'z', '.', 'v', '2', '.',
|
111
|
+
'Q', 'u', 'e', 'r', 'y', 'T', 'r', 'a', 'c', 'e', 'R', 'e',
|
112
|
+
'q', 'u', 'e', 's', 't', '\032', '$', '.', 'g', 'r', 'p', 'c',
|
113
|
+
'.', 'c', 'h', 'a', 'n', 'n', 'e', 'l', 'z', '.', 'v', '2',
|
114
|
+
'.', 'Q', 'u', 'e', 'r', 'y', 'T', 'r', 'a', 'c', 'e', 'R',
|
115
|
+
'e', 's', 'p', 'o', 'n', 's', 'e', '0', '\001', 'b', '\006', 'p',
|
116
|
+
'r', 'o', 't', 'o', '3',
|
117
|
+
};
|
118
|
+
|
119
|
+
static _upb_DefPool_Init *deps[2] = {
|
120
|
+
&src_proto_grpc_channelz_v2_channelz_proto_upbdefinit,
|
121
|
+
NULL,
|
122
|
+
};
|
123
|
+
|
124
|
+
_upb_DefPool_Init src_proto_grpc_channelz_v2_service_proto_upbdefinit = {
|
125
|
+
deps,
|
126
|
+
&src_proto_grpc_channelz_v2_service_proto_upb_file_layout,
|
127
|
+
"src/proto/grpc/channelz/v2/service.proto",
|
128
|
+
UPB_STRINGVIEW_INIT(descriptor, sizeof(descriptor)),
|
129
|
+
};
|
@@ -0,0 +1,72 @@
|
|
1
|
+
/* This file was generated by upb_generator from the input file:
|
2
|
+
*
|
3
|
+
* src/proto/grpc/channelz/v2/service.proto
|
4
|
+
*
|
5
|
+
* Do not edit -- your changes will be discarded when the file is
|
6
|
+
* regenerated.
|
7
|
+
* NO CHECKED-IN PROTOBUF GENCODE */
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
#ifndef SRC_PROTO_GRPC_CHANNELZ_V2_SERVICE_PROTO_UPB_H__UPBDEFS_H_
|
12
|
+
#define SRC_PROTO_GRPC_CHANNELZ_V2_SERVICE_PROTO_UPB_H__UPBDEFS_H_
|
13
|
+
|
14
|
+
#include "upb/reflection/def.h"
|
15
|
+
#include "upb/reflection/internal/def_pool.h"
|
16
|
+
|
17
|
+
#include "upb/port/def.inc"
|
18
|
+
|
19
|
+
#ifdef __cplusplus
|
20
|
+
extern "C" {
|
21
|
+
#endif
|
22
|
+
|
23
|
+
extern _upb_DefPool_Init src_proto_grpc_channelz_v2_service_proto_upbdefinit;
|
24
|
+
|
25
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_QueryEntitiesRequest_getmsgdef(upb_DefPool *s) {
|
26
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_service_proto_upbdefinit);
|
27
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.QueryEntitiesRequest");
|
28
|
+
}
|
29
|
+
|
30
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_QueryEntitiesResponse_getmsgdef(upb_DefPool *s) {
|
31
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_service_proto_upbdefinit);
|
32
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.QueryEntitiesResponse");
|
33
|
+
}
|
34
|
+
|
35
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_GetEntityRequest_getmsgdef(upb_DefPool *s) {
|
36
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_service_proto_upbdefinit);
|
37
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.GetEntityRequest");
|
38
|
+
}
|
39
|
+
|
40
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_GetEntityResponse_getmsgdef(upb_DefPool *s) {
|
41
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_service_proto_upbdefinit);
|
42
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.GetEntityResponse");
|
43
|
+
}
|
44
|
+
|
45
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_QueryTraceRequest_getmsgdef(upb_DefPool *s) {
|
46
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_service_proto_upbdefinit);
|
47
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.QueryTraceRequest");
|
48
|
+
}
|
49
|
+
|
50
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_QueryTraceRequest_QueryArgValue_getmsgdef(upb_DefPool *s) {
|
51
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_service_proto_upbdefinit);
|
52
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.QueryTraceRequest.QueryArgValue");
|
53
|
+
}
|
54
|
+
|
55
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_QueryTraceRequest_ArgsEntry_getmsgdef(upb_DefPool *s) {
|
56
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_service_proto_upbdefinit);
|
57
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.QueryTraceRequest.ArgsEntry");
|
58
|
+
}
|
59
|
+
|
60
|
+
UPB_INLINE const upb_MessageDef *grpc_channelz_v2_QueryTraceResponse_getmsgdef(upb_DefPool *s) {
|
61
|
+
_upb_DefPool_LoadDefInit(s, &src_proto_grpc_channelz_v2_service_proto_upbdefinit);
|
62
|
+
return upb_DefPool_FindMessageByName(s, "grpc.channelz.v2.QueryTraceResponse");
|
63
|
+
}
|
64
|
+
|
65
|
+
|
66
|
+
#ifdef __cplusplus
|
67
|
+
} /* extern "C" */
|
68
|
+
#endif
|
69
|
+
|
70
|
+
#include "upb/port/undef.inc"
|
71
|
+
|
72
|
+
#endif /* SRC_PROTO_GRPC_CHANNELZ_V2_SERVICE_PROTO_UPB_H__UPBDEFS_H_ */
|
@@ -30,7 +30,6 @@
|
|
30
30
|
#include <memory>
|
31
31
|
#include <utility>
|
32
32
|
|
33
|
-
#include "absl/log/check.h"
|
34
33
|
#include "absl/log/log.h"
|
35
34
|
#include "absl/status/status.h"
|
36
35
|
#include "absl/status/statusor.h"
|
@@ -56,6 +55,7 @@
|
|
56
55
|
#include "src/core/lib/transport/transport.h"
|
57
56
|
#include "src/core/transport/auth_context.h"
|
58
57
|
#include "src/core/util/debug_location.h"
|
58
|
+
#include "src/core/util/grpc_check.h"
|
59
59
|
#include "src/core/util/ref_counted_ptr.h"
|
60
60
|
#include "src/core/util/status_helper.h"
|
61
61
|
|
@@ -199,7 +199,7 @@ ServerAuthFilter::ServerAuthFilter(
|
|
199
199
|
absl::StatusOr<std::unique_ptr<ServerAuthFilter>> ServerAuthFilter::Create(
|
200
200
|
const ChannelArgs& args, ChannelFilter::Args) {
|
201
201
|
auto auth_context = args.GetObjectRef<grpc_auth_context>();
|
202
|
-
|
202
|
+
GRPC_CHECK(auth_context != nullptr);
|
203
203
|
auto creds = args.GetObjectRef<grpc_server_credentials>();
|
204
204
|
return std::make_unique<ServerAuthFilter>(std::move(creds),
|
205
205
|
std::move(auth_context));
|
@@ -29,7 +29,6 @@
|
|
29
29
|
#include <utility>
|
30
30
|
|
31
31
|
#include "absl/functional/any_invocable.h"
|
32
|
-
#include "absl/log/check.h"
|
33
32
|
#include "absl/log/log.h"
|
34
33
|
#include "absl/status/status.h"
|
35
34
|
#include "absl/status/statusor.h"
|
@@ -40,6 +39,7 @@
|
|
40
39
|
#include "src/core/lib/iomgr/event_engine_shims/endpoint.h"
|
41
40
|
#include "src/core/lib/iomgr/exec_ctx.h"
|
42
41
|
#include "src/core/util/debug_location.h"
|
42
|
+
#include "src/core/util/grpc_check.h"
|
43
43
|
#include "src/core/util/status_helper.h"
|
44
44
|
#include "src/core/util/time.h"
|
45
45
|
|
@@ -95,7 +95,7 @@ void HandshakeManager::DoHandshake(
|
|
95
95
|
// last ref to this object.
|
96
96
|
auto self = Ref();
|
97
97
|
MutexLock lock(&mu_);
|
98
|
-
|
98
|
+
GRPC_CHECK_EQ(index_, 0u);
|
99
99
|
on_handshake_done_ = std::move(on_handshake_done);
|
100
100
|
// Construct handshaker args. These will be passed through all
|
101
101
|
// handshakers and eventually be freed by the on_handshake_done callback.
|
@@ -151,7 +151,7 @@ void HandshakeManager::CallNextHandshakerLocked(absl::Status error) {
|
|
151
151
|
<< "CallNextHandshakerLocked: error=" << error
|
152
152
|
<< " shutdown=" << is_shutdown_ << " index=" << index_
|
153
153
|
<< ", args=" << HandshakerArgsString(&args_);
|
154
|
-
|
154
|
+
GRPC_CHECK(index_ <= handshakers_.size());
|
155
155
|
// If we got an error or we've been shut down or we're exiting early or
|
156
156
|
// we've finished the last handshaker, invoke the on_handshake_done
|
157
157
|
// callback.
|
@@ -29,7 +29,6 @@
|
|
29
29
|
#include <string>
|
30
30
|
#include <utility>
|
31
31
|
|
32
|
-
#include "absl/log/check.h"
|
33
32
|
#include "absl/log/log.h"
|
34
33
|
#include "absl/status/status.h"
|
35
34
|
#include "absl/status/statusor.h"
|
@@ -47,6 +46,7 @@
|
|
47
46
|
#include "src/core/lib/channel/channel_args.h"
|
48
47
|
#include "src/core/lib/iomgr/resolve_address.h"
|
49
48
|
#include "src/core/util/env.h"
|
49
|
+
#include "src/core/util/grpc_check.h"
|
50
50
|
#include "src/core/util/host_port.h"
|
51
51
|
#include "src/core/util/memory.h"
|
52
52
|
#include "src/core/util/string.h"
|
@@ -105,7 +105,7 @@ bool AddressIncluded(const std::optional<grpc_resolved_address>& target_address,
|
|
105
105
|
///
|
106
106
|
std::optional<std::string> GetHttpProxyServer(
|
107
107
|
const ChannelArgs& args, std::optional<std::string>* user_cred) {
|
108
|
-
|
108
|
+
GRPC_CHECK_NE(user_cred, nullptr);
|
109
109
|
absl::StatusOr<URI> uri;
|
110
110
|
// We check the following places to determine the HTTP proxy to use, stopping
|
111
111
|
// at the first one that is set:
|
@@ -33,7 +33,6 @@
|
|
33
33
|
#include <utility>
|
34
34
|
|
35
35
|
#include "absl/base/thread_annotations.h"
|
36
|
-
#include "absl/log/check.h"
|
37
36
|
#include "absl/log/log.h"
|
38
37
|
#include "absl/status/status.h"
|
39
38
|
#include "absl/strings/string_view.h"
|
@@ -53,6 +52,7 @@
|
|
53
52
|
#include "src/core/tsi/transport_security_grpc.h"
|
54
53
|
#include "src/core/tsi/transport_security_interface.h"
|
55
54
|
#include "src/core/util/debug_location.h"
|
55
|
+
#include "src/core/util/grpc_check.h"
|
56
56
|
#include "src/core/util/orphanable.h"
|
57
57
|
#include "src/core/util/ref_counted_ptr.h"
|
58
58
|
#include "src/core/util/string.h"
|
@@ -367,7 +367,7 @@ static void endpoint_read(grpc_endpoint* secure_ep, grpc_slice_buffer* slices,
|
|
367
367
|
SECURE_ENDPOINT_REF(ep, "read");
|
368
368
|
if (ep->leftover_bytes.count) {
|
369
369
|
grpc_slice_buffer_swap(&ep->leftover_bytes, &ep->source_buffer);
|
370
|
-
|
370
|
+
GRPC_CHECK_EQ(ep->leftover_bytes.count, 0u);
|
371
371
|
on_read(ep, absl::OkStatus());
|
372
372
|
return;
|
373
373
|
}
|
@@ -36,7 +36,6 @@
|
|
36
36
|
|
37
37
|
#include "absl/base/thread_annotations.h"
|
38
38
|
#include "absl/functional/any_invocable.h"
|
39
|
-
#include "absl/log/check.h"
|
40
39
|
#include "absl/log/log.h"
|
41
40
|
#include "absl/status/status.h"
|
42
41
|
#include "absl/strings/str_cat.h"
|
@@ -56,6 +55,7 @@
|
|
56
55
|
#include "src/core/lib/slice/slice_string_helpers.h"
|
57
56
|
#include "src/core/tsi/transport_security_grpc.h"
|
58
57
|
#include "src/core/tsi/transport_security_interface.h"
|
58
|
+
#include "src/core/util/grpc_check.h"
|
59
59
|
#include "src/core/util/latent_see.h"
|
60
60
|
#include "src/core/util/orphanable.h"
|
61
61
|
#include "src/core/util/ref_counted.h"
|
@@ -98,6 +98,7 @@ class FrameProtector : public RefCounted<FrameProtector> {
|
|
98
98
|
write_staging_buffer_ =
|
99
99
|
memory_owner_.MakeSlice(MemoryRequest(STAGING_BUFFER_SIZE));
|
100
100
|
}
|
101
|
+
is_zero_copy_protector_ = zero_copy_protector_ != nullptr;
|
101
102
|
}
|
102
103
|
|
103
104
|
~FrameProtector() override {
|
@@ -180,6 +181,8 @@ class FrameProtector : public RefCounted<FrameProtector> {
|
|
180
181
|
read_buffer_ = nullptr;
|
181
182
|
}
|
182
183
|
|
184
|
+
bool IsZeroCopyProtector() const { return is_zero_copy_protector_; }
|
185
|
+
|
183
186
|
absl::Status Unprotect(absl::Status read_status)
|
184
187
|
ABSL_EXCLUSIVE_LOCKS_REQUIRED(read_mu_) {
|
185
188
|
if (shutdown_) {
|
@@ -451,6 +454,7 @@ class FrameProtector : public RefCounted<FrameProtector> {
|
|
451
454
|
int min_progress_size_ = 1;
|
452
455
|
SliceBuffer protector_staging_buffer_;
|
453
456
|
bool shutdown_ = false;
|
457
|
+
bool is_zero_copy_protector_ = false;
|
454
458
|
};
|
455
459
|
} // namespace
|
456
460
|
} // namespace grpc_core
|
@@ -597,15 +601,17 @@ class PipelinedSecureEndpoint final : public EventEngine::Endpoint {
|
|
597
601
|
// called again once that read completes.
|
598
602
|
if (unprotecting_.value()) {
|
599
603
|
lock.Release();
|
600
|
-
event_engine_->Run(
|
601
|
-
|
604
|
+
event_engine_->Run([impl = Ref()]() mutable {
|
605
|
+
grpc_core::ExecCtx exec_ctx;
|
606
|
+
ContinueUnprotect(std::move(impl));
|
607
|
+
});
|
602
608
|
}
|
603
609
|
return true;
|
604
610
|
}
|
605
611
|
|
606
612
|
// If we're already unprotecting on another thread, we need to store the
|
607
613
|
// buffer until we have some unprotected bytes to give it.
|
608
|
-
|
614
|
+
GRPC_CHECK(on_read_ == nullptr);
|
609
615
|
pending_output_buffer_ = buffer;
|
610
616
|
on_read_ = std::move(on_read);
|
611
617
|
last_read_args_ = std::move(args);
|
@@ -672,8 +678,8 @@ class PipelinedSecureEndpoint final : public EventEngine::Endpoint {
|
|
672
678
|
void StartFirstRead() ABSL_LOCKS_EXCLUDED(read_queue_mu_) {
|
673
679
|
grpc_core::ReleasableMutexLock lock(&read_queue_mu_);
|
674
680
|
unprotecting_ = true;
|
675
|
-
|
676
|
-
|
681
|
+
GRPC_CHECK(protected_data_buffer_ == nullptr);
|
682
|
+
GRPC_CHECK(unprotected_data_buffer_ == nullptr);
|
677
683
|
// First, check if there are any leftover bytes to unprotect. If there
|
678
684
|
// are, we can immediately start unprotecting those bytes.
|
679
685
|
if (frame_protector_.MaybeReadLeftoverBytes(
|
@@ -690,6 +696,7 @@ class PipelinedSecureEndpoint final : public EventEngine::Endpoint {
|
|
690
696
|
args.set_read_hint_bytes(frame_protector_.min_progress_size());
|
691
697
|
lock.Release();
|
692
698
|
event_engine_->Run([impl = Ref(), args = std::move(args)]() mutable {
|
699
|
+
grpc_core::ExecCtx exec_ctx;
|
693
700
|
// If the endpoint closed whilst waiting for this callback, then
|
694
701
|
// fail out the read and we're done.
|
695
702
|
grpc_core::ReleasableMutexLock lock(impl->frame_protector_.read_mu());
|
@@ -701,6 +708,7 @@ class PipelinedSecureEndpoint final : public EventEngine::Endpoint {
|
|
701
708
|
}
|
702
709
|
const bool read_finished_immediately = impl->wrapped_ep_->Read(
|
703
710
|
[impl = impl->Ref()](absl::Status status) mutable {
|
711
|
+
grpc_core::ExecCtx exec_ctx;
|
704
712
|
FinishFirstRead(std::move(impl), status);
|
705
713
|
},
|
706
714
|
impl->staging_protected_data_buffer_.get(), std::move(args));
|
@@ -803,20 +811,34 @@ class PipelinedSecureEndpoint final : public EventEngine::Endpoint {
|
|
803
811
|
impl->frame_protector_.TraceOp("data",
|
804
812
|
source_buffer->c_slice_buffer());
|
805
813
|
args = std::move(impl->last_read_args_);
|
806
|
-
|
814
|
+
if (impl->frame_protector_.IsZeroCopyProtector()) {
|
815
|
+
// We currently only track min progress size for zero copy
|
816
|
+
// protectors. Once we add this for non-zero copy protectors, we
|
817
|
+
// should remove the if condition.
|
818
|
+
// Since we start unprotecting after the first read, the min
|
819
|
+
// progress size does not account for the bytes we have already read
|
820
|
+
// in the previous read, so we need to subtract them here.
|
821
|
+
args.set_read_hint_bytes(
|
822
|
+
std::max<size_t>(1, impl->frame_protector_.min_progress_size() -
|
823
|
+
source_buffer->Length()));
|
824
|
+
} else if (args.read_hint_bytes() > 0) {
|
825
|
+
args.set_read_hint_bytes(std::max<size_t>(
|
826
|
+
1, args.read_hint_bytes() - source_buffer->Length()));
|
827
|
+
}
|
807
828
|
}
|
808
829
|
|
809
830
|
// Kick off the next read in another thread while we unprotect in this
|
810
831
|
// thread.
|
811
832
|
impl->event_engine_->Run(
|
812
833
|
[impl = impl->Ref(), args = std::move(args)]() mutable {
|
834
|
+
grpc_core::ExecCtx exec_ctx;
|
813
835
|
StartAsyncRead(std::move(impl), std::move(args));
|
814
836
|
});
|
815
837
|
|
816
838
|
{
|
817
839
|
grpc_core::ReleasableMutexLock lock(impl->frame_protector_.read_mu());
|
818
840
|
// Unprotect the bytes.
|
819
|
-
|
841
|
+
GRPC_CHECK(read_buffer == nullptr);
|
820
842
|
impl->frame_protector_.SetSourceBuffer(std::move(source_buffer));
|
821
843
|
read_buffer = std::make_unique<SliceBuffer>();
|
822
844
|
impl->frame_protector_.BeginRead(read_buffer->c_slice_buffer());
|
@@ -864,6 +886,7 @@ class PipelinedSecureEndpoint final : public EventEngine::Endpoint {
|
|
864
886
|
}
|
865
887
|
const bool read_finished_immediately = impl->wrapped_ep_->Read(
|
866
888
|
[impl = impl->Ref()](absl::Status status) mutable {
|
889
|
+
grpc_core::ExecCtx exec_ctx;
|
867
890
|
FinishAsyncRead(std::move(impl), status);
|
868
891
|
},
|
869
892
|
impl->staging_protected_data_buffer_.get(), std::move(args));
|