grpc 1.81.1 → 1.83.1
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 +15 -9
- data/etc/roots.pem +10400 -3855
- data/include/grpc/grpc.h +6 -7
- data/include/grpc/grpc_audit_logging.h +2 -2
- data/include/grpc/grpc_security_constants.h +2 -0
- data/include/grpc/impl/channel_arg_names.h +26 -1
- data/src/core/call/call_filters.h +21 -5
- data/src/core/call/call_spine.h +4 -4
- data/src/core/call/client_call.cc +2 -2
- data/src/core/call/interception_chain.h +6 -9
- data/src/core/call/metadata.cc +7 -2
- 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 +16 -4
- data/src/core/call/server_call.h +14 -5
- 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 +2 -17
- data/src/core/client_channel/client_channel.cc +23 -28
- data/src/core/client_channel/client_channel.h +5 -3
- data/src/core/client_channel/client_channel_filter.cc +19 -30
- 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/client_channel_service_config.cc +5 -13
- data/src/core/client_channel/config_selector.h +2 -7
- data/src/core/client_channel/direct_channel.cc +5 -1
- data/src/core/client_channel/direct_channel.h +3 -1
- 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/{filter/blackboard.cc → config/experiment_env_var.cc} +11 -14
- data/src/core/config/experiment_env_var.h +26 -0
- 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/credentials/transport/ssl/ssl_security_connector.cc +14 -2
- data/src/core/credentials/transport/tls/grpc_tls_certificate_selector.cc +172 -0
- data/src/core/credentials/transport/tls/grpc_tls_certificate_selector.h +103 -0
- data/src/core/credentials/transport/tls/load_system_roots_fallback.cc +3 -2
- data/src/core/credentials/transport/tls/load_system_roots_supported.cc +10 -3
- data/src/core/credentials/transport/tls/tls_security_connector.cc +14 -2
- data/src/core/credentials/transport/xds/xds_credentials.cc +4 -12
- 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/http/message_compress/compression_filter.cc +25 -32
- data/src/core/ext/filters/http/message_compress/compression_filter.h +0 -1
- 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/rbac/rbac_service_config_parser.cc +2 -1
- 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 +184 -54
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +10 -1
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +132 -18
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +1 -0
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +3 -3
- data/src/core/ext/transport/chttp2/transport/flow_control.h +14 -2
- data/src/core/ext/transport/chttp2/transport/flow_control_manager.h +2 -4
- data/src/core/ext/transport/chttp2/transport/frame.cc +120 -13
- data/src/core/ext/transport/chttp2/transport/frame.h +57 -10
- data/src/core/ext/transport/chttp2/transport/frame_data.cc +34 -2
- data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +55 -23
- data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -0
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -1
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +13 -7
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -1
- data/src/core/ext/transport/chttp2/transport/frame_security.cc +10 -1
- data/src/core/ext/transport/chttp2/transport/frame_security.h +2 -1
- data/src/core/ext/transport/chttp2/transport/frame_settings.cc +4 -1
- data/src/core/ext/transport/chttp2/transport/goaway.cc +11 -1
- data/src/core/ext/transport/chttp2/transport/goaway.h +17 -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 +42 -1
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +4 -1
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +219 -417
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +49 -29
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.cc +2073 -0
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.h +746 -0
- data/src/core/ext/transport/chttp2/transport/http2_settings.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +49 -15
- data/src/core/ext/transport/chttp2/transport/http2_settings_manager.h +0 -2
- data/src/core/ext/transport/chttp2/transport/http2_settings_promises.h +74 -26
- data/src/core/ext/transport/chttp2/transport/http2_transport.cc +39 -15
- data/src/core/ext/transport/chttp2/transport/http2_transport.h +18 -48
- data/src/core/ext/transport/chttp2/transport/internal.h +24 -0
- data/src/core/ext/transport/chttp2/transport/message_assembler.h +1 -2
- data/src/core/ext/transport/chttp2/transport/parsing.cc +93 -26
- data/src/core/ext/transport/chttp2/transport/ping_promise.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +4 -10
- data/src/core/ext/transport/chttp2/transport/read_context.h +494 -0
- data/src/core/ext/transport/chttp2/transport/security_frame.h +13 -3
- data/src/core/ext/transport/chttp2/transport/stream.h +287 -137
- data/src/core/ext/transport/chttp2/transport/stream_data_queue.h +83 -65
- 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 +60 -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 +90 -4
- data/src/core/lib/channel/promise_based_filter.h +241 -188
- data/src/core/lib/compression/message_compress.cc +132 -97
- data/src/core/lib/compression/message_compress.h +24 -0
- data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +0 -13
- data/src/core/lib/event_engine/extensions/receive_coalescing_extension.h +44 -0
- data/src/core/lib/event_engine/extensions/tcp_trace.h +1 -1
- 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 +9 -18
- 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/shim.cc +2 -16
- data/src/core/lib/event_engine/shim.h +0 -4
- 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 +318 -183
- data/src/core/lib/experiments/experiments.h +186 -93
- data/src/core/lib/iomgr/buffer_list.h +1 -1
- data/src/core/lib/iomgr/error.cc +3 -73
- data/src/core/lib/iomgr/error.h +8 -6
- data/src/core/lib/iomgr/error_cfstream.cc +1 -2
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +3 -7
- data/src/core/lib/iomgr/ev_poll_posix.cc +2 -6
- data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +2 -2
- data/src/core/lib/iomgr/tcp_posix.cc +4 -7
- 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/security/authorization/audit_logging.cc +2 -2
- data/src/core/lib/security/authorization/audit_logging.h +3 -3
- data/src/core/lib/security/authorization/grpc_authorization_engine.cc +11 -13
- data/src/core/lib/security/authorization/grpc_authorization_engine.h +1 -1
- data/src/core/lib/security/authorization/matchers.cc +20 -20
- data/src/core/lib/security/authorization/matchers.h +15 -16
- data/src/core/lib/security/authorization/rbac_policy.h +1 -1
- data/src/core/lib/security/authorization/stdout_logger.cc +3 -3
- data/src/core/lib/security/authorization/stdout_logger.h +6 -5
- data/src/core/lib/surface/call.cc +6 -9
- data/src/core/lib/surface/call.h +11 -0
- data/src/core/lib/surface/channel.cc +21 -2
- data/src/core/lib/surface/channel.h +14 -6
- data/src/core/lib/surface/filter_stack_call.cc +10 -29
- data/src/core/lib/surface/legacy_channel.cc +9 -7
- data/src/core/lib/surface/legacy_channel.h +3 -1
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.cc +13 -13
- data/src/core/lib/transport/bdp_estimator.h +9 -5
- data/src/core/lib/transport/error_utils.cc +26 -138
- data/src/core/lib/transport/promise_endpoint.h +8 -8
- data/src/core/lib/transport/transport.h +31 -4
- data/src/core/load_balancing/grpclb/grpclb.cc +2 -1
- data/src/core/load_balancing/pick_first/pick_first.cc +33 -2
- data/src/core/load_balancing/pick_first/pick_first.h +6 -0
- data/src/core/load_balancing/ring_hash/ring_hash.cc +3 -10
- data/src/core/load_balancing/rls/rls.cc +2 -1
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +141 -74
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.h +88 -0
- data/src/core/load_balancing/xds/cds.cc +80 -56
- data/src/core/load_balancing/xds/cds.h +21 -0
- data/src/core/mitigation_engine/mitigation.h +53 -0
- data/src/core/mitigation_engine/mitigation_engine.h +81 -0
- data/src/core/mitigation_engine/mitigation_provider.h +62 -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/dns/dns_resolver_plugin.cc +1 -6
- data/src/core/resolver/xds/xds_resolver.cc +37 -144
- data/src/core/server/server.cc +40 -18
- data/src/core/server/server.h +26 -18
- data/src/core/server/server_config_selector.h +5 -4
- data/src/core/server/server_config_selector_filter.cc +135 -26
- data/src/core/server/server_config_selector_filter.h +1 -0
- data/src/core/server/xds_server_config_fetcher.cc +687 -692
- data/src/core/server/xds_server_config_fetcher_legacy.cc +1336 -0
- data/src/core/telemetry/call_tracer.cc +49 -2
- data/src/core/telemetry/call_tracer.h +1 -0
- data/src/core/telemetry/histogram.h +10 -89
- data/src/core/telemetry/instrument.h +42 -28
- data/src/core/telemetry/tcp_tracer.h +38 -0
- 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/alts/handshaker/alts_handshaker_client.cc +1 -1
- data/src/core/tsi/ssl_telemetry_utils.cc +343 -0
- data/src/core/tsi/ssl_telemetry_utils.h +74 -0
- data/src/core/tsi/ssl_transport_security.cc +583 -305
- data/src/core/tsi/ssl_transport_security.h +22 -6
- data/src/core/tsi/ssl_transport_security_utils.cc +2 -0
- data/src/core/tsi/transport_security.h +7 -0
- data/src/core/util/http_client/httpcli.cc +1 -4
- data/src/core/util/http_client/httpcli_security_connector.cc +2 -1
- 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/status_helper.cc +71 -192
- data/src/core/util/status_helper.h +16 -21
- 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/file_watcher_certificate_provider_factory.cc +2 -11
- data/src/core/xds/grpc/xds_bootstrap_grpc.cc +2 -7
- data/src/core/xds/grpc/xds_cluster_parser.cc +5 -16
- data/src/core/xds/grpc/xds_common_types.cc +96 -0
- data/src/core/xds/grpc/xds_common_types.h +35 -7
- data/src/core/xds/grpc/xds_common_types_parser.cc +205 -134
- data/src/core/xds/grpc/xds_common_types_parser.h +18 -1
- data/src/core/xds/grpc/xds_endpoint_parser.cc +7 -18
- 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 +2 -12
- 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_rbac_filter.cc +3 -12
- 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_metadata_parser.cc +0 -2
- data/src/core/xds/grpc/xds_route_config.h +1 -1
- data/src/core/xds/grpc/xds_route_config_parser.cc +10 -16
- data/src/core/xds/grpc/xds_routing.cc +115 -90
- data/src/core/xds/grpc/xds_routing.h +73 -24
- data/src/core/xds/grpc/xds_server_grpc.cc +22 -13
- data/src/core/xds/grpc/xds_server_grpc.h +16 -2
- data/src/core/xds/grpc/xds_server_grpc_interface.h +10 -0
- data/src/core/xds/grpc/xds_transport_grpc.cc +123 -18
- data/src/core/xds/grpc/xds_transport_grpc.h +28 -4
- data/src/core/xds/xds_client/lrs_client.cc +4 -8
- data/src/core/xds/xds_client/xds_bootstrap.cc +4 -16
- data/src/core/xds/xds_client/xds_client.cc +2 -15
- data/src/core/xds/xds_client/xds_transport.h +3 -0
- 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/pb/src/proto/grpc/testing/messages_pb.rb +1 -1
- 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 +35 -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/third_party/upb/upb/message/internal/tagged_ptr.h +0 -56
- data/third_party/upb/upb/message/tagged_ptr.h +0 -48
|
@@ -25,168 +25,203 @@
|
|
|
25
25
|
#include <zconf.h>
|
|
26
26
|
#include <zlib.h>
|
|
27
27
|
|
|
28
|
+
#include <algorithm>
|
|
29
|
+
#include <cstdint>
|
|
30
|
+
#include <optional>
|
|
31
|
+
|
|
28
32
|
#include "src/core/lib/slice/slice.h"
|
|
29
33
|
#include "src/core/util/grpc_check.h"
|
|
34
|
+
#include "src/core/util/status_helper.h"
|
|
30
35
|
#include "absl/log/log.h"
|
|
36
|
+
#include "absl/status/status.h"
|
|
37
|
+
#include "absl/status/statusor.h"
|
|
31
38
|
|
|
32
39
|
#define OUTPUT_BLOCK_SIZE 1024
|
|
33
40
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
41
|
+
namespace grpc_core {
|
|
42
|
+
namespace {
|
|
43
|
+
|
|
44
|
+
absl::StatusOr<SliceBuffer> ZlibBody(z_stream* zs, const SliceBuffer& input,
|
|
45
|
+
int (*flate)(z_stream* zs, int flush),
|
|
46
|
+
std::optional<uint32_t> max_output_size) {
|
|
37
47
|
int r = Z_STREAM_END; // Do not fail on an empty input.
|
|
38
48
|
int flush;
|
|
39
49
|
size_t i;
|
|
40
|
-
|
|
50
|
+
uint32_t remaining_output_size = max_output_size.value_or(UINT32_MAX);
|
|
51
|
+
SliceBuffer output_sb;
|
|
41
52
|
const uInt uint_max = ~uInt{0};
|
|
53
|
+
auto outbuf = MutableSlice::CreateUninitialized(
|
|
54
|
+
std::min<uint32_t>(remaining_output_size, OUTPUT_BLOCK_SIZE));
|
|
42
55
|
|
|
43
|
-
GRPC_CHECK(
|
|
44
|
-
zs->avail_out = static_cast<uInt>
|
|
45
|
-
zs->next_out =
|
|
56
|
+
GRPC_CHECK(outbuf.length() <= uint_max);
|
|
57
|
+
zs->avail_out = static_cast<uInt>(outbuf.length());
|
|
58
|
+
zs->next_out = const_cast<uint8_t*>(outbuf.begin());
|
|
46
59
|
flush = Z_NO_FLUSH;
|
|
47
|
-
for (i = 0; i < input
|
|
48
|
-
if (i == input
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
60
|
+
for (i = 0; i < input.Count(); i++) {
|
|
61
|
+
if (i == input.Count() - 1) {
|
|
62
|
+
flush = Z_FINISH;
|
|
63
|
+
}
|
|
64
|
+
GRPC_CHECK(input[i].length() <= uint_max);
|
|
65
|
+
zs->avail_in = static_cast<uInt>(input[i].length());
|
|
66
|
+
zs->next_in = const_cast<uint8_t*>(input[i].begin());
|
|
52
67
|
do {
|
|
53
68
|
if (zs->avail_out == 0) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
69
|
+
if (max_output_size.has_value() && remaining_output_size == 0) {
|
|
70
|
+
VLOG(2) << "zlib: max provided output size exceeded";
|
|
71
|
+
return absl::ResourceExhaustedError(
|
|
72
|
+
"Decompressed message larger than max");
|
|
73
|
+
}
|
|
74
|
+
output_sb.AppendIndexed(Slice(std::move(outbuf)));
|
|
75
|
+
outbuf = MutableSlice::CreateUninitialized(
|
|
76
|
+
std::min<uint32_t>(remaining_output_size, OUTPUT_BLOCK_SIZE));
|
|
77
|
+
// Update remaining output size to reflect the size of the slice we just
|
|
78
|
+
// filled with compressed / decompressed data.
|
|
79
|
+
if (max_output_size.has_value()) {
|
|
80
|
+
remaining_output_size -= outbuf.length();
|
|
81
|
+
}
|
|
82
|
+
GRPC_CHECK(outbuf.length() <= uint_max);
|
|
83
|
+
zs->avail_out = static_cast<uInt>(outbuf.length());
|
|
84
|
+
zs->next_out = const_cast<uint8_t*>(outbuf.begin());
|
|
59
85
|
}
|
|
60
86
|
r = flate(zs, flush);
|
|
61
87
|
if (r < 0 && r != Z_BUF_ERROR /* not fatal */) {
|
|
62
88
|
VLOG(2) << "zlib error (" << r << ")";
|
|
63
|
-
|
|
89
|
+
return absl::InternalError("Decompression failed due to zlib error");
|
|
64
90
|
}
|
|
65
91
|
} while (zs->avail_out == 0);
|
|
66
92
|
if (zs->avail_in) {
|
|
67
93
|
VLOG(2) << "zlib: not all input consumed";
|
|
68
|
-
|
|
94
|
+
return absl::InternalError(
|
|
95
|
+
"Decompression failed due to not all input "
|
|
96
|
+
"consumed");
|
|
69
97
|
}
|
|
70
98
|
}
|
|
71
99
|
if (r != Z_STREAM_END) {
|
|
72
100
|
VLOG(2) << "zlib: Data error";
|
|
73
|
-
|
|
101
|
+
return absl::InternalError("Decompression failed due to data error");
|
|
74
102
|
}
|
|
75
103
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
104
|
+
// TODO(vigneshbabu): Add a Truncate() method to the Slice type to avoid using
|
|
105
|
+
// the underlying C type here.
|
|
106
|
+
grpc_slice slice = outbuf.TakeCSlice();
|
|
107
|
+
if (slice.refcount) {
|
|
108
|
+
slice.data.refcounted.length -= zs->avail_out;
|
|
109
|
+
} else {
|
|
110
|
+
slice.data.inlined.length -= zs->avail_out;
|
|
111
|
+
}
|
|
112
|
+
output_sb.AppendIndexed(Slice(slice));
|
|
113
|
+
return output_sb;
|
|
85
114
|
}
|
|
86
115
|
|
|
87
|
-
|
|
88
|
-
unsigned int size) {
|
|
116
|
+
void* ZallocGpr(void* /*opaque*/, unsigned int items, unsigned int size) {
|
|
89
117
|
return gpr_malloc(items * size);
|
|
90
118
|
}
|
|
91
119
|
|
|
92
|
-
|
|
120
|
+
void ZFreeGpr(void* /*opaque*/, void* address) { gpr_free(address); }
|
|
93
121
|
|
|
94
|
-
|
|
95
|
-
int gzip) {
|
|
122
|
+
std::optional<SliceBuffer> ZlibCompress(const SliceBuffer& input, int gzip) {
|
|
96
123
|
z_stream zs;
|
|
97
|
-
|
|
98
|
-
size_t i;
|
|
99
|
-
size_t count_before = output->count;
|
|
100
|
-
size_t length_before = output->length;
|
|
124
|
+
absl::StatusOr<SliceBuffer> compression_result;
|
|
101
125
|
memset(&zs, 0, sizeof(zs));
|
|
102
|
-
zs.zalloc =
|
|
103
|
-
zs.zfree =
|
|
104
|
-
r = deflateInit2(&zs, Z_DEFAULT_COMPRESSION, Z_DEFLATED,
|
|
105
|
-
|
|
126
|
+
zs.zalloc = ZallocGpr;
|
|
127
|
+
zs.zfree = ZFreeGpr;
|
|
128
|
+
bool r = deflateInit2(&zs, Z_DEFAULT_COMPRESSION, Z_DEFLATED,
|
|
129
|
+
15 | (gzip ? 16 : 0), 8, Z_DEFAULT_STRATEGY);
|
|
106
130
|
GRPC_CHECK(r == Z_OK);
|
|
107
|
-
|
|
108
|
-
if (!r) {
|
|
109
|
-
for (i = count_before; i < output->count; i++) {
|
|
110
|
-
grpc_core::CSliceUnref(output->slices[i]);
|
|
111
|
-
}
|
|
112
|
-
output->count = count_before;
|
|
113
|
-
output->length = length_before;
|
|
114
|
-
}
|
|
131
|
+
compression_result = ZlibBody(&zs, input, deflate, input.Length());
|
|
115
132
|
deflateEnd(&zs);
|
|
116
|
-
|
|
133
|
+
if (compression_result.ok() &&
|
|
134
|
+
compression_result->Length() < input.Length()) {
|
|
135
|
+
return std::move(*compression_result);
|
|
136
|
+
}
|
|
137
|
+
return std::nullopt;
|
|
117
138
|
}
|
|
118
139
|
|
|
119
|
-
|
|
120
|
-
|
|
140
|
+
absl::StatusOr<SliceBuffer> ZlibDecompress(
|
|
141
|
+
const SliceBuffer& input, int gzip,
|
|
142
|
+
std::optional<uint32_t> max_output_size) {
|
|
121
143
|
z_stream zs;
|
|
122
|
-
|
|
123
|
-
size_t i;
|
|
124
|
-
size_t count_before = output->count;
|
|
125
|
-
size_t length_before = output->length;
|
|
144
|
+
absl::StatusOr<SliceBuffer> decompression_result;
|
|
126
145
|
memset(&zs, 0, sizeof(zs));
|
|
127
|
-
zs.zalloc =
|
|
128
|
-
zs.zfree =
|
|
129
|
-
r = inflateInit2(&zs, 15 | (gzip ? 16 : 0));
|
|
146
|
+
zs.zalloc = ZallocGpr;
|
|
147
|
+
zs.zfree = ZFreeGpr;
|
|
148
|
+
bool r = inflateInit2(&zs, 15 | (gzip ? 16 : 0));
|
|
130
149
|
GRPC_CHECK(r == Z_OK);
|
|
131
|
-
|
|
132
|
-
if (!r) {
|
|
133
|
-
for (i = count_before; i < output->count; i++) {
|
|
134
|
-
grpc_core::CSliceUnref(output->slices[i]);
|
|
135
|
-
}
|
|
136
|
-
output->count = count_before;
|
|
137
|
-
output->length = length_before;
|
|
138
|
-
}
|
|
150
|
+
decompression_result = ZlibBody(&zs, input, inflate, max_output_size);
|
|
139
151
|
inflateEnd(&zs);
|
|
140
|
-
return
|
|
152
|
+
return decompression_result;
|
|
141
153
|
}
|
|
142
154
|
|
|
143
|
-
|
|
144
|
-
size_t i;
|
|
145
|
-
for (i = 0; i < input->count; i++) {
|
|
146
|
-
grpc_slice_buffer_add(output, grpc_core::CSliceRef(input->slices[i]));
|
|
147
|
-
}
|
|
148
|
-
return 1;
|
|
149
|
-
}
|
|
155
|
+
} // namespace
|
|
150
156
|
|
|
151
|
-
|
|
152
|
-
|
|
157
|
+
std::optional<SliceBuffer> MessageCompress(grpc_compression_algorithm algorithm,
|
|
158
|
+
const SliceBuffer& input) {
|
|
153
159
|
switch (algorithm) {
|
|
154
160
|
case GRPC_COMPRESS_NONE:
|
|
155
161
|
// the fallback path always needs to be send uncompressed: we simply
|
|
156
162
|
// rely on that here
|
|
157
|
-
return
|
|
163
|
+
return std::nullopt;
|
|
158
164
|
case GRPC_COMPRESS_DEFLATE:
|
|
159
|
-
return
|
|
165
|
+
return ZlibCompress(input, 0);
|
|
160
166
|
case GRPC_COMPRESS_GZIP:
|
|
161
|
-
return
|
|
167
|
+
return ZlibCompress(input, 1);
|
|
162
168
|
case GRPC_COMPRESS_ALGORITHMS_COUNT:
|
|
163
169
|
break;
|
|
164
170
|
}
|
|
165
171
|
LOG(ERROR) << "invalid compression algorithm " << algorithm;
|
|
166
|
-
return
|
|
172
|
+
return std::nullopt;
|
|
167
173
|
}
|
|
168
174
|
|
|
175
|
+
absl::StatusOr<SliceBuffer> MessageDecompress(
|
|
176
|
+
grpc_compression_algorithm algorithm, const SliceBuffer& input,
|
|
177
|
+
std::optional<uint32_t> max_output_size) {
|
|
178
|
+
switch (algorithm) {
|
|
179
|
+
case GRPC_COMPRESS_NONE: {
|
|
180
|
+
SliceBuffer output;
|
|
181
|
+
output.Append(input);
|
|
182
|
+
return output;
|
|
183
|
+
}
|
|
184
|
+
case GRPC_COMPRESS_DEFLATE:
|
|
185
|
+
return ZlibDecompress(input, 0, max_output_size);
|
|
186
|
+
case GRPC_COMPRESS_GZIP:
|
|
187
|
+
return ZlibDecompress(input, 1, max_output_size);
|
|
188
|
+
case GRPC_COMPRESS_ALGORITHMS_COUNT:
|
|
189
|
+
break;
|
|
190
|
+
}
|
|
191
|
+
LOG(ERROR) << "invalid compression algorithm " << algorithm;
|
|
192
|
+
return absl::InternalError("Invalid compression algorithm");
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
} // namespace grpc_core
|
|
196
|
+
|
|
169
197
|
int grpc_msg_compress(grpc_compression_algorithm algorithm,
|
|
170
198
|
grpc_slice_buffer* input, grpc_slice_buffer* output) {
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
199
|
+
int retval = 1;
|
|
200
|
+
grpc_core::SliceBuffer input_sb;
|
|
201
|
+
grpc_slice_buffer_swap(input, input_sb.c_slice_buffer());
|
|
202
|
+
std::optional<grpc_core::SliceBuffer> output_sb =
|
|
203
|
+
grpc_core::MessageCompress(algorithm, input_sb);
|
|
204
|
+
if (!output_sb.has_value()) {
|
|
205
|
+
output_sb.emplace();
|
|
206
|
+
output_sb->Append(input_sb);
|
|
207
|
+
retval = 0;
|
|
174
208
|
}
|
|
175
|
-
|
|
209
|
+
grpc_slice_buffer_swap(input, input_sb.c_slice_buffer());
|
|
210
|
+
grpc_slice_buffer_swap(output, output_sb->c_slice_buffer());
|
|
211
|
+
return retval;
|
|
176
212
|
}
|
|
177
213
|
|
|
178
214
|
int grpc_msg_decompress(grpc_compression_algorithm algorithm,
|
|
179
215
|
grpc_slice_buffer* input, grpc_slice_buffer* output) {
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
case GRPC_COMPRESS_ALGORITHMS_COUNT:
|
|
188
|
-
break;
|
|
216
|
+
grpc_core::SliceBuffer input_sb;
|
|
217
|
+
grpc_slice_buffer_swap(input, input_sb.c_slice_buffer());
|
|
218
|
+
|
|
219
|
+
absl::StatusOr<grpc_core::SliceBuffer> output_sb =
|
|
220
|
+
grpc_core::MessageDecompress(algorithm, input_sb, std::nullopt);
|
|
221
|
+
if (!output_sb.ok()) {
|
|
222
|
+
return 0;
|
|
189
223
|
}
|
|
190
|
-
|
|
191
|
-
|
|
224
|
+
grpc_slice_buffer_swap(input, input_sb.c_slice_buffer());
|
|
225
|
+
grpc_slice_buffer_swap(output, output_sb->c_slice_buffer());
|
|
226
|
+
return 1;
|
|
192
227
|
}
|
|
@@ -23,6 +23,13 @@
|
|
|
23
23
|
#include <grpc/slice.h>
|
|
24
24
|
#include <grpc/support/port_platform.h>
|
|
25
25
|
|
|
26
|
+
#include <cstdint>
|
|
27
|
+
#include <optional>
|
|
28
|
+
|
|
29
|
+
#include "src/core/lib/slice/slice_buffer.h"
|
|
30
|
+
#include "absl/status/status.h"
|
|
31
|
+
#include "absl/status/statusor.h"
|
|
32
|
+
|
|
26
33
|
// compress 'input' to 'output' using 'algorithm'.
|
|
27
34
|
// On success, appends compressed slices to output and returns 1.
|
|
28
35
|
// On failure, appends uncompressed slices to output and returns 0.
|
|
@@ -35,4 +42,21 @@ int grpc_msg_compress(grpc_compression_algorithm algorithm,
|
|
|
35
42
|
int grpc_msg_decompress(grpc_compression_algorithm algorithm,
|
|
36
43
|
grpc_slice_buffer* input, grpc_slice_buffer* output);
|
|
37
44
|
|
|
45
|
+
namespace grpc_core {
|
|
46
|
+
|
|
47
|
+
// Compresses 'input' using 'algorithm'.
|
|
48
|
+
// On success, returns a SliceBuffer containing the compressed data.
|
|
49
|
+
// On failure, returns nullopt.
|
|
50
|
+
std::optional<SliceBuffer> MessageCompress(grpc_compression_algorithm algorithm,
|
|
51
|
+
const SliceBuffer& input);
|
|
52
|
+
// Decompresses 'input'.
|
|
53
|
+
// On success, returns a SliceBuffer containing the decompressed data.
|
|
54
|
+
// On failure, returns a non-OK status.
|
|
55
|
+
// Fails if the decompressed data would be larger than max_output_size.
|
|
56
|
+
absl::StatusOr<SliceBuffer> MessageDecompress(
|
|
57
|
+
grpc_compression_algorithm algorithm, const SliceBuffer& input,
|
|
58
|
+
std::optional<uint32_t> max_output_size);
|
|
59
|
+
|
|
60
|
+
} // namespace grpc_core
|
|
61
|
+
|
|
38
62
|
#endif // GRPC_SRC_CORE_LIB_COMPRESSION_MESSAGE_COMPRESS_H
|
|
@@ -42,19 +42,6 @@ class ChaoticGoodExtension {
|
|
|
42
42
|
/// one provided to it through the channel args. It is safe to call this
|
|
43
43
|
/// only when there are no outstanding Reads on the Endpoint.
|
|
44
44
|
virtual void UseMemoryQuota(grpc_core::MemoryQuotaRefPtr mem_quota) = 0;
|
|
45
|
-
|
|
46
|
-
/// Forces the endpoint to receive rpcs in one contiguous block of memory.
|
|
47
|
-
/// It is safe to call this only when there are no outstanding Reads on
|
|
48
|
-
/// the Endpoint.
|
|
49
|
-
virtual void EnableRpcReceiveCoalescing() = 0;
|
|
50
|
-
|
|
51
|
-
/// Disables rpc receive coalescing until it is explicitly enabled again.
|
|
52
|
-
/// It is safe to call this only when there are no outstanding Reads on
|
|
53
|
-
/// the Endpoint.
|
|
54
|
-
virtual void DisableRpcReceiveCoalescing() = 0;
|
|
55
|
-
/// If invoked, the endpoint tries to preserve proper order and alignment of
|
|
56
|
-
/// any memory that maybe shared across reads.
|
|
57
|
-
virtual void EnforceRxMemoryAlignment() = 0;
|
|
58
45
|
};
|
|
59
46
|
|
|
60
47
|
} // namespace grpc_event_engine::experimental
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// Copyright 2026 The gRPC Authors
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// You may obtain a copy of the License at
|
|
6
|
+
//
|
|
7
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
//
|
|
9
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
// See the License for the specific language governing permissions and
|
|
13
|
+
// limitations under the License.
|
|
14
|
+
|
|
15
|
+
#ifndef GRPC_SRC_CORE_LIB_EVENT_ENGINE_EXTENSIONS_RECEIVE_COALESCING_EXTENSION_H
|
|
16
|
+
#define GRPC_SRC_CORE_LIB_EVENT_ENGINE_EXTENSIONS_RECEIVE_COALESCING_EXTENSION_H
|
|
17
|
+
|
|
18
|
+
#include "absl/strings/string_view.h"
|
|
19
|
+
|
|
20
|
+
namespace grpc_event_engine::experimental {
|
|
21
|
+
|
|
22
|
+
/// An Endpoint extension class that will be supported by EventEngine endpoints
|
|
23
|
+
/// which need to work with receive coalescing.
|
|
24
|
+
class ReceiveCoalescingExtension {
|
|
25
|
+
public:
|
|
26
|
+
virtual ~ReceiveCoalescingExtension() = default;
|
|
27
|
+
static absl::string_view EndpointExtensionName() {
|
|
28
|
+
return "io.grpc.event_engine.extension.receive_coalescing_extension";
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/// Forces the endpoint to receive rpcs in one contiguous block of memory.
|
|
32
|
+
/// It is safe to call this only when there are no outstanding Reads on
|
|
33
|
+
/// the Endpoint.
|
|
34
|
+
virtual void EnableRpcReceiveCoalescing() = 0;
|
|
35
|
+
|
|
36
|
+
/// Disables rpc receive coalescing until it is explicitly enabled again.
|
|
37
|
+
/// It is safe to call this only when there are no outstanding Reads on
|
|
38
|
+
/// the Endpoint.
|
|
39
|
+
virtual void DisableRpcReceiveCoalescing() = 0;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
} // namespace grpc_event_engine::experimental
|
|
43
|
+
|
|
44
|
+
#endif // GRPC_SRC_CORE_LIB_EVENT_ENGINE_EXTENSIONS_RECEIVE_COALESCING_EXTENSION_H
|
|
@@ -36,7 +36,7 @@ class TcpTraceExtension {
|
|
|
36
36
|
// Enable TCP telemetry collection using the Instrumentation API.
|
|
37
37
|
virtual void EnableTcpTelemetry(
|
|
38
38
|
grpc_core::RefCountedPtr<grpc_core::CollectionScope> collection_scope,
|
|
39
|
-
bool is_control_endpoint) = 0;
|
|
39
|
+
bool is_control_endpoint, bool trace_full_buffer) = 0;
|
|
40
40
|
};
|
|
41
41
|
|
|
42
42
|
} // namespace grpc_event_engine::experimental
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
|
|
23
23
|
#include "src/core/lib/event_engine/extensions/can_track_errors.h"
|
|
24
24
|
#include "src/core/lib/event_engine/extensions/chaotic_good_extension.h"
|
|
25
|
+
#include "src/core/lib/event_engine/extensions/receive_coalescing_extension.h"
|
|
25
26
|
#include "src/core/lib/event_engine/extensions/supports_fd.h"
|
|
26
27
|
#include "src/core/lib/event_engine/query_extensions.h"
|
|
27
28
|
|
|
@@ -31,6 +32,7 @@ namespace grpc_event_engine::experimental {
|
|
|
31
32
|
/// may implement to support additional chaotic good related functionality.
|
|
32
33
|
class PosixEndpointWithChaoticGoodSupport
|
|
33
34
|
: public ExtendedType<EventEngine::Endpoint, ChaoticGoodExtension,
|
|
35
|
+
ReceiveCoalescingExtension,
|
|
34
36
|
EndpointSupportsFdExtension,
|
|
35
37
|
EndpointCanTrackErrorsExtension> {};
|
|
36
38
|
|
|
@@ -95,7 +95,8 @@ NativePosixDNSResolver::NativePosixDNSResolver(
|
|
|
95
95
|
void NativePosixDNSResolver::LookupHostname(
|
|
96
96
|
EventEngine::DNSResolver::LookupHostnameCallback on_resolved,
|
|
97
97
|
absl::string_view name, absl::string_view default_port) {
|
|
98
|
-
event_engine_->Run([name = std::string(name),
|
|
98
|
+
event_engine_->Run([name = std::string(name),
|
|
99
|
+
default_port = std::string(default_port),
|
|
99
100
|
on_resolved = std::move(on_resolved)]() mutable {
|
|
100
101
|
on_resolved(LookupHostnameBlocking(name, default_port));
|
|
101
102
|
});
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
#include <memory>
|
|
30
30
|
#include <optional>
|
|
31
31
|
#include <string>
|
|
32
|
+
#include <utility>
|
|
32
33
|
|
|
33
34
|
#include "src/core/lib/debug/trace.h"
|
|
34
35
|
#include "src/core/lib/event_engine/posix_engine/event_poller.h"
|
|
@@ -44,7 +45,6 @@
|
|
|
44
45
|
#include "src/core/util/load_file.h"
|
|
45
46
|
#include "src/core/util/ref_counted_ptr.h"
|
|
46
47
|
#include "src/core/util/status_helper.h"
|
|
47
|
-
#include "src/core/util/strerror.h"
|
|
48
48
|
#include "src/core/util/sync.h"
|
|
49
49
|
#include "absl/functional/any_invocable.h"
|
|
50
50
|
#include "absl/log/log.h"
|
|
@@ -136,10 +136,11 @@ uint64_t ParseUlimitMemLockFromFile(std::string file_name) {
|
|
|
136
136
|
return 0;
|
|
137
137
|
}
|
|
138
138
|
// Find position of next newline after prefix.
|
|
139
|
-
size_t end = file_contents.find(
|
|
139
|
+
size_t end = file_contents.find('\n', start);
|
|
140
140
|
// Extract substring between prefix and next newline.
|
|
141
|
+
size_t value_start = start + kHardMemlockPrefix.length() + 1;
|
|
141
142
|
auto memlock_value_string = file_contents.substr(
|
|
142
|
-
|
|
143
|
+
value_start, end == std::string::npos ? end : end - value_start);
|
|
143
144
|
rtrim(memlock_value_string);
|
|
144
145
|
if (memlock_value_string == "unlimited" ||
|
|
145
146
|
memlock_value_string == "infinity") {
|
|
@@ -370,8 +371,8 @@ bool PosixEndpointImpl::TcpDoRead(absl::Status& status) {
|
|
|
370
371
|
} else if (read_bytes == 0) {
|
|
371
372
|
status = TcpAnnotateError(absl::InternalError("Socket closed"));
|
|
372
373
|
} else {
|
|
373
|
-
status = TcpAnnotateError(
|
|
374
|
-
absl::StrCat("recvmsg:",
|
|
374
|
+
status = TcpAnnotateError(
|
|
375
|
+
absl::InternalError(absl::StrCat("recvmsg:", res.StrError())));
|
|
375
376
|
}
|
|
376
377
|
return true;
|
|
377
378
|
}
|
|
@@ -892,7 +893,7 @@ bool PosixEndpointImpl::WriteWithTimestamps(struct msghdr* msg,
|
|
|
892
893
|
traced_buffers_.AddNewEntry(
|
|
893
894
|
static_cast<uint32_t>(bytes_counter_ + sending_length),
|
|
894
895
|
&poller_->posix_interface(), handle_->WrappedFd(),
|
|
895
|
-
std::move(outgoing_buffer_write_event_sink_)
|
|
896
|
+
std::move(*outgoing_buffer_write_event_sink_));
|
|
896
897
|
outgoing_buffer_write_event_sink_.reset();
|
|
897
898
|
|
|
898
899
|
// If there was an error on sendmsg the logic in tcp_flush will handle it.
|
|
@@ -940,6 +941,7 @@ void PosixEndpointImpl::UnrefMaybePutZerocopySendRecord(
|
|
|
940
941
|
void PosixEndpointImpl::TcpShutdownTracedBufferList() {
|
|
941
942
|
if (outgoing_buffer_write_event_sink_.has_value()) {
|
|
942
943
|
traced_buffers_.Shutdown(std::move(outgoing_buffer_write_event_sink_));
|
|
944
|
+
outgoing_buffer_write_event_sink_.reset();
|
|
943
945
|
}
|
|
944
946
|
}
|
|
945
947
|
|
|
@@ -1134,6 +1136,7 @@ bool PosixEndpointImpl::TcpFlush(absl::Status& status) {
|
|
|
1134
1136
|
}
|
|
1135
1137
|
|
|
1136
1138
|
GRPC_CHECK_EQ(outgoing_byte_idx_, 0u);
|
|
1139
|
+
GRPC_CHECK_LE((static_cast<size_t>(*send_result)), sending_length);
|
|
1137
1140
|
bytes_counter_ += *send_result;
|
|
1138
1141
|
trailing = sending_length - static_cast<size_t>(*send_result);
|
|
1139
1142
|
while (trailing > 0) {
|
|
@@ -1270,7 +1273,7 @@ void PosixEndpointImpl::MaybeShutdown(
|
|
|
1270
1273
|
Unref();
|
|
1271
1274
|
}
|
|
1272
1275
|
|
|
1273
|
-
PosixEndpointImpl
|
|
1276
|
+
PosixEndpointImpl::~PosixEndpointImpl() {
|
|
1274
1277
|
FileDescriptor release_fd;
|
|
1275
1278
|
handle_->OrphanHandle(on_done_,
|
|
1276
1279
|
on_release_fd_ == nullptr ? nullptr : &release_fd, "");
|
|
@@ -1327,7 +1330,7 @@ PosixEndpointImpl::PosixEndpointImpl(EventHandle* handle,
|
|
|
1327
1330
|
<< "ulimit value is not set. Use ulimit -l <value> to set its "
|
|
1328
1331
|
<< "value.";
|
|
1329
1332
|
} else {
|
|
1330
|
-
if (posix_interface.SetSockOpt(fd, SOL_SOCKET, SO_ZEROCOPY, 1).ok()) {
|
|
1333
|
+
if (!posix_interface.SetSockOpt(fd, SOL_SOCKET, SO_ZEROCOPY, 1).ok()) {
|
|
1331
1334
|
zerocopy_enabled = false;
|
|
1332
1335
|
LOG(ERROR) << "Failed to set zerocopy options on the socket.";
|
|
1333
1336
|
}
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
#include "src/core/util/crash.h"
|
|
45
45
|
#include "src/core/util/fork.h"
|
|
46
46
|
#include "src/core/util/grpc_check.h"
|
|
47
|
+
#include "src/core/util/strerror.h"
|
|
47
48
|
#include "src/core/util/sync.h"
|
|
48
49
|
#include "src/core/util/useful.h"
|
|
49
50
|
#include "absl/base/no_destructor.h"
|
|
@@ -75,14 +76,6 @@ namespace grpc_event_engine::experimental {
|
|
|
75
76
|
|
|
76
77
|
namespace {
|
|
77
78
|
|
|
78
|
-
bool ShouldUsePosixPoller() {
|
|
79
|
-
#if defined(GRPC_PYTHON_BUILD)
|
|
80
|
-
return grpc_core::IsEventEnginePollerForPythonEnabled();
|
|
81
|
-
#else
|
|
82
|
-
return true;
|
|
83
|
-
#endif
|
|
84
|
-
}
|
|
85
|
-
|
|
86
79
|
#if GRPC_ENABLE_FORK_SUPPORT && GRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK
|
|
87
80
|
|
|
88
81
|
// Thread pool can outlive EE but we need to ensure the ordering if both
|
|
@@ -255,7 +248,7 @@ void AsyncConnect::Start(EventEngine::Duration timeout) {
|
|
|
255
248
|
fd_->NotifyOnWrite(on_writable_);
|
|
256
249
|
}
|
|
257
250
|
|
|
258
|
-
AsyncConnect
|
|
251
|
+
AsyncConnect::~AsyncConnect() { delete on_writable_; }
|
|
259
252
|
|
|
260
253
|
void AsyncConnect::OnTimeoutExpired(absl::Status status) {
|
|
261
254
|
bool done = false;
|
|
@@ -383,13 +376,13 @@ void AsyncConnect::OnWritable(absl::Status status)
|
|
|
383
376
|
return;
|
|
384
377
|
case ECONNREFUSED:
|
|
385
378
|
// This error shouldn't happen for anything other than connect().
|
|
386
|
-
status = absl::FailedPreconditionError(
|
|
379
|
+
status = absl::FailedPreconditionError(grpc_core::StrError(so_error));
|
|
387
380
|
break;
|
|
388
381
|
default:
|
|
389
382
|
// We don't really know which syscall triggered the problem here, so
|
|
390
383
|
// punt by reporting getsockopt().
|
|
391
|
-
status = absl::FailedPreconditionError(
|
|
392
|
-
|
|
384
|
+
status = absl::FailedPreconditionError(absl::StrCat(
|
|
385
|
+
"getsockopt(SO_ERROR): ", grpc_core::StrError(so_error)));
|
|
393
386
|
break;
|
|
394
387
|
}
|
|
395
388
|
}
|
|
@@ -433,10 +426,8 @@ PosixEventEngine::PosixEventEngine(const Options& options)
|
|
|
433
426
|
: connection_shards_(options.connection_shards),
|
|
434
427
|
executor_(MakeThreadPool(options.reserve_threads)),
|
|
435
428
|
timer_manager_(std::make_shared<TimerManager>(executor_)) {
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
SchedulePoller();
|
|
439
|
-
}
|
|
429
|
+
poller_ = grpc_event_engine::experimental::MakeDefaultPoller(executor_);
|
|
430
|
+
SchedulePoller();
|
|
440
431
|
}
|
|
441
432
|
|
|
442
433
|
#endif // GRPC_POSIX_SOCKET_TCP
|
|
@@ -807,7 +798,7 @@ PosixEventEngine::CreateEndpointFromUnconnectedFdInternal(
|
|
|
807
798
|
Run([on_connect = std::move(on_connect),
|
|
808
799
|
ep = absl::FailedPreconditionError(absl::StrCat(
|
|
809
800
|
"connect failed: ", "addr: ", addr_uri.value(),
|
|
810
|
-
" error: ",
|
|
801
|
+
" error: ", grpc_core::StrError(connect_errno)))]() mutable {
|
|
811
802
|
on_connect(std::move(ep));
|
|
812
803
|
});
|
|
813
804
|
return EventEngine::ConnectionHandle::kInvalid;
|
|
@@ -834,7 +825,7 @@ absl::StatusOr<std::unique_ptr<EventEngine::Endpoint>>
|
|
|
834
825
|
PosixEventEngine::CreatePosixEndpointFromFd(int fd,
|
|
835
826
|
const EndpointConfig& config,
|
|
836
827
|
MemoryAllocator memory_allocator) {
|
|
837
|
-
|
|
828
|
+
GRPC_DCHECK_GE(fd, 0);
|
|
838
829
|
if (poller_ == nullptr) {
|
|
839
830
|
return absl::FailedPreconditionError("polling is not enabled");
|
|
840
831
|
}
|
|
@@ -198,7 +198,7 @@ void PosixEngineListenerImpl::AsyncConnectionAcceptor::NotifyOnAccept(
|
|
|
198
198
|
auto peer_address = posix_interface.PeerAddress(fd.value());
|
|
199
199
|
if (!peer_address.ok()) {
|
|
200
200
|
auto listener_addr_uri = ResolvedAddressToURI(socket_.addr);
|
|
201
|
-
LOG(ERROR) << "Failed getpeername: " <<
|
|
201
|
+
LOG(ERROR) << "Failed getpeername: " << peer_address.status()
|
|
202
202
|
<< ". Dropping the connection, and continuing "
|
|
203
203
|
"to listen on "
|
|
204
204
|
<< (listener_addr_uri.ok() ? *listener_addr_uri
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
#include "src/core/util/crash.h" // IWYU pragma: keep
|
|
32
32
|
#include "src/core/util/grpc_check.h"
|
|
33
33
|
#include "src/core/util/status_helper.h"
|
|
34
|
+
#include "src/core/util/strerror.h"
|
|
34
35
|
#include "absl/cleanup/cleanup.h"
|
|
35
36
|
#include "absl/log/log.h"
|
|
36
37
|
#include "absl/status/status.h"
|
|
@@ -274,7 +275,7 @@ absl::StatusOr<int> ListenerContainerAddAllLocalAddresses(
|
|
|
274
275
|
}
|
|
275
276
|
if (getifaddrs(&ifa) != 0 || ifa == nullptr) {
|
|
276
277
|
return absl::FailedPreconditionError(
|
|
277
|
-
absl::StrCat("getifaddrs: ",
|
|
278
|
+
absl::StrCat("getifaddrs: ", grpc_core::StrError(errno)));
|
|
278
279
|
}
|
|
279
280
|
|
|
280
281
|
static const bool is_ipv4_available = [] {
|