grpc 1.81.1 → 1.82.0.pre2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Makefile +12 -9
- data/include/grpc/grpc.h +6 -7
- data/include/grpc/impl/channel_arg_names.h +3 -1
- data/src/core/call/call_filters.h +2 -2
- data/src/core/call/client_call.cc +1 -1
- data/src/core/call/interception_chain.h +6 -9
- data/src/core/call/metadata.h +1 -1
- data/src/core/call/metadata_batch.cc +1 -1
- data/src/core/call/metadata_batch.h +17 -1
- data/src/core/call/parsed_metadata.h +7 -2
- data/src/core/call/server_call.cc +4 -2
- data/src/core/call/server_call.h +9 -2
- data/src/core/call/status_util.cc +0 -4
- data/src/core/call/status_util.h +0 -3
- data/src/core/channelz/channel_trace.cc +3 -1
- data/src/core/client_channel/backup_poller.cc +1 -1
- data/src/core/client_channel/client_channel.cc +6 -14
- data/src/core/client_channel/client_channel.h +2 -2
- data/src/core/client_channel/client_channel_filter.cc +8 -17
- data/src/core/client_channel/client_channel_filter.h +2 -2
- data/src/core/client_channel/client_channel_plugin.cc +1 -1
- data/src/core/client_channel/config_selector.h +2 -7
- data/src/core/client_channel/dynamic_filters.cc +4 -7
- data/src/core/client_channel/dynamic_filters.h +1 -3
- data/src/core/client_channel/retry_filter.cc +2 -25
- data/src/core/client_channel/retry_filter.h +3 -7
- data/src/core/client_channel/retry_filter_legacy_call_data.cc +1 -1
- data/src/core/client_channel/retry_filter_legacy_call_data.h +2 -2
- data/src/core/client_channel/retry_interceptor.cc +7 -35
- data/src/core/client_channel/retry_interceptor.h +11 -14
- data/src/core/client_channel/retry_service_config.cc +0 -2
- data/src/core/client_channel/retry_service_config.h +0 -2
- data/src/core/client_channel/retry_throttle.cc +19 -7
- data/src/core/client_channel/retry_throttle.h +24 -7
- data/src/core/client_channel/subchannel.cc +1 -1
- data/src/core/credentials/call/external/external_account_credentials.cc +125 -12
- data/src/core/credentials/call/external/external_account_credentials.h +6 -1
- data/src/core/credentials/call/jwt/jwt_credentials.cc +11 -1
- data/src/core/credentials/call/jwt/jwt_credentials.h +3 -0
- data/src/core/credentials/call/oauth2/oauth2_credentials.cc +64 -11
- data/src/core/credentials/call/oauth2/oauth2_credentials.h +0 -1
- data/src/core/credentials/call/regional_access_boundary_fetcher.cc +411 -0
- data/src/core/credentials/call/regional_access_boundary_fetcher.h +158 -0
- data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.cc +1 -1
- data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.h +7 -1
- data/src/core/credentials/transport/insecure/insecure_security_connector.h +1 -1
- data/src/core/credentials/transport/local/local_security_connector.cc +1 -1
- data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +6 -0
- data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +28 -66
- data/src/core/ext/filters/fault_injection/fault_injection_filter.h +0 -8
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +24 -58
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +24 -19
- data/src/core/ext/filters/message_size/message_size_filter.cc +1 -81
- data/src/core/ext/filters/message_size/message_size_filter.h +1 -50
- data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +13 -56
- data/src/core/ext/filters/stateful_session/stateful_session_filter.h +0 -14
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +1 -1
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +175 -51
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +10 -1
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +73 -6
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +1 -0
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/flow_control.h +11 -0
- data/src/core/ext/transport/chttp2/transport/flow_control_manager.h +2 -4
- data/src/core/ext/transport/chttp2/transport/frame.cc +63 -13
- data/src/core/ext/transport/chttp2/transport/frame.h +45 -10
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -1
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +11 -3
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -1
- data/src/core/ext/transport/chttp2/transport/frame_settings.cc +4 -1
- data/src/core/ext/transport/chttp2/transport/header_assembler.h +54 -22
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +53 -5
- data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +22 -0
- data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +20 -0
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +33 -1
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +4 -1
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +118 -157
- data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +6 -13
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.cc +2187 -0
- data/src/core/ext/transport/chttp2/transport/http2_server_transport.h +748 -0
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +19 -4
- data/src/core/ext/transport/chttp2/transport/http2_settings_manager.h +0 -2
- data/src/core/ext/transport/chttp2/transport/http2_settings_promises.h +50 -17
- data/src/core/ext/transport/chttp2/transport/http2_transport.cc +13 -15
- data/src/core/ext/transport/chttp2/transport/http2_transport.h +16 -48
- data/src/core/ext/transport/chttp2/transport/internal.h +14 -0
- data/src/core/ext/transport/chttp2/transport/message_assembler.h +1 -2
- data/src/core/ext/transport/chttp2/transport/parsing.cc +82 -24
- data/src/core/ext/transport/chttp2/transport/read_context.h +452 -0
- data/src/core/ext/transport/chttp2/transport/security_frame.h +12 -3
- data/src/core/ext/transport/chttp2/transport/stream.h +25 -26
- data/src/core/ext/transport/chttp2/transport/stream_data_queue.h +6 -4
- data/src/core/ext/transport/chttp2/transport/write_cycle.h +9 -1
- data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +16 -2
- data/src/core/ext/upb-gen/cel/expr/checked.upb.h +621 -432
- data/src/core/ext/upb-gen/cel/expr/checked.upb_minitable.c +264 -166
- data/src/core/ext/upb-gen/cel/expr/checked.upb_minitable.h +0 -13
- data/src/core/ext/upb-gen/cel/expr/syntax.upb.h +708 -497
- data/src/core/ext/upb-gen/cel/expr/syntax.upb_minitable.c +294 -176
- data/src/core/ext/upb-gen/cel/expr/syntax.upb_minitable.h +0 -15
- data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +262 -181
- data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +84 -58
- data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +254 -190
- data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +107 -53
- data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +271 -190
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +88 -64
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +1035 -730
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +384 -260
- data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.h +0 -19
- data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +87 -56
- data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +26 -16
- data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +105 -71
- data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +30 -22
- data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +31 -29
- data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +19 -7
- data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +25 -23
- data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +25 -23
- data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +201 -165
- data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +79 -31
- data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +29 -26
- data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +46 -29
- data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +37 -19
- data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.h +4 -4
- data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +34 -27
- data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +34 -13
- data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +617 -452
- data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +221 -163
- data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.h +0 -16
- data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +1339 -970
- data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +484 -324
- data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.h +0 -23
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +181 -135
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +59 -43
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +1353 -1028
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +535 -361
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.h +0 -25
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +37 -33
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +19 -13
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +234 -196
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +77 -57
- data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +695 -502
- data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +246 -186
- data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.h +0 -15
- data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb.h +140 -116
- data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb_minitable.c +53 -43
- data/src/core/ext/upb-gen/envoy/config/common/mutation_rules/v3/mutation_rules.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +363 -269
- data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +131 -89
- data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +35 -31
- data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +1073 -769
- data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +515 -293
- data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.h +0 -30
- data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb.h +25 -23
- data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/envoy/config/core/v3/cel.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +375 -267
- data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +142 -86
- data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.h +0 -7
- data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +32 -27
- data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +29 -26
- data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +87 -56
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +26 -16
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +634 -468
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +255 -161
- data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.h +0 -14
- data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +672 -474
- data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +228 -130
- data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.h +0 -9
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb.h +56 -40
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +34 -29
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +811 -635
- data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +347 -221
- data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.h +0 -16
- data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +174 -118
- data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +62 -38
- data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +78 -57
- data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +28 -18
- data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb.h +37 -33
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.c +22 -14
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +159 -119
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +47 -35
- data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +101 -76
- data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +41 -23
- data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +35 -31
- data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +189 -127
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +79 -49
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +378 -283
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +156 -98
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +354 -255
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +125 -69
- data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.h +0 -6
- data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +611 -451
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +159 -119
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +0 -11
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +468 -321
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +157 -99
- data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.h +0 -6
- data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +146 -119
- data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +55 -35
- data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +61 -51
- data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +16 -16
- data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +43 -39
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +25 -13
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +341 -247
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +130 -84
- data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +452 -313
- data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +144 -100
- data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.h +0 -10
- data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +666 -493
- data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +251 -181
- data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.h +0 -12
- data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +327 -197
- data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +92 -48
- data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +3583 -2532
- data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +1340 -816
- data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +0 -60
- data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +111 -82
- data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +48 -28
- data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +548 -410
- data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +214 -148
- data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.h +0 -12
- data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +59 -50
- data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +30 -20
- data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +29 -26
- data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +60 -49
- data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +28 -20
- data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +50 -36
- data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +82 -63
- data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +27 -19
- data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +70 -58
- data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +32 -22
- data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb.h +2 -5
- data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.c +1 -1
- data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +73 -62
- data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +39 -25
- data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +49 -45
- data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +33 -13
- data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +771 -588
- data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +383 -185
- data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.h +0 -16
- data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +66 -47
- data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +31 -17
- data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/common/matching/v3/extension_matcher.upb.h +69 -58
- data/src/core/ext/upb-gen/envoy/extensions/common/matching/v3/extension_matcher.upb_minitable.c +27 -23
- data/src/core/ext/upb-gen/envoy/extensions/common/matching/v3/extension_matcher.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +151 -119
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +45 -39
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/matcher/action/v3/skip_action.upb.h +19 -17
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/matcher/action/v3/skip_action.upb_minitable.c +1 -3
- data/src/core/ext/upb-gen/envoy/extensions/filters/common/matcher/action/v3/skip_action.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/composite/v3/composite.upb.h +144 -109
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/composite/v3/composite.upb_minitable.c +46 -38
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/composite/v3/composite.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +184 -139
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +65 -35
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb.h +129 -106
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.c +69 -41
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +83 -71
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +40 -26
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +148 -101
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +45 -27
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +62 -51
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +35 -21
- data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1362 -1024
- data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +508 -336
- data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +0 -22
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb.h +21 -19
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb_minitable.c +13 -7
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/call_credentials/access_token/v3/access_token_credentials.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb.h +35 -31
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/tls/v3/tls_credentials.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/extensions/grpc_service/channel_credentials/xds/v3/xds_credentials.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +94 -74
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +35 -23
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +231 -179
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +88 -66
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +0 -6
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +21 -19
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +13 -7
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +63 -56
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +31 -19
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb.h +27 -24
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +2 -5
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.c +1 -1
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +538 -364
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +157 -95
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +150 -110
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +69 -49
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +517 -389
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +182 -116
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.h +0 -7
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +84 -62
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +30 -22
- data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +340 -256
- data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +92 -82
- data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +19 -17
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +1 -3
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +857 -566
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +288 -182
- data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.h +0 -15
- data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +105 -72
- data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +36 -22
- data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +312 -226
- data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +132 -78
- data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +82 -61
- data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +35 -19
- data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +123 -89
- data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +25 -25
- data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb.h +48 -33
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +42 -36
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +19 -13
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +101 -79
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +61 -31
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +83 -60
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +37 -19
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +56 -40
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +15 -13
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +34 -29
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +32 -27
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +13 -11
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +88 -71
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +48 -30
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +37 -30
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +1 -5
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +95 -71
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +36 -22
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +79 -56
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +26 -18
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +164 -124
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +54 -40
- data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +200 -147
- data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +47 -41
- data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.h +0 -7
- data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +160 -130
- data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +89 -47
- data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.h +0 -5
- data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +78 -62
- data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +26 -20
- data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/type/v3/http.upb.h +2 -5
- data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.c +1 -1
- data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +21 -19
- data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +13 -7
- data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +43 -36
- data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +22 -12
- data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +67 -55
- data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +36 -18
- data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +62 -51
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +33 -19
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb.h +2 -5
- data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.c +1 -1
- data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +25 -23
- data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +37 -33
- data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +19 -13
- data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/api/annotations.upb.h +15 -13
- data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +22 -7
- data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.h +1 -1
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +619 -430
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +260 -168
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.h +0 -13
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +734 -518
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +312 -182
- data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +0 -16
- data/src/core/ext/upb-gen/google/api/http.upb.h +146 -105
- data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +65 -29
- data/src/core/ext/upb-gen/google/api/http.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/google/api/httpbody.upb.h +52 -37
- data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/any.upb.h +23 -21
- data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +2236 -1514
- data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +824 -406
- data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +0 -34
- data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +23 -21
- data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +19 -17
- data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +1 -3
- data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +149 -100
- data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +59 -43
- data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +23 -21
- data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +15 -7
- data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +181 -139
- data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +99 -53
- data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.h +0 -9
- data/src/core/ext/upb-gen/google/rpc/status.upb.h +52 -37
- data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/channelz.upb.h +1553 -1157
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/channelz.upb_minitable.c +712 -410
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/channelz.upb_minitable.h +0 -39
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb.h +189 -125
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb_minitable.c +59 -35
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb.h +454 -343
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb_minitable.c +204 -130
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb_minitable.h +0 -11
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb.h +369 -243
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb_minitable.c +109 -79
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb_minitable.h +0 -7
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb.h +256 -175
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb_minitable.c +122 -68
- data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/service.upb_minitable.h +0 -8
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +71 -51
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +39 -19
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +583 -407
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +259 -145
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.h +0 -12
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +114 -84
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +52 -30
- data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +41 -34
- data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +25 -13
- data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +309 -230
- data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +123 -79
- data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.h +0 -9
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +98 -63
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +51 -23
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +505 -312
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +159 -87
- data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.h +0 -9
- data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +128 -91
- data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +82 -41
- data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.h +5 -8
- data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +36 -29
- data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +36 -13
- data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +13 -11
- data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +22 -7
- data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.h +1 -1
- data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +36 -29
- data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +36 -13
- data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +34 -27
- data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +34 -13
- data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/validate/validate.upb.h +1682 -1130
- data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +587 -247
- data/src/core/ext/upb-gen/validate/validate.upb_minitable.h +4 -27
- data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +128 -91
- data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +82 -41
- data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.h +5 -8
- data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +36 -29
- data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +36 -13
- data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +13 -11
- data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +22 -7
- data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.h +1 -1
- data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +122 -90
- data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +82 -39
- data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.h +3 -7
- data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +34 -27
- data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +34 -13
- data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.h +1 -2
- data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +21 -19
- data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +13 -7
- data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +29 -26
- data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +70 -58
- data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +32 -22
- data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +53 -34
- data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +26 -16
- data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +29 -26
- data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +37 -33
- data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +22 -14
- data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +102 -76
- data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +43 -23
- data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +33 -30
- data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +19 -11
- data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +136 -83
- data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +41 -33
- data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.h +0 -4
- data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +46 -32
- data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +20 -12
- data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +29 -26
- data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +20 -12
- data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +93 -61
- data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +28 -20
- data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +19 -17
- data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +1 -3
- data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.h +0 -1
- data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +105 -71
- data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +32 -22
- data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +430 -314
- data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +153 -123
- data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.h +0 -10
- data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +307 -199
- data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +74 -62
- data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.h +0 -6
- data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +52 -42
- data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +19 -13
- data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +95 -71
- data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +36 -22
- data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +92 -77
- data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +42 -28
- data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.h +0 -2
- data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +67 -55
- data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +36 -18
- data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.h +0 -3
- data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +29 -26
- data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +17 -11
- data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.h +0 -1
- data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +885 -855
- data/src/core/filter/composite/composite_filter.cc +10 -3
- data/src/core/filter/composite/composite_filter.h +11 -1
- data/src/core/filter/filter_args.h +4 -22
- data/src/core/handshaker/handshaker.cc +10 -2
- data/src/core/handshaker/security/secure_endpoint.cc +73 -5
- data/src/core/lib/channel/channel_args.h +12 -6
- data/src/core/lib/channel/channel_stack.cc +1 -2
- data/src/core/lib/channel/channel_stack.h +1 -7
- data/src/core/lib/channel/channel_stack_builder_impl.cc +1 -1
- data/src/core/lib/channel/channel_stack_builder_impl.h +0 -7
- data/src/core/lib/channel/promise_based_filter.cc +13 -1
- data/src/core/lib/channel/promise_based_filter.h +4 -5
- data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +0 -13
- data/src/core/lib/event_engine/extensions/receive_coalescing_extension.h +48 -0
- data/src/core/lib/event_engine/posix.h +2 -0
- data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +2 -1
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +11 -8
- data/src/core/lib/event_engine/posix_engine/posix_engine.cc +7 -6
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +1 -1
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +2 -1
- data/src/core/lib/event_engine/posix_engine/posix_interface_posix.cc +10 -10
- data/src/core/lib/event_engine/posix_engine/posix_write_event_sink.h +1 -1
- data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +1 -1
- data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +5 -4
- data/src/core/lib/experiments/experiments.cc +258 -87
- data/src/core/lib/experiments/experiments.h +130 -32
- data/src/core/lib/iomgr/buffer_list.h +1 -1
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +1 -1
- data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +2 -2
- data/src/core/lib/iomgr/tcp_posix.cc +2 -1
- data/src/core/lib/iomgr/tcp_server_posix.cc +3 -3
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +1 -1
- data/src/core/lib/promise/detail/promise_factory.h +8 -8
- data/src/core/lib/promise/interceptor_list.h +1 -1
- data/src/core/lib/promise/try_seq.h +2 -2
- data/src/core/lib/resource_quota/telemetry.cc +54 -0
- data/src/core/lib/resource_quota/telemetry.h +5 -23
- data/src/core/lib/surface/call.cc +6 -1
- data/src/core/lib/surface/call.h +9 -0
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/promise_endpoint.h +7 -5
- data/src/core/lib/transport/transport.h +31 -4
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +146 -74
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.h +88 -0
- data/src/core/mitigation_engine/mitigation_engine.h +81 -0
- data/src/core/plugin_registry/grpc_plugin_registry.cc +0 -2
- data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +0 -5
- data/src/core/resolver/xds/xds_resolver.cc +23 -133
- data/src/core/server/server.cc +40 -18
- data/src/core/server/server.h +25 -14
- data/src/core/server/server_config_selector_filter.cc +122 -0
- data/src/core/server/server_config_selector_filter.h +1 -0
- data/src/core/server/xds_server_config_fetcher.cc +6 -0
- data/src/core/server/xds_server_config_fetcher_legacy.cc +1333 -0
- data/src/core/telemetry/histogram.h +10 -89
- data/src/core/telemetry/instrument.h +42 -28
- data/src/core/transport/message_size_service_config.cc +123 -0
- data/src/core/transport/message_size_service_config.h +85 -0
- data/src/core/transport/session_endpoint.cc +29 -4
- data/src/core/transport/session_endpoint.h +4 -0
- data/src/core/tsi/alts/crypt/gsec.h +4 -2
- data/src/core/tsi/ssl_transport_security.cc +6 -4
- data/src/core/util/http_client/parser.cc +1 -1
- data/src/core/util/lru_cache.h +2 -0
- data/src/core/util/ref_counted_string.h +1 -1
- data/src/core/util/tchar.cc +13 -7
- data/src/core/util/trie_lookup.h +1 -1
- data/src/core/xds/grpc/blackboard.cc +58 -0
- data/src/core/{filter → xds/grpc}/blackboard.h +30 -11
- data/src/core/xds/grpc/xds_common_types.cc +40 -0
- data/src/core/xds/grpc/xds_common_types.h +13 -0
- data/src/core/xds/grpc/xds_common_types_parser.cc +37 -34
- data/src/core/xds/grpc/xds_endpoint_parser.cc +1 -1
- data/src/core/xds/grpc/xds_http_composite_filter.cc +34 -18
- data/src/core/xds/grpc/xds_http_composite_filter.h +6 -3
- data/src/core/xds/grpc/xds_http_fault_filter.cc +0 -149
- data/src/core/xds/grpc/xds_http_fault_filter.h +19 -8
- data/src/core/xds/grpc/xds_http_filter.cc +2 -1
- data/src/core/xds/grpc/xds_http_filter.h +6 -16
- data/src/core/xds/grpc/xds_http_filter_registry.cc +0 -2
- data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +25 -119
- data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +27 -15
- data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +0 -149
- data/src/core/xds/grpc/xds_http_stateful_session_filter.h +19 -8
- data/src/core/xds/grpc/xds_lb_policy_registry.cc +18 -0
- data/src/core/xds/grpc/xds_listener_parser.cc +13 -9
- data/src/core/xds/grpc/xds_route_config.h +1 -1
- data/src/core/xds/grpc/xds_route_config_parser.cc +3 -5
- data/src/core/xds/grpc/xds_routing.cc +5 -11
- data/src/core/xds/grpc/xds_routing.h +2 -3
- data/src/core/xds/xds_client/lrs_client.cc +2 -2
- data/src/ruby/ext/grpc/rb_byte_buffer.c +1 -0
- data/src/ruby/ext/grpc/rb_call.c +3 -0
- data/src/ruby/ext/grpc/rb_call_credentials.c +1 -0
- data/src/ruby/ext/grpc/rb_channel.c +1 -0
- data/src/ruby/ext/grpc/rb_channel_args.c +1 -0
- data/src/ruby/ext/grpc/rb_channel_credentials.c +1 -0
- data/src/ruby/ext/grpc/rb_completion_queue.c +1 -0
- data/src/ruby/ext/grpc/rb_compression_options.c +1 -0
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +4 -4
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +6 -6
- data/src/ruby/ext/grpc/rb_server.c +1 -0
- data/src/ruby/ext/grpc/rb_server_credentials.c +1 -0
- data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +1 -0
- data/src/ruby/ext/grpc/rb_xds_server_credentials.c +1 -0
- data/src/ruby/lib/grpc/core/call_credentials.rb +86 -0
- data/src/ruby/lib/grpc/core/channel_credentials.rb +69 -0
- data/src/ruby/lib/grpc/core/credentials_helper.rb +126 -0
- data/src/ruby/lib/grpc/generic/client_stub.rb +86 -73
- data/src/ruby/lib/grpc/generic/interceptors.rb +1 -1
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/lib/grpc.rb +25 -0
- data/src/ruby/spec/call_credentials_spec.rb +52 -2
- data/src/ruby/spec/credentials_helper_spec.rb +80 -0
- data/src/ruby/spec/generic/client_stub_spec.rb +27 -4
- data/src/ruby/spec/generic/server_interceptors_spec.rb +17 -3
- data/third_party/upb/upb/base/error_handler.h +79 -0
- data/third_party/upb/upb/base/internal/log2.h +29 -5
- data/third_party/upb/upb/generated_code_support.h +1 -0
- data/third_party/upb/upb/hash/common.c +129 -14
- data/third_party/upb/upb/hash/common.h +1 -1
- data/third_party/upb/upb/hash/ext_table.h +65 -0
- data/third_party/upb/upb/lex/strtod.c +14 -5
- data/third_party/upb/upb/mem/arena.c +113 -95
- data/third_party/upb/upb/mem/internal/arena.h +13 -8
- data/third_party/upb/upb/message/accessors.c +2 -3
- data/third_party/upb/upb/message/accessors.h +32 -12
- data/third_party/upb/upb/message/array.c +51 -2
- data/third_party/upb/upb/message/array.h +10 -0
- data/third_party/upb/upb/message/copy.c +18 -34
- data/third_party/upb/upb/message/internal/accessors.h +15 -49
- data/third_party/upb/upb/message/internal/array.h +1 -1
- data/third_party/upb/upb/message/internal/map.h +1 -1
- data/third_party/upb/upb/message/internal/message.c +8 -1
- data/third_party/upb/upb/message/internal/message.h +40 -10
- data/third_party/upb/upb/message/message.c +3 -2
- data/third_party/upb/upb/message/value.h +0 -6
- data/third_party/upb/upb/mini_descriptor/decode.c +78 -59
- data/third_party/upb/upb/mini_descriptor/link.c +8 -6
- data/third_party/upb/upb/mini_table/extension_registry.c +17 -49
- data/third_party/upb/upb/mini_table/extension_registry.h +5 -17
- data/third_party/upb/upb/mini_table/generated_registry.c +180 -0
- data/third_party/upb/upb/mini_table/generated_registry.h +66 -0
- data/third_party/upb/upb/mini_table/internal/extension.h +5 -3
- data/third_party/upb/upb/mini_table/internal/field.h +7 -5
- data/third_party/upb/upb/mini_table/internal/generated_registry.h +37 -0
- data/third_party/upb/upb/mini_table/internal/message.c +0 -18
- data/third_party/upb/upb/mini_table/internal/message.h +24 -41
- data/third_party/upb/upb/mini_table/internal/size_log2.h +2 -1
- data/third_party/upb/upb/mini_table/internal/sub.h +2 -5
- data/third_party/upb/upb/mini_table/message.h +34 -13
- data/third_party/upb/upb/port/atomic.h +180 -74
- data/third_party/upb/upb/port/def.inc +194 -29
- data/third_party/upb/upb/port/sanitizers.h +15 -0
- data/third_party/upb/upb/port/undef.inc +6 -2
- data/third_party/upb/upb/reflection/common.h +0 -6
- data/third_party/upb/upb/reflection/def.hpp +8 -12
- data/third_party/upb/upb/reflection/def_pool.c +85 -33
- data/third_party/upb/upb/reflection/def_pool.h +38 -8
- data/third_party/upb/upb/reflection/def_type.h +3 -0
- data/third_party/upb/upb/reflection/enum_def.c +45 -33
- data/third_party/upb/upb/reflection/enum_def.h +8 -4
- data/third_party/upb/upb/reflection/enum_reserved_range.c +7 -3
- data/third_party/upb/upb/reflection/enum_value_def.c +14 -29
- data/third_party/upb/upb/reflection/enum_value_def.h +5 -4
- data/third_party/upb/upb/reflection/extension_range.c +15 -14
- data/third_party/upb/upb/reflection/extension_range.h +7 -4
- data/third_party/upb/upb/reflection/field_def.c +114 -96
- data/third_party/upb/upb/reflection/field_def.h +3 -3
- data/third_party/upb/upb/reflection/file_def.c +71 -65
- data/third_party/upb/upb/reflection/file_def.h +4 -5
- data/third_party/upb/upb/reflection/internal/def_builder.c +22 -14
- data/third_party/upb/upb/reflection/internal/def_builder.h +44 -38
- data/third_party/upb/upb/reflection/internal/def_pool.h +5 -1
- data/third_party/upb/upb/reflection/internal/enum_def.h +6 -4
- data/third_party/upb/upb/reflection/internal/enum_reserved_range.h +3 -2
- data/third_party/upb/upb/reflection/internal/enum_value_def.h +7 -4
- data/third_party/upb/upb/reflection/internal/extension_range.h +4 -3
- data/third_party/upb/upb/reflection/internal/field_def.h +15 -12
- data/third_party/upb/upb/reflection/internal/file_def.h +8 -1
- data/third_party/upb/upb/reflection/internal/message_def.h +10 -7
- data/third_party/upb/upb/reflection/internal/message_reserved_range.h +3 -1
- data/third_party/upb/upb/reflection/internal/method_def.h +6 -6
- data/third_party/upb/upb/reflection/internal/oneof_def.h +6 -6
- data/third_party/upb/upb/reflection/internal/service_def.h +9 -6
- data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +1 -1
- data/third_party/upb/upb/reflection/message_def.c +46 -53
- data/third_party/upb/upb/reflection/message_def.h +6 -7
- data/third_party/upb/upb/reflection/message_reserved_range.c +7 -6
- data/third_party/upb/upb/reflection/method_def.c +22 -20
- data/third_party/upb/upb/reflection/method_def.h +4 -4
- data/third_party/upb/upb/reflection/oneof_def.c +17 -15
- data/third_party/upb/upb/reflection/oneof_def.h +6 -3
- data/third_party/upb/upb/reflection/service_def.c +50 -23
- data/third_party/upb/upb/reflection/service_def.h +7 -4
- data/third_party/upb/upb/text/internal/encode.c +7 -10
- data/third_party/upb/upb/wire/decode.c +269 -430
- data/third_party/upb/upb/wire/decode.h +6 -45
- data/third_party/upb/upb/wire/decode_fast/combinations.h +7 -3
- data/third_party/upb/upb/wire/decode_fast/select.c +7 -2
- data/third_party/upb/upb/wire/encode.c +144 -106
- data/third_party/upb/upb/wire/encode.h +6 -2
- data/third_party/upb/upb/wire/eps_copy_input_stream.c +36 -7
- data/third_party/upb/upb/wire/eps_copy_input_stream.h +94 -380
- data/third_party/upb/upb/wire/internal/decoder.c +1 -14
- data/third_party/upb/upb/wire/internal/decoder.h +84 -24
- data/third_party/upb/upb/wire/internal/eps_copy_input_stream.h +339 -0
- data/third_party/upb/upb/wire/internal/reader.h +29 -12
- data/third_party/upb/upb/wire/reader.c +35 -22
- data/third_party/upb/upb/wire/reader.h +11 -18
- data/third_party/utf8_range/utf8_range.c +1 -1
- data/third_party/utf8_range/utf8_range.h +2 -1
- metadata +27 -13
- data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +0 -117
- data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +0 -109
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.cc +0 -80
- data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.h +0 -86
- data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +0 -83
- data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +0 -91
- data/src/core/ext/transport/chttp2/transport/incoming_metadata_tracker.h +0 -217
- data/src/core/filter/blackboard.cc +0 -33
- data/third_party/upb/upb/message/internal/tagged_ptr.h +0 -56
- data/third_party/upb/upb/message/tagged_ptr.h +0 -48
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
static UPB_ATOMIC(size_t) g_max_block_size = UPB_DEFAULT_MAX_BLOCK_SIZE;
|
|
29
29
|
|
|
30
30
|
void upb_Arena_SetMaxBlockSize(size_t max) {
|
|
31
|
+
UPB_ASSERT(max <= UINT32_MAX);
|
|
31
32
|
upb_Atomic_Store(&g_max_block_size, max, memory_order_relaxed);
|
|
32
33
|
}
|
|
33
34
|
|
|
@@ -64,8 +65,14 @@ typedef struct upb_ArenaInternal {
|
|
|
64
65
|
UPB_ATOMIC(const upb_ArenaRef*) refs;
|
|
65
66
|
#endif
|
|
66
67
|
|
|
67
|
-
//
|
|
68
|
-
|
|
68
|
+
// Size of the last block we allocated in the normal exponential scheme.
|
|
69
|
+
uint32_t last_block_size;
|
|
70
|
+
|
|
71
|
+
// A hint that grows whenever we perform a "one-off" allocation into a a
|
|
72
|
+
// dedicated block. This helps us determine if these outlier blocks are
|
|
73
|
+
// actually common enough that we should switch back to the normal exponential
|
|
74
|
+
// scheme at the larger size.
|
|
75
|
+
uint32_t size_hint;
|
|
69
76
|
|
|
70
77
|
// All non atomic members used during allocation must be above this point, and
|
|
71
78
|
// are used by _SwapIn/_SwapOut
|
|
@@ -361,23 +368,60 @@ bool upb_Arena_HasRefChain(const upb_Arena* from, const upb_Arena* to) {
|
|
|
361
368
|
|
|
362
369
|
#endif
|
|
363
370
|
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
371
|
+
static upb_MemBlock* _upb_Arena_AllocBlockInternal(upb_alloc* alloc,
|
|
372
|
+
size_t size) {
|
|
373
|
+
UPB_ASSERT(size >= kUpb_MemblockReserve);
|
|
374
|
+
upb_SizedPtr alloc_result = upb_SizeReturningMalloc(alloc, size);
|
|
375
|
+
if (!alloc_result.p) return NULL;
|
|
376
|
+
upb_MemBlock* block = alloc_result.p;
|
|
377
|
+
block->size = alloc_result.n;
|
|
378
|
+
return block;
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
static upb_MemBlock* _upb_Arena_AllocBlock(upb_Arena* a, size_t size) {
|
|
367
382
|
upb_ArenaInternal* ai = upb_Arena_Internal(a);
|
|
368
|
-
|
|
383
|
+
return _upb_Arena_AllocBlockInternal(_upb_ArenaInternal_BlockAlloc(ai), size);
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
static void _upb_Arena_AddBlock(upb_Arena* a, upb_MemBlock* block) {
|
|
387
|
+
upb_ArenaInternal* ai = upb_Arena_Internal(a);
|
|
388
|
+
|
|
389
|
+
// Atomic add not required here, as threads won't race allocating blocks, plus
|
|
390
|
+
// atomic fetch-add is slower than load/add/store on arm devices compiled
|
|
391
|
+
// targeting pre-v8.1. Relaxed order is safe as nothing depends on order of
|
|
392
|
+
// size allocated.
|
|
393
|
+
uintptr_t old_space_allocated =
|
|
394
|
+
upb_Atomic_Load(&ai->space_allocated, memory_order_relaxed);
|
|
395
|
+
upb_Atomic_Store(&ai->space_allocated, old_space_allocated + block->size,
|
|
396
|
+
memory_order_relaxed);
|
|
369
397
|
|
|
370
|
-
block->
|
|
371
|
-
UPB_ASSERT(offset >= kUpb_MemblockReserve);
|
|
372
|
-
char* start = UPB_PTR_AT(block, offset, char);
|
|
373
|
-
upb_MemBlock* head = ai->blocks;
|
|
374
|
-
block->next = head;
|
|
398
|
+
block->next = ai->blocks;
|
|
375
399
|
ai->blocks = block;
|
|
376
|
-
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
static void _upb_Arena_UseBlockInternal(upb_Arena* a, upb_MemBlock* block,
|
|
403
|
+
size_t offset) {
|
|
404
|
+
size_t block_size = block->size;
|
|
405
|
+
char* start = UPB_PTR_AT(block, kUpb_MemblockReserve + offset, char);
|
|
377
406
|
a->UPB_PRIVATE(ptr) = start;
|
|
378
407
|
a->UPB_PRIVATE(end) = UPB_PTR_AT(block, block_size, char);
|
|
379
408
|
UPB_PRIVATE(upb_Xsan_PoisonRegion)(start, a->UPB_PRIVATE(end) - start);
|
|
380
|
-
|
|
409
|
+
UPB_PRIVATE(upb_Xsan_Init)(UPB_XSAN(a));
|
|
410
|
+
UPB_ASSERT(UPB_PRIVATE(_upb_ArenaHas)(a) >=
|
|
411
|
+
block_size - kUpb_MemblockReserve - offset);
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
static void _upb_Arena_UseBlock(upb_Arena* a, upb_MemBlock* block) {
|
|
415
|
+
_upb_Arena_UseBlockInternal(a, block, 0);
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
static bool _upb_Arena_WouldReduceFreeSpace(upb_Arena* a, size_t size,
|
|
419
|
+
size_t block_size) {
|
|
420
|
+
upb_ArenaInternal* ai = upb_Arena_Internal(a);
|
|
421
|
+
size_t current_free =
|
|
422
|
+
ai->blocks ? a->UPB_PRIVATE(end) - a->UPB_PRIVATE(ptr) : 0;
|
|
423
|
+
size_t future_free = block_size - kUpb_MemblockReserve - size;
|
|
424
|
+
return current_free >= future_free;
|
|
381
425
|
}
|
|
382
426
|
|
|
383
427
|
// Fulfills the allocation request by allocating a new block. Returns NULL on
|
|
@@ -385,84 +429,60 @@ static void _upb_Arena_AddBlock(upb_Arena* a, void* ptr, size_t offset,
|
|
|
385
429
|
void* UPB_PRIVATE(_upb_Arena_SlowMalloc)(upb_Arena* a, size_t size) {
|
|
386
430
|
upb_ArenaInternal* ai = upb_Arena_Internal(a);
|
|
387
431
|
if (!ai->block_alloc) return NULL;
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
432
|
+
|
|
433
|
+
// Whether to satisfy the allocation from a one-off block which is right-sized
|
|
434
|
+
// for the current allocation. We do this if we suspect that the current
|
|
435
|
+
// allocation is an outlier that does not represent the typical size of
|
|
436
|
+
// allocations from this arena, or if we would reduce free space by
|
|
437
|
+
// using exponential growth.
|
|
438
|
+
bool one_off = false;
|
|
395
439
|
|
|
396
440
|
// Relaxed order is safe here as we don't need any ordering with the setter.
|
|
397
441
|
size_t max_block_size =
|
|
398
442
|
upb_Atomic_Load(&g_max_block_size, memory_order_relaxed);
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
target_size < max_block_size) {
|
|
409
|
-
last_size = ai->size_hint;
|
|
410
|
-
// Recalculate sizes with possibly larger last_size
|
|
411
|
-
target_size = UPB_MIN(last_size * 2, max_block_size);
|
|
412
|
-
future_free = UPB_MAX(size, target_size - kUpb_MemblockReserve) - size;
|
|
413
|
-
}
|
|
414
|
-
bool insert_after_head = false;
|
|
415
|
-
// Only insert after head if an allocated block is present; we don't want to
|
|
416
|
-
// continue allocating out of the initial block because we'll have no way of
|
|
417
|
-
// restoring the size of our allocated block if we add another.
|
|
418
|
-
if (last_block && current_free >= future_free) {
|
|
419
|
-
// If we're still going to net reduce free space with this new block, then
|
|
420
|
-
// only allocate the precise size requested and keep the current last block
|
|
421
|
-
// as the active block for future allocations.
|
|
422
|
-
insert_after_head = true;
|
|
423
|
-
target_size = size + kUpb_MemblockReserve;
|
|
424
|
-
// Add something to our previous size each time, so that eventually we
|
|
425
|
-
// will reach the max block size. Allocations larger than the max block size
|
|
426
|
-
// will always get their own backing allocation, so don't include them.
|
|
427
|
-
if (target_size <= max_block_size) {
|
|
428
|
-
ai->size_hint = UPB_MIN(ai->size_hint + (size >> 1), max_block_size >> 1);
|
|
443
|
+
size_t block_size = UPB_MIN(ai->last_block_size * 2, max_block_size);
|
|
444
|
+
|
|
445
|
+
if (size + kUpb_MemblockReserve > block_size) {
|
|
446
|
+
// A regular doubling would not yield a large enough block. Does size_hint
|
|
447
|
+
// indicate that we have consistently needed large blocks?
|
|
448
|
+
block_size = UPB_MIN(ai->size_hint * 2, max_block_size);
|
|
449
|
+
if (size + kUpb_MemblockReserve > block_size) {
|
|
450
|
+
// Even size_hint is not large enough, we will have to do a one-off.
|
|
451
|
+
one_off = true;
|
|
429
452
|
}
|
|
430
453
|
}
|
|
431
|
-
// We may need to exceed the max block size if the user requested a large
|
|
432
|
-
// allocation.
|
|
433
|
-
size_t block_size = UPB_MAX(kUpb_MemblockReserve + size, target_size);
|
|
434
|
-
upb_alloc* block_alloc = _upb_ArenaInternal_BlockAlloc(ai);
|
|
435
|
-
upb_SizedPtr alloc_result = upb_SizeReturningMalloc(block_alloc, block_size);
|
|
436
454
|
|
|
437
|
-
|
|
455
|
+
// If switching to a block of this size would *reduce* available free space,
|
|
456
|
+
// we might as well make a one-off block instead.
|
|
457
|
+
one_off = one_off || _upb_Arena_WouldReduceFreeSpace(a, size, block_size);
|
|
438
458
|
|
|
439
|
-
|
|
440
|
-
|
|
459
|
+
if (one_off) {
|
|
460
|
+
// Note: this may exceed the max block size, but that's okay.
|
|
461
|
+
block_size = size + kUpb_MemblockReserve;
|
|
462
|
+
}
|
|
441
463
|
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
// targetting pre-v8.1. Relaxed order is safe as nothing depends on order of
|
|
445
|
-
// size allocated.
|
|
464
|
+
upb_MemBlock* block = _upb_Arena_AllocBlock(a, block_size);
|
|
465
|
+
if (!block) return NULL;
|
|
446
466
|
|
|
447
|
-
|
|
448
|
-
upb_Atomic_Load(&ai->space_allocated, memory_order_relaxed);
|
|
449
|
-
upb_Atomic_Store(&ai->space_allocated,
|
|
450
|
-
old_space_allocated + actual_block_size,
|
|
451
|
-
memory_order_relaxed);
|
|
452
|
-
if (UPB_UNLIKELY(insert_after_head)) {
|
|
453
|
-
upb_ArenaInternal* ai = upb_Arena_Internal(a);
|
|
454
|
-
block->size = actual_block_size;
|
|
455
|
-
upb_MemBlock* head = ai->blocks;
|
|
456
|
-
block->next = head->next;
|
|
457
|
-
head->next = block;
|
|
467
|
+
_upb_Arena_AddBlock(a, block);
|
|
458
468
|
|
|
469
|
+
// Recheck size, in case the allocator gave us a much larger block than we
|
|
470
|
+
// requested and we want to make it the new allocating region.
|
|
471
|
+
if (UPB_UNLIKELY(one_off) &&
|
|
472
|
+
_upb_Arena_WouldReduceFreeSpace(a, size, block->size)) {
|
|
473
|
+
// Increase size_hint, so that a series of one-off allocations will
|
|
474
|
+
// eventually convince us to switch to exponential growth at the larger
|
|
475
|
+
// size.
|
|
476
|
+
ai->size_hint = UPB_MIN(ai->size_hint + (size >> 1), max_block_size >> 1);
|
|
459
477
|
char* allocated = UPB_PTR_AT(block, kUpb_MemblockReserve, char);
|
|
460
|
-
|
|
461
|
-
|
|
478
|
+
char* poison_start = allocated + size - UPB_PRIVATE(kUpb_Asan_GuardSize);
|
|
479
|
+
UPB_PRIVATE(upb_Xsan_PoisonRegion)(
|
|
480
|
+
poison_start, UPB_PTR_AT(block, block->size, char) - poison_start);
|
|
462
481
|
return allocated;
|
|
463
482
|
} else {
|
|
464
|
-
ai->
|
|
465
|
-
|
|
483
|
+
ai->last_block_size = UPB_MIN(block->size, UINT32_MAX);
|
|
484
|
+
ai->size_hint = ai->last_block_size;
|
|
485
|
+
_upb_Arena_UseBlock(a, block);
|
|
466
486
|
UPB_ASSERT(UPB_PRIVATE(_upb_ArenaHas)(a) >= size);
|
|
467
487
|
return upb_Arena_Malloc(a, size - UPB_PRIVATE(kUpb_Asan_GuardSize));
|
|
468
488
|
}
|
|
@@ -473,27 +493,26 @@ static upb_Arena* _upb_Arena_InitSlow(upb_alloc* alloc, size_t first_size) {
|
|
|
473
493
|
UPB_ALIGN_MALLOC(kUpb_MemblockReserve + sizeof(upb_ArenaState));
|
|
474
494
|
upb_ArenaState* a;
|
|
475
495
|
|
|
476
|
-
|
|
496
|
+
if (!alloc) return NULL;
|
|
477
497
|
|
|
498
|
+
// We need to malloc the initial block.
|
|
478
499
|
size_t block_size =
|
|
479
500
|
first_block_overhead + UPB_MAX(256, UPB_ALIGN_MALLOC(first_size) +
|
|
480
501
|
UPB_PRIVATE(kUpb_Asan_GuardSize));
|
|
481
|
-
|
|
482
|
-
if (!
|
|
483
|
-
!(alloc_result = upb_SizeReturningMalloc(alloc, block_size)).p) {
|
|
484
|
-
return NULL;
|
|
485
|
-
}
|
|
486
|
-
char* mem = alloc_result.p;
|
|
487
|
-
size_t actual_block_size = alloc_result.n;
|
|
502
|
+
upb_MemBlock* block = _upb_Arena_AllocBlockInternal(alloc, block_size);
|
|
503
|
+
if (!block) return NULL;
|
|
488
504
|
|
|
489
|
-
|
|
505
|
+
// Initialize the arena state in the first block. We "borrow" the memory from
|
|
506
|
+
// the block, because we can't yet call upb_Arena_Malloc.
|
|
507
|
+
a = UPB_PTR_AT(block, kUpb_MemblockReserve, upb_ArenaState);
|
|
490
508
|
a->body.block_alloc = _upb_Arena_MakeBlockAlloc(alloc, 0);
|
|
491
|
-
a->body.
|
|
509
|
+
a->body.last_block_size = UPB_MIN(block->size, UINT32_MAX);
|
|
510
|
+
a->body.size_hint = UPB_MIN(block->size, UINT32_MAX);
|
|
492
511
|
upb_Atomic_Init(&a->body.parent_or_count, _upb_Arena_TaggedFromRefcount(1));
|
|
493
512
|
upb_Atomic_Init(&a->body.next, NULL);
|
|
494
513
|
upb_Atomic_Init(&a->body.previous_or_tail,
|
|
495
514
|
_upb_Arena_TaggedFromTail(&a->body));
|
|
496
|
-
upb_Atomic_Init(&a->body.space_allocated,
|
|
515
|
+
upb_Atomic_Init(&a->body.space_allocated, 0);
|
|
497
516
|
a->body.blocks = NULL;
|
|
498
517
|
#ifndef NDEBUG
|
|
499
518
|
a->body.refs = NULL;
|
|
@@ -501,15 +520,16 @@ static upb_Arena* _upb_Arena_InitSlow(upb_alloc* alloc, size_t first_size) {
|
|
|
501
520
|
a->body.upb_alloc_cleanup = NULL;
|
|
502
521
|
UPB_PRIVATE(upb_Xsan_Init)(UPB_XSAN(&a->body));
|
|
503
522
|
|
|
504
|
-
_upb_Arena_AddBlock(&a->head,
|
|
523
|
+
_upb_Arena_AddBlock(&a->head, block);
|
|
524
|
+
_upb_Arena_UseBlockInternal(&a->head, block,
|
|
525
|
+
UPB_ALIGN_MALLOC(sizeof(upb_ArenaState)));
|
|
505
526
|
|
|
506
527
|
return &a->head;
|
|
507
528
|
}
|
|
508
529
|
|
|
509
530
|
upb_Arena* upb_Arena_Init(void* mem, size_t n, upb_alloc* alloc) {
|
|
510
|
-
UPB_STATIC_ASSERT(
|
|
511
|
-
|
|
512
|
-
"Need to update UPB_ARENA_SIZE_HACK");
|
|
531
|
+
UPB_STATIC_ASSERT(UPB_ARENA_SIZE_HACK >= sizeof(upb_ArenaState),
|
|
532
|
+
"Need to update UPB_ARENA_SIZE_HACK");
|
|
513
533
|
upb_ArenaState* a;
|
|
514
534
|
|
|
515
535
|
if (mem) {
|
|
@@ -539,6 +559,7 @@ upb_Arena* upb_Arena_Init(void* mem, size_t n, upb_alloc* alloc) {
|
|
|
539
559
|
a->body.refs = NULL;
|
|
540
560
|
#endif
|
|
541
561
|
a->body.size_hint = 128;
|
|
562
|
+
a->body.last_block_size = 128;
|
|
542
563
|
a->body.upb_alloc_cleanup = NULL;
|
|
543
564
|
a->body.block_alloc = _upb_Arena_MakeBlockAlloc(alloc, 1);
|
|
544
565
|
a->head.UPB_PRIVATE(ptr) = (void*)UPB_ALIGN_MALLOC((uintptr_t)(a + 1));
|
|
@@ -985,14 +1006,11 @@ void UPB_PRIVATE(_upb_Arena_SwapOut)(upb_Arena* des, const upb_Arena* src) {
|
|
|
985
1006
|
bool _upb_Arena_WasLastAlloc(struct upb_Arena* a, void* ptr, size_t oldsize) {
|
|
986
1007
|
upb_ArenaInternal* ai = upb_Arena_Internal(a);
|
|
987
1008
|
upb_MemBlock* block = ai->blocks;
|
|
988
|
-
if (block == NULL) return false;
|
|
989
1009
|
// Skip any arena refs.
|
|
990
1010
|
while (block != NULL && block->size == 0) {
|
|
991
1011
|
block = block->next;
|
|
992
1012
|
}
|
|
993
1013
|
if (block == NULL) return false;
|
|
994
|
-
block = block->next;
|
|
995
|
-
if (block == NULL) return false;
|
|
996
1014
|
char* start = UPB_PTR_AT(block, kUpb_MemblockReserve, char);
|
|
997
1015
|
return UPB_PRIVATE(upb_Xsan_PtrEq)(ptr, start) &&
|
|
998
1016
|
UPB_PRIVATE(_upb_Arena_AllocSpan)(oldsize) ==
|
|
@@ -23,13 +23,14 @@
|
|
|
23
23
|
// We need this because the decoder inlines a upb_Arena for performance but
|
|
24
24
|
// the full struct is not visible outside of arena.c. Yes, I know, it's awful.
|
|
25
25
|
#ifndef NDEBUG
|
|
26
|
-
#define UPB_ARENA_BASE_SIZE_HACK 11
|
|
27
|
-
#else
|
|
28
26
|
#define UPB_ARENA_BASE_SIZE_HACK 10
|
|
27
|
+
#else
|
|
28
|
+
#define UPB_ARENA_BASE_SIZE_HACK 9
|
|
29
29
|
#endif
|
|
30
30
|
|
|
31
|
-
#define UPB_ARENA_SIZE_HACK
|
|
32
|
-
(UPB_ARENA_BASE_SIZE_HACK + (UPB_XSAN_STRUCT_SIZE * 2))
|
|
31
|
+
#define UPB_ARENA_SIZE_HACK \
|
|
32
|
+
(sizeof(void*) * (UPB_ARENA_BASE_SIZE_HACK + (UPB_XSAN_STRUCT_SIZE * 2))) + \
|
|
33
|
+
(sizeof(uint32_t) * 2)
|
|
33
34
|
|
|
34
35
|
// LINT.IfChange(upb_Arena)
|
|
35
36
|
|
|
@@ -149,10 +150,14 @@ UPB_API_INLINE void* upb_Arena_Realloc(struct upb_Arena* a, void* ptr,
|
|
|
149
150
|
}
|
|
150
151
|
}
|
|
151
152
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
153
|
+
if (ret) {
|
|
154
|
+
// We want to invalidate pointers to the old region if hwasan is enabled, so
|
|
155
|
+
// we poison and unpoison even if ptr == ret. However, if reallocation fails
|
|
156
|
+
// we do not want to poison the old memory, or attempt to poison null.
|
|
157
|
+
UPB_PRIVATE(upb_Xsan_PoisonRegion)(ptr, oldsize);
|
|
158
|
+
return UPB_PRIVATE(upb_Xsan_NewUnpoisonedRegion)(UPB_XSAN(a), ret, size);
|
|
159
|
+
}
|
|
160
|
+
return ret;
|
|
156
161
|
}
|
|
157
162
|
|
|
158
163
|
#ifdef __cplusplus
|
|
@@ -17,12 +17,11 @@
|
|
|
17
17
|
// Must be last.
|
|
18
18
|
#include "upb/port/def.inc"
|
|
19
19
|
|
|
20
|
-
bool upb_Message_SetMapEntry(upb_Map* map, const
|
|
21
|
-
const upb_MiniTableField* f,
|
|
20
|
+
bool upb_Message_SetMapEntry(upb_Map* map, const upb_MiniTableField* f,
|
|
22
21
|
upb_Message* map_entry_message, upb_Arena* arena) {
|
|
23
22
|
UPB_ASSERT(!upb_Message_IsFrozen(map_entry_message));
|
|
24
23
|
const upb_MiniTable* map_entry_mini_table =
|
|
25
|
-
upb_MiniTable_MapEntrySubMessage(
|
|
24
|
+
upb_MiniTable_MapEntrySubMessage(f);
|
|
26
25
|
UPB_ASSERT(map_entry_mini_table);
|
|
27
26
|
const upb_MiniTableField* map_entry_key_field =
|
|
28
27
|
upb_MiniTable_MapKey(map_entry_mini_table);
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
#include "upb/message/internal/accessors.h"
|
|
17
17
|
#include "upb/message/map.h"
|
|
18
18
|
#include "upb/message/message.h"
|
|
19
|
-
#include "upb/message/tagged_ptr.h"
|
|
20
19
|
#include "upb/message/value.h"
|
|
21
20
|
#include "upb/mini_table/extension.h"
|
|
22
21
|
#include "upb/mini_table/field.h"
|
|
@@ -57,10 +56,6 @@ UPB_API_INLINE upb_MessageValue
|
|
|
57
56
|
upb_Message_GetField(const upb_Message* msg, const upb_MiniTableField* f,
|
|
58
57
|
upb_MessageValue default_val);
|
|
59
58
|
|
|
60
|
-
UPB_API_INLINE upb_TaggedMessagePtr upb_Message_GetTaggedMessagePtr(
|
|
61
|
-
const upb_Message* msg, const upb_MiniTableField* field,
|
|
62
|
-
upb_Message* default_val);
|
|
63
|
-
|
|
64
59
|
UPB_API_INLINE const upb_Array* upb_Message_GetArray(
|
|
65
60
|
const upb_Message* msg, const upb_MiniTableField* f);
|
|
66
61
|
|
|
@@ -107,8 +102,7 @@ UPB_API_INLINE upb_Map* upb_Message_GetOrCreateMutableMap(
|
|
|
107
102
|
const upb_MiniTableField* f, upb_Arena* arena);
|
|
108
103
|
|
|
109
104
|
UPB_API_INLINE upb_Message* upb_Message_GetOrCreateMutableMessage(
|
|
110
|
-
upb_Message* msg, const
|
|
111
|
-
const upb_MiniTableField* f, upb_Arena* arena);
|
|
105
|
+
upb_Message* msg, const upb_MiniTableField* f, upb_Arena* arena);
|
|
112
106
|
|
|
113
107
|
UPB_API_INLINE upb_StringView
|
|
114
108
|
upb_Message_GetString(const upb_Message* msg, const upb_MiniTableField* field,
|
|
@@ -122,9 +116,9 @@ UPB_API_INLINE uint64_t upb_Message_GetUInt64(const upb_Message* msg,
|
|
|
122
116
|
const upb_MiniTableField* f,
|
|
123
117
|
uint64_t default_val);
|
|
124
118
|
|
|
125
|
-
UPB_API_INLINE void upb_Message_SetClosedEnum(
|
|
126
|
-
|
|
127
|
-
|
|
119
|
+
UPB_API_INLINE void upb_Message_SetClosedEnum(upb_Message* msg,
|
|
120
|
+
const upb_MiniTableField* f,
|
|
121
|
+
int32_t value);
|
|
128
122
|
|
|
129
123
|
// BaseField Setters ///////////////////////////////////////////////////////////
|
|
130
124
|
|
|
@@ -307,14 +301,40 @@ UPB_API_INLINE const upb_MiniTableField* upb_Message_WhichOneof(
|
|
|
307
301
|
const upb_MiniTableField* f);
|
|
308
302
|
|
|
309
303
|
// Updates a map entry given an entry message.
|
|
310
|
-
bool upb_Message_SetMapEntry(upb_Map* map, const
|
|
311
|
-
const upb_MiniTableField* field,
|
|
304
|
+
bool upb_Message_SetMapEntry(upb_Map* map, const upb_MiniTableField* field,
|
|
312
305
|
upb_Message* map_entry_message, upb_Arena* arena);
|
|
313
306
|
|
|
314
307
|
#ifdef __cplusplus
|
|
315
308
|
} /* extern "C" */
|
|
316
309
|
#endif
|
|
317
310
|
|
|
311
|
+
#if defined(__cplusplus)
|
|
312
|
+
// Temporary overloads for functions whose signature has recently changed.
|
|
313
|
+
UPB_DEPRECATE_AND_INLINE()
|
|
314
|
+
inline upb_Message* upb_Message_GetOrCreateMutableMessage(
|
|
315
|
+
upb_Message* msg, const upb_MiniTable* mini_table,
|
|
316
|
+
const upb_MiniTableField* f, upb_Arena* arena) {
|
|
317
|
+
return upb_Message_GetOrCreateMutableMessage(msg, f, arena);
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
UPB_DEPRECATE_AND_INLINE()
|
|
321
|
+
inline void upb_Message_SetClosedEnum(upb_Message* msg,
|
|
322
|
+
const upb_MiniTable* msg_mini_table,
|
|
323
|
+
const upb_MiniTableField* f,
|
|
324
|
+
int32_t value) {
|
|
325
|
+
upb_Message_SetClosedEnum(msg, f, value);
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
UPB_DEPRECATE_AND_INLINE()
|
|
329
|
+
inline bool upb_Message_SetMapEntry(upb_Map* map,
|
|
330
|
+
const upb_MiniTable* mini_table,
|
|
331
|
+
const upb_MiniTableField* field,
|
|
332
|
+
upb_Message* map_entry_message,
|
|
333
|
+
upb_Arena* arena) {
|
|
334
|
+
return upb_Message_SetMapEntry(map, field, map_entry_message, arena);
|
|
335
|
+
}
|
|
336
|
+
#endif
|
|
337
|
+
|
|
318
338
|
#include "upb/port/undef.inc"
|
|
319
339
|
|
|
320
340
|
#endif // UPB_MESSAGE_ACCESSORS_H_
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
#include <string.h>
|
|
12
12
|
|
|
13
13
|
#include "upb/base/descriptor_constants.h"
|
|
14
|
+
#include "upb/base/internal/log2.h"
|
|
14
15
|
#include "upb/mem/arena.h"
|
|
15
16
|
#include "upb/message/internal/array.h"
|
|
16
17
|
#include "upb/message/internal/types.h"
|
|
@@ -64,6 +65,46 @@ bool upb_Array_Append(upb_Array* arr, upb_MessageValue val, upb_Arena* arena) {
|
|
|
64
65
|
return true;
|
|
65
66
|
}
|
|
66
67
|
|
|
68
|
+
bool upb_Array_Copy(upb_Array* dst, const upb_Array* src, upb_Arena* arena) {
|
|
69
|
+
UPB_ASSERT(dst);
|
|
70
|
+
UPB_ASSERT(src);
|
|
71
|
+
UPB_ASSERT(!upb_Array_IsFrozen(dst));
|
|
72
|
+
if (dst == src) return true;
|
|
73
|
+
size_t len = upb_Array_Size(src);
|
|
74
|
+
if (!UPB_PRIVATE(_upb_Array_ResizeUninitialized)(dst, len, arena)) {
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
if (len == 0) return true;
|
|
78
|
+
const int lg2 = UPB_PRIVATE(_upb_Array_ElemSizeLg2)(dst);
|
|
79
|
+
const int src_lg2 = UPB_PRIVATE(_upb_Array_ElemSizeLg2)(src);
|
|
80
|
+
UPB_ASSERT(lg2 == src_lg2);
|
|
81
|
+
char* dst_data = upb_Array_MutableDataPtr(dst);
|
|
82
|
+
const char* src_data = upb_Array_DataPtr(src);
|
|
83
|
+
memcpy(dst_data, src_data, len << lg2);
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
bool upb_Array_AppendAll(upb_Array* dst, const upb_Array* src,
|
|
88
|
+
upb_Arena* arena) {
|
|
89
|
+
UPB_ASSERT(!upb_Array_IsFrozen(dst));
|
|
90
|
+
UPB_ASSERT(src);
|
|
91
|
+
size_t src_len = upb_Array_Size(src);
|
|
92
|
+
if (src_len == 0) return true;
|
|
93
|
+
size_t dst_len = upb_Array_Size(dst);
|
|
94
|
+
size_t len = dst_len + src_len;
|
|
95
|
+
if (UPB_UNLIKELY(len < dst_len)) return false;
|
|
96
|
+
if (!UPB_PRIVATE(_upb_Array_ResizeUninitialized)(dst, len, arena)) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
const int lg2 = UPB_PRIVATE(_upb_Array_ElemSizeLg2)(dst);
|
|
100
|
+
const int src_lg2 = UPB_PRIVATE(_upb_Array_ElemSizeLg2)(src);
|
|
101
|
+
UPB_ASSERT(lg2 == src_lg2);
|
|
102
|
+
char* dst_data = upb_Array_MutableDataPtr(dst);
|
|
103
|
+
const char* src_data = upb_Array_DataPtr(src);
|
|
104
|
+
memcpy(dst_data + (dst_len << lg2), src_data, src_len << lg2);
|
|
105
|
+
return true;
|
|
106
|
+
}
|
|
107
|
+
|
|
67
108
|
void upb_Array_Move(upb_Array* arr, size_t dst_idx, size_t src_idx,
|
|
68
109
|
size_t count) {
|
|
69
110
|
UPB_ASSERT(!upb_Array_IsFrozen(arr));
|
|
@@ -124,9 +165,17 @@ bool UPB_PRIVATE(_upb_Array_Realloc)(upb_Array* array, size_t min_capacity,
|
|
|
124
165
|
void* ptr = upb_Array_MutableDataPtr(array);
|
|
125
166
|
|
|
126
167
|
// Log2 ceiling of size.
|
|
127
|
-
while (new_capacity < min_capacity)
|
|
168
|
+
while (new_capacity < min_capacity) {
|
|
169
|
+
if (upb_ShlOverflow(&new_capacity, 1)) {
|
|
170
|
+
new_capacity = SIZE_MAX;
|
|
171
|
+
break;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
128
174
|
|
|
129
|
-
|
|
175
|
+
size_t new_bytes = new_capacity;
|
|
176
|
+
if (upb_ShlOverflow(&new_bytes, lg2)) {
|
|
177
|
+
return false;
|
|
178
|
+
}
|
|
130
179
|
ptr = upb_Arena_Realloc(arena, ptr, old_bytes, new_bytes);
|
|
131
180
|
if (!ptr) return false;
|
|
132
181
|
|
|
@@ -49,6 +49,16 @@ UPB_API void upb_Array_Set(upb_Array* arr, size_t i, upb_MessageValue val);
|
|
|
49
49
|
UPB_API bool upb_Array_Append(upb_Array* array, upb_MessageValue val,
|
|
50
50
|
upb_Arena* arena);
|
|
51
51
|
|
|
52
|
+
// Copies elements from |src| to |dst|, resizing |dst| to match |src| size.
|
|
53
|
+
// Returns false on allocation failure.
|
|
54
|
+
UPB_API bool upb_Array_Copy(upb_Array* dst, const upb_Array* src,
|
|
55
|
+
upb_Arena* arena);
|
|
56
|
+
|
|
57
|
+
// Appends all elements from |src| to the end of |dst|.
|
|
58
|
+
// Returns false on allocation failure.
|
|
59
|
+
UPB_API bool upb_Array_AppendAll(upb_Array* dst, const upb_Array* src,
|
|
60
|
+
upb_Arena* arena);
|
|
61
|
+
|
|
52
62
|
// Moves elements within the array using memmove().
|
|
53
63
|
// Like memmove(), the source and destination elements may be overlapping.
|
|
54
64
|
UPB_API void upb_Array_Move(upb_Array* array, size_t dst_idx, size_t src_idx,
|
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
#include "upb/message/internal/message.h"
|
|
24
24
|
#include "upb/message/map.h"
|
|
25
25
|
#include "upb/message/message.h"
|
|
26
|
-
#include "upb/message/tagged_ptr.h"
|
|
27
26
|
#include "upb/mini_table/extension.h"
|
|
28
27
|
#include "upb/mini_table/field.h"
|
|
29
28
|
#include "upb/mini_table/internal/field.h"
|
|
@@ -61,7 +60,7 @@ static bool upb_Clone_MessageValue(void* value, upb_CType value_type,
|
|
|
61
60
|
case kUpb_CType_String:
|
|
62
61
|
case kUpb_CType_Bytes: {
|
|
63
62
|
upb_StringView source = *(upb_StringView*)value;
|
|
64
|
-
|
|
63
|
+
size_t size = source.size;
|
|
65
64
|
void* cloned_data = upb_Arena_Malloc(arena, size);
|
|
66
65
|
if (cloned_data == NULL) {
|
|
67
66
|
return false;
|
|
@@ -72,14 +71,11 @@ static bool upb_Clone_MessageValue(void* value, upb_CType value_type,
|
|
|
72
71
|
return true;
|
|
73
72
|
} break;
|
|
74
73
|
case kUpb_CType_Message: {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
if (is_empty) sub = UPB_PRIVATE(_upb_MiniTable_Empty)();
|
|
74
|
+
UPB_ASSERT(sub);
|
|
75
|
+
const upb_Message* source = *(upb_Message**)value;
|
|
78
76
|
UPB_ASSERT(source);
|
|
79
|
-
upb_Message* clone = upb_Message_DeepClone(
|
|
80
|
-
|
|
81
|
-
*(upb_TaggedMessagePtr*)value =
|
|
82
|
-
UPB_PRIVATE(_upb_TaggedMessagePtr_Pack)(clone, is_empty);
|
|
77
|
+
upb_Message* clone = upb_Message_DeepClone(source, sub, arena);
|
|
78
|
+
*(upb_Message**)value = clone;
|
|
83
79
|
return clone != NULL;
|
|
84
80
|
} break;
|
|
85
81
|
}
|
|
@@ -101,7 +97,7 @@ upb_Map* upb_Map_DeepClone(const upb_Map* map, upb_CType key_type,
|
|
|
101
97
|
upb_MiniTable_MapValue(map_entry_table);
|
|
102
98
|
const upb_MiniTable* value_sub =
|
|
103
99
|
upb_MiniTableField_CType(value_field) == kUpb_CType_Message
|
|
104
|
-
? upb_MiniTable_GetSubMessageTable(
|
|
100
|
+
? upb_MiniTable_GetSubMessageTable(value_field)
|
|
105
101
|
: NULL;
|
|
106
102
|
upb_CType value_field_type = upb_MiniTableField_CType(value_field);
|
|
107
103
|
if (!upb_Clone_MessageValue(&val, value_field_type, value_sub, arena)) {
|
|
@@ -120,8 +116,7 @@ static upb_Map* upb_Message_Map_DeepClone(const upb_Map* map,
|
|
|
120
116
|
upb_Message* clone,
|
|
121
117
|
upb_Arena* arena) {
|
|
122
118
|
UPB_ASSERT(!upb_Message_IsFrozen(clone));
|
|
123
|
-
const upb_MiniTable* map_entry_table =
|
|
124
|
-
upb_MiniTable_MapEntrySubMessage(mini_table, f);
|
|
119
|
+
const upb_MiniTable* map_entry_table = upb_MiniTable_MapEntrySubMessage(f);
|
|
125
120
|
UPB_ASSERT(map_entry_table);
|
|
126
121
|
|
|
127
122
|
const upb_MiniTableField* key_field = upb_MiniTable_MapKey(map_entry_table);
|
|
@@ -165,12 +160,12 @@ static bool upb_Message_Array_DeepClone(const upb_Array* array,
|
|
|
165
160
|
upb_Message* clone, upb_Arena* arena) {
|
|
166
161
|
UPB_ASSERT(!upb_Message_IsFrozen(clone));
|
|
167
162
|
UPB_PRIVATE(_upb_MiniTableField_CheckIsArray)(field);
|
|
168
|
-
upb_Array* cloned_array =
|
|
169
|
-
array, upb_MiniTableField_CType(field),
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
163
|
+
upb_Array* cloned_array =
|
|
164
|
+
upb_Array_DeepClone(array, upb_MiniTableField_CType(field),
|
|
165
|
+
upb_MiniTableField_CType(field) == kUpb_CType_Message
|
|
166
|
+
? upb_MiniTable_GetSubMessageTable(field)
|
|
167
|
+
: NULL,
|
|
168
|
+
arena);
|
|
174
169
|
|
|
175
170
|
// Clear out upb_Array* due to parent memcpy.
|
|
176
171
|
upb_Message_SetBaseField(clone, field, &cloned_array);
|
|
@@ -199,27 +194,16 @@ upb_Message* _upb_Message_Copy(upb_Message* dst, const upb_Message* src,
|
|
|
199
194
|
if (upb_MiniTableField_IsScalar(field)) {
|
|
200
195
|
switch (upb_MiniTableField_CType(field)) {
|
|
201
196
|
case kUpb_CType_Message: {
|
|
202
|
-
|
|
203
|
-
upb_Message_GetTaggedMessagePtr(src, field, NULL);
|
|
204
|
-
const upb_Message* sub_message =
|
|
205
|
-
UPB_PRIVATE(_upb_TaggedMessagePtr_GetMessage)(tagged);
|
|
197
|
+
const upb_Message* sub_message = upb_Message_GetMessage(src, field);
|
|
206
198
|
if (sub_message != NULL) {
|
|
207
|
-
// If the message is currently in an unlinked, "empty" state we keep
|
|
208
|
-
// it that way, because we don't want to deal with decode options,
|
|
209
|
-
// decode status, or possible parse failure here.
|
|
210
|
-
bool is_empty = upb_TaggedMessagePtr_IsEmpty(tagged);
|
|
211
199
|
const upb_MiniTable* sub_message_table =
|
|
212
|
-
|
|
213
|
-
: upb_MiniTable_GetSubMessageTable(mini_table, field);
|
|
200
|
+
upb_MiniTable_GetSubMessageTable(field);
|
|
214
201
|
upb_Message* dst_sub_message =
|
|
215
202
|
upb_Message_DeepClone(sub_message, sub_message_table, arena);
|
|
216
203
|
if (dst_sub_message == NULL) {
|
|
217
204
|
return NULL;
|
|
218
205
|
}
|
|
219
|
-
|
|
220
|
-
(dst, field,
|
|
221
|
-
UPB_PRIVATE(_upb_TaggedMessagePtr_Pack)(dst_sub_message,
|
|
222
|
-
is_empty));
|
|
206
|
+
upb_Message_SetBaseFieldMessage(dst, field, dst_sub_message);
|
|
223
207
|
}
|
|
224
208
|
} break;
|
|
225
209
|
case kUpb_CType_String:
|
|
@@ -287,8 +271,8 @@ upb_Message* _upb_Message_Copy(upb_Message* dst, const upb_Message* src,
|
|
|
287
271
|
// Clone unknown
|
|
288
272
|
upb_StringView* unknown = upb_TaggedAuxPtr_UnknownData(tagged_ptr);
|
|
289
273
|
// Make a copy into destination arena.
|
|
290
|
-
if (!UPB_PRIVATE(_upb_Message_AddUnknown)(
|
|
291
|
-
|
|
274
|
+
if (!UPB_PRIVATE(_upb_Message_AddUnknown)(
|
|
275
|
+
dst, unknown->data, unknown->size, arena, kUpb_AddUnknown_Copy)) {
|
|
292
276
|
return NULL;
|
|
293
277
|
}
|
|
294
278
|
}
|