grpc 1.81.0 → 1.82.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 +12 -9
- data/include/grpc/grpc.h +6 -7
- data/include/grpc/impl/channel_arg_names.h +3 -1
- data/src/core/call/call_filters.h +2 -2
- data/src/core/call/client_call.cc +1 -1
- data/src/core/call/interception_chain.h +6 -9
- data/src/core/call/metadata.h +1 -1
- data/src/core/call/metadata_batch.cc +1 -1
- data/src/core/call/metadata_batch.h +17 -1
- data/src/core/call/parsed_metadata.h +7 -2
- data/src/core/call/server_call.cc +4 -2
- data/src/core/call/server_call.h +9 -2
- data/src/core/call/status_util.cc +0 -4
- data/src/core/call/status_util.h +0 -3
- data/src/core/channelz/channel_trace.cc +3 -1
- data/src/core/client_channel/backup_poller.cc +1 -1
- data/src/core/client_channel/client_channel.cc +6 -14
- data/src/core/client_channel/client_channel.h +2 -2
- data/src/core/client_channel/client_channel_filter.cc +8 -17
- data/src/core/client_channel/client_channel_filter.h +2 -2
- data/src/core/client_channel/client_channel_plugin.cc +1 -1
- data/src/core/client_channel/config_selector.h +2 -7
- data/src/core/client_channel/dynamic_filters.cc +4 -7
- data/src/core/client_channel/dynamic_filters.h +1 -3
- data/src/core/client_channel/retry_filter.cc +2 -25
- data/src/core/client_channel/retry_filter.h +3 -7
- data/src/core/client_channel/retry_filter_legacy_call_data.cc +1 -1
- data/src/core/client_channel/retry_filter_legacy_call_data.h +2 -2
- data/src/core/client_channel/retry_interceptor.cc +7 -35
- data/src/core/client_channel/retry_interceptor.h +11 -14
- data/src/core/client_channel/retry_service_config.cc +0 -2
- data/src/core/client_channel/retry_service_config.h +0 -2
- data/src/core/client_channel/retry_throttle.cc +19 -7
- data/src/core/client_channel/retry_throttle.h +24 -7
- data/src/core/client_channel/subchannel.cc +1 -1
- data/src/core/credentials/call/external/external_account_credentials.cc +125 -12
- data/src/core/credentials/call/external/external_account_credentials.h +6 -1
- data/src/core/credentials/call/jwt/jwt_credentials.cc +11 -1
- data/src/core/credentials/call/jwt/jwt_credentials.h +3 -0
- data/src/core/credentials/call/oauth2/oauth2_credentials.cc +64 -11
- data/src/core/credentials/call/oauth2/oauth2_credentials.h +0 -1
- data/src/core/credentials/call/regional_access_boundary_fetcher.cc +411 -0
- data/src/core/credentials/call/regional_access_boundary_fetcher.h +158 -0
- data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.cc +1 -1
- data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.h +7 -1
- data/src/core/credentials/transport/insecure/insecure_security_connector.h +1 -1
- data/src/core/credentials/transport/local/local_security_connector.cc +1 -1
- data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +6 -0
- data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +28 -66
- data/src/core/ext/filters/fault_injection/fault_injection_filter.h +0 -8
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +24 -58
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +24 -19
- data/src/core/ext/filters/message_size/message_size_filter.cc +1 -81
- data/src/core/ext/filters/message_size/message_size_filter.h +1 -50
- data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +13 -56
- data/src/core/ext/filters/stateful_session/stateful_session_filter.h +0 -14
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +1 -1
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +175 -51
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +10 -1
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +73 -6
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +1 -0
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/flow_control.h +11 -0
- data/src/core/ext/transport/chttp2/transport/flow_control_manager.h +2 -4
- data/src/core/ext/transport/chttp2/transport/frame.cc +63 -13
- data/src/core/ext/transport/chttp2/transport/frame.h +45 -10
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -1
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +11 -3
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -1
- data/src/core/ext/transport/chttp2/transport/frame_settings.cc +4 -1
- data/src/core/ext/transport/chttp2/transport/header_assembler.h +54 -22
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +53 -5
- data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +22 -0
- data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +20 -0
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +33 -1
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +4 -1
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +118 -157
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +6 -13
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.cc +2187 -0
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.h +748 -0
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +19 -4
- data/src/core/ext/transport/chttp2/transport/http2_settings_manager.h +0 -2
- data/src/core/ext/transport/chttp2/transport/http2_settings_promises.h +50 -17
- data/src/core/ext/transport/chttp2/transport/http2_transport.cc +13 -15
- data/src/core/ext/transport/chttp2/transport/http2_transport.h +16 -48
- data/src/core/ext/transport/chttp2/transport/internal.h +14 -0
- data/src/core/ext/transport/chttp2/transport/message_assembler.h +1 -2
- data/src/core/ext/transport/chttp2/transport/parsing.cc +82 -24
- data/src/core/ext/transport/chttp2/transport/read_context.h +452 -0
- data/src/core/ext/transport/chttp2/transport/security_frame.h +12 -3
- data/src/core/ext/transport/chttp2/transport/stream.h +25 -26
- data/src/core/ext/transport/chttp2/transport/stream_data_queue.h +6 -4
- data/src/core/ext/transport/chttp2/transport/write_cycle.h +9 -1
- data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +16 -2
- data/src/core/ext/upb-gen/cel/expr/checked.upb.h +621 -432
- data/src/core/ext/upb-gen/cel/expr/checked.upb_minitable.c +264 -166
- data/src/core/ext/upb-gen/cel/expr/checked.upb_minitable.h +0 -13
- data/src/core/ext/upb-gen/cel/expr/syntax.upb.h +708 -497
- data/src/core/ext/upb-gen/cel/expr/syntax.upb_minitable.c +294 -176
- data/src/core/ext/upb-gen/cel/expr/syntax.upb_minitable.h +0 -15
- data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +262 -181
- data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +84 -58
- data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +254 -190
- data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +107 -53
- data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +271 -190
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +88 -64
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +1035 -730
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +384 -260
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.h +0 -19
- data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +87 -56
- data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +26 -16
- data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +105 -71
- data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +30 -22
- data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +31 -29
- data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +19 -7
- data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +25 -23
- data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +25 -23
- data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +201 -165
- data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +79 -31
- data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +29 -26
- data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +46 -29
- data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +37 -19
- data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.h +4 -4
- data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +34 -27
- data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +34 -13
- data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +617 -452
- data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +221 -163
- data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.h +0 -16
- data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +1339 -970
- data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +484 -324
- data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.h +0 -23
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +181 -135
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +59 -43
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +1353 -1028
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +535 -361
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.h +0 -25
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +37 -33
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +19 -13
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +234 -196
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +77 -57
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +695 -502
- data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +246 -186
- data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.h +0 -15
- data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb.h +140 -116
- data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb_minitable.c +53 -43
- data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +363 -269
- data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +131 -89
- data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +35 -31
- data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +1073 -769
- data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +515 -293
- data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.h +0 -30
- data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb.h +25 -23
- data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +375 -267
- data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +142 -86
- data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.h +0 -7
- data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +32 -27
- data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +29 -26
- data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +87 -56
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +26 -16
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +634 -468
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +255 -161
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.h +0 -14
- data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +672 -474
- data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +228 -130
- data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.h +0 -9
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb.h +56 -40
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +34 -29
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +811 -635
- data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +347 -221
- data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.h +0 -16
- data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +174 -118
- data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +62 -38
- data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +78 -57
- data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +28 -18
- data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb.h +37 -33
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.c +22 -14
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +159 -119
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +47 -35
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +101 -76
- data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +41 -23
- data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +35 -31
- data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +189 -127
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +79 -49
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +378 -283
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +156 -98
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +354 -255
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +125 -69
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.h +0 -6
- data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +611 -451
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +159 -119
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +0 -11
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +468 -321
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +157 -99
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.h +0 -6
- data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +146 -119
- data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +55 -35
- data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +61 -51
- data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +16 -16
- data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +43 -39
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +25 -13
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +341 -247
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +130 -84
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +452 -313
- data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +144 -100
- data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.h +0 -10
- data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +666 -493
- data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +251 -181
- data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.h +0 -12
- data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +327 -197
- data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +92 -48
- data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +3583 -2532
- data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +1340 -816
- data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +0 -60
- data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +111 -82
- data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +48 -28
- data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +548 -410
- data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +214 -148
- data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.h +0 -12
- data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +59 -50
- data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +30 -20
- data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +29 -26
- data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +60 -49
- data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +28 -20
- data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +50 -36
- data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +82 -63
- data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +27 -19
- data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +70 -58
- data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +32 -22
- data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb.h +2 -5
- data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.c +1 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +73 -62
- data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +39 -25
- data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +49 -45
- data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +33 -13
- data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +771 -588
- data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +383 -185
- data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.h +0 -16
- data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +66 -47
- data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +31 -17
- data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/common/matching/v3/extension_matcher.upb.h +69 -58
- data/src/core/ext/upb-gen/envoy/extensions/common/matching/v3/extension_matcher.upb_minitable.c +27 -23
- data/src/core/ext/upb-gen/envoy/extensions/common/matching/v3/extension_matcher.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +151 -119
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +45 -39
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/matcher/action/v3/skip_action.upb.h +19 -17
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/matcher/action/v3/skip_action.upb_minitable.c +1 -3
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/matcher/action/v3/skip_action.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/composite/v3/composite.upb.h +144 -109
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/composite/v3/composite.upb_minitable.c +46 -38
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/composite/v3/composite.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +184 -139
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +65 -35
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb.h +129 -106
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.c +69 -41
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +83 -71
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +40 -26
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +148 -101
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +45 -27
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +62 -51
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +35 -21
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1362 -1024
- data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +508 -336
- data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +0 -22
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb.h +21 -19
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb_minitable.c +13 -7
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb.h +35 -31
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +94 -74
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +35 -23
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +231 -179
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +88 -66
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +0 -6
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +21 -19
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +13 -7
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +63 -56
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +31 -19
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +2 -5
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.c +1 -1
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +538 -364
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +157 -95
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +150 -110
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +69 -49
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +517 -389
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +182 -116
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.h +0 -7
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +84 -62
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +30 -22
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +340 -256
- data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +92 -82
- data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +19 -17
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +1 -3
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +857 -566
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +288 -182
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.h +0 -15
- data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +105 -72
- data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +36 -22
- data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +312 -226
- data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +132 -78
- data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +82 -61
- data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +35 -19
- data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +123 -89
- data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +25 -25
- data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb.h +48 -33
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +42 -36
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +19 -13
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +101 -79
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +61 -31
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +83 -60
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +37 -19
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +56 -40
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +34 -29
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +32 -27
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +88 -71
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +48 -30
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +37 -30
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +1 -5
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +95 -71
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +36 -22
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +79 -56
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +26 -18
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +164 -124
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +54 -40
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +200 -147
- data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +47 -41
- data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.h +0 -7
- data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +160 -130
- data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +89 -47
- data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +78 -62
- data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +26 -20
- data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/type/v3/http.upb.h +2 -5
- data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.c +1 -1
- data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +21 -19
- data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +13 -7
- data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +43 -36
- data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +22 -12
- data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +67 -55
- data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +36 -18
- data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +62 -51
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +33 -19
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb.h +2 -5
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.c +1 -1
- data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +25 -23
- data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +37 -33
- data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +19 -13
- data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/api/annotations.upb.h +15 -13
- data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +22 -7
- data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.h +1 -1
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +619 -430
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +260 -168
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.h +0 -13
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +734 -518
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +312 -182
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +0 -16
- data/src/core/ext/upb-gen/google/api/http.upb.h +146 -105
- data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +65 -29
- data/src/core/ext/upb-gen/google/api/http.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/google/api/httpbody.upb.h +52 -37
- data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/any.upb.h +23 -21
- data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +2236 -1514
- data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +824 -406
- data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +0 -34
- data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +23 -21
- data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +19 -17
- data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +1 -3
- data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +149 -100
- data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +59 -43
- data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +23 -21
- data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +181 -139
- data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +99 -53
- data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.h +0 -9
- data/src/core/ext/upb-gen/google/rpc/status.upb.h +52 -37
- data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/channelz.upb.h +1553 -1157
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/channelz.upb_minitable.c +712 -410
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/channelz.upb_minitable.h +0 -39
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb.h +189 -125
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb_minitable.c +59 -35
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb.h +454 -343
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb_minitable.c +204 -130
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb_minitable.h +0 -11
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb.h +369 -243
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb_minitable.c +109 -79
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb_minitable.h +0 -7
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb.h +256 -175
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb_minitable.c +122 -68
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +71 -51
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +39 -19
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +583 -407
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +259 -145
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.h +0 -12
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +114 -84
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +52 -30
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +41 -34
- data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +25 -13
- data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +309 -230
- data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +123 -79
- data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.h +0 -9
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +98 -63
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +51 -23
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +505 -312
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +159 -87
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.h +0 -9
- data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +128 -91
- data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +82 -41
- data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.h +5 -8
- data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +36 -29
- data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +36 -13
- data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +13 -11
- data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +22 -7
- data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.h +1 -1
- data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +36 -29
- data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +36 -13
- data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +34 -27
- data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +34 -13
- data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/validate/validate.upb.h +1682 -1130
- data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +587 -247
- data/src/core/ext/upb-gen/validate/validate.upb_minitable.h +4 -27
- data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +128 -91
- data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +82 -41
- data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.h +5 -8
- data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +36 -29
- data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +36 -13
- data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +13 -11
- data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +22 -7
- data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.h +1 -1
- data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +122 -90
- data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +82 -39
- data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.h +3 -7
- data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +34 -27
- data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +34 -13
- data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +21 -19
- data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +13 -7
- data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +29 -26
- data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +70 -58
- data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +32 -22
- data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +53 -34
- data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +26 -16
- data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +29 -26
- data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +37 -33
- data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +22 -14
- data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +102 -76
- data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +43 -23
- data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +33 -30
- data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +136 -83
- data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +41 -33
- data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +46 -32
- data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +20 -12
- data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +29 -26
- data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +20 -12
- data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +93 -61
- data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +28 -20
- data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +19 -17
- data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +1 -3
- data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +105 -71
- data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +32 -22
- data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +430 -314
- data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +153 -123
- data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.h +0 -10
- data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +307 -199
- data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +74 -62
- data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.h +0 -6
- data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +52 -42
- data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +19 -13
- data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +95 -71
- data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +36 -22
- data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +92 -77
- data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +42 -28
- data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +67 -55
- data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +36 -18
- data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +29 -26
- data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.h +0 -1
- data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +885 -855
- data/src/core/filter/composite/composite_filter.cc +10 -3
- data/src/core/filter/composite/composite_filter.h +11 -1
- data/src/core/filter/filter_args.h +4 -22
- data/src/core/handshaker/handshaker.cc +10 -2
- data/src/core/handshaker/security/secure_endpoint.cc +73 -5
- data/src/core/lib/channel/channel_args.h +12 -6
- data/src/core/lib/channel/channel_stack.cc +1 -2
- data/src/core/lib/channel/channel_stack.h +1 -7
- data/src/core/lib/channel/channel_stack_builder_impl.cc +1 -1
- data/src/core/lib/channel/channel_stack_builder_impl.h +0 -7
- data/src/core/lib/channel/promise_based_filter.cc +13 -1
- data/src/core/lib/channel/promise_based_filter.h +4 -5
- data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +0 -13
- data/src/core/lib/event_engine/extensions/receive_coalescing_extension.h +48 -0
- data/src/core/lib/event_engine/posix.h +2 -0
- data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +2 -1
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +11 -8
- data/src/core/lib/event_engine/posix_engine/posix_engine.cc +7 -6
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +1 -1
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +2 -1
- data/src/core/lib/event_engine/posix_engine/posix_interface_posix.cc +10 -10
- data/src/core/lib/event_engine/posix_engine/posix_write_event_sink.h +1 -1
- data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +1 -1
- data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +5 -4
- data/src/core/lib/experiments/experiments.cc +261 -90
- data/src/core/lib/experiments/experiments.h +136 -35
- data/src/core/lib/iomgr/buffer_list.h +1 -1
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +1 -1
- data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +2 -2
- data/src/core/lib/iomgr/tcp_posix.cc +2 -1
- data/src/core/lib/iomgr/tcp_server_posix.cc +3 -3
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +1 -1
- data/src/core/lib/promise/detail/promise_factory.h +8 -8
- data/src/core/lib/promise/interceptor_list.h +1 -1
- data/src/core/lib/promise/try_seq.h +2 -2
- data/src/core/lib/resource_quota/telemetry.cc +54 -0
- data/src/core/lib/resource_quota/telemetry.h +5 -23
- data/src/core/lib/surface/call.cc +6 -1
- data/src/core/lib/surface/call.h +9 -0
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/promise_endpoint.h +7 -5
- data/src/core/lib/transport/transport.h +31 -4
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +146 -74
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.h +88 -0
- data/src/core/mitigation_engine/mitigation_engine.h +81 -0
- data/src/core/plugin_registry/grpc_plugin_registry.cc +0 -2
- data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +0 -5
- data/src/core/resolver/xds/xds_resolver.cc +23 -133
- data/src/core/server/server.cc +40 -18
- data/src/core/server/server.h +25 -14
- data/src/core/server/server_config_selector_filter.cc +122 -0
- data/src/core/server/server_config_selector_filter.h +1 -0
- data/src/core/server/xds_server_config_fetcher.cc +6 -0
- data/src/core/server/xds_server_config_fetcher_legacy.cc +1333 -0
- data/src/core/telemetry/histogram.h +10 -89
- data/src/core/telemetry/instrument.h +42 -28
- data/src/core/transport/message_size_service_config.cc +123 -0
- data/src/core/transport/message_size_service_config.h +85 -0
- data/src/core/transport/session_endpoint.cc +29 -4
- data/src/core/transport/session_endpoint.h +4 -0
- data/src/core/tsi/alts/crypt/gsec.h +4 -2
- data/src/core/tsi/ssl_transport_security.cc +6 -4
- data/src/core/util/http_client/parser.cc +1 -1
- data/src/core/util/lru_cache.h +2 -0
- data/src/core/util/ref_counted_string.h +1 -1
- data/src/core/util/tchar.cc +13 -7
- data/src/core/util/trie_lookup.h +1 -1
- data/src/core/xds/grpc/blackboard.cc +58 -0
- data/src/core/{filter → xds/grpc}/blackboard.h +30 -11
- data/src/core/xds/grpc/xds_client_grpc.cc +14 -1
- data/src/core/xds/grpc/xds_client_grpc.h +1 -0
- data/src/core/xds/grpc/xds_common_types.cc +40 -0
- data/src/core/xds/grpc/xds_common_types.h +13 -0
- data/src/core/xds/grpc/xds_common_types_parser.cc +37 -34
- data/src/core/xds/grpc/xds_endpoint_parser.cc +1 -1
- data/src/core/xds/grpc/xds_http_composite_filter.cc +34 -18
- data/src/core/xds/grpc/xds_http_composite_filter.h +6 -3
- data/src/core/xds/grpc/xds_http_fault_filter.cc +0 -149
- data/src/core/xds/grpc/xds_http_fault_filter.h +19 -8
- data/src/core/xds/grpc/xds_http_filter.cc +2 -1
- data/src/core/xds/grpc/xds_http_filter.h +6 -16
- data/src/core/xds/grpc/xds_http_filter_registry.cc +0 -2
- data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +25 -119
- data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +27 -15
- data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +0 -149
- data/src/core/xds/grpc/xds_http_stateful_session_filter.h +19 -8
- data/src/core/xds/grpc/xds_lb_policy_registry.cc +18 -0
- data/src/core/xds/grpc/xds_listener_parser.cc +13 -9
- data/src/core/xds/grpc/xds_route_config.h +1 -1
- data/src/core/xds/grpc/xds_route_config_parser.cc +3 -5
- data/src/core/xds/grpc/xds_routing.cc +5 -11
- data/src/core/xds/grpc/xds_routing.h +2 -3
- data/src/core/xds/xds_client/lrs_client.cc +2 -2
- data/src/ruby/ext/grpc/rb_byte_buffer.c +1 -0
- data/src/ruby/ext/grpc/rb_call.c +3 -0
- data/src/ruby/ext/grpc/rb_call_credentials.c +1 -0
- data/src/ruby/ext/grpc/rb_channel.c +1 -0
- data/src/ruby/ext/grpc/rb_channel_args.c +1 -0
- data/src/ruby/ext/grpc/rb_channel_credentials.c +1 -0
- data/src/ruby/ext/grpc/rb_completion_queue.c +1 -0
- data/src/ruby/ext/grpc/rb_compression_options.c +1 -0
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +4 -4
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +6 -6
- data/src/ruby/ext/grpc/rb_server.c +1 -0
- data/src/ruby/ext/grpc/rb_server_credentials.c +1 -0
- data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +1 -0
- data/src/ruby/ext/grpc/rb_xds_server_credentials.c +1 -0
- data/src/ruby/lib/grpc/core/call_credentials.rb +86 -0
- data/src/ruby/lib/grpc/core/channel_credentials.rb +69 -0
- data/src/ruby/lib/grpc/core/credentials_helper.rb +126 -0
- data/src/ruby/lib/grpc/generic/client_stub.rb +86 -73
- data/src/ruby/lib/grpc/generic/interceptors.rb +1 -1
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/lib/grpc.rb +25 -0
- data/src/ruby/spec/call_credentials_spec.rb +52 -2
- data/src/ruby/spec/credentials_helper_spec.rb +80 -0
- data/src/ruby/spec/generic/client_stub_spec.rb +27 -4
- data/src/ruby/spec/generic/server_interceptors_spec.rb +17 -3
- data/third_party/upb/upb/base/error_handler.h +79 -0
- data/third_party/upb/upb/base/internal/log2.h +29 -5
- data/third_party/upb/upb/generated_code_support.h +1 -0
- data/third_party/upb/upb/hash/common.c +129 -14
- data/third_party/upb/upb/hash/common.h +1 -1
- data/third_party/upb/upb/hash/ext_table.h +65 -0
- data/third_party/upb/upb/lex/strtod.c +14 -5
- data/third_party/upb/upb/mem/arena.c +113 -95
- data/third_party/upb/upb/mem/internal/arena.h +13 -8
- data/third_party/upb/upb/message/accessors.c +2 -3
- data/third_party/upb/upb/message/accessors.h +32 -12
- data/third_party/upb/upb/message/array.c +51 -2
- data/third_party/upb/upb/message/array.h +10 -0
- data/third_party/upb/upb/message/copy.c +18 -34
- data/third_party/upb/upb/message/internal/accessors.h +15 -49
- data/third_party/upb/upb/message/internal/array.h +1 -1
- data/third_party/upb/upb/message/internal/map.h +1 -1
- data/third_party/upb/upb/message/internal/message.c +8 -1
- data/third_party/upb/upb/message/internal/message.h +40 -10
- data/third_party/upb/upb/message/message.c +3 -2
- data/third_party/upb/upb/message/value.h +0 -6
- data/third_party/upb/upb/mini_descriptor/decode.c +78 -59
- data/third_party/upb/upb/mini_descriptor/link.c +8 -6
- data/third_party/upb/upb/mini_table/extension_registry.c +17 -49
- data/third_party/upb/upb/mini_table/extension_registry.h +5 -17
- data/third_party/upb/upb/mini_table/generated_registry.c +180 -0
- data/third_party/upb/upb/mini_table/generated_registry.h +66 -0
- data/third_party/upb/upb/mini_table/internal/extension.h +5 -3
- data/third_party/upb/upb/mini_table/internal/field.h +7 -5
- data/third_party/upb/upb/mini_table/internal/generated_registry.h +37 -0
- data/third_party/upb/upb/mini_table/internal/message.c +0 -18
- data/third_party/upb/upb/mini_table/internal/message.h +24 -41
- data/third_party/upb/upb/mini_table/internal/size_log2.h +2 -1
- data/third_party/upb/upb/mini_table/internal/sub.h +2 -5
- data/third_party/upb/upb/mini_table/message.h +34 -13
- data/third_party/upb/upb/port/atomic.h +180 -74
- data/third_party/upb/upb/port/def.inc +194 -29
- data/third_party/upb/upb/port/sanitizers.h +15 -0
- data/third_party/upb/upb/port/undef.inc +6 -2
- data/third_party/upb/upb/reflection/common.h +0 -6
- data/third_party/upb/upb/reflection/def.hpp +8 -12
- data/third_party/upb/upb/reflection/def_pool.c +85 -33
- data/third_party/upb/upb/reflection/def_pool.h +38 -8
- data/third_party/upb/upb/reflection/def_type.h +3 -0
- data/third_party/upb/upb/reflection/enum_def.c +45 -33
- data/third_party/upb/upb/reflection/enum_def.h +8 -4
- data/third_party/upb/upb/reflection/enum_reserved_range.c +7 -3
- data/third_party/upb/upb/reflection/enum_value_def.c +14 -29
- data/third_party/upb/upb/reflection/enum_value_def.h +5 -4
- data/third_party/upb/upb/reflection/extension_range.c +15 -14
- data/third_party/upb/upb/reflection/extension_range.h +7 -4
- data/third_party/upb/upb/reflection/field_def.c +114 -96
- data/third_party/upb/upb/reflection/field_def.h +3 -3
- data/third_party/upb/upb/reflection/file_def.c +71 -65
- data/third_party/upb/upb/reflection/file_def.h +4 -5
- data/third_party/upb/upb/reflection/internal/def_builder.c +22 -14
- data/third_party/upb/upb/reflection/internal/def_builder.h +44 -38
- data/third_party/upb/upb/reflection/internal/def_pool.h +5 -1
- data/third_party/upb/upb/reflection/internal/enum_def.h +6 -4
- data/third_party/upb/upb/reflection/internal/enum_reserved_range.h +3 -2
- data/third_party/upb/upb/reflection/internal/enum_value_def.h +7 -4
- data/third_party/upb/upb/reflection/internal/extension_range.h +4 -3
- data/third_party/upb/upb/reflection/internal/field_def.h +15 -12
- data/third_party/upb/upb/reflection/internal/file_def.h +8 -1
- data/third_party/upb/upb/reflection/internal/message_def.h +10 -7
- data/third_party/upb/upb/reflection/internal/message_reserved_range.h +3 -1
- data/third_party/upb/upb/reflection/internal/method_def.h +6 -6
- data/third_party/upb/upb/reflection/internal/oneof_def.h +6 -6
- data/third_party/upb/upb/reflection/internal/service_def.h +9 -6
- data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +1 -1
- data/third_party/upb/upb/reflection/message_def.c +46 -53
- data/third_party/upb/upb/reflection/message_def.h +6 -7
- data/third_party/upb/upb/reflection/message_reserved_range.c +7 -6
- data/third_party/upb/upb/reflection/method_def.c +22 -20
- data/third_party/upb/upb/reflection/method_def.h +4 -4
- data/third_party/upb/upb/reflection/oneof_def.c +17 -15
- data/third_party/upb/upb/reflection/oneof_def.h +6 -3
- data/third_party/upb/upb/reflection/service_def.c +50 -23
- data/third_party/upb/upb/reflection/service_def.h +7 -4
- data/third_party/upb/upb/text/internal/encode.c +7 -10
- data/third_party/upb/upb/wire/decode.c +269 -430
- data/third_party/upb/upb/wire/decode.h +6 -45
- data/third_party/upb/upb/wire/decode_fast/combinations.h +7 -3
- data/third_party/upb/upb/wire/decode_fast/select.c +7 -2
- data/third_party/upb/upb/wire/encode.c +144 -106
- data/third_party/upb/upb/wire/encode.h +6 -2
- data/third_party/upb/upb/wire/eps_copy_input_stream.c +36 -7
- data/third_party/upb/upb/wire/eps_copy_input_stream.h +94 -380
- data/third_party/upb/upb/wire/internal/decoder.c +1 -14
- data/third_party/upb/upb/wire/internal/decoder.h +84 -24
- data/third_party/upb/upb/wire/internal/eps_copy_input_stream.h +339 -0
- data/third_party/upb/upb/wire/internal/reader.h +29 -12
- data/third_party/upb/upb/wire/reader.c +35 -22
- data/third_party/upb/upb/wire/reader.h +11 -18
- data/third_party/utf8_range/utf8_range.c +1 -1
- data/third_party/utf8_range/utf8_range.h +2 -1
- metadata +27 -13
- data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +0 -117
- data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +0 -109
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.cc +0 -80
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.h +0 -86
- data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +0 -83
- data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +0 -91
- data/src/core/ext/transport/chttp2/transport/incoming_metadata_tracker.h +0 -217
- data/src/core/filter/blackboard.cc +0 -33
- data/third_party/upb/upb/message/internal/tagged_ptr.h +0 -56
- data/third_party/upb/upb/message/tagged_ptr.h +0 -48
|
@@ -47,10 +47,10 @@
|
|
|
47
47
|
#include "src/core/ext/transport/chttp2/transport/http2_status.h"
|
|
48
48
|
#include "src/core/ext/transport/chttp2/transport/http2_transport.h"
|
|
49
49
|
#include "src/core/ext/transport/chttp2/transport/http2_ztrace_collector.h"
|
|
50
|
-
#include "src/core/ext/transport/chttp2/transport/incoming_metadata_tracker.h"
|
|
51
50
|
#include "src/core/ext/transport/chttp2/transport/keepalive.h"
|
|
52
51
|
#include "src/core/ext/transport/chttp2/transport/message_assembler.h"
|
|
53
52
|
#include "src/core/ext/transport/chttp2/transport/ping_promise.h"
|
|
53
|
+
#include "src/core/ext/transport/chttp2/transport/read_context.h"
|
|
54
54
|
#include "src/core/ext/transport/chttp2/transport/security_frame.h"
|
|
55
55
|
#include "src/core/ext/transport/chttp2/transport/stream.h"
|
|
56
56
|
#include "src/core/ext/transport/chttp2/transport/stream_data_queue.h"
|
|
@@ -243,15 +243,18 @@ Http2Status Http2ClientTransport::ProcessIncomingFrame(Http2DataFrame&& frame) {
|
|
|
243
243
|
|
|
244
244
|
RefCountedPtr<Stream> stream = LookupStream(frame.stream_id);
|
|
245
245
|
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
246
|
+
if (frame.payload.Length() > 0) {
|
|
247
|
+
// DATA frames with empty payload are legitimate frames. CHTTP2 and PH2 send
|
|
248
|
+
// empty DATA frames with END_Stream flag set to true.
|
|
249
|
+
ValueOrHttp2Status<chttp2::FlowControlAction> flow_control_action =
|
|
250
|
+
ProcessIncomingDataFrameFlowControl(
|
|
251
|
+
read_context_.GetCurrentFrameHeader(), flow_control_, stream.get());
|
|
252
|
+
if (!flow_control_action.IsOk()) {
|
|
253
|
+
return ValueOrHttp2Status<chttp2::FlowControlAction>::TakeStatus(
|
|
254
|
+
std::move(flow_control_action));
|
|
255
|
+
}
|
|
256
|
+
ActOnFlowControlAction(flow_control_action.value(), stream.get());
|
|
252
257
|
}
|
|
253
|
-
ActOnFlowControlAction(flow_control_action.value(), stream.get());
|
|
254
|
-
|
|
255
258
|
if (stream == nullptr) {
|
|
256
259
|
// TODO(tjagtap) : [PH2][P2] : Implement the correct behaviour later.
|
|
257
260
|
// RFC9113 : If a DATA frame is received whose stream is not in the "open"
|
|
@@ -263,9 +266,6 @@ Http2Status Http2ClientTransport::ProcessIncomingFrame(Http2DataFrame&& frame) {
|
|
|
263
266
|
return Http2Status::Ok();
|
|
264
267
|
}
|
|
265
268
|
|
|
266
|
-
// TODO(akshitpatel) : [PH2][P3] : We should add a check to reset stream if
|
|
267
|
-
// the stream state is kIdle as well.
|
|
268
|
-
|
|
269
269
|
Http2Status stream_status = stream->CanStreamReceiveDataFrames();
|
|
270
270
|
if (!stream_status.IsOk()) {
|
|
271
271
|
return stream_status;
|
|
@@ -300,8 +300,7 @@ Http2Status Http2ClientTransport::ProcessIncomingFrame(Http2DataFrame&& frame) {
|
|
|
300
300
|
if (message != nullptr) {
|
|
301
301
|
GRPC_HTTP2_CLIENT_DLOG
|
|
302
302
|
<< "Http2ClientTransport::ProcessIncomingFrame(DataFrame) "
|
|
303
|
-
"SpawnPushMessage "
|
|
304
|
-
<< message->DebugString();
|
|
303
|
+
"SpawnPushMessage ";
|
|
305
304
|
stream->GetCallHandler().SpawnPushMessage(std::move(message));
|
|
306
305
|
continue;
|
|
307
306
|
}
|
|
@@ -310,26 +309,17 @@ Http2Status Http2ClientTransport::ProcessIncomingFrame(Http2DataFrame&& frame) {
|
|
|
310
309
|
break;
|
|
311
310
|
}
|
|
312
311
|
|
|
313
|
-
// TODO(tjagtap) : [PH2][P2] : List of Tests:
|
|
314
|
-
// 1. Data frame with unknown stream ID
|
|
315
|
-
// 2. Data frame with only half a message and then end stream
|
|
316
|
-
// 3. One data frame with a full message
|
|
317
|
-
// 4. Three data frames with one full message
|
|
318
|
-
// 5. One data frame with three full messages. All messages should be pushed.
|
|
319
|
-
// Will need to mock the call_handler object and test this along with the
|
|
320
|
-
// Header reading code. Because we need a stream in place for the lookup to
|
|
321
|
-
// work.
|
|
322
312
|
return Http2Status::Ok();
|
|
323
313
|
}
|
|
324
314
|
|
|
325
315
|
template <typename T>
|
|
326
316
|
Http2Status Http2ClientTransport::ProcessIncomingMetadata(T&& frame) {
|
|
327
|
-
// State update MUST happen before processing the frame.
|
|
328
|
-
incoming_headers_.UpdateState(frame);
|
|
329
|
-
|
|
330
317
|
ping_manager_->ReceivedDataFrame();
|
|
331
318
|
|
|
332
319
|
RefCountedPtr<Stream> stream = LookupStream(frame.stream_id);
|
|
320
|
+
// State update MUST happen before processing the frame.
|
|
321
|
+
read_context_.UpdateState(frame, /*is_existing_stream=*/(stream != nullptr));
|
|
322
|
+
|
|
333
323
|
if (stream == nullptr) {
|
|
334
324
|
// TODO(tjagtap) : [PH2][P3] : Implement this.
|
|
335
325
|
// RFC9113 : The identifier of a newly established stream MUST be
|
|
@@ -338,36 +328,33 @@ Http2Status Http2ClientTransport::ProcessIncomingMetadata(T&& frame) {
|
|
|
338
328
|
// frame and streams that are reserved using PUSH_PROMISE. An endpoint that
|
|
339
329
|
// receives an unexpected stream identifier MUST respond with a connection
|
|
340
330
|
// error (Section 5.4.1) of type PROTOCOL_ERROR.
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
return incoming_headers_.ParseAndDiscardHeaders(
|
|
345
|
-
std::move(frame.payload), frame.end_headers, /*stream=*/nullptr,
|
|
346
|
-
Http2Status::Ok(), settings_->acked().max_header_list_size());
|
|
331
|
+
return read_context_.ParseAndDiscardHeaders(
|
|
332
|
+
std::move(frame.payload), frame.end_headers, Http2Status::Ok(),
|
|
333
|
+
settings_->acked().max_header_list_size());
|
|
347
334
|
}
|
|
348
335
|
|
|
349
|
-
Http2Status validation_status =
|
|
350
|
-
|
|
351
|
-
settings_->acked().max_header_list_size());
|
|
336
|
+
Http2Status validation_status = ValidateMetadataFrameState(
|
|
337
|
+
frame, *stream, read_context_, settings_->acked().max_header_list_size());
|
|
352
338
|
if (!validation_status.IsOk()) {
|
|
353
339
|
return validation_status;
|
|
354
340
|
}
|
|
355
341
|
|
|
356
|
-
Http2Status append_result =
|
|
342
|
+
Http2Status append_result =
|
|
343
|
+
read_context_.header_assembler().AppendFrame(frame);
|
|
357
344
|
if (!append_result.IsOk()) {
|
|
358
345
|
// Frame payload is not consumed if AppendFrame returns a non-OK
|
|
359
346
|
// status. We need to process it to keep our in consistent state.
|
|
360
|
-
return
|
|
361
|
-
std::move(frame.payload), frame.end_headers,
|
|
362
|
-
|
|
347
|
+
return read_context_.ParseAndDiscardHeaders(
|
|
348
|
+
std::move(frame.payload), frame.end_headers, std::move(append_result),
|
|
349
|
+
settings_->acked().max_header_list_size());
|
|
363
350
|
}
|
|
364
351
|
|
|
365
352
|
Http2Status status = ProcessMetadata(stream);
|
|
366
353
|
if (!status.IsOk()) {
|
|
367
354
|
// Frame payload has been moved to the HeaderAssembler. So calling
|
|
368
355
|
// ParseAndDiscardHeaders with an empty buffer.
|
|
369
|
-
return
|
|
370
|
-
SliceBuffer(), frame.end_headers,
|
|
356
|
+
return read_context_.ParseAndDiscardHeaders(
|
|
357
|
+
SliceBuffer(), frame.end_headers, std::move(status),
|
|
371
358
|
settings_->acked().max_header_list_size());
|
|
372
359
|
}
|
|
373
360
|
|
|
@@ -418,33 +405,29 @@ Http2Status Http2ClientTransport::ProcessIncomingFrame(
|
|
|
418
405
|
<< frame.ack << ", settings length=" << frame.settings.size() << "}";
|
|
419
406
|
|
|
420
407
|
if (!frame.ack) {
|
|
421
|
-
Http2Status
|
|
422
|
-
if (!
|
|
423
|
-
return
|
|
408
|
+
Http2Status s = settings_->BufferPeerSettings(std::move(frame.settings));
|
|
409
|
+
if (!s.IsOk()) {
|
|
410
|
+
return s;
|
|
424
411
|
}
|
|
425
|
-
settings_->BufferPeerSettings(std::move(frame.settings));
|
|
426
412
|
absl::Status trigger_write_status = TriggerWriteCycle();
|
|
427
413
|
if (!trigger_write_status.ok()) {
|
|
428
414
|
return ToHttpOkOrConnError(trigger_write_status);
|
|
429
415
|
}
|
|
430
|
-
|
|
431
416
|
if (GPR_UNLIKELY(!settings_->IsFirstPeerSettingsApplied())) {
|
|
432
417
|
// Apply the first settings before we read any other frames.
|
|
433
|
-
|
|
418
|
+
read_context_.SetPauseReadLoop();
|
|
434
419
|
}
|
|
435
420
|
} else {
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
ActOnFlowControlAction(flow_control_.SetAckedInitialWindow(
|
|
440
|
-
settings_->acked().initial_window_size()),
|
|
441
|
-
/*stream=*/nullptr);
|
|
442
|
-
} else {
|
|
443
|
-
// CHTTP2 returns a connection error for an unsolicited SETTINGS ACK.
|
|
444
|
-
// However, we ignore it in PH2 since RFC 9113 doesn't explicitly mandate
|
|
445
|
-
// an error.
|
|
446
|
-
LOG(ERROR) << "Settings ack received without sending settings. Ignore.";
|
|
421
|
+
Http2Status status = settings_->OnSettingsAckReceived();
|
|
422
|
+
if (!status.IsOk()) {
|
|
423
|
+
return status;
|
|
447
424
|
}
|
|
425
|
+
read_context_.SetMaxHeaderTableSize(settings_->acked().header_table_size());
|
|
426
|
+
read_context_.header_assembler().MaybeSetAllowTrueBinaryMetadataAcked(
|
|
427
|
+
settings_->acked().allow_true_binary_metadata());
|
|
428
|
+
ActOnFlowControlAction(flow_control_.SetAckedInitialWindow(
|
|
429
|
+
settings_->acked().initial_window_size()),
|
|
430
|
+
/*stream=*/nullptr);
|
|
448
431
|
}
|
|
449
432
|
|
|
450
433
|
return Http2Status::Ok();
|
|
@@ -612,8 +595,6 @@ Http2Status Http2ClientTransport::ProcessIncomingFrame(
|
|
|
612
595
|
|
|
613
596
|
Http2Status Http2ClientTransport::ProcessIncomingFrame(
|
|
614
597
|
Http2SecurityFrame&& frame) {
|
|
615
|
-
GRPC_HTTP2_CLIENT_DLOG
|
|
616
|
-
<< "Http2ClientTransport::ProcessIncomingFrame(SecurityFrame) ";
|
|
617
598
|
if (settings_->IsSecurityFrameExpected()) {
|
|
618
599
|
security_frame_handler_->ProcessPayload(std::move(frame.payload));
|
|
619
600
|
}
|
|
@@ -637,21 +618,21 @@ Http2Status Http2ClientTransport::ProcessIncomingFrame(
|
|
|
637
618
|
|
|
638
619
|
Http2Status Http2ClientTransport::ProcessMetadata(
|
|
639
620
|
RefCountedPtr<Stream> stream) {
|
|
640
|
-
HeaderAssembler& assembler =
|
|
621
|
+
HeaderAssembler& assembler = read_context_.header_assembler();
|
|
641
622
|
CallHandler& call = stream->GetCallHandler();
|
|
642
623
|
|
|
643
624
|
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport::ProcessMetadata";
|
|
644
625
|
if (assembler.IsReady()) {
|
|
645
626
|
ValueOrHttp2Status<ServerMetadataHandle> read_result =
|
|
646
|
-
assembler.ReadMetadata(
|
|
647
|
-
!
|
|
627
|
+
assembler.ReadMetadata(read_context_.parser(),
|
|
628
|
+
!read_context_.HeaderHasEndStream(),
|
|
648
629
|
/*max_header_list_size_soft_limit=*/
|
|
649
|
-
|
|
630
|
+
read_context_.soft_limit(),
|
|
650
631
|
/*max_header_list_size_hard_limit=*/
|
|
651
632
|
settings_->acked().max_header_list_size());
|
|
652
633
|
if (read_result.IsOk()) {
|
|
653
634
|
ServerMetadataHandle metadata = TakeValue(std::move(read_result));
|
|
654
|
-
if (
|
|
635
|
+
if (read_context_.HeaderHasEndStream()) {
|
|
655
636
|
stream->MarkHalfClosedRemote();
|
|
656
637
|
stream->SetTrailingMetadataReceived();
|
|
657
638
|
BeginCloseStream(std::move(stream),
|
|
@@ -660,7 +641,7 @@ Http2Status Http2ClientTransport::ProcessMetadata(
|
|
|
660
641
|
} else {
|
|
661
642
|
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport::ProcessMetadata "
|
|
662
643
|
"SpawnPushServerInitialMetadata";
|
|
663
|
-
metadata->Set(PeerString(),
|
|
644
|
+
metadata->Set(PeerString(), read_context_.peer_string());
|
|
664
645
|
stream->SetInitialMetadataReceived();
|
|
665
646
|
call.SpawnPushServerInitialMetadata(std::move(metadata));
|
|
666
647
|
}
|
|
@@ -684,66 +665,62 @@ auto Http2ClientTransport::ReadAndProcessOneFrame() {
|
|
|
684
665
|
EndpointReadSlice(kFrameHeaderSize),
|
|
685
666
|
// Parse the frame header.
|
|
686
667
|
[this](Slice header_bytes) {
|
|
687
|
-
GRPC_HTTP2_CLIENT_DLOG
|
|
688
|
-
<< "Http2ClientTransport::ReadAndProcessOneFrame Parse "
|
|
689
|
-
<< header_bytes.as_string_view();
|
|
690
668
|
Http2FrameHeader header = Http2FrameHeader::Parse(header_bytes.begin());
|
|
691
669
|
// Validate the incoming frame as per the current state of the transport
|
|
692
|
-
Http2Status status =
|
|
693
|
-
/*max_frame_size_setting
|
|
694
|
-
/*
|
|
695
|
-
incoming_headers_.IsWaitingForContinuationFrame(),
|
|
696
|
-
/*incoming_header_stream_id*/
|
|
697
|
-
incoming_headers_.GetStreamId(),
|
|
698
|
-
/*current_frame_header*/ header,
|
|
670
|
+
Http2Status status = read_context_.ValidateHeader(
|
|
671
|
+
/*max_frame_size_setting=*/settings_->acked().max_frame_size(),
|
|
672
|
+
/*current_frame_header=*/header,
|
|
699
673
|
/*last_stream_id=*/GetLastStreamId(),
|
|
700
|
-
/*
|
|
674
|
+
/*is_first_settings_processed=*/
|
|
701
675
|
settings_->IsFirstPeerSettingsApplied());
|
|
702
676
|
|
|
703
677
|
if (GPR_UNLIKELY(!status.IsOk())) {
|
|
704
678
|
GRPC_DCHECK(status.GetType() ==
|
|
705
679
|
Http2Status::Http2ErrorType::kConnectionError);
|
|
706
|
-
return HandleError(std::nullopt, std::move(status));
|
|
680
|
+
return HandleError(/*stream_id=*/std::nullopt, std::move(status));
|
|
707
681
|
}
|
|
708
|
-
|
|
709
|
-
<< "Http2ClientTransport::ReadAndProcessOneFrame "
|
|
710
|
-
"Validated Frame Header:"
|
|
711
|
-
<< header.ToString();
|
|
712
|
-
current_frame_header_ = header;
|
|
682
|
+
read_context_.SetCurrentFrameHeader(header);
|
|
713
683
|
return absl::OkStatus();
|
|
714
684
|
},
|
|
715
685
|
// Read the payload of the frame.
|
|
716
686
|
[this]() {
|
|
717
687
|
GRPC_HTTP2_CLIENT_DLOG
|
|
718
688
|
<< "Http2ClientTransport::ReadAndProcessOneFrame Read Frame ";
|
|
719
|
-
return AssertResultType<absl::Status>(
|
|
720
|
-
EndpointRead(
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
689
|
+
return AssertResultType<absl::Status>(
|
|
690
|
+
Map(EndpointRead(read_context_.GetCurrentFrameHeader().length),
|
|
691
|
+
[this](absl::StatusOr<SliceBuffer>&& payload) {
|
|
692
|
+
if (GPR_UNLIKELY(!payload.ok())) {
|
|
693
|
+
return payload.status();
|
|
694
|
+
}
|
|
695
|
+
GRPC_HTTP2_CLIENT_DLOG
|
|
696
|
+
<< "Http2ClientTransport::ReadAndProcessOneFrame "
|
|
697
|
+
"ParseFramePayload payload length: "
|
|
698
|
+
<< payload.value().Length();
|
|
699
|
+
ValueOrHttp2Status<Http2Frame> frame =
|
|
700
|
+
ParseFramePayload(read_context_.GetCurrentFrameHeader(),
|
|
701
|
+
TakeValue(std::move(payload)));
|
|
702
|
+
if (GPR_UNLIKELY(!frame.IsOk())) {
|
|
703
|
+
return HandleError(
|
|
704
|
+
read_context_.GetCurrentFrameHeader().stream_id,
|
|
705
|
+
ValueOrHttp2Status<Http2Frame>::TakeStatus(
|
|
706
|
+
std::move(frame)));
|
|
707
|
+
}
|
|
708
|
+
Http2Status status =
|
|
709
|
+
ProcessOneIncomingFrame(TakeValue(std::move(frame)));
|
|
710
|
+
if (GPR_UNLIKELY(!status.IsOk())) {
|
|
711
|
+
return HandleError(
|
|
712
|
+
read_context_.GetCurrentFrameHeader().stream_id,
|
|
713
|
+
std::move(status));
|
|
714
|
+
}
|
|
715
|
+
return absl::OkStatus();
|
|
716
|
+
}));
|
|
744
717
|
},
|
|
745
718
|
[this]() -> Poll<absl::Status> {
|
|
746
|
-
|
|
719
|
+
Poll<absl::Status> poll_result = read_context_.MaybePauseReadLoop();
|
|
720
|
+
if (poll_result.pending()) {
|
|
721
|
+
TriggerWriteCycleOrHandleError();
|
|
722
|
+
}
|
|
723
|
+
return poll_result;
|
|
747
724
|
}));
|
|
748
725
|
}
|
|
749
726
|
|
|
@@ -816,9 +793,7 @@ void Http2ClientTransport::ActOnFlowControlAction(
|
|
|
816
793
|
}
|
|
817
794
|
}
|
|
818
795
|
|
|
819
|
-
ActOnFlowControlActionSettings(
|
|
820
|
-
action, settings_->mutable_local(),
|
|
821
|
-
enable_preferred_rx_crypto_frame_advertisement_);
|
|
796
|
+
ActOnFlowControlActionSettings(action, settings_->mutable_local());
|
|
822
797
|
|
|
823
798
|
if (action.AnyUpdateImmediately()) {
|
|
824
799
|
// Prioritize sending flow control updates over reading data. If we
|
|
@@ -826,7 +801,7 @@ void Http2ClientTransport::ActOnFlowControlAction(
|
|
|
826
801
|
// exhaust the flow control window. This prevents us from sending window
|
|
827
802
|
// updates to the peer, causing the peer to block unnecessarily while
|
|
828
803
|
// waiting for flow control tokens.
|
|
829
|
-
|
|
804
|
+
read_context_.SetPauseReadLoop();
|
|
830
805
|
if (!TriggerWriteCycleOrHandleError()) {
|
|
831
806
|
return;
|
|
832
807
|
}
|
|
@@ -957,7 +932,7 @@ absl::Status Http2ClientTransport::PrepareControlFrames() {
|
|
|
957
932
|
}
|
|
958
933
|
|
|
959
934
|
if (apply_status != http2::Http2ErrorCode::kNoError) {
|
|
960
|
-
return HandleError(std::nullopt,
|
|
935
|
+
return HandleError(/*stream_id=*/std::nullopt,
|
|
961
936
|
Http2Status::Http2ConnectionError(
|
|
962
937
|
apply_status, "Failed to apply incoming settings"));
|
|
963
938
|
}
|
|
@@ -985,7 +960,7 @@ void Http2ClientTransport::NotifyFramesWriteDone() {
|
|
|
985
960
|
// Notify Control modules that we have sent the frames.
|
|
986
961
|
// All notifications are expected to be synchronous.
|
|
987
962
|
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport::NotifyFramesWriteDone";
|
|
988
|
-
|
|
963
|
+
read_context_.ResumeReadLoopIfPaused();
|
|
989
964
|
MaybeSpawnPingTimeout(ping_manager_->NotifyPingSent());
|
|
990
965
|
goaway_manager_.NotifyGoawaySent();
|
|
991
966
|
MaybeSpawnWaitForSettingsTimeout();
|
|
@@ -1043,7 +1018,8 @@ absl::Status Http2ClientTransport::DequeueStreamFrames(
|
|
|
1043
1018
|
"enqueue stream "
|
|
1044
1019
|
<< stream->GetStreamId() << " with status: " << status;
|
|
1045
1020
|
// Close transport if we fail to enqueue stream.
|
|
1046
|
-
return HandleError(std::nullopt,
|
|
1021
|
+
return HandleError(/*stream_id=*/std::nullopt,
|
|
1022
|
+
ToHttpOkOrConnError(status));
|
|
1047
1023
|
}
|
|
1048
1024
|
}
|
|
1049
1025
|
|
|
@@ -1086,11 +1062,6 @@ absl::Status Http2ClientTransport::DequeueStreamFrames(
|
|
|
1086
1062
|
/*close_writes=*/true});
|
|
1087
1063
|
}
|
|
1088
1064
|
|
|
1089
|
-
// Update the write_bytes_remaining_ based on the bytes consumed
|
|
1090
|
-
// in the current dequeue.
|
|
1091
|
-
// Note: We do tend to overestimate the bytes consumed here. This may result
|
|
1092
|
-
// in sending less data than target_write_size_.
|
|
1093
|
-
|
|
1094
1065
|
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport::DequeueStreamFrames "
|
|
1095
1066
|
"After dequeue: "
|
|
1096
1067
|
<< write_cycle.DebugString()
|
|
@@ -1126,10 +1097,6 @@ auto Http2ClientTransport::MultiplexerLoop() {
|
|
|
1126
1097
|
}
|
|
1127
1098
|
NotifyUrgentFramesWriteDone();
|
|
1128
1099
|
WriteCycle& write_cycle = transport_write_context_.GetWriteCycle();
|
|
1129
|
-
GRPC_HTTP2_CLIENT_DLOG
|
|
1130
|
-
<< "Http2ClientTransport::MultiplexerLoop "
|
|
1131
|
-
<< "Starting to iterate over writable stream list "
|
|
1132
|
-
<< write_cycle.DebugString();
|
|
1133
1100
|
// Drain all the writable streams till we have written
|
|
1134
1101
|
// max_write_size_ bytes of data or there is no more data to send.
|
|
1135
1102
|
// In some cases, we may write more than max_write_size_ bytes(like
|
|
@@ -1226,9 +1193,8 @@ absl::Status Http2ClientTransport::InitializeStream(Stream& stream) {
|
|
|
1226
1193
|
<< next_stream_id.value() << " to stream: " << &stream
|
|
1227
1194
|
<< ", allow_true_binary_metadata:"
|
|
1228
1195
|
<< settings_->peer().allow_true_binary_metadata();
|
|
1229
|
-
stream.InitializeClientStream(
|
|
1230
|
-
|
|
1231
|
-
settings_->acked().allow_true_binary_metadata());
|
|
1196
|
+
stream.InitializeClientStream(next_stream_id.value(),
|
|
1197
|
+
settings_->peer().allow_true_binary_metadata());
|
|
1232
1198
|
return absl::OkStatus();
|
|
1233
1199
|
}
|
|
1234
1200
|
|
|
@@ -1266,9 +1232,10 @@ auto Http2ClientTransport::WaitForSettingsTimeoutOnDone() {
|
|
|
1266
1232
|
return [self = RefAsSubclass<Http2ClientTransport>()](absl::Status status) {
|
|
1267
1233
|
if (!status.ok()) {
|
|
1268
1234
|
GRPC_UNUSED absl::Status result = self->HandleError(
|
|
1269
|
-
std::nullopt,
|
|
1270
|
-
|
|
1271
|
-
|
|
1235
|
+
/*stream_id=*/std::nullopt,
|
|
1236
|
+
Http2Status::Http2ConnectionError(
|
|
1237
|
+
Http2ErrorCode::kProtocolError,
|
|
1238
|
+
std::string(RFC9113::kSettingsTimeout)));
|
|
1272
1239
|
}
|
|
1273
1240
|
};
|
|
1274
1241
|
}
|
|
@@ -1311,13 +1278,11 @@ Http2ClientTransport::Http2ClientTransport(
|
|
|
1311
1278
|
std::move(on_receive_settings))),
|
|
1312
1279
|
next_stream_id_(/*Initial Stream ID*/ 1),
|
|
1313
1280
|
should_reset_ping_clock_(false),
|
|
1314
|
-
|
|
1315
|
-
kIsClient),
|
|
1281
|
+
read_context_(MaxNewStreamsPerRead(channel_args), endpoint_, kIsClient),
|
|
1316
1282
|
transport_write_context_(kIsClient),
|
|
1317
1283
|
ping_manager_(std::nullopt),
|
|
1318
1284
|
keepalive_manager_(std::nullopt),
|
|
1319
1285
|
goaway_manager_(GoawayInterfaceImpl::Make(this)),
|
|
1320
|
-
security_frame_handler_(MakeRefCounted<SecurityFrameHandler>()),
|
|
1321
1286
|
memory_owner_(channel_args.GetObject<ResourceQuota>()
|
|
1322
1287
|
->memory_quota()
|
|
1323
1288
|
->CreateMemoryOwner()),
|
|
@@ -1325,6 +1290,7 @@ Http2ClientTransport::Http2ClientTransport(
|
|
|
1325
1290
|
"PH2_Client",
|
|
1326
1291
|
channel_args.GetBool(GRPC_ARG_HTTP2_BDP_PROBE).value_or(true),
|
|
1327
1292
|
&memory_owner_),
|
|
1293
|
+
security_frame_handler_(MakeRefCounted<SecurityFrameHandler>()),
|
|
1328
1294
|
ztrace_collector_(std::make_shared<PromiseHttp2ZTraceCollector>()) {
|
|
1329
1295
|
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport::Http2ClientTransport Begin";
|
|
1330
1296
|
// Initialize the general party and write party.
|
|
@@ -1365,7 +1331,6 @@ void Http2ClientTransport::SpawnTransportLoops() {
|
|
|
1365
1331
|
// For Client, write happens before read. So MultiplexerLoop is spawned first.
|
|
1366
1332
|
// ReadLoop is spawned after the first write.
|
|
1367
1333
|
// For Server, read happens before write. So ReadLoop is spawned first.
|
|
1368
|
-
// MultiplexerLoop is spawned after the first read.
|
|
1369
1334
|
SpawnGuardedTransportParty("MultiplexerLoop",
|
|
1370
1335
|
UntilTransportClosed(MultiplexerLoop()));
|
|
1371
1336
|
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport::SpawnTransportLoops End";
|
|
@@ -1379,10 +1344,8 @@ void Http2ClientTransport::ReadChannelArgs(const ChannelArgs& channel_args,
|
|
|
1379
1344
|
|
|
1380
1345
|
// Assign the channel args to the member variables.
|
|
1381
1346
|
keepalive_time_ = args.keepalive_time;
|
|
1382
|
-
|
|
1347
|
+
read_context_.set_soft_limit(args.max_header_list_size_soft_limit);
|
|
1383
1348
|
keepalive_permit_without_calls_ = args.keepalive_permit_without_calls;
|
|
1384
|
-
enable_preferred_rx_crypto_frame_advertisement_ =
|
|
1385
|
-
args.enable_preferred_rx_crypto_frame_advertisement;
|
|
1386
1349
|
test_only_ack_pings_ = args.test_only_ack_pings;
|
|
1387
1350
|
|
|
1388
1351
|
if (args.initial_sequence_number > 0) {
|
|
@@ -1438,7 +1401,7 @@ void Http2ClientTransport::CloseStream(Stream& stream, CloseStreamArgs args,
|
|
|
1438
1401
|
<< "Http2ClientTransport::CloseStream for stream id: "
|
|
1439
1402
|
<< stream.GetStreamId() << " close_reads=" << args.close_reads
|
|
1440
1403
|
<< " close_writes=" << args.close_writes
|
|
1441
|
-
<< "
|
|
1404
|
+
<< " read_context_=" << read_context_.DebugString()
|
|
1442
1405
|
<< " location=" << whence.file() << ":" << whence.line();
|
|
1443
1406
|
|
|
1444
1407
|
if (args.close_writes) {
|
|
@@ -1452,9 +1415,9 @@ void Http2ClientTransport::CloseStream(Stream& stream, CloseStreamArgs args,
|
|
|
1452
1415
|
// If the stream is closed while reading HEADER/CONTINUATION frames, we
|
|
1453
1416
|
// should still parse the enqueued buffer to maintain HPACK state between
|
|
1454
1417
|
// peers.
|
|
1455
|
-
if (
|
|
1456
|
-
Http2Status result =
|
|
1457
|
-
SliceBuffer(), /*is_end_headers=*/false,
|
|
1418
|
+
if (read_context_.IsWaitingForContinuationFrame()) {
|
|
1419
|
+
Http2Status result = read_context_.ParseAndDiscardHeaders(
|
|
1420
|
+
SliceBuffer(), /*is_end_headers=*/false,
|
|
1458
1421
|
/*original_status=*/Http2Status::Ok(),
|
|
1459
1422
|
settings_->acked().max_header_list_size());
|
|
1460
1423
|
if (result.GetType() == Http2Status::Http2ErrorType::kConnectionError) {
|
|
@@ -1726,6 +1689,8 @@ void Http2ClientTransport::SpawnAddChannelzData(RefCountedPtr<Party> party,
|
|
|
1726
1689
|
.Set("keepalive_time", self->keepalive_time_)
|
|
1727
1690
|
.Set("keepalive_permit_without_calls",
|
|
1728
1691
|
self->keepalive_permit_without_calls_)
|
|
1692
|
+
.Set("max_requests_per_read",
|
|
1693
|
+
self->read_context_.max_new_streams_per_read_cycle())
|
|
1729
1694
|
.Set("settings", self->settings_->ChannelzProperties())
|
|
1730
1695
|
.Set("flow_control",
|
|
1731
1696
|
self->flow_control_.stats().ChannelzProperties()));
|
|
@@ -1777,8 +1742,8 @@ RefCountedPtr<channelz::SocketNode> Http2ClientTransport::GetSocketNode()
|
|
|
1777
1742
|
|
|
1778
1743
|
absl::StatusOr<uint32_t> Http2ClientTransport::NextStreamId() {
|
|
1779
1744
|
if (next_stream_id_ > GetMaxAllowedStreamId()) {
|
|
1780
|
-
// TODO(tjagtap) : [PH2][
|
|
1781
|
-
// ids
|
|
1745
|
+
// TODO(tjagtap) : [PH2][P2] : Handle case if transport runs out of stream
|
|
1746
|
+
// ids. Similar check is there in the same function. Check what to do.
|
|
1782
1747
|
// RFC9113 : Stream identifiers cannot be reused. Long-lived connections
|
|
1783
1748
|
// can result in an endpoint exhausting the available range of stream
|
|
1784
1749
|
// identifiers. A client that is unable to establish a new stream
|
|
@@ -1824,16 +1789,16 @@ absl::Status Http2ClientTransport::MaybeAddStreamToWritableStreamList(
|
|
|
1824
1789
|
<< "Http2ClientTransport::MaybeAddStreamToWritableStreamList Stream "
|
|
1825
1790
|
"id: "
|
|
1826
1791
|
<< stream->GetStreamId() << " became writable";
|
|
1827
|
-
// TODO(akshitpatel) [Perf]: Might be worth exploring if this
|
|
1828
|
-
// should take a raw stream ptr and take a ref here.
|
|
1792
|
+
// TODO(akshitpatel) [PH2][P4][Perf]: Might be worth exploring if this
|
|
1793
|
+
// function should take a raw stream ptr and take a ref here.
|
|
1829
1794
|
absl::Status status =
|
|
1830
1795
|
writable_stream_list_.Enqueue(std::move(stream), result.priority);
|
|
1831
1796
|
if (!status.ok()) {
|
|
1832
1797
|
return HandleError(
|
|
1833
|
-
std::nullopt,
|
|
1798
|
+
/*stream_id=*/std::nullopt,
|
|
1834
1799
|
Http2Status::Http2ConnectionError(
|
|
1835
1800
|
Http2ErrorCode::kRefusedStream,
|
|
1836
|
-
|
|
1801
|
+
std::string(GrpcErrors::kFailedToEnqueueStream)));
|
|
1837
1802
|
}
|
|
1838
1803
|
}
|
|
1839
1804
|
return absl::OkStatus();
|
|
@@ -1932,14 +1897,10 @@ void Http2ClientTransport::SetMaxAllowedStreamId(
|
|
|
1932
1897
|
if (GPR_LIKELY(max_allowed_stream_id <= old_max_allowed_stream_id)) {
|
|
1933
1898
|
max_allowed_stream_id_ = max_allowed_stream_id;
|
|
1934
1899
|
} else {
|
|
1900
|
+
GRPC_DCHECK_LE(max_allowed_stream_id, old_max_allowed_stream_id);
|
|
1935
1901
|
LOG_IF(ERROR, max_allowed_stream_id > old_max_allowed_stream_id)
|
|
1936
1902
|
<< "Endpoints MUST NOT increase the value they send in the last "
|
|
1937
|
-
"stream "
|
|
1938
|
-
"identifier";
|
|
1939
|
-
GRPC_DCHECK_LE(max_allowed_stream_id, old_max_allowed_stream_id)
|
|
1940
|
-
<< "Endpoints MUST NOT increase the value they send in the last "
|
|
1941
|
-
"stream "
|
|
1942
|
-
"identifier";
|
|
1903
|
+
"stream identifier";
|
|
1943
1904
|
}
|
|
1944
1905
|
}
|
|
1945
1906
|
|
|
@@ -1968,7 +1929,7 @@ auto Http2ClientTransport::CallOutboundLoop(RefCountedPtr<Stream> stream) {
|
|
|
1968
1929
|
if (GPR_UNLIKELY(!enqueue_result.ok())) {
|
|
1969
1930
|
return enqueue_result.status();
|
|
1970
1931
|
}
|
|
1971
|
-
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport
|
|
1932
|
+
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport::CallOutboundLoop "
|
|
1972
1933
|
"Enqueued Initial Metadata";
|
|
1973
1934
|
return MaybeAddStreamToWritableStreamList(std::move(stream),
|
|
1974
1935
|
enqueue_result.value());
|
|
@@ -1980,7 +1941,7 @@ auto Http2ClientTransport::CallOutboundLoop(RefCountedPtr<Stream> stream) {
|
|
|
1980
1941
|
if (GPR_UNLIKELY(!enqueue_result.ok())) {
|
|
1981
1942
|
return enqueue_result.status();
|
|
1982
1943
|
}
|
|
1983
|
-
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport
|
|
1944
|
+
GRPC_HTTP2_CLIENT_DLOG << "Http2ClientTransport::CallOutboundLoop "
|
|
1984
1945
|
"Enqueued Half Closed";
|
|
1985
1946
|
return MaybeAddStreamToWritableStreamList(std::move(stream),
|
|
1986
1947
|
enqueue_result.value());
|
|
@@ -2177,7 +2138,7 @@ uint32_t Http2ClientTransport::GoawayInterfaceImpl::GetLastAcceptedStreamId() {
|
|
|
2177
2138
|
// TODO(akshitpatel) : [PH2][P2] : Eventually there should be a separate ref
|
|
2178
2139
|
// counted struct/class passed to all the transport promises/members. This
|
|
2179
2140
|
// will help removing back references from the transport members to
|
|
2180
|
-
// transport and greatly
|
|
2141
|
+
// transport and greatly simplify the cleanup path. Need to do this for
|
|
2181
2142
|
// PingSystemInterfaceImpl, KeepAliveInterfaceImpl and GoawayInterfaceImpl.
|
|
2182
2143
|
|
|
2183
2144
|
} // namespace http2
|
|
@@ -43,9 +43,9 @@
|
|
|
43
43
|
#include "src/core/ext/transport/chttp2/transport/http2_status.h"
|
|
44
44
|
#include "src/core/ext/transport/chttp2/transport/http2_transport.h"
|
|
45
45
|
#include "src/core/ext/transport/chttp2/transport/http2_ztrace_collector.h"
|
|
46
|
-
#include "src/core/ext/transport/chttp2/transport/incoming_metadata_tracker.h"
|
|
47
46
|
#include "src/core/ext/transport/chttp2/transport/keepalive.h"
|
|
48
47
|
#include "src/core/ext/transport/chttp2/transport/ping_promise.h"
|
|
48
|
+
#include "src/core/ext/transport/chttp2/transport/read_context.h"
|
|
49
49
|
#include "src/core/ext/transport/chttp2/transport/security_frame.h"
|
|
50
50
|
#include "src/core/ext/transport/chttp2/transport/stream.h"
|
|
51
51
|
#include "src/core/ext/transport/chttp2/transport/stream_data_queue.h"
|
|
@@ -321,8 +321,8 @@ class Http2ClientTransport final : public ClientTransport,
|
|
|
321
321
|
<< "Http2ClientTransport::TriggerWriteCycleOrHandleError failed with "
|
|
322
322
|
"status: "
|
|
323
323
|
<< status << " at " << whence.file() << ":" << whence.line();
|
|
324
|
-
GRPC_UNUSED absl::Status unused_status =
|
|
325
|
-
|
|
324
|
+
GRPC_UNUSED absl::Status unused_status = HandleError(
|
|
325
|
+
/*stream_id=*/std::nullopt, ToHttpOkOrConnError(status), whence);
|
|
326
326
|
return false;
|
|
327
327
|
}
|
|
328
328
|
|
|
@@ -647,8 +647,6 @@ class Http2ClientTransport final : public ClientTransport,
|
|
|
647
647
|
PromiseEndpoint endpoint_;
|
|
648
648
|
RefCountedPtr<SettingsPromiseManager> settings_;
|
|
649
649
|
|
|
650
|
-
Http2FrameHeader current_frame_header_;
|
|
651
|
-
|
|
652
650
|
Mutex transport_mutex_;
|
|
653
651
|
|
|
654
652
|
absl::flat_hash_map<uint32_t, RefCountedPtr<Stream>> stream_list_
|
|
@@ -665,7 +663,7 @@ class Http2ClientTransport final : public ClientTransport,
|
|
|
665
663
|
RefCountedPtr<StateWatcher> watcher_ ABSL_GUARDED_BY(transport_mutex_);
|
|
666
664
|
|
|
667
665
|
bool should_reset_ping_clock_;
|
|
668
|
-
|
|
666
|
+
ReadContext read_context_;
|
|
669
667
|
|
|
670
668
|
// Transport wide write context. This is used to track the state of the
|
|
671
669
|
// transport during write cycles.
|
|
@@ -685,20 +683,15 @@ class Http2ClientTransport final : public ClientTransport,
|
|
|
685
683
|
|
|
686
684
|
GoawayManager goaway_manager_;
|
|
687
685
|
|
|
686
|
+
MemoryOwner memory_owner_;
|
|
687
|
+
chttp2::TransportFlowControl flow_control_;
|
|
688
688
|
WritableStreams<RefCountedPtr<Stream>> writable_stream_list_;
|
|
689
689
|
|
|
690
|
-
/// Based on channel args, preferred_rx_crypto_frame_sizes are advertised to
|
|
691
|
-
/// the peer
|
|
692
|
-
bool enable_preferred_rx_crypto_frame_advertisement_;
|
|
693
690
|
RefCountedPtr<SecurityFrameHandler> security_frame_handler_;
|
|
694
|
-
MemoryOwner memory_owner_;
|
|
695
|
-
chttp2::TransportFlowControl flow_control_;
|
|
696
691
|
std::shared_ptr<PromiseHttp2ZTraceCollector> ztrace_collector_;
|
|
697
692
|
|
|
698
693
|
// TODO(tjagtap) [PH2][P2][BDP] Remove this when the BDP code is done.
|
|
699
694
|
Waker periodic_updates_waker_;
|
|
700
|
-
|
|
701
|
-
Http2ReadContext reader_state_;
|
|
702
695
|
};
|
|
703
696
|
|
|
704
697
|
} // namespace http2
|