grpc 1.43.1 → 1.45.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of grpc might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Makefile +349 -216
- data/include/grpc/event_engine/event_engine.h +2 -2
- data/include/grpc/grpc.h +40 -14
- data/include/grpc/grpc_posix.h +20 -19
- data/include/grpc/grpc_security.h +36 -50
- data/include/grpc/impl/codegen/compression_types.h +0 -2
- data/include/grpc/impl/codegen/grpc_types.h +17 -8
- data/include/grpc/impl/codegen/port_platform.h +2 -2
- data/include/grpc/impl/codegen/slice.h +4 -1
- data/include/grpc/slice.h +0 -11
- data/src/core/ext/filters/client_channel/backend_metric.cc +3 -3
- data/src/core/ext/filters/client_channel/backend_metric.h +1 -1
- data/src/core/ext/filters/client_channel/backup_poller.cc +12 -8
- data/src/core/ext/filters/client_channel/channel_connectivity.cc +5 -5
- data/src/core/ext/filters/client_channel/client_channel.cc +140 -124
- data/src/core/ext/filters/client_channel/client_channel.h +38 -37
- data/src/core/ext/filters/client_channel/client_channel_plugin.cc +6 -12
- data/src/core/ext/filters/client_channel/config_selector.h +4 -4
- data/src/core/ext/filters/client_channel/connector.h +1 -1
- data/src/core/ext/filters/client_channel/dynamic_filters.cc +1 -2
- data/src/core/ext/filters/client_channel/dynamic_filters.h +2 -2
- data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +2 -22
- data/src/core/ext/filters/client_channel/global_subchannel_pool.h +3 -15
- data/src/core/ext/filters/client_channel/health/health_check_client.cc +32 -31
- data/src/core/ext/filters/client_channel/health/health_check_client.h +4 -4
- data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +10 -13
- data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +4 -3
- data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +6 -5
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +4 -7
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +99 -79
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +0 -7
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +1 -1
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +15 -15
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +4 -4
- data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +50 -32
- data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +28 -19
- data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +120 -68
- data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +161 -112
- data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +62 -61
- data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +16 -11
- data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +13 -7
- data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +28 -19
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +1 -1
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +65 -36
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +5 -3
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +69 -117
- data/src/core/ext/filters/client_channel/lb_policy.cc +15 -14
- data/src/core/ext/filters/client_channel/lb_policy.h +19 -3
- data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +10 -16
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +259 -120
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +22 -12
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +19 -15
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +23 -38
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +136 -226
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +25 -32
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
- data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +120 -113
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +18 -17
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +2 -1
- data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +83 -61
- data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +40 -39
- data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +185 -96
- data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +8 -11
- data/src/core/ext/filters/client_channel/resolver_result_parsing.h +13 -7
- data/src/core/ext/filters/client_channel/retry_filter.cc +236 -169
- data/src/core/ext/filters/client_channel/retry_service_config.cc +16 -18
- data/src/core/ext/filters/client_channel/retry_service_config.h +18 -12
- data/src/core/ext/filters/client_channel/retry_throttle.cc +9 -23
- data/src/core/ext/filters/client_channel/retry_throttle.h +11 -5
- data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +8 -7
- data/src/core/ext/filters/client_channel/subchannel.cc +45 -52
- data/src/core/ext/filters/client_channel/subchannel.h +7 -7
- data/src/core/ext/filters/client_idle/client_idle_filter.cc +96 -159
- data/src/core/ext/filters/client_idle/idle_filter_state.h +2 -2
- data/src/core/ext/filters/deadline/deadline_filter.cc +15 -14
- data/src/core/ext/filters/deadline/deadline_filter.h +3 -2
- data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +53 -58
- data/src/core/ext/filters/fault_injection/service_config_parser.cc +11 -13
- data/src/core/ext/filters/fault_injection/service_config_parser.h +10 -4
- data/src/core/ext/filters/http/client/http_client_filter.cc +58 -125
- data/src/core/ext/filters/http/client_authority_filter.cc +28 -87
- data/src/core/ext/filters/http/client_authority_filter.h +23 -5
- data/src/core/ext/filters/http/http_filters_plugin.cc +11 -12
- data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +43 -140
- data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +15 -27
- data/src/core/ext/filters/http/server/http_server_filter.cc +51 -135
- data/src/core/ext/filters/max_age/max_age_filter.cc +46 -40
- data/src/core/ext/filters/message_size/message_size_filter.cc +27 -35
- data/src/core/ext/filters/message_size/message_size_filter.h +10 -3
- data/src/core/ext/filters/rbac/rbac_filter.cc +162 -0
- data/src/core/ext/filters/rbac/rbac_filter.h +76 -0
- data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +606 -0
- data/src/core/ext/filters/rbac/rbac_service_config_parser.h +75 -0
- data/src/core/ext/filters/server_config_selector/server_config_selector.h +3 -2
- data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +12 -6
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +234 -0
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +236 -34
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +155 -233
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +8 -2
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/flow_control.h +3 -3
- data/src/core/ext/transport/chttp2/transport/frame_data.cc +0 -1
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -4
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +5 -0
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +342 -281
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +70 -160
- data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +2 -0
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +29 -78
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +0 -1
- data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +94 -1
- data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +2 -24
- data/src/core/ext/transport/chttp2/transport/internal.h +6 -39
- data/src/core/ext/transport/chttp2/transport/parsing.cc +3 -9
- data/src/core/ext/transport/chttp2/transport/writing.cc +62 -128
- data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -4
- data/src/core/ext/transport/inproc/inproc_transport.cc +27 -75
- data/src/core/ext/transport/inproc/inproc_transport.h +0 -3
- data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +114 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +402 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +119 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +453 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +165 -163
- data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +798 -575
- data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +56 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +138 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +62 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +146 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +46 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +106 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +43 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +93 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +43 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +88 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +103 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +466 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +48 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +95 -0
- data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +22 -20
- data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +17 -16
- data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +15 -13
- data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +31 -23
- data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +90 -88
- data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +421 -317
- data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +156 -152
- data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +787 -571
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +27 -25
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +115 -79
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +206 -204
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +954 -662
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +10 -8
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +33 -23
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +29 -27
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +127 -79
- data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +290 -0
- data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +1122 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +49 -47
- data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +221 -159
- data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +10 -8
- data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +33 -23
- data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +154 -151
- data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +691 -499
- data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +39 -37
- data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +178 -130
- data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +9 -7
- data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +25 -19
- data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +18 -16
- data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +74 -53
- data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +58 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +138 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +100 -98
- data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +449 -329
- data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +77 -75
- data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +365 -264
- data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +11 -9
- data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +36 -26
- data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +140 -105
- data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +675 -345
- data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +8 -6
- data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +25 -17
- data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +15 -13
- data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +59 -42
- data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +13 -11
- data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +39 -25
- data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +14 -12
- data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +45 -35
- data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +10 -8
- data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +34 -24
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +31 -29
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +113 -85
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +47 -45
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +210 -151
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +48 -46
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +210 -142
- data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +9 -7
- data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +28 -20
- data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +58 -54
- data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +282 -193
- data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +64 -62
- data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +286 -218
- data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +15 -13
- data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +62 -42
- data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +12 -10
- data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +54 -39
- data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +53 -0
- data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +120 -0
- data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +55 -53
- data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +244 -185
- data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +57 -55
- data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +260 -192
- data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +70 -68
- data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +235 -191
- data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +30 -28
- data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +142 -112
- data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +435 -428
- data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +2037 -1507
- data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +25 -19
- data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +107 -64
- data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +216 -0
- data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +870 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +44 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +82 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +49 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +95 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +15 -13
- data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +55 -40
- data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +52 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +119 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +62 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +203 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +47 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +89 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +69 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +184 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +32 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +42 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +71 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +192 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +54 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +126 -0
- data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +8 -6
- data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +29 -23
- data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +26 -24
- data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +125 -93
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +33 -31
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +149 -105
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +63 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +165 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +15 -13
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +53 -37
- data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +175 -173
- data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +803 -559
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +3 -1
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +2 -1
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +75 -52
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +368 -194
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +24 -22
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +95 -71
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +60 -58
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +266 -193
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +62 -0
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +146 -0
- data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +6 -4
- data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +22 -16
- data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +64 -62
- data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +297 -218
- data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +18 -16
- data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +73 -54
- data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +46 -44
- data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +197 -145
- data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +48 -0
- data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +101 -0
- data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +19 -17
- data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +91 -70
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +74 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +202 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +16 -14
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +64 -47
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +10 -8
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +34 -26
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +10 -8
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +25 -19
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +9 -7
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +25 -19
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +21 -19
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +85 -61
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +19 -17
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +65 -52
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +14 -12
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +56 -43
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +21 -19
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +74 -58
- data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +30 -28
- data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +163 -125
- data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +34 -32
- data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +157 -113
- data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +66 -0
- data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +183 -0
- data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +3 -1
- data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +2 -1
- data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +42 -0
- data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +136 -0
- data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +13 -11
- data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +51 -34
- data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +19 -17
- data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +80 -52
- data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +26 -0
- data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +41 -0
- data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +10 -8
- data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +31 -19
- data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +51 -0
- data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +114 -0
- data/src/core/ext/upb-generated/google/api/annotations.upb.c +10 -8
- data/src/core/ext/upb-generated/google/api/annotations.upb.h +6 -5
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +100 -98
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +371 -281
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +110 -108
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +409 -298
- data/src/core/ext/upb-generated/google/api/http.upb.c +29 -27
- data/src/core/ext/upb-generated/google/api/http.upb.h +117 -89
- data/src/core/ext/upb-generated/google/api/httpbody.upb.c +46 -0
- data/src/core/ext/upb-generated/google/api/httpbody.upb.h +99 -0
- data/src/core/ext/upb-generated/google/protobuf/any.upb.c +9 -7
- data/src/core/ext/upb-generated/google/protobuf/any.upb.h +32 -22
- data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +287 -234
- data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +1088 -764
- data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +9 -7
- data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +28 -18
- data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +6 -4
- data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +22 -16
- data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +30 -28
- data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +80 -64
- data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +9 -7
- data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +28 -18
- data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +40 -38
- data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +213 -149
- data/src/core/ext/upb-generated/google/rpc/status.upb.c +11 -9
- data/src/core/ext/upb-generated/google/rpc/status.upb.h +36 -26
- data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +84 -0
- data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +276 -0
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +20 -18
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +60 -42
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +95 -93
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +396 -285
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +15 -13
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +58 -39
- data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +12 -10
- data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +50 -35
- data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +55 -53
- data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +255 -183
- data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +22 -20
- data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +76 -57
- data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +46 -44
- data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +102 -78
- data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +16 -14
- data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +32 -22
- data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +9 -7
- data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +6 -5
- data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +16 -14
- data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +32 -22
- data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +15 -13
- data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +31 -23
- data/src/core/ext/upb-generated/validate/validate.upb.c +320 -304
- data/src/core/ext/upb-generated/validate/validate.upb.h +1114 -741
- data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +110 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +191 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +55 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +87 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +38 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +38 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +40 -38
- data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +109 -78
- data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +53 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +81 -0
- data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +8 -6
- data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +27 -19
- data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +17 -15
- data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +63 -46
- data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +14 -12
- data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +31 -25
- data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +46 -0
- data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +95 -0
- data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +11 -9
- data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +39 -27
- data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +20 -18
- data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +73 -54
- data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +12 -10
- data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +43 -29
- data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +23 -21
- data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +43 -31
- data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +203 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +726 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +52 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +132 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +65 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +173 -0
- data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +10 -8
- data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +33 -23
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +84 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +55 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +127 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +14 -12
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +67 -67
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +43 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +53 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +49 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +46 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +46 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +142 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +51 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +8 -6
- data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +1 -1
- data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +8 -6
- data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +20 -17
- data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +46 -46
- data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +248 -240
- data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +55 -55
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +16 -13
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +375 -371
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +76 -76
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +14 -11
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +16 -13
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +206 -0
- data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +105 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +15 -13
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +22 -22
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +85 -80
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +73 -73
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +18 -16
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +16 -16
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +14 -12
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +53 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +21 -18
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +43 -43
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +23 -20
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +25 -25
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +14 -12
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +250 -221
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +53 -43
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +12 -9
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +14 -11
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +14 -11
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +18 -15
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +13 -11
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +18 -15
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +13 -13
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +19 -16
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +19 -19
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +18 -15
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +16 -16
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +14 -11
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +52 -45
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +19 -19
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +23 -20
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +22 -22
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +19 -16
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +69 -0
- data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +17 -14
- data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +25 -25
- data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +17 -14
- data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +28 -28
- data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +190 -0
- data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +70 -0
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +19 -16
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +816 -801
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +160 -160
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +52 -37
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +188 -0
- data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +85 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +54 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +57 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +72 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +99 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +52 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +71 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +57 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +75 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +77 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +15 -11
- data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +17 -14
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +16 -16
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +18 -15
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +59 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +17 -13
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +135 -130
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +58 -58
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +15 -11
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +1 -1
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +169 -140
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +24 -19
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +19 -16
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +21 -17
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +19 -19
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +58 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +14 -11
- data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +17 -14
- data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +22 -22
- data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +16 -13
- data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +20 -17
- data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +16 -16
- data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +46 -0
- data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +13 -10
- data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +13 -13
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +52 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +15 -12
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +14 -12
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +16 -13
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +13 -10
- data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +22 -22
- data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +14 -11
- data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +16 -16
- data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +53 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +10 -8
- data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +1 -1
- data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +94 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +12 -10
- data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +11 -8
- data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +38 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +11 -9
- data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +57 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +5 -5
- data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +1 -1
- data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +154 -0
- data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +95 -0
- data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +153 -0
- data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +100 -0
- data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +3 -3
- data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +39 -0
- data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +3 -3
- data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +3 -3
- data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +82 -82
- data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +3 -3
- data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +3 -3
- data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +3 -3
- data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +13 -13
- data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +3 -3
- data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +3 -3
- data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +28 -28
- data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +4 -4
- data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +67 -0
- data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +4 -4
- data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +10 -10
- data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +5 -5
- data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +4 -4
- data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +1 -1
- data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +4 -4
- data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +4 -4
- data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +6 -6
- data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +70 -70
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +63 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +47 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +35 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +4 -4
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +13 -13
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +40 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +5 -5
- data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +7 -7
- data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +4 -4
- data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +41 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +6 -6
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +6 -6
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +7 -7
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +6 -6
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +4 -4
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +126 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +80 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +52 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +5 -5
- data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +4 -4
- data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +4 -4
- data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +2 -2
- data/src/core/ext/xds/upb_utils.h +67 -0
- data/src/core/ext/xds/xds_api.cc +127 -3487
- data/src/core/ext/xds/xds_api.h +60 -615
- data/src/core/ext/xds/xds_bootstrap.cc +221 -125
- data/src/core/ext/xds/xds_bootstrap.h +31 -15
- data/src/core/ext/xds/xds_certificate_provider.h +1 -0
- data/src/core/ext/xds/xds_channel_stack_modifier.cc +14 -17
- data/src/core/ext/xds/xds_channel_stack_modifier.h +4 -3
- data/src/core/ext/xds/xds_client.cc +702 -1077
- data/src/core/ext/xds/xds_client.h +101 -150
- data/src/core/ext/xds/xds_client_stats.cc +15 -15
- data/src/core/ext/xds/xds_client_stats.h +5 -4
- data/src/core/ext/xds/xds_cluster.cc +453 -0
- data/src/core/ext/xds/xds_cluster.h +108 -0
- data/src/core/ext/xds/xds_common_types.cc +388 -0
- data/src/core/ext/xds/xds_common_types.h +95 -0
- data/src/core/ext/xds/xds_endpoint.cc +364 -0
- data/src/core/ext/xds/xds_endpoint.h +135 -0
- data/src/core/ext/xds/xds_http_fault_filter.cc +6 -6
- data/src/core/ext/xds/xds_http_fault_filter.h +3 -3
- data/src/core/ext/xds/xds_http_filters.cc +11 -5
- data/src/core/ext/xds/xds_http_filters.h +4 -4
- data/src/core/ext/xds/xds_http_rbac_filter.cc +563 -0
- data/src/core/ext/xds/xds_http_rbac_filter.h +54 -0
- data/src/core/ext/xds/xds_listener.cc +1039 -0
- data/src/core/ext/xds/xds_listener.h +220 -0
- data/src/core/ext/{transport/chttp2/transport/hpack_utils.h → xds/xds_resource_type.cc} +12 -9
- data/src/core/ext/xds/xds_resource_type.h +98 -0
- data/src/core/ext/xds/xds_resource_type_impl.h +87 -0
- data/src/core/ext/xds/xds_route_config.cc +985 -0
- data/src/core/ext/xds/xds_route_config.h +215 -0
- data/src/core/ext/xds/xds_routing.cc +12 -9
- data/src/core/ext/xds/xds_routing.h +8 -5
- data/src/core/ext/xds/xds_server_config_fetcher.cc +162 -101
- data/src/core/lib/address_utils/parse_address.cc +20 -0
- data/src/core/lib/address_utils/parse_address.h +5 -0
- data/src/core/lib/address_utils/sockaddr_utils.cc +33 -36
- data/src/core/lib/address_utils/sockaddr_utils.h +1 -16
- data/src/core/lib/backoff/backoff.cc +8 -37
- data/src/core/lib/backoff/backoff.h +11 -11
- data/src/core/lib/channel/call_finalization.h +86 -0
- data/src/core/lib/channel/channel_args.cc +60 -1
- data/src/core/lib/channel/channel_args.h +2 -0
- data/src/core/lib/channel/channel_args_preconditioning.cc +1 -0
- data/src/core/lib/channel/channel_stack.cc +10 -3
- data/src/core/lib/channel/channel_stack.h +42 -6
- data/src/core/lib/channel/channel_stack_builder.cc +66 -248
- data/src/core/lib/channel/channel_stack_builder.h +95 -147
- data/src/core/lib/channel/channel_trace.cc +3 -6
- data/src/core/lib/channel/channelz.cc +1 -0
- data/src/core/lib/channel/connected_channel.cc +9 -4
- data/src/core/lib/channel/connected_channel.h +1 -1
- data/src/core/lib/channel/context.h +11 -0
- data/src/core/lib/channel/handshaker.cc +1 -1
- data/src/core/lib/channel/handshaker.h +1 -1
- data/src/core/lib/channel/promise_based_filter.cc +669 -0
- data/src/core/lib/channel/promise_based_filter.h +423 -0
- data/src/core/lib/compression/compression.cc +20 -112
- data/src/core/lib/compression/compression_internal.cc +143 -203
- data/src/core/lib/compression/compression_internal.h +64 -69
- data/src/core/lib/compression/message_compress.cc +11 -11
- data/src/core/lib/compression/message_compress.h +2 -2
- data/src/core/lib/config/core_configuration.cc +8 -2
- data/src/core/lib/config/core_configuration.h +39 -0
- data/src/core/lib/event_engine/default_event_engine_factory.cc +27 -0
- data/src/core/lib/event_engine/event_engine.cc +23 -8
- data/src/core/lib/event_engine/event_engine_factory.h +3 -0
- data/src/core/lib/event_engine/memory_allocator.cc +9 -13
- data/src/core/lib/event_engine/{event_engine_factory.cc → resolved_address.cc} +10 -20
- data/src/core/lib/gpr/sync_posix.cc +1 -0
- data/src/core/lib/gpr/time.cc +2 -1
- data/src/core/lib/gpr/useful.h +18 -0
- data/src/core/lib/gprpp/bitset.h +7 -0
- data/src/core/lib/gprpp/capture.h +76 -0
- data/src/core/lib/gprpp/chunked_vector.h +45 -3
- data/src/core/lib/gprpp/debug_location.h +2 -0
- data/src/core/lib/gprpp/status_helper.cc +30 -38
- data/src/core/lib/gprpp/status_helper.h +6 -19
- data/src/core/lib/gprpp/table.h +11 -0
- data/src/core/lib/gprpp/time.cc +186 -0
- data/src/core/lib/gprpp/time.h +292 -0
- data/src/core/lib/http/format_request.cc +27 -23
- data/src/core/lib/http/format_request.h +7 -6
- data/src/core/lib/http/httpcli.cc +307 -239
- data/src/core/lib/http/httpcli.h +182 -89
- data/src/core/lib/http/httpcli_security_connector.cc +62 -73
- data/src/core/lib/http/httpcli_ssl_credentials.h +37 -0
- data/src/core/lib/http/parser.h +1 -1
- data/src/core/lib/iomgr/buffer_list.h +5 -5
- data/src/core/lib/iomgr/call_combiner.cc +15 -4
- data/src/core/lib/iomgr/closure.h +29 -9
- data/src/core/lib/iomgr/combiner.cc +25 -3
- data/src/core/lib/iomgr/error.cc +13 -10
- data/src/core/lib/iomgr/error.h +0 -2
- data/src/core/lib/iomgr/ev_apple.cc +6 -5
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +8 -7
- data/src/core/lib/iomgr/ev_epollex_linux.cc +12 -9
- data/src/core/lib/iomgr/ev_poll_posix.cc +7 -7
- data/src/core/lib/iomgr/ev_posix.cc +3 -3
- data/src/core/lib/iomgr/ev_posix.h +1 -1
- data/src/core/lib/iomgr/event_engine/iomgr.cc +3 -2
- data/src/core/lib/iomgr/event_engine/pollset.cc +2 -3
- data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +6 -0
- data/src/core/lib/iomgr/event_engine/resolved_address_internal.h +2 -0
- data/src/core/lib/iomgr/event_engine/resolver.cc +66 -48
- data/src/core/lib/iomgr/event_engine/resolver.h +56 -0
- data/src/core/lib/iomgr/event_engine/tcp.cc +4 -3
- data/src/core/lib/iomgr/event_engine/timer.cc +3 -4
- data/src/core/lib/iomgr/exec_ctx.cc +25 -97
- data/src/core/lib/iomgr/exec_ctx.h +7 -23
- data/src/core/lib/iomgr/executor.cc +10 -1
- data/src/core/lib/iomgr/fork_posix.cc +3 -2
- data/src/core/lib/iomgr/iocp_windows.cc +9 -9
- data/src/core/lib/iomgr/iocp_windows.h +1 -1
- data/src/core/lib/iomgr/iomgr_posix.cc +2 -2
- data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +2 -2
- data/src/core/lib/iomgr/iomgr_windows.cc +2 -2
- data/src/core/lib/iomgr/polling_entity.h +6 -0
- data/src/core/lib/iomgr/pollset.cc +1 -1
- data/src/core/lib/iomgr/pollset.h +4 -4
- data/src/core/lib/iomgr/pollset_windows.cc +2 -2
- data/src/core/lib/iomgr/port.h +6 -9
- data/src/core/lib/iomgr/resolve_address.cc +5 -24
- data/src/core/lib/iomgr/resolve_address.h +47 -44
- data/src/core/lib/iomgr/resolve_address_impl.h +59 -0
- data/src/core/lib/iomgr/resolve_address_posix.cc +83 -67
- data/src/core/lib/iomgr/resolve_address_posix.h +47 -0
- data/src/core/lib/iomgr/resolve_address_windows.cc +93 -74
- data/src/core/lib/iomgr/resolve_address_windows.h +47 -0
- data/src/core/lib/iomgr/resolved_address.h +39 -0
- data/src/core/lib/iomgr/sockaddr_utils_posix.cc +62 -0
- data/src/core/lib/iomgr/socket_utils_common_posix.cc +0 -17
- data/src/core/lib/iomgr/tcp_client.cc +1 -1
- data/src/core/lib/iomgr/tcp_client.h +3 -2
- data/src/core/lib/iomgr/tcp_client_cfstream.cc +1 -1
- data/src/core/lib/iomgr/tcp_client_posix.cc +2 -2
- data/src/core/lib/iomgr/tcp_client_posix.h +1 -1
- data/src/core/lib/iomgr/tcp_client_windows.cc +1 -1
- data/src/core/lib/iomgr/tcp_posix.cc +2 -1
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +1 -0
- data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +1 -0
- data/src/core/lib/iomgr/tcp_windows.cc +17 -10
- data/src/core/lib/iomgr/timer.cc +2 -2
- data/src/core/lib/iomgr/timer.h +11 -6
- data/src/core/lib/iomgr/timer_generic.cc +96 -77
- data/src/core/lib/iomgr/timer_manager.cc +15 -14
- data/src/core/lib/iomgr/unix_sockets_posix.cc +22 -34
- data/src/core/lib/iomgr/unix_sockets_posix.h +4 -7
- data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +6 -15
- data/src/core/lib/iomgr/work_serializer.cc +15 -10
- data/src/core/lib/json/json_util.cc +4 -4
- data/src/core/lib/json/json_util.h +2 -2
- data/src/core/lib/matchers/matchers.cc +1 -1
- data/src/core/lib/promise/activity.cc +14 -8
- data/src/core/lib/promise/activity.h +183 -142
- data/src/core/lib/promise/arena_promise.h +188 -0
- data/src/core/lib/promise/detail/basic_seq.h +92 -3
- data/src/core/lib/promise/detail/promise_factory.h +1 -1
- data/src/core/lib/promise/detail/status.h +5 -0
- data/src/core/lib/promise/loop.h +34 -8
- data/src/core/lib/promise/poll.h +6 -0
- data/src/core/lib/promise/promise.h +95 -0
- data/src/core/lib/promise/seq.h +19 -1
- data/src/core/lib/promise/sleep.cc +74 -0
- data/src/core/lib/promise/sleep.h +66 -0
- data/src/core/lib/promise/try_seq.h +157 -0
- data/src/core/{ext/filters/client_channel → lib/resolver}/resolver.cc +17 -25
- data/src/core/{ext/filters/client_channel → lib/resolver}/resolver.h +43 -44
- data/src/core/{ext/filters/client_channel → lib/resolver}/resolver_factory.h +32 -31
- data/src/core/lib/resolver/resolver_registry.cc +156 -0
- data/src/core/lib/resolver/resolver_registry.h +113 -0
- data/src/core/{ext/filters/client_channel → lib/resolver}/server_address.cc +1 -1
- data/src/core/{ext/filters/client_channel → lib/resolver}/server_address.h +4 -4
- data/src/core/lib/resource_quota/api.h +0 -1
- data/src/core/lib/{gprpp → resource_quota}/arena.cc +16 -13
- data/src/core/lib/{gprpp → resource_quota}/arena.h +24 -13
- data/src/core/lib/resource_quota/memory_quota.cc +118 -94
- data/src/core/lib/resource_quota/memory_quota.h +100 -64
- data/src/core/lib/security/authorization/evaluate_args.cc +26 -21
- data/src/core/lib/security/authorization/evaluate_args.h +1 -1
- data/src/core/lib/security/authorization/grpc_authorization_engine.cc +60 -0
- data/src/core/lib/security/authorization/grpc_authorization_engine.h +62 -0
- data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +109 -0
- data/src/core/lib/security/authorization/grpc_server_authz_filter.h +51 -0
- data/src/core/lib/security/authorization/matchers.cc +227 -0
- data/src/core/lib/security/authorization/matchers.h +211 -0
- data/src/core/lib/security/authorization/rbac_policy.cc +442 -0
- data/src/core/lib/security/authorization/rbac_policy.h +171 -0
- data/src/core/lib/security/context/security_context.cc +4 -2
- data/src/core/lib/security/context/security_context.h +1 -1
- data/src/core/lib/security/credentials/alts/alts_credentials.h +6 -0
- data/src/core/lib/security/credentials/call_creds_util.cc +87 -0
- data/src/core/lib/security/credentials/call_creds_util.h +42 -0
- data/src/core/lib/security/credentials/channel_creds_registry.h +97 -0
- data/src/core/lib/security/credentials/channel_creds_registry_init.cc +70 -0
- data/src/core/lib/security/credentials/composite/composite_credentials.cc +17 -81
- data/src/core/lib/security/credentials/composite/composite_credentials.h +21 -9
- data/src/core/lib/security/credentials/credentials.cc +2 -3
- data/src/core/lib/security/credentials/credentials.h +68 -57
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +46 -30
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +1 -0
- data/src/core/lib/security/credentials/external/external_account_credentials.cc +51 -33
- data/src/core/lib/security/credentials/external/external_account_credentials.h +5 -9
- data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +0 -1
- data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +33 -13
- data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -0
- data/src/core/lib/security/credentials/fake/fake_credentials.cc +18 -18
- data/src/core/lib/security/credentials/fake/fake_credentials.h +14 -16
- data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +16 -13
- data/src/core/lib/security/credentials/google_default/google_default_credentials.h +6 -0
- data/src/core/lib/security/credentials/iam/iam_credentials.cc +19 -27
- data/src/core/lib/security/credentials/iam/iam_credentials.h +11 -9
- data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +13 -7
- data/src/core/lib/security/credentials/jwt/json_token.cc +4 -6
- data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +27 -43
- data/src/core/lib/security/credentials/jwt/jwt_credentials.h +12 -12
- data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +54 -41
- data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -1
- data/src/core/lib/security/credentials/local/local_credentials.h +6 -0
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +137 -158
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +52 -33
- data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +95 -153
- data/src/core/lib/security/credentials/plugin/plugin_credentials.h +54 -27
- data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +1 -10
- data/src/core/lib/security/credentials/ssl/ssl_credentials.h +6 -3
- data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +25 -0
- data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +17 -1
- data/src/core/lib/security/credentials/tls/tls_credentials.h +6 -0
- data/src/core/lib/security/credentials/xds/xds_credentials.h +6 -1
- data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +8 -14
- data/src/core/lib/security/security_connector/alts/alts_security_connector.h +1 -1
- data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +4 -12
- data/src/core/lib/security/security_connector/fake/fake_security_connector.h +0 -2
- data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +6 -16
- data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +4 -9
- data/src/core/lib/security/security_connector/local/local_security_connector.cc +8 -16
- data/src/core/lib/security/security_connector/security_connector.cc +3 -15
- data/src/core/lib/security/security_connector/security_connector.h +16 -21
- data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +6 -11
- data/src/core/lib/security/security_connector/ssl_utils.cc +29 -31
- data/src/core/lib/security/security_connector/ssl_utils.h +13 -17
- data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +21 -13
- data/src/core/lib/security/security_connector/tls/tls_security_connector.h +6 -6
- data/src/core/lib/security/transport/auth_filters.h +37 -4
- data/src/core/lib/security/transport/client_auth_filter.cc +87 -358
- data/src/core/lib/security/transport/security_handshaker.cc +14 -6
- data/src/core/lib/security/transport/server_auth_filter.cc +41 -35
- data/src/core/lib/service_config/service_config.h +82 -0
- data/src/core/{ext → lib}/service_config/service_config_call_data.h +5 -5
- data/src/core/{ext/service_config/service_config.cc → lib/service_config/service_config_impl.cc} +20 -17
- data/src/core/{ext/service_config/service_config.h → lib/service_config/service_config_impl.h} +16 -18
- data/src/core/{ext → lib}/service_config/service_config_parser.cc +31 -27
- data/src/core/{ext → lib}/service_config/service_config_parser.h +39 -30
- data/src/core/lib/slice/slice.cc +76 -179
- data/src/core/lib/slice/slice.h +67 -24
- data/src/core/lib/slice/slice_internal.h +12 -31
- data/src/core/lib/slice/slice_refcount.cc +18 -0
- data/src/core/lib/slice/slice_refcount.h +6 -85
- data/src/core/lib/slice/slice_refcount_base.h +16 -136
- data/src/core/lib/surface/builtins.cc +6 -6
- data/src/core/lib/surface/call.cc +152 -387
- data/src/core/lib/surface/call.h +5 -5
- data/src/core/lib/surface/channel.cc +64 -71
- data/src/core/lib/surface/channel.h +10 -11
- data/src/core/lib/surface/channel_init.cc +1 -1
- data/src/core/lib/surface/channel_init.h +4 -4
- data/src/core/lib/surface/completion_queue.cc +10 -9
- data/src/core/lib/surface/init.cc +78 -9
- data/src/core/lib/surface/init.h +0 -2
- data/src/core/lib/surface/lame_client.cc +2 -2
- data/src/core/lib/surface/server.cc +23 -51
- data/src/core/lib/surface/server.h +5 -5
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.cc +9 -10
- data/src/core/lib/transport/bdp_estimator.h +2 -2
- data/src/core/lib/transport/error_utils.cc +5 -3
- data/src/core/lib/transport/error_utils.h +2 -1
- data/src/core/lib/transport/metadata_batch.h +1010 -750
- data/src/core/lib/transport/parsed_metadata.cc +2 -0
- data/src/core/lib/transport/parsed_metadata.h +115 -96
- data/src/core/lib/transport/status_conversion.cc +2 -2
- data/src/core/lib/transport/status_conversion.h +1 -1
- data/src/core/lib/transport/timeout_encoding.cc +204 -67
- data/src/core/lib/transport/timeout_encoding.h +40 -10
- data/src/core/lib/transport/transport.cc +3 -1
- data/src/core/lib/transport/transport.h +88 -3
- data/src/core/lib/transport/transport_impl.h +13 -0
- data/src/core/lib/transport/transport_op_string.cc +5 -47
- data/src/core/lib/uri/uri_parser.cc +227 -53
- data/src/core/lib/uri/uri_parser.h +37 -23
- data/src/core/plugin_registry/grpc_plugin_registry.cc +19 -87
- data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +85 -0
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +27 -22
- data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +9 -1
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +19 -11
- data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -2
- data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +1 -1
- data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -2
- data/src/core/tsi/alts/handshaker/transport_security_common_api.h +2 -2
- data/src/core/tsi/local_transport_security.cc +3 -11
- data/src/core/tsi/local_transport_security.h +1 -4
- data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +141 -0
- data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +81 -0
- data/src/core/tsi/ssl/session_cache/ssl_session.h +2 -4
- data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +3 -5
- data/src/core/tsi/ssl_transport_security.cc +105 -14
- data/src/core/tsi/ssl_transport_security.h +38 -6
- data/src/ruby/ext/grpc/extconf.rb +10 -3
- data/src/ruby/ext/grpc/rb_channel.c +5 -2
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +20 -24
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +30 -36
- data/src/ruby/ext/grpc/rb_server.c +7 -4
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +2 -1
- data/third_party/abseil-cpp/absl/base/internal/fast_type_id.h +48 -0
- data/third_party/abseil-cpp/absl/random/bernoulli_distribution.h +200 -0
- data/third_party/abseil-cpp/absl/random/beta_distribution.h +427 -0
- data/third_party/abseil-cpp/absl/random/discrete_distribution.cc +98 -0
- data/third_party/abseil-cpp/absl/random/discrete_distribution.h +247 -0
- data/third_party/abseil-cpp/absl/random/distributions.h +452 -0
- data/third_party/abseil-cpp/absl/random/exponential_distribution.h +165 -0
- data/third_party/abseil-cpp/absl/random/gaussian_distribution.cc +104 -0
- data/third_party/abseil-cpp/absl/random/gaussian_distribution.h +275 -0
- data/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +92 -0
- data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +268 -0
- data/third_party/abseil-cpp/absl/random/internal/fastmath.h +57 -0
- data/third_party/abseil-cpp/absl/random/internal/generate_real.h +144 -0
- data/third_party/abseil-cpp/absl/random/internal/iostream_state_saver.h +245 -0
- data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +150 -0
- data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +308 -0
- data/third_party/abseil-cpp/absl/random/internal/platform.h +171 -0
- data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +253 -0
- data/third_party/abseil-cpp/absl/random/internal/pool_urbg.h +131 -0
- data/third_party/abseil-cpp/absl/random/internal/randen.cc +91 -0
- data/third_party/abseil-cpp/absl/random/internal/randen.h +102 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +221 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_detect.h +33 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +239 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc +526 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.h +50 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_round_keys.cc +462 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_slow.cc +471 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_slow.h +40 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_traits.h +88 -0
- data/third_party/abseil-cpp/absl/random/internal/salted_seed_seq.h +167 -0
- data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +267 -0
- data/third_party/abseil-cpp/absl/random/internal/seed_material.h +104 -0
- data/third_party/abseil-cpp/absl/random/internal/traits.h +101 -0
- data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +244 -0
- data/third_party/abseil-cpp/absl/random/internal/wide_multiply.h +111 -0
- data/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h +257 -0
- data/third_party/abseil-cpp/absl/random/poisson_distribution.h +258 -0
- data/third_party/abseil-cpp/absl/random/random.h +189 -0
- data/third_party/abseil-cpp/absl/random/seed_gen_exception.cc +46 -0
- data/third_party/abseil-cpp/absl/random/seed_gen_exception.h +55 -0
- data/third_party/abseil-cpp/absl/random/seed_sequences.cc +29 -0
- data/third_party/abseil-cpp/absl/random/seed_sequences.h +110 -0
- data/third_party/abseil-cpp/absl/random/uniform_int_distribution.h +275 -0
- data/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +202 -0
- data/third_party/abseil-cpp/absl/random/zipf_distribution.h +271 -0
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +1 -0
- data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +13 -0
- data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +21 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +12 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +1 -2
- data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +2 -2
- data/third_party/boringssl-with-bazel/src/crypto/mem.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +29 -0
- data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +0 -1
- data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +1 -1
- data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +8 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +13 -1
- data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +10 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +1 -1
- data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +9 -4
- data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +6 -1
- data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +23 -2
- data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +4 -0
- data/third_party/cares/cares/{ares.h → include/ares.h} +73 -1
- data/third_party/cares/cares/{ares_dns.h → include/ares_dns.h} +9 -0
- data/third_party/cares/cares/{ares_rules.h → include/ares_rules.h} +0 -0
- data/third_party/cares/cares/{ares_version.h → include/ares_version.h} +3 -3
- data/third_party/cares/cares/{ares__close_sockets.c → src/lib/ares__close_sockets.c} +2 -2
- data/third_party/cares/cares/{ares__get_hostent.c → src/lib/ares__get_hostent.c} +1 -2
- data/third_party/cares/cares/src/lib/ares__parse_into_addrinfo.c +260 -0
- data/third_party/cares/cares/{ares__read_line.c → src/lib/ares__read_line.c} +0 -0
- data/third_party/cares/cares/src/lib/ares__readaddrinfo.c +264 -0
- data/third_party/cares/cares/src/lib/ares__sortaddrinfo.c +499 -0
- data/third_party/cares/cares/{ares__timeval.c → src/lib/ares__timeval.c} +0 -0
- data/third_party/cares/cares/src/lib/ares_android.c +444 -0
- data/third_party/cares/cares/src/lib/ares_android.h +27 -0
- data/third_party/cares/cares/{ares_cancel.c → src/lib/ares_cancel.c} +0 -0
- data/third_party/cares/cares/{ares_create_query.c → src/lib/ares_create_query.c} +8 -17
- data/third_party/cares/cares/{ares_data.c → src/lib/ares_data.c} +18 -0
- data/third_party/cares/cares/{ares_data.h → src/lib/ares_data.h} +2 -0
- data/third_party/cares/cares/{ares_destroy.c → src/lib/ares_destroy.c} +0 -0
- data/third_party/cares/cares/{ares_expand_name.c → src/lib/ares_expand_name.c} +114 -23
- data/third_party/cares/cares/{ares_expand_string.c → src/lib/ares_expand_string.c} +2 -5
- data/third_party/cares/cares/{ares_fds.c → src/lib/ares_fds.c} +0 -0
- data/third_party/cares/cares/{ares_free_hostent.c → src/lib/ares_free_hostent.c} +6 -4
- data/third_party/cares/cares/{ares_free_string.c → src/lib/ares_free_string.c} +0 -0
- data/third_party/cares/cares/src/lib/ares_freeaddrinfo.c +59 -0
- data/third_party/cares/cares/src/lib/ares_getaddrinfo.c +772 -0
- data/third_party/cares/cares/{ares_getenv.c → src/lib/ares_getenv.c} +0 -2
- data/third_party/cares/cares/{ares_getenv.h → src/lib/ares_getenv.h} +0 -0
- data/third_party/cares/cares/{ares_gethostbyaddr.c → src/lib/ares_gethostbyaddr.c} +2 -9
- data/third_party/cares/cares/{ares_gethostbyname.c → src/lib/ares_gethostbyname.c} +25 -20
- data/third_party/cares/cares/{ares_getnameinfo.c → src/lib/ares_getnameinfo.c} +4 -10
- data/third_party/cares/cares/{ares_getsock.c → src/lib/ares_getsock.c} +0 -0
- data/third_party/cares/cares/{ares_inet_net_pton.h → src/lib/ares_inet_net_pton.h} +0 -0
- data/third_party/cares/cares/{ares_init.c → src/lib/ares_init.c} +79 -40
- data/third_party/cares/cares/{ares_iphlpapi.h → src/lib/ares_iphlpapi.h} +0 -0
- data/third_party/cares/cares/{ares_ipv6.h → src/lib/ares_ipv6.h} +7 -0
- data/third_party/cares/cares/{ares_library_init.c → src/lib/ares_library_init.c} +7 -2
- data/third_party/cares/cares/{ares_library_init.h → src/lib/ares_library_init.h} +1 -1
- data/third_party/cares/cares/{ares_llist.c → src/lib/ares_llist.c} +0 -0
- data/third_party/cares/cares/{ares_llist.h → src/lib/ares_llist.h} +0 -0
- data/third_party/cares/cares/{ares_mkquery.c → src/lib/ares_mkquery.c} +0 -0
- data/third_party/cares/cares/src/lib/ares_nameser.h +482 -0
- data/third_party/cares/cares/{ares_nowarn.c → src/lib/ares_nowarn.c} +0 -0
- data/third_party/cares/cares/{ares_nowarn.h → src/lib/ares_nowarn.h} +0 -0
- data/third_party/cares/cares/{ares_options.c → src/lib/ares_options.c} +0 -0
- data/third_party/cares/cares/src/lib/ares_parse_a_reply.c +209 -0
- data/third_party/cares/cares/src/lib/ares_parse_aaaa_reply.c +212 -0
- data/third_party/cares/cares/src/lib/ares_parse_caa_reply.c +199 -0
- data/third_party/cares/cares/{ares_parse_mx_reply.c → src/lib/ares_parse_mx_reply.c} +2 -8
- data/third_party/cares/cares/{ares_parse_naptr_reply.c → src/lib/ares_parse_naptr_reply.c} +2 -13
- data/third_party/cares/cares/{ares_parse_ns_reply.c → src/lib/ares_parse_ns_reply.c} +5 -11
- data/third_party/cares/cares/{ares_parse_ptr_reply.c → src/lib/ares_parse_ptr_reply.c} +53 -46
- data/third_party/cares/cares/src/lib/ares_parse_soa_reply.c +179 -0
- data/third_party/cares/cares/{ares_parse_srv_reply.c → src/lib/ares_parse_srv_reply.c} +2 -13
- data/third_party/cares/cares/{ares_parse_txt_reply.c → src/lib/ares_parse_txt_reply.c} +3 -9
- data/third_party/cares/cares/{ares_platform.c → src/lib/ares_platform.c} +0 -0
- data/third_party/cares/cares/{ares_platform.h → src/lib/ares_platform.h} +0 -0
- data/third_party/cares/cares/{ares_private.h → src/lib/ares_private.h} +52 -11
- data/third_party/cares/cares/{ares_process.c → src/lib/ares_process.c} +127 -52
- data/third_party/cares/cares/{ares_query.c → src/lib/ares_query.c} +3 -9
- data/third_party/cares/cares/{ares_search.c → src/lib/ares_search.c} +5 -7
- data/third_party/cares/cares/{ares_send.c → src/lib/ares_send.c} +2 -8
- data/third_party/cares/cares/{ares_setup.h → src/lib/ares_setup.h} +4 -1
- data/third_party/cares/cares/{ares_strcasecmp.c → src/lib/ares_strcasecmp.c} +0 -0
- data/third_party/cares/cares/{ares_strcasecmp.h → src/lib/ares_strcasecmp.h} +0 -0
- data/third_party/cares/cares/{ares_strdup.c → src/lib/ares_strdup.c} +0 -0
- data/third_party/cares/cares/{ares_strdup.h → src/lib/ares_strdup.h} +0 -0
- data/third_party/cares/cares/{ares_strerror.c → src/lib/ares_strerror.c} +0 -0
- data/third_party/cares/cares/{ares_strsplit.c → src/lib/ares_strsplit.c} +4 -0
- data/third_party/cares/cares/{ares_strsplit.h → src/lib/ares_strsplit.h} +0 -0
- data/third_party/cares/cares/{ares_timeout.c → src/lib/ares_timeout.c} +0 -0
- data/third_party/cares/cares/{ares_version.c → src/lib/ares_version.c} +0 -0
- data/third_party/cares/cares/{ares_writev.c → src/lib/ares_writev.c} +0 -0
- data/third_party/cares/cares/src/lib/ares_writev.h +36 -0
- data/third_party/cares/cares/{bitncmp.c → src/lib/bitncmp.c} +0 -0
- data/third_party/cares/cares/{bitncmp.h → src/lib/bitncmp.h} +0 -0
- data/third_party/cares/cares/src/lib/config-dos.h +115 -0
- data/third_party/cares/cares/{config-win32.h → src/lib/config-win32.h} +0 -0
- data/third_party/cares/cares/{inet_net_pton.c → src/lib/inet_net_pton.c} +2 -8
- data/third_party/cares/cares/{inet_ntop.c → src/lib/inet_ntop.c} +2 -8
- data/third_party/cares/cares/{setup_once.h → src/lib/setup_once.h} +0 -0
- data/third_party/cares/cares/{windows_port.c → src/lib/windows_port.c} +0 -0
- data/third_party/upb/third_party/utf8_range/naive.c +92 -0
- data/third_party/upb/third_party/utf8_range/range2-neon.c +157 -0
- data/third_party/upb/third_party/utf8_range/range2-sse.c +170 -0
- data/third_party/upb/third_party/utf8_range/utf8_range.h +9 -0
- data/third_party/upb/upb/decode.c +526 -319
- data/third_party/upb/upb/decode.h +43 -17
- data/third_party/upb/upb/decode_fast.c +303 -301
- data/third_party/upb/upb/decode_fast.h +18 -18
- data/third_party/upb/upb/decode_internal.h +73 -56
- data/third_party/upb/upb/def.c +1863 -1078
- data/third_party/upb/upb/def.h +318 -286
- data/third_party/upb/upb/def.hpp +129 -172
- data/third_party/upb/upb/encode.c +202 -175
- data/third_party/upb/upb/encode.h +15 -17
- data/third_party/upb/upb/msg.c +144 -124
- data/third_party/upb/upb/msg.h +40 -33
- data/third_party/upb/upb/msg_internal.h +321 -272
- data/third_party/upb/upb/reflection.c +239 -199
- data/third_party/upb/upb/reflection.h +87 -67
- data/third_party/upb/upb/reflection.hpp +6 -6
- data/third_party/upb/upb/table.c +222 -142
- data/third_party/upb/upb/table_internal.h +128 -96
- data/third_party/upb/upb/text_encode.c +113 -90
- data/third_party/upb/upb/text_encode.h +10 -10
- data/third_party/upb/upb/upb.c +111 -72
- data/third_party/upb/upb/upb.h +120 -144
- data/third_party/upb/upb/upb.hpp +31 -28
- data/third_party/upb/upb/upb_internal.h +21 -11
- data/third_party/xxhash/xxhash.h +607 -352
- metadata +406 -203
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +0 -44
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +0 -83
- data/src/core/ext/filters/client_channel/resolver_registry.cc +0 -194
- data/src/core/ext/filters/client_channel/resolver_registry.h +0 -88
- data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +0 -122
- data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +0 -92
- data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +0 -192
- data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +0 -52
- data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +0 -79
- data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +0 -125
- data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +0 -37
- data/src/core/ext/transport/chttp2/transport/hpack_encoder_index.h +0 -107
- data/src/core/ext/transport/chttp2/transport/hpack_utils.cc +0 -46
- data/src/core/ext/transport/chttp2/transport/popularity_count.h +0 -60
- data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +0 -38
- data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +0 -64
- data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +0 -38
- data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +0 -64
- data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +0 -38
- data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +0 -64
- data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +0 -38
- data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +0 -64
- data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +0 -38
- data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +0 -64
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/eval.upb.c +0 -102
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/eval.upb.h +0 -306
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/explain.upb.c +0 -56
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/explain.upb.h +0 -135
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/value.upb.c +0 -115
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/value.upb.h +0 -371
- data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c +0 -67
- data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.h +0 -35
- data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c +0 -68
- data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.h +0 -35
- data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c +0 -67
- data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.h +0 -35
- data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c +0 -75
- data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h +0 -35
- data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c +0 -69
- data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h +0 -35
- data/src/core/lib/compression/algorithm_metadata.h +0 -62
- data/src/core/lib/compression/compression_args.cc +0 -140
- data/src/core/lib/compression/compression_args.h +0 -58
- data/src/core/lib/compression/stream_compression.cc +0 -81
- data/src/core/lib/compression/stream_compression.h +0 -117
- data/src/core/lib/compression/stream_compression_gzip.cc +0 -231
- data/src/core/lib/compression/stream_compression_gzip.h +0 -28
- data/src/core/lib/compression/stream_compression_identity.cc +0 -91
- data/src/core/lib/compression/stream_compression_identity.h +0 -29
- data/src/core/lib/iomgr/iomgr_custom.cc +0 -79
- data/src/core/lib/iomgr/iomgr_custom.h +0 -49
- data/src/core/lib/iomgr/pollset_custom.cc +0 -105
- data/src/core/lib/iomgr/pollset_custom.h +0 -37
- data/src/core/lib/iomgr/pollset_set_custom.cc +0 -47
- data/src/core/lib/iomgr/pollset_set_custom.h +0 -26
- data/src/core/lib/iomgr/resolve_address_custom.cc +0 -169
- data/src/core/lib/iomgr/resolve_address_custom.h +0 -44
- data/src/core/lib/iomgr/tcp_client_custom.cc +0 -146
- data/src/core/lib/iomgr/tcp_custom.cc +0 -350
- data/src/core/lib/iomgr/tcp_custom.h +0 -85
- data/src/core/lib/iomgr/tcp_server_custom.cc +0 -457
- data/src/core/lib/iomgr/timer_custom.cc +0 -96
- data/src/core/lib/iomgr/timer_custom.h +0 -43
- data/src/core/lib/security/authorization/sdk_server_authz_filter.cc +0 -173
- data/src/core/lib/security/authorization/sdk_server_authz_filter.h +0 -67
- data/src/core/lib/security/credentials/credentials_metadata.cc +0 -61
- data/src/core/lib/slice/slice_intern.cc +0 -367
- data/src/core/lib/slice/slice_utils.h +0 -200
- data/src/core/lib/slice/static_slice.cc +0 -377
- data/src/core/lib/slice/static_slice.h +0 -300
- data/src/core/lib/surface/init_secure.cc +0 -103
- data/src/core/lib/transport/metadata.cc +0 -714
- data/src/core/lib/transport/metadata.h +0 -449
- data/src/core/lib/transport/metadata_batch.cc +0 -99
- data/src/core/lib/transport/static_metadata.cc +0 -1032
- data/src/core/lib/transport/static_metadata.h +0 -322
- data/src/core/lib/transport/status_metadata.cc +0 -63
- data/src/core/lib/transport/status_metadata.h +0 -48
- data/third_party/cares/cares/ares_getopt.c +0 -122
- data/third_party/cares/cares/ares_getopt.h +0 -53
- data/third_party/cares/cares/ares_parse_a_reply.c +0 -264
- data/third_party/cares/cares/ares_parse_aaaa_reply.c +0 -264
- data/third_party/cares/cares/ares_parse_soa_reply.c +0 -133
@@ -30,11 +30,12 @@
|
|
30
30
|
#include <grpc/support/sync.h>
|
31
31
|
|
32
32
|
#include "src/core/lib/gprpp/ref_counted.h"
|
33
|
-
#include "src/core/lib/http/httpcli.h"
|
34
|
-
#include "src/core/lib/http/parser.h"
|
35
33
|
#include "src/core/lib/iomgr/polling_entity.h"
|
34
|
+
#include "src/core/lib/promise/arena_promise.h"
|
35
|
+
#include "src/core/lib/security/context/security_context.h"
|
36
36
|
#include "src/core/lib/security/security_connector/security_connector.h"
|
37
37
|
#include "src/core/lib/transport/metadata_batch.h"
|
38
|
+
#include "src/core/lib/transport/transport.h"
|
38
39
|
|
39
40
|
struct grpc_http_response;
|
40
41
|
|
@@ -51,6 +52,7 @@ typedef enum {
|
|
51
52
|
#define GRPC_CHANNEL_CREDENTIALS_TYPE_FAKE_TRANSPORT_SECURITY \
|
52
53
|
"FakeTransportSecurity"
|
53
54
|
#define GRPC_CHANNEL_CREDENTIALS_TYPE_GOOGLE_DEFAULT "GoogleDefault"
|
55
|
+
#define GRPC_CREDENTIALS_TYPE_INSECURE "insecure"
|
54
56
|
|
55
57
|
#define GRPC_CALL_CREDENTIALS_TYPE_OAUTH2 "Oauth2"
|
56
58
|
#define GRPC_CALL_CREDENTIALS_TYPE_JWT "Jwt"
|
@@ -101,6 +103,10 @@ void grpc_override_well_known_credentials_path_getter(
|
|
101
103
|
struct grpc_channel_credentials
|
102
104
|
: grpc_core::RefCounted<grpc_channel_credentials> {
|
103
105
|
public:
|
106
|
+
// The pointer value \a type is used to uniquely identify a creds
|
107
|
+
// implementation for down-casting purposes. Every creds implementation should
|
108
|
+
// use a unique string instance, which should be returned by all instances of
|
109
|
+
// that creds implementation.
|
104
110
|
explicit grpc_channel_credentials(const char* type) : type_(type) {}
|
105
111
|
~grpc_channel_credentials() override = default;
|
106
112
|
|
@@ -131,9 +137,30 @@ struct grpc_channel_credentials
|
|
131
137
|
return args;
|
132
138
|
}
|
133
139
|
|
140
|
+
// Compares this grpc_channel_credentials object with \a other.
|
141
|
+
// If this method returns 0, it means that gRPC can treat the two channel
|
142
|
+
// credentials as effectively the same. This method is used to compare
|
143
|
+
// `grpc_channel_credentials` objects when they are present in channel_args.
|
144
|
+
// One important usage of this is when channel args are used in SubchannelKey,
|
145
|
+
// which leads to a useful property that allows subchannels to be reused when
|
146
|
+
// two different `grpc_channel_credentials` objects are used but they compare
|
147
|
+
// as equal (assuming other channel args match).
|
148
|
+
int cmp(const grpc_channel_credentials* other) const {
|
149
|
+
GPR_ASSERT(other != nullptr);
|
150
|
+
// Intentionally uses grpc_core::QsortCompare instead of strcmp as a safety
|
151
|
+
// against different grpc_channel_credentials types using the same name.
|
152
|
+
int r = grpc_core::QsortCompare(type(), other->type());
|
153
|
+
if (r != 0) return r;
|
154
|
+
return cmp_impl(other);
|
155
|
+
}
|
156
|
+
|
134
157
|
const char* type() const { return type_; }
|
135
158
|
|
136
159
|
private:
|
160
|
+
// Implementation for `cmp` method intended to be overridden by subclasses.
|
161
|
+
// Only invoked if `type()` and `other->type()` compare equal as strings.
|
162
|
+
virtual int cmp_impl(const grpc_channel_credentials* other) const = 0;
|
163
|
+
|
137
164
|
const char* type_;
|
138
165
|
};
|
139
166
|
|
@@ -153,21 +180,11 @@ grpc_channel_credentials* grpc_channel_credentials_from_arg(
|
|
153
180
|
grpc_channel_credentials* grpc_channel_credentials_find_in_args(
|
154
181
|
const grpc_channel_args* args);
|
155
182
|
|
156
|
-
/* ---
|
157
|
-
|
158
|
-
struct grpc_credentials_mdelem_array {
|
159
|
-
grpc_mdelem* md = nullptr;
|
160
|
-
size_t size = 0;
|
161
|
-
};
|
162
|
-
/// Takes a new ref to \a md.
|
163
|
-
void grpc_credentials_mdelem_array_add(grpc_credentials_mdelem_array* list,
|
164
|
-
grpc_mdelem md);
|
165
|
-
|
166
|
-
/// Appends all elements from \a src to \a dst, taking a new ref to each one.
|
167
|
-
void grpc_credentials_mdelem_array_append(grpc_credentials_mdelem_array* dst,
|
168
|
-
grpc_credentials_mdelem_array* src);
|
183
|
+
/* --- grpc_core::CredentialsMetadataArray. --- */
|
169
184
|
|
170
|
-
|
185
|
+
namespace grpc_core {
|
186
|
+
using CredentialsMetadataArray = std::vector<std::pair<Slice, Slice>>;
|
187
|
+
}
|
171
188
|
|
172
189
|
/* --- grpc_call_credentials. --- */
|
173
190
|
|
@@ -177,6 +194,20 @@ void grpc_credentials_mdelem_array_destroy(grpc_credentials_mdelem_array* list);
|
|
177
194
|
struct grpc_call_credentials
|
178
195
|
: public grpc_core::RefCounted<grpc_call_credentials> {
|
179
196
|
public:
|
197
|
+
// TODO(roth): Consider whether security connector actually needs to
|
198
|
+
// be part of this interface. Currently, it is here only for the
|
199
|
+
// url_scheme() method, which we might be able to instead add as an
|
200
|
+
// auth context property.
|
201
|
+
struct GetRequestMetadataArgs {
|
202
|
+
grpc_core::RefCountedPtr<grpc_channel_security_connector>
|
203
|
+
security_connector;
|
204
|
+
grpc_core::RefCountedPtr<grpc_auth_context> auth_context;
|
205
|
+
};
|
206
|
+
|
207
|
+
// The pointer value \a type is used to uniquely identify a creds
|
208
|
+
// implementation for down-casting purposes. Every creds implementation should
|
209
|
+
// use a unique string instance, which should be returned by all instances of
|
210
|
+
// that creds implementation.
|
180
211
|
explicit grpc_call_credentials(
|
181
212
|
const char* type,
|
182
213
|
grpc_security_level min_security_level = GRPC_PRIVACY_AND_INTEGRITY)
|
@@ -184,26 +215,27 @@ struct grpc_call_credentials
|
|
184
215
|
|
185
216
|
~grpc_call_credentials() override = default;
|
186
217
|
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
virtual bool get_request_metadata(grpc_polling_entity* pollent,
|
192
|
-
grpc_auth_metadata_context context,
|
193
|
-
grpc_credentials_mdelem_array* md_array,
|
194
|
-
grpc_closure* on_request_metadata,
|
195
|
-
grpc_error_handle* error) = 0;
|
196
|
-
|
197
|
-
// Cancels a pending asynchronous operation started by
|
198
|
-
// grpc_call_credentials_get_request_metadata() with the corresponding
|
199
|
-
// value of \a md_array.
|
200
|
-
virtual void cancel_get_request_metadata(
|
201
|
-
grpc_credentials_mdelem_array* md_array, grpc_error_handle error) = 0;
|
218
|
+
virtual grpc_core::ArenaPromise<
|
219
|
+
absl::StatusOr<grpc_core::ClientInitialMetadata>>
|
220
|
+
GetRequestMetadata(grpc_core::ClientInitialMetadata initial_metadata,
|
221
|
+
const GetRequestMetadataArgs* args) = 0;
|
202
222
|
|
203
223
|
virtual grpc_security_level min_security_level() const {
|
204
224
|
return min_security_level_;
|
205
225
|
}
|
206
226
|
|
227
|
+
// Compares this grpc_call_credentials object with \a other.
|
228
|
+
// If this method returns 0, it means that gRPC can treat the two call
|
229
|
+
// credentials as effectively the same..
|
230
|
+
int cmp(const grpc_call_credentials* other) const {
|
231
|
+
GPR_ASSERT(other != nullptr);
|
232
|
+
// Intentionally uses grpc_core::QsortCompare instead of strcmp as a safety
|
233
|
+
// against different grpc_call_credentials types using the same name.
|
234
|
+
int r = grpc_core::QsortCompare(type(), other->type());
|
235
|
+
if (r != 0) return r;
|
236
|
+
return cmp_impl(other);
|
237
|
+
}
|
238
|
+
|
207
239
|
virtual std::string debug_string() {
|
208
240
|
return "grpc_call_credentials did not provide debug string";
|
209
241
|
}
|
@@ -211,6 +243,10 @@ struct grpc_call_credentials
|
|
211
243
|
const char* type() const { return type_; }
|
212
244
|
|
213
245
|
private:
|
246
|
+
// Implementation for `cmp` method intended to be overridden by subclasses.
|
247
|
+
// Only invoked if `type()` and `other->type()` compare equal as strings.
|
248
|
+
virtual int cmp_impl(const grpc_call_credentials* other) const = 0;
|
249
|
+
|
214
250
|
const char* type_;
|
215
251
|
const grpc_security_level min_security_level_;
|
216
252
|
};
|
@@ -218,7 +254,7 @@ struct grpc_call_credentials
|
|
218
254
|
/* Metadata-only credentials with the specified key and value where
|
219
255
|
asynchronicity can be simulated for testing. */
|
220
256
|
grpc_call_credentials* grpc_md_only_test_credentials_create(
|
221
|
-
const char* md_key, const char* md_value
|
257
|
+
const char* md_key, const char* md_value);
|
222
258
|
|
223
259
|
/* --- grpc_server_credentials. --- */
|
224
260
|
|
@@ -263,29 +299,4 @@ grpc_server_credentials* grpc_server_credentials_from_arg(const grpc_arg* arg);
|
|
263
299
|
grpc_server_credentials* grpc_find_server_credentials_in_args(
|
264
300
|
const grpc_channel_args* args);
|
265
301
|
|
266
|
-
/* -- Credentials Metadata Request. -- */
|
267
|
-
|
268
|
-
struct grpc_credentials_metadata_request {
|
269
|
-
explicit grpc_credentials_metadata_request(
|
270
|
-
grpc_core::RefCountedPtr<grpc_call_credentials> creds)
|
271
|
-
: creds(std::move(creds)) {}
|
272
|
-
~grpc_credentials_metadata_request() {
|
273
|
-
grpc_http_response_destroy(&response);
|
274
|
-
}
|
275
|
-
|
276
|
-
grpc_core::RefCountedPtr<grpc_call_credentials> creds;
|
277
|
-
grpc_http_response response;
|
278
|
-
};
|
279
|
-
|
280
|
-
inline grpc_credentials_metadata_request*
|
281
|
-
grpc_credentials_metadata_request_create(
|
282
|
-
grpc_core::RefCountedPtr<grpc_call_credentials> creds) {
|
283
|
-
return new grpc_credentials_metadata_request(std::move(creds));
|
284
|
-
}
|
285
|
-
|
286
|
-
inline void grpc_credentials_metadata_request_destroy(
|
287
|
-
grpc_credentials_metadata_request* r) {
|
288
|
-
delete r;
|
289
|
-
}
|
290
|
-
|
291
302
|
#endif /* GRPC_CORE_LIB_SECURITY_CREDENTIALS_CREDENTIALS_H */
|
@@ -22,6 +22,7 @@
|
|
22
22
|
#include "absl/strings/str_replace.h"
|
23
23
|
|
24
24
|
#include "src/core/lib/gpr/env.h"
|
25
|
+
#include "src/core/lib/http/httpcli_ssl_credentials.h"
|
25
26
|
|
26
27
|
namespace grpc_core {
|
27
28
|
|
@@ -160,19 +161,24 @@ void AwsExternalAccountCredentials::RetrieveRegion() {
|
|
160
161
|
"Invalid region url. %s", uri.status().ToString())));
|
161
162
|
return;
|
162
163
|
}
|
163
|
-
|
164
|
-
memset(&request, 0, sizeof(
|
165
|
-
request.host = const_cast<char*>(uri->authority().c_str());
|
166
|
-
request.http.path = gpr_strdup(uri->path().c_str());
|
167
|
-
request.handshaker =
|
168
|
-
uri->scheme() == "https" ? &grpc_httpcli_ssl : &grpc_httpcli_plaintext;
|
164
|
+
grpc_http_request request;
|
165
|
+
memset(&request, 0, sizeof(grpc_http_request));
|
169
166
|
grpc_http_response_destroy(&ctx_->response);
|
170
167
|
ctx_->response = {};
|
171
168
|
GRPC_CLOSURE_INIT(&ctx_->closure, OnRetrieveRegion, this, nullptr);
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
169
|
+
RefCountedPtr<grpc_channel_credentials> http_request_creds;
|
170
|
+
if (uri->scheme() == "http") {
|
171
|
+
http_request_creds = RefCountedPtr<grpc_channel_credentials>(
|
172
|
+
grpc_insecure_credentials_create());
|
173
|
+
} else {
|
174
|
+
http_request_creds = CreateHttpRequestSSLCredentials();
|
175
|
+
}
|
176
|
+
http_request_ =
|
177
|
+
HttpRequest::Get(std::move(*uri), nullptr /* channel args */,
|
178
|
+
ctx_->pollent, &request, ctx_->deadline, &ctx_->closure,
|
179
|
+
&ctx_->response, std::move(http_request_creds));
|
180
|
+
http_request_->Start();
|
181
|
+
grpc_http_request_destroy(&request);
|
176
182
|
}
|
177
183
|
|
178
184
|
void AwsExternalAccountCredentials::OnRetrieveRegion(void* arg,
|
@@ -207,20 +213,25 @@ void AwsExternalAccountCredentials::RetrieveRoleName() {
|
|
207
213
|
absl::StrFormat("Invalid url: %s.", uri.status().ToString())));
|
208
214
|
return;
|
209
215
|
}
|
210
|
-
|
211
|
-
memset(&request, 0, sizeof(
|
212
|
-
request.host = const_cast<char*>(uri->authority().c_str());
|
213
|
-
request.http.path = gpr_strdup(uri->path().c_str());
|
214
|
-
request.handshaker =
|
215
|
-
uri->scheme() == "https" ? &grpc_httpcli_ssl : &grpc_httpcli_plaintext;
|
216
|
+
grpc_http_request request;
|
217
|
+
memset(&request, 0, sizeof(grpc_http_request));
|
216
218
|
grpc_http_response_destroy(&ctx_->response);
|
217
219
|
ctx_->response = {};
|
218
220
|
GRPC_CLOSURE_INIT(&ctx_->closure, OnRetrieveRoleName, this, nullptr);
|
219
221
|
// TODO(ctiller): use the caller's resource quota.
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
222
|
+
RefCountedPtr<grpc_channel_credentials> http_request_creds;
|
223
|
+
if (uri->scheme() == "http") {
|
224
|
+
http_request_creds = RefCountedPtr<grpc_channel_credentials>(
|
225
|
+
grpc_insecure_credentials_create());
|
226
|
+
} else {
|
227
|
+
http_request_creds = CreateHttpRequestSSLCredentials();
|
228
|
+
}
|
229
|
+
http_request_ =
|
230
|
+
HttpRequest::Get(std::move(*uri), nullptr /* channel args */,
|
231
|
+
ctx_->pollent, &request, ctx_->deadline, &ctx_->closure,
|
232
|
+
&ctx_->response, std::move(http_request_creds));
|
233
|
+
http_request_->Start();
|
234
|
+
grpc_http_request_destroy(&request);
|
224
235
|
}
|
225
236
|
|
226
237
|
void AwsExternalAccountCredentials::OnRetrieveRoleName(
|
@@ -267,20 +278,25 @@ void AwsExternalAccountCredentials::RetrieveSigningKeys() {
|
|
267
278
|
"Invalid url with role name: %s.", uri.status().ToString())));
|
268
279
|
return;
|
269
280
|
}
|
270
|
-
|
271
|
-
memset(&request, 0, sizeof(
|
272
|
-
request.host = const_cast<char*>(uri->authority().c_str());
|
273
|
-
request.http.path = gpr_strdup(uri->path().c_str());
|
274
|
-
request.handshaker =
|
275
|
-
uri->scheme() == "https" ? &grpc_httpcli_ssl : &grpc_httpcli_plaintext;
|
281
|
+
grpc_http_request request;
|
282
|
+
memset(&request, 0, sizeof(grpc_http_request));
|
276
283
|
grpc_http_response_destroy(&ctx_->response);
|
277
284
|
ctx_->response = {};
|
278
285
|
GRPC_CLOSURE_INIT(&ctx_->closure, OnRetrieveSigningKeys, this, nullptr);
|
279
286
|
// TODO(ctiller): use the caller's resource quota.
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
287
|
+
RefCountedPtr<grpc_channel_credentials> http_request_creds;
|
288
|
+
if (uri->scheme() == "http") {
|
289
|
+
http_request_creds = RefCountedPtr<grpc_channel_credentials>(
|
290
|
+
grpc_insecure_credentials_create());
|
291
|
+
} else {
|
292
|
+
http_request_creds = CreateHttpRequestSSLCredentials();
|
293
|
+
}
|
294
|
+
http_request_ =
|
295
|
+
HttpRequest::Get(std::move(*uri), nullptr /* channel args */,
|
296
|
+
ctx_->pollent, &request, ctx_->deadline, &ctx_->closure,
|
297
|
+
&ctx_->response, std::move(http_request_creds));
|
298
|
+
http_request_->Start();
|
299
|
+
grpc_http_request_destroy(&request);
|
284
300
|
}
|
285
301
|
|
286
302
|
void AwsExternalAccountCredentials::OnRetrieveSigningKeys(
|
@@ -25,6 +25,7 @@
|
|
25
25
|
#include "absl/time/clock.h"
|
26
26
|
#include "absl/time/time.h"
|
27
27
|
|
28
|
+
#include "src/core/lib/http/httpcli_ssl_credentials.h"
|
28
29
|
#include "src/core/lib/http/parser.h"
|
29
30
|
#include "src/core/lib/security/credentials/external/aws_external_account_credentials.h"
|
30
31
|
#include "src/core/lib/security/credentials/external/file_external_account_credentials.h"
|
@@ -237,10 +238,10 @@ std::string ExternalAccountCredentials::debug_string() {
|
|
237
238
|
// down.
|
238
239
|
void ExternalAccountCredentials::fetch_oauth2(
|
239
240
|
grpc_credentials_metadata_request* metadata_req,
|
240
|
-
|
241
|
-
|
241
|
+
grpc_polling_entity* pollent, grpc_iomgr_cb_func response_cb,
|
242
|
+
Timestamp deadline) {
|
242
243
|
GPR_ASSERT(ctx_ == nullptr);
|
243
|
-
ctx_ = new HTTPRequestContext(
|
244
|
+
ctx_ = new HTTPRequestContext(pollent, deadline);
|
244
245
|
metadata_req_ = metadata_req;
|
245
246
|
response_cb_ = response_cb;
|
246
247
|
auto cb = [this](std::string token, grpc_error_handle error) {
|
@@ -267,15 +268,13 @@ void ExternalAccountCredentials::ExchangeToken(
|
|
267
268
|
uri.status().ToString())));
|
268
269
|
return;
|
269
270
|
}
|
270
|
-
|
271
|
-
memset(&request, 0, sizeof(
|
272
|
-
request.host = const_cast<char*>(uri->authority().c_str());
|
273
|
-
request.http.path = gpr_strdup(uri->path().c_str());
|
271
|
+
grpc_http_request request;
|
272
|
+
memset(&request, 0, sizeof(grpc_http_request));
|
274
273
|
grpc_http_header* headers = nullptr;
|
275
274
|
if (!options_.client_id.empty() && !options_.client_secret.empty()) {
|
276
|
-
request.
|
275
|
+
request.hdr_count = 2;
|
277
276
|
headers = static_cast<grpc_http_header*>(
|
278
|
-
gpr_malloc(sizeof(grpc_http_header) * request.
|
277
|
+
gpr_malloc(sizeof(grpc_http_header) * request.hdr_count));
|
279
278
|
headers[0].key = gpr_strdup("Content-Type");
|
280
279
|
headers[0].value = gpr_strdup("application/x-www-form-urlencoded");
|
281
280
|
std::string raw_cred =
|
@@ -287,15 +286,13 @@ void ExternalAccountCredentials::ExchangeToken(
|
|
287
286
|
headers[1].value = gpr_strdup(str.c_str());
|
288
287
|
gpr_free(encoded_cred);
|
289
288
|
} else {
|
290
|
-
request.
|
289
|
+
request.hdr_count = 1;
|
291
290
|
headers = static_cast<grpc_http_header*>(
|
292
|
-
gpr_malloc(sizeof(grpc_http_header) * request.
|
291
|
+
gpr_malloc(sizeof(grpc_http_header) * request.hdr_count));
|
293
292
|
headers[0].key = gpr_strdup("Content-Type");
|
294
293
|
headers[0].value = gpr_strdup("application/x-www-form-urlencoded");
|
295
294
|
}
|
296
|
-
request.
|
297
|
-
request.handshaker =
|
298
|
-
uri->scheme() == "https" ? &grpc_httpcli_ssl : &grpc_httpcli_plaintext;
|
295
|
+
request.hdrs = headers;
|
299
296
|
std::vector<std::string> body_parts;
|
300
297
|
body_parts.push_back(
|
301
298
|
absl::StrFormat("audience=%s", UrlEncode(options_.audience).c_str()));
|
@@ -323,14 +320,26 @@ void ExternalAccountCredentials::ExchangeToken(
|
|
323
320
|
body_parts.push_back(absl::StrFormat(
|
324
321
|
"options=%s", UrlEncode(addtional_options_json.Dump()).c_str()));
|
325
322
|
std::string body = absl::StrJoin(body_parts, "&");
|
323
|
+
request.body = const_cast<char*>(body.c_str());
|
324
|
+
request.body_length = body.size();
|
326
325
|
grpc_http_response_destroy(&ctx_->response);
|
327
326
|
ctx_->response = {};
|
328
327
|
GRPC_CLOSURE_INIT(&ctx_->closure, OnExchangeToken, this, nullptr);
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
328
|
+
GPR_ASSERT(http_request_ == nullptr);
|
329
|
+
RefCountedPtr<grpc_channel_credentials> http_request_creds;
|
330
|
+
if (uri->scheme() == "http") {
|
331
|
+
http_request_creds = RefCountedPtr<grpc_channel_credentials>(
|
332
|
+
grpc_insecure_credentials_create());
|
333
|
+
} else {
|
334
|
+
http_request_creds = CreateHttpRequestSSLCredentials();
|
335
|
+
}
|
336
|
+
http_request_ =
|
337
|
+
HttpRequest::Post(std::move(*uri), nullptr /* channel args */,
|
338
|
+
ctx_->pollent, &request, ctx_->deadline, &ctx_->closure,
|
339
|
+
&ctx_->response, std::move(http_request_creds));
|
340
|
+
http_request_->Start();
|
341
|
+
request.body = nullptr;
|
342
|
+
grpc_http_request_destroy(&request);
|
334
343
|
}
|
335
344
|
|
336
345
|
void ExternalAccountCredentials::OnExchangeToken(void* arg,
|
@@ -342,6 +351,7 @@ void ExternalAccountCredentials::OnExchangeToken(void* arg,
|
|
342
351
|
|
343
352
|
void ExternalAccountCredentials::OnExchangeTokenInternal(
|
344
353
|
grpc_error_handle error) {
|
354
|
+
http_request_.reset();
|
345
355
|
if (error != GRPC_ERROR_NONE) {
|
346
356
|
FinishTokenFetch(error);
|
347
357
|
} else {
|
@@ -391,32 +401,39 @@ void ExternalAccountCredentials::ImpersenateServiceAccount() {
|
|
391
401
|
options_.service_account_impersonation_url, uri.status().ToString())));
|
392
402
|
return;
|
393
403
|
}
|
394
|
-
|
395
|
-
memset(&request, 0, sizeof(
|
396
|
-
request.
|
397
|
-
request.http.path = gpr_strdup(uri->path().c_str());
|
398
|
-
request.http.hdr_count = 2;
|
404
|
+
grpc_http_request request;
|
405
|
+
memset(&request, 0, sizeof(grpc_http_request));
|
406
|
+
request.hdr_count = 2;
|
399
407
|
grpc_http_header* headers = static_cast<grpc_http_header*>(
|
400
|
-
gpr_malloc(sizeof(grpc_http_header) * request.
|
408
|
+
gpr_malloc(sizeof(grpc_http_header) * request.hdr_count));
|
401
409
|
headers[0].key = gpr_strdup("Content-Type");
|
402
410
|
headers[0].value = gpr_strdup("application/x-www-form-urlencoded");
|
403
411
|
std::string str = absl::StrFormat("Bearer %s", access_token);
|
404
412
|
headers[1].key = gpr_strdup("Authorization");
|
405
413
|
headers[1].value = gpr_strdup(str.c_str());
|
406
|
-
request.
|
407
|
-
request.handshaker =
|
408
|
-
uri->scheme() == "https" ? &grpc_httpcli_ssl : &grpc_httpcli_plaintext;
|
414
|
+
request.hdrs = headers;
|
409
415
|
std::string scope = absl::StrJoin(scopes_, " ");
|
410
416
|
std::string body = absl::StrFormat("scope=%s", scope);
|
417
|
+
request.body = const_cast<char*>(body.c_str());
|
418
|
+
request.body_length = body.size();
|
411
419
|
grpc_http_response_destroy(&ctx_->response);
|
412
420
|
ctx_->response = {};
|
413
421
|
GRPC_CLOSURE_INIT(&ctx_->closure, OnImpersenateServiceAccount, this, nullptr);
|
414
422
|
// TODO(ctiller): Use the callers resource quota.
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
423
|
+
GPR_ASSERT(http_request_ == nullptr);
|
424
|
+
RefCountedPtr<grpc_channel_credentials> http_request_creds;
|
425
|
+
if (uri->scheme() == "http") {
|
426
|
+
http_request_creds = RefCountedPtr<grpc_channel_credentials>(
|
427
|
+
grpc_insecure_credentials_create());
|
428
|
+
} else {
|
429
|
+
http_request_creds = CreateHttpRequestSSLCredentials();
|
430
|
+
}
|
431
|
+
http_request_ = HttpRequest::Post(
|
432
|
+
std::move(*uri), nullptr, ctx_->pollent, &request, ctx_->deadline,
|
433
|
+
&ctx_->closure, &ctx_->response, std::move(http_request_creds));
|
434
|
+
http_request_->Start();
|
435
|
+
request.body = nullptr;
|
436
|
+
grpc_http_request_destroy(&request);
|
420
437
|
}
|
421
438
|
|
422
439
|
void ExternalAccountCredentials::OnImpersenateServiceAccount(
|
@@ -428,6 +445,7 @@ void ExternalAccountCredentials::OnImpersenateServiceAccount(
|
|
428
445
|
|
429
446
|
void ExternalAccountCredentials::OnImpersenateServiceAccountInternal(
|
430
447
|
grpc_error_handle error) {
|
448
|
+
http_request_.reset();
|
431
449
|
if (error != GRPC_ERROR_NONE) {
|
432
450
|
FinishTokenFetch(error);
|
433
451
|
return;
|
@@ -61,18 +61,14 @@ class ExternalAccountCredentials
|
|
61
61
|
// This is a helper struct to pass information between multiple callback based
|
62
62
|
// asynchronous calls.
|
63
63
|
struct HTTPRequestContext {
|
64
|
-
HTTPRequestContext(
|
65
|
-
|
66
|
-
: httpcli_context(httpcli_context),
|
67
|
-
pollent(pollent),
|
68
|
-
deadline(deadline) {}
|
64
|
+
HTTPRequestContext(grpc_polling_entity* pollent, Timestamp deadline)
|
65
|
+
: pollent(pollent), deadline(deadline) {}
|
69
66
|
~HTTPRequestContext() { grpc_http_response_destroy(&response); }
|
70
67
|
|
71
68
|
// Contextual parameters passed from
|
72
69
|
// grpc_oauth2_token_fetcher_credentials::fetch_oauth2().
|
73
|
-
grpc_httpcli_context* httpcli_context;
|
74
70
|
grpc_polling_entity* pollent;
|
75
|
-
|
71
|
+
Timestamp deadline;
|
76
72
|
|
77
73
|
// Reusable token fetch http response and closure.
|
78
74
|
grpc_closure closure;
|
@@ -92,9 +88,8 @@ class ExternalAccountCredentials
|
|
92
88
|
// This method implements the common token fetch logic and it will be called
|
93
89
|
// when grpc_oauth2_token_fetcher_credentials request a new access token.
|
94
90
|
void fetch_oauth2(grpc_credentials_metadata_request* req,
|
95
|
-
grpc_httpcli_context* httpcli_context,
|
96
91
|
grpc_polling_entity* pollent, grpc_iomgr_cb_func cb,
|
97
|
-
|
92
|
+
Timestamp deadline) override;
|
98
93
|
|
99
94
|
void OnRetrieveSubjectTokenInternal(absl::string_view subject_token,
|
100
95
|
grpc_error_handle error);
|
@@ -112,6 +107,7 @@ class ExternalAccountCredentials
|
|
112
107
|
Options options_;
|
113
108
|
std::vector<std::string> scopes_;
|
114
109
|
|
110
|
+
OrphanablePtr<HttpRequest> http_request_;
|
115
111
|
HTTPRequestContext* ctx_ = nullptr;
|
116
112
|
grpc_credentials_metadata_request* metadata_req_ = nullptr;
|
117
113
|
grpc_iomgr_cb_func response_cb_ = nullptr;
|
@@ -21,6 +21,9 @@
|
|
21
21
|
#include "absl/strings/str_format.h"
|
22
22
|
#include "absl/strings/str_split.h"
|
23
23
|
|
24
|
+
#include "src/core/lib/http/httpcli_ssl_credentials.h"
|
25
|
+
#include "src/core/lib/transport/error_utils.h"
|
26
|
+
|
24
27
|
namespace grpc_core {
|
25
28
|
|
26
29
|
RefCountedPtr<UrlExternalAccountCredentials>
|
@@ -120,32 +123,48 @@ void UrlExternalAccountCredentials::RetrieveSubjectToken(
|
|
120
123
|
"Missing HTTPRequestContext to start subject token retrieval."));
|
121
124
|
return;
|
122
125
|
}
|
126
|
+
auto url_for_request =
|
127
|
+
URI::Create(url_.scheme(), url_.authority(), url_full_path_,
|
128
|
+
{} /* query params */, "" /* fragment */);
|
129
|
+
if (!url_for_request.ok()) {
|
130
|
+
FinishRetrieveSubjectToken(
|
131
|
+
"", absl_status_to_grpc_error(url_for_request.status()));
|
132
|
+
return;
|
133
|
+
}
|
123
134
|
ctx_ = ctx;
|
124
135
|
cb_ = cb;
|
125
|
-
|
126
|
-
memset(&request, 0, sizeof(
|
127
|
-
request.
|
128
|
-
request.http.path = gpr_strdup(url_full_path_.c_str());
|
136
|
+
grpc_http_request request;
|
137
|
+
memset(&request, 0, sizeof(grpc_http_request));
|
138
|
+
request.path = gpr_strdup(url_full_path_.c_str());
|
129
139
|
grpc_http_header* headers = nullptr;
|
130
|
-
request.
|
140
|
+
request.hdr_count = headers_.size();
|
131
141
|
headers = static_cast<grpc_http_header*>(
|
132
|
-
gpr_malloc(sizeof(grpc_http_header) * request.
|
142
|
+
gpr_malloc(sizeof(grpc_http_header) * request.hdr_count));
|
133
143
|
int i = 0;
|
134
144
|
for (auto const& header : headers_) {
|
135
145
|
headers[i].key = gpr_strdup(header.first.c_str());
|
136
146
|
headers[i].value = gpr_strdup(header.second.c_str());
|
137
147
|
++i;
|
138
148
|
}
|
139
|
-
request.
|
140
|
-
request.handshaker =
|
141
|
-
url_.scheme() == "https" ? &grpc_httpcli_ssl : &grpc_httpcli_plaintext;
|
149
|
+
request.hdrs = headers;
|
142
150
|
grpc_http_response_destroy(&ctx_->response);
|
143
151
|
ctx_->response = {};
|
144
152
|
GRPC_CLOSURE_INIT(&ctx_->closure, OnRetrieveSubjectToken, this, nullptr);
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
153
|
+
GPR_ASSERT(http_request_ == nullptr);
|
154
|
+
RefCountedPtr<grpc_channel_credentials> http_request_creds;
|
155
|
+
if (url_.scheme() == "http") {
|
156
|
+
http_request_creds = RefCountedPtr<grpc_channel_credentials>(
|
157
|
+
grpc_insecure_credentials_create());
|
158
|
+
} else {
|
159
|
+
http_request_creds = RefCountedPtr<grpc_channel_credentials>(
|
160
|
+
CreateHttpRequestSSLCredentials());
|
161
|
+
}
|
162
|
+
http_request_ =
|
163
|
+
HttpRequest::Get(std::move(*url_for_request), nullptr /* channel args */,
|
164
|
+
ctx_->pollent, &request, ctx_->deadline, &ctx_->closure,
|
165
|
+
&ctx_->response, std::move(http_request_creds));
|
166
|
+
http_request_->Start();
|
167
|
+
grpc_http_request_destroy(&request);
|
149
168
|
}
|
150
169
|
|
151
170
|
void UrlExternalAccountCredentials::OnRetrieveSubjectToken(
|
@@ -157,6 +176,7 @@ void UrlExternalAccountCredentials::OnRetrieveSubjectToken(
|
|
157
176
|
|
158
177
|
void UrlExternalAccountCredentials::OnRetrieveSubjectTokenInternal(
|
159
178
|
grpc_error_handle error) {
|
179
|
+
http_request_.reset();
|
160
180
|
if (error != GRPC_ERROR_NONE) {
|
161
181
|
FinishRetrieveSubjectToken("", error);
|
162
182
|
return;
|
@@ -51,6 +51,7 @@ class UrlExternalAccountCredentials final : public ExternalAccountCredentials {
|
|
51
51
|
std::string format_type_;
|
52
52
|
std::string format_subject_token_field_name_;
|
53
53
|
|
54
|
+
OrphanablePtr<HttpRequest> http_request_;
|
54
55
|
HTTPRequestContext* ctx_ = nullptr;
|
55
56
|
std::function<void(std::string, grpc_error_handle)> cb_ = nullptr;
|
56
57
|
};
|