grpc 1.37.1 → 1.38.0.pre1
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 +64 -58
- data/include/grpc/event_engine/README.md +38 -0
- data/include/grpc/event_engine/channel_args.h +28 -0
- data/include/grpc/event_engine/event_engine.h +336 -0
- data/include/grpc/event_engine/port.h +39 -0
- data/include/grpc/event_engine/slice_allocator.h +81 -0
- data/include/grpc/grpc.h +2 -2
- data/include/grpc/grpc_security_constants.h +14 -0
- data/include/grpc/impl/codegen/grpc_types.h +11 -0
- data/include/grpc/impl/codegen/port_platform.h +5 -0
- data/include/grpc/module.modulemap +14 -14
- data/src/core/ext/filters/client_channel/backup_poller.cc +3 -3
- data/src/core/ext/filters/client_channel/channel_connectivity.cc +177 -202
- data/src/core/ext/filters/client_channel/client_channel.cc +628 -3101
- data/src/core/ext/filters/client_channel/client_channel.h +489 -55
- data/src/core/ext/filters/client_channel/client_channel_channelz.h +1 -1
- data/src/core/ext/filters/client_channel/client_channel_plugin.cc +4 -1
- data/src/core/ext/filters/client_channel/config_selector.h +1 -1
- data/src/core/ext/filters/client_channel/connector.h +1 -1
- data/src/core/ext/filters/client_channel/dynamic_filters.cc +9 -10
- data/src/core/ext/filters/client_channel/dynamic_filters.h +3 -3
- data/src/core/ext/filters/client_channel/health/health_check_client.cc +26 -27
- data/src/core/ext/filters/client_channel/health/health_check_client.h +27 -26
- data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +24 -21
- data/src/core/ext/filters/client_channel/lb_policy.cc +1 -1
- data/src/core/ext/filters/client_channel/lb_policy.h +4 -4
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +6 -6
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +46 -43
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +1 -1
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +2 -1
- data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +5 -5
- data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +14 -12
- data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +4 -4
- data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +1 -1
- data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +15 -15
- data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +36 -30
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +23 -23
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +31 -46
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +84 -61
- data/src/core/ext/filters/client_channel/lb_policy_factory.h +1 -1
- data/src/core/ext/filters/client_channel/lb_policy_registry.cc +4 -4
- data/src/core/ext/filters/client_channel/lb_policy_registry.h +1 -1
- data/src/core/ext/filters/client_channel/resolver.h +2 -2
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +23 -15
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +1 -1
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc +3 -3
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +2 -2
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +14 -14
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +33 -24
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +1 -1
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc +1 -1
- 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 +17 -9
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +20 -28
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +7 -5
- data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +13 -11
- data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +1 -1
- data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +43 -28
- data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +32 -239
- data/src/core/ext/filters/client_channel/resolver_result_parsing.h +20 -49
- data/src/core/ext/filters/client_channel/retry_filter.cc +2188 -0
- data/src/core/ext/filters/client_channel/retry_filter.h +30 -0
- data/src/core/ext/filters/client_channel/retry_service_config.cc +287 -0
- data/src/core/ext/filters/client_channel/retry_service_config.h +90 -0
- data/src/core/ext/filters/client_channel/server_address.cc +1 -1
- data/src/core/ext/filters/client_channel/service_config.cc +15 -14
- data/src/core/ext/filters/client_channel/service_config.h +7 -6
- data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +5 -4
- data/src/core/ext/filters/client_channel/service_config_parser.cc +6 -6
- data/src/core/ext/filters/client_channel/service_config_parser.h +7 -4
- data/src/core/ext/filters/client_channel/subchannel.cc +17 -16
- data/src/core/ext/filters/client_channel/subchannel.h +7 -6
- data/src/core/ext/filters/client_idle/client_idle_filter.cc +16 -15
- data/src/core/ext/filters/deadline/deadline_filter.cc +10 -10
- data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +19 -18
- data/src/core/ext/filters/fault_injection/service_config_parser.cc +5 -5
- data/src/core/ext/filters/fault_injection/service_config_parser.h +1 -1
- data/src/core/ext/filters/http/client/http_client_filter.cc +28 -21
- data/src/core/ext/filters/http/client_authority_filter.cc +3 -3
- data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +23 -22
- data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +21 -21
- data/src/core/ext/filters/http/server/http_server_filter.cc +27 -23
- data/src/core/ext/filters/max_age/max_age_filter.cc +12 -10
- data/src/core/ext/filters/message_size/message_size_filter.cc +14 -11
- data/src/core/ext/filters/message_size/message_size_filter.h +1 -1
- data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc +4 -3
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +7 -7
- data/src/core/ext/transport/chttp2/client/chttp2_connector.h +7 -7
- data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +2 -2
- data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +1 -1
- data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +3 -3
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +44 -45
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +2 -2
- data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +3 -4
- data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +2 -2
- data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +3 -4
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +129 -116
- data/src/core/ext/transport/chttp2/transport/context_list.cc +4 -5
- data/src/core/ext/transport/chttp2/transport/context_list.h +4 -4
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +3 -3
- data/src/core/ext/transport/chttp2/transport/flow_control.h +8 -8
- data/src/core/ext/transport/chttp2/transport/frame_data.cc +8 -8
- data/src/core/ext/transport/chttp2/transport/frame_data.h +10 -10
- data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +7 -8
- data/src/core/ext/transport/chttp2/transport/frame_goaway.h +6 -6
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +7 -8
- data/src/core/ext/transport/chttp2/transport/frame_ping.h +7 -6
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +7 -7
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +6 -6
- data/src/core/ext/transport/chttp2/transport/frame_settings.cc +6 -5
- data/src/core/ext/transport/chttp2/transport/frame_settings.h +6 -6
- data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +4 -6
- data/src/core/ext/transport/chttp2/transport/frame_window_update.h +4 -6
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +237 -208
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +10 -10
- data/src/core/ext/transport/chttp2/transport/hpack_table.cc +4 -3
- data/src/core/ext/transport/chttp2/transport/hpack_table.h +4 -4
- data/src/core/ext/transport/chttp2/transport/incoming_metadata.cc +2 -2
- data/src/core/ext/transport/chttp2/transport/incoming_metadata.h +2 -2
- data/src/core/ext/transport/chttp2/transport/internal.h +31 -27
- data/src/core/ext/transport/chttp2/transport/parsing.cc +63 -56
- data/src/core/ext/transport/chttp2/transport/writing.cc +7 -3
- data/src/core/ext/transport/inproc/inproc_transport.cc +30 -29
- data/src/core/ext/xds/certificate_provider_factory.h +1 -1
- data/src/core/ext/xds/certificate_provider_store.h +3 -3
- data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +3 -3
- data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +2 -2
- data/src/core/ext/xds/xds_api.cc +101 -93
- data/src/core/ext/xds/xds_api.h +6 -6
- data/src/core/ext/xds/xds_bootstrap.cc +97 -159
- data/src/core/ext/xds/xds_bootstrap.h +19 -24
- data/src/core/ext/xds/xds_certificate_provider.cc +4 -4
- data/src/core/ext/xds/xds_certificate_provider.h +4 -4
- data/src/core/ext/xds/xds_channel_args.h +5 -2
- data/src/core/ext/xds/xds_client.cc +310 -178
- data/src/core/ext/xds/xds_client.h +41 -27
- data/src/core/ext/xds/xds_client_stats.h +3 -2
- data/src/core/ext/xds/xds_server_config_fetcher.cc +34 -20
- data/src/core/lib/{iomgr → address_utils}/parse_address.cc +17 -17
- data/src/core/lib/{iomgr → address_utils}/parse_address.h +7 -7
- data/src/core/lib/{iomgr → address_utils}/sockaddr_utils.cc +3 -20
- data/src/core/lib/{iomgr → address_utils}/sockaddr_utils.h +6 -11
- data/src/core/lib/channel/channel_stack.cc +10 -9
- data/src/core/lib/channel/channel_stack.h +10 -9
- data/src/core/lib/channel/channel_stack_builder.cc +2 -2
- data/src/core/lib/channel/channel_stack_builder.h +1 -1
- data/src/core/lib/channel/channelz.cc +21 -13
- data/src/core/lib/channel/connected_channel.cc +4 -4
- data/src/core/lib/channel/handshaker.cc +7 -6
- data/src/core/lib/channel/handshaker.h +5 -5
- data/src/core/lib/event_engine/slice_allocator.cc +59 -0
- data/src/core/lib/event_engine/sockaddr.cc +38 -0
- data/src/core/lib/gprpp/ref_counted.h +28 -14
- data/src/core/lib/gprpp/status_helper.cc +407 -0
- data/src/core/lib/gprpp/status_helper.h +180 -0
- data/src/core/lib/http/httpcli.cc +11 -11
- data/src/core/lib/http/httpcli_security_connector.cc +11 -7
- data/src/core/lib/http/parser.cc +16 -16
- data/src/core/lib/http/parser.h +4 -4
- data/src/core/lib/iomgr/buffer_list.cc +7 -9
- data/src/core/lib/iomgr/buffer_list.h +4 -5
- data/src/core/lib/iomgr/call_combiner.cc +15 -12
- data/src/core/lib/iomgr/call_combiner.h +12 -14
- data/src/core/lib/iomgr/cfstream_handle.cc +3 -3
- data/src/core/lib/iomgr/cfstream_handle.h +1 -1
- data/src/core/lib/iomgr/closure.h +7 -6
- data/src/core/lib/iomgr/combiner.cc +14 -12
- data/src/core/lib/iomgr/combiner.h +2 -2
- data/src/core/lib/iomgr/endpoint.cc +1 -1
- data/src/core/lib/iomgr/endpoint.h +2 -2
- data/src/core/lib/iomgr/endpoint_cfstream.cc +11 -13
- data/src/core/lib/iomgr/endpoint_pair_windows.cc +1 -1
- data/src/core/lib/iomgr/error.cc +167 -61
- data/src/core/lib/iomgr/error.h +217 -106
- data/src/core/lib/iomgr/error_cfstream.cc +3 -2
- data/src/core/lib/iomgr/error_cfstream.h +2 -2
- data/src/core/lib/iomgr/error_internal.h +5 -1
- data/src/core/lib/iomgr/ev_apple.cc +5 -5
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +19 -19
- data/src/core/lib/iomgr/ev_epollex_linux.cc +48 -45
- data/src/core/lib/iomgr/ev_poll_posix.cc +26 -23
- data/src/core/lib/iomgr/ev_posix.cc +9 -8
- data/src/core/lib/iomgr/ev_posix.h +9 -9
- data/src/core/lib/iomgr/exec_ctx.cc +4 -4
- data/src/core/lib/iomgr/exec_ctx.h +1 -1
- data/src/core/lib/iomgr/executor.cc +8 -8
- data/src/core/lib/iomgr/executor.h +2 -2
- data/src/core/lib/iomgr/iomgr.cc +1 -1
- data/src/core/lib/iomgr/iomgr.h +1 -1
- data/src/core/lib/iomgr/iomgr_custom.cc +1 -1
- data/src/core/lib/iomgr/iomgr_internal.cc +2 -2
- data/src/core/lib/iomgr/iomgr_internal.h +3 -3
- data/src/core/lib/iomgr/iomgr_posix.cc +1 -1
- data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +2 -2
- data/src/core/lib/iomgr/iomgr_windows.cc +1 -1
- data/src/core/lib/iomgr/load_file.cc +4 -4
- data/src/core/lib/iomgr/load_file.h +2 -2
- data/src/core/lib/iomgr/lockfree_event.cc +5 -5
- data/src/core/lib/iomgr/lockfree_event.h +1 -1
- data/src/core/lib/iomgr/pollset.cc +5 -5
- data/src/core/lib/iomgr/pollset.h +9 -9
- data/src/core/lib/iomgr/pollset_custom.cc +5 -5
- data/src/core/lib/iomgr/pollset_windows.cc +5 -5
- data/src/core/lib/iomgr/port.h +1 -1
- data/src/core/lib/iomgr/python_util.h +1 -1
- data/src/core/lib/iomgr/resolve_address.cc +3 -3
- data/src/core/lib/iomgr/resolve_address.h +6 -6
- data/src/core/lib/iomgr/resolve_address_custom.cc +10 -9
- data/src/core/lib/iomgr/resolve_address_custom.h +3 -3
- data/src/core/lib/iomgr/resolve_address_posix.cc +3 -3
- data/src/core/lib/iomgr/resolve_address_windows.cc +4 -4
- data/src/core/lib/iomgr/resource_quota.cc +11 -10
- data/src/core/lib/iomgr/socket_utils_common_posix.cc +22 -20
- data/src/core/lib/iomgr/socket_utils_posix.h +20 -20
- data/src/core/lib/iomgr/tcp_client_cfstream.cc +4 -4
- data/src/core/lib/iomgr/tcp_client_custom.cc +5 -6
- data/src/core/lib/iomgr/tcp_client_posix.cc +15 -17
- data/src/core/lib/iomgr/tcp_client_posix.h +3 -4
- data/src/core/lib/iomgr/tcp_client_windows.cc +5 -5
- data/src/core/lib/iomgr/tcp_custom.cc +14 -16
- data/src/core/lib/iomgr/tcp_custom.h +13 -12
- data/src/core/lib/iomgr/tcp_posix.cc +36 -34
- data/src/core/lib/iomgr/tcp_server.cc +6 -6
- data/src/core/lib/iomgr/tcp_server.h +12 -11
- data/src/core/lib/iomgr/tcp_server_custom.cc +23 -21
- data/src/core/lib/iomgr/tcp_server_posix.cc +22 -21
- data/src/core/lib/iomgr/tcp_server_utils_posix.h +13 -12
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +19 -17
- data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +9 -9
- data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +4 -4
- data/src/core/lib/iomgr/tcp_server_windows.cc +26 -25
- data/src/core/lib/iomgr/tcp_uv.cc +25 -23
- data/src/core/lib/iomgr/tcp_windows.cc +13 -13
- data/src/core/lib/iomgr/tcp_windows.h +2 -2
- data/src/core/lib/iomgr/timer_custom.cc +2 -1
- data/src/core/lib/iomgr/timer_custom.h +1 -1
- data/src/core/lib/iomgr/timer_generic.cc +6 -6
- data/src/core/lib/iomgr/udp_server.cc +21 -20
- data/src/core/lib/iomgr/unix_sockets_posix.cc +3 -3
- data/src/core/lib/iomgr/unix_sockets_posix.h +2 -2
- data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +10 -7
- data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +3 -3
- data/src/core/lib/iomgr/wakeup_fd_pipe.cc +4 -4
- data/src/core/lib/iomgr/wakeup_fd_posix.cc +3 -3
- data/src/core/lib/iomgr/wakeup_fd_posix.h +8 -6
- data/src/core/lib/iomgr/work_serializer.h +17 -1
- data/src/core/lib/json/json.h +1 -1
- data/src/core/lib/json/json_reader.cc +4 -4
- data/src/core/lib/matchers/matchers.cc +39 -39
- data/src/core/lib/matchers/matchers.h +28 -28
- data/src/core/lib/security/credentials/composite/composite_credentials.cc +4 -4
- data/src/core/lib/security/credentials/composite/composite_credentials.h +2 -2
- data/src/core/lib/security/credentials/credentials.h +2 -2
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +17 -13
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +13 -11
- data/src/core/lib/security/credentials/external/aws_request_signer.cc +2 -1
- data/src/core/lib/security/credentials/external/aws_request_signer.h +1 -1
- data/src/core/lib/security/credentials/external/external_account_credentials.cc +15 -12
- data/src/core/lib/security/credentials/external/external_account_credentials.h +9 -8
- data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +5 -4
- data/src/core/lib/security/credentials/external/file_external_account_credentials.h +4 -3
- data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +8 -8
- data/src/core/lib/security/credentials/external/url_external_account_credentials.h +9 -7
- data/src/core/lib/security/credentials/fake/fake_credentials.cc +2 -2
- data/src/core/lib/security/credentials/fake/fake_credentials.h +2 -2
- data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +9 -9
- data/src/core/lib/security/credentials/iam/iam_credentials.cc +2 -2
- data/src/core/lib/security/credentials/iam/iam_credentials.h +2 -2
- data/src/core/lib/security/credentials/jwt/json_token.cc +2 -2
- data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +3 -3
- data/src/core/lib/security/credentials/jwt/jwt_credentials.h +2 -2
- data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +7 -5
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +21 -19
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +5 -5
- data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +5 -5
- data/src/core/lib/security/credentials/plugin/plugin_credentials.h +2 -2
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +8 -7
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +9 -9
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +19 -13
- data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +4 -0
- data/src/core/lib/security/credentials/xds/xds_credentials.cc +3 -3
- data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +13 -3
- data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +13 -3
- data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +2 -2
- data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +12 -2
- data/src/core/lib/security/security_connector/load_system_roots_linux.cc +1 -1
- data/src/core/lib/security/security_connector/local/local_security_connector.cc +14 -4
- data/src/core/lib/security/security_connector/security_connector.h +9 -4
- data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +16 -6
- data/src/core/lib/security/security_connector/ssl_utils.cc +22 -4
- data/src/core/lib/security/security_connector/ssl_utils.h +4 -4
- data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +56 -60
- data/src/core/lib/security/security_connector/tls/tls_security_connector.h +66 -48
- data/src/core/lib/security/transport/client_auth_filter.cc +18 -10
- data/src/core/lib/security/transport/secure_endpoint.cc +4 -4
- data/src/core/lib/security/transport/security_handshaker.cc +33 -32
- data/src/core/lib/security/transport/server_auth_filter.cc +19 -13
- data/src/core/lib/security/transport/tsi_error.cc +2 -1
- data/src/core/lib/security/transport/tsi_error.h +2 -1
- data/src/core/lib/security/util/json_util.cc +2 -2
- data/src/core/lib/security/util/json_util.h +1 -1
- data/src/core/lib/surface/call.cc +46 -45
- data/src/core/lib/surface/call.h +2 -2
- data/src/core/lib/surface/channel.cc +6 -6
- data/src/core/lib/surface/channel.h +3 -2
- data/src/core/lib/surface/channel_ping.cc +1 -1
- data/src/core/lib/surface/completion_queue.cc +46 -47
- data/src/core/lib/surface/completion_queue.h +2 -1
- data/src/core/lib/surface/lame_client.cc +11 -11
- data/src/core/lib/surface/lame_client.h +1 -1
- data/src/core/lib/surface/server.cc +28 -22
- data/src/core/lib/surface/server.h +16 -15
- data/src/core/lib/surface/validate_metadata.cc +7 -7
- data/src/core/lib/surface/validate_metadata.h +3 -2
- data/src/core/lib/surface/version.cc +4 -2
- data/src/core/lib/transport/byte_stream.cc +5 -5
- data/src/core/lib/transport/byte_stream.h +8 -8
- data/src/core/lib/transport/connectivity_state.cc +1 -1
- data/src/core/lib/transport/error_utils.cc +19 -8
- data/src/core/lib/transport/error_utils.h +11 -5
- data/src/core/lib/transport/metadata_batch.cc +37 -37
- data/src/core/lib/transport/metadata_batch.h +19 -18
- data/src/core/lib/transport/transport.cc +4 -3
- data/src/core/lib/transport/transport.h +4 -4
- data/src/core/lib/transport/transport_op_string.cc +5 -5
- data/src/core/tsi/alts/crypt/gsec.h +4 -0
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +5 -4
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +7 -6
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +2 -1
- data/src/core/tsi/ssl_transport_security.cc +32 -14
- data/src/core/tsi/ssl_transport_security.h +3 -4
- data/src/ruby/bin/math_services_pb.rb +1 -1
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +1 -1
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/grpc/health/v1/health_services_pb.rb +1 -1
- data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +6 -6
- data/third_party/abseil-cpp/absl/algorithm/container.h +3 -3
- data/third_party/abseil-cpp/absl/base/attributes.h +24 -4
- data/third_party/abseil-cpp/absl/base/call_once.h +2 -9
- data/third_party/abseil-cpp/absl/base/config.h +37 -9
- data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +24 -10
- data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +4 -1
- data/third_party/abseil-cpp/absl/base/internal/endian.h +61 -0
- data/third_party/abseil-cpp/absl/base/internal/low_level_scheduling.h +2 -3
- data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +34 -32
- data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +16 -6
- data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +11 -2
- data/third_party/abseil-cpp/absl/base/internal/spinlock.h +14 -5
- data/third_party/abseil-cpp/absl/base/internal/spinlock_akaros.inc +2 -2
- data/third_party/abseil-cpp/absl/base/internal/spinlock_linux.inc +3 -3
- data/third_party/abseil-cpp/absl/base/internal/spinlock_posix.inc +2 -2
- data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h +11 -11
- data/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +5 -5
- data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +1 -1
- data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +5 -2
- data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +43 -42
- data/third_party/abseil-cpp/absl/base/internal/throw_delegate.cc +111 -7
- data/third_party/abseil-cpp/absl/base/internal/unaligned_access.h +0 -76
- data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +1 -3
- data/third_party/abseil-cpp/absl/base/log_severity.h +4 -4
- data/third_party/abseil-cpp/absl/base/macros.h +11 -0
- data/third_party/abseil-cpp/absl/base/optimization.h +10 -7
- data/third_party/abseil-cpp/absl/base/options.h +1 -1
- data/third_party/abseil-cpp/absl/base/port.h +0 -1
- data/third_party/abseil-cpp/absl/base/thread_annotations.h +1 -1
- data/third_party/abseil-cpp/absl/container/fixed_array.h +2 -2
- data/third_party/abseil-cpp/absl/container/inlined_vector.h +5 -3
- data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +1 -1
- data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +5 -1
- data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +2 -1
- data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc +2 -1
- data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +141 -66
- data/third_party/abseil-cpp/absl/container/internal/layout.h +4 -4
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +14 -1
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +136 -136
- data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +16 -12
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +5 -2
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +3 -12
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +6 -1
- data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +3 -5
- data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +2 -2
- data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +2 -2
- data/third_party/abseil-cpp/absl/hash/internal/city.cc +15 -12
- data/third_party/abseil-cpp/absl/hash/internal/city.h +1 -19
- data/third_party/abseil-cpp/absl/hash/internal/hash.cc +25 -10
- data/third_party/abseil-cpp/absl/hash/internal/hash.h +86 -37
- data/third_party/abseil-cpp/absl/hash/internal/wyhash.cc +111 -0
- data/third_party/abseil-cpp/absl/hash/internal/wyhash.h +48 -0
- data/third_party/abseil-cpp/absl/meta/type_traits.h +16 -2
- data/third_party/abseil-cpp/absl/numeric/bits.h +177 -0
- data/third_party/abseil-cpp/absl/numeric/int128.cc +3 -3
- data/third_party/abseil-cpp/absl/numeric/internal/bits.h +358 -0
- data/third_party/abseil-cpp/absl/numeric/internal/representation.h +55 -0
- data/third_party/abseil-cpp/absl/status/internal/status_internal.h +18 -0
- data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +4 -7
- data/third_party/abseil-cpp/absl/status/status.cc +29 -22
- data/third_party/abseil-cpp/absl/status/status.h +81 -20
- data/third_party/abseil-cpp/absl/status/statusor.h +3 -3
- data/third_party/abseil-cpp/absl/strings/charconv.cc +5 -5
- data/third_party/abseil-cpp/absl/strings/cord.cc +326 -371
- data/third_party/abseil-cpp/absl/strings/cord.h +182 -64
- data/third_party/abseil-cpp/absl/strings/escaping.cc +4 -4
- data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +6 -6
- data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +83 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +387 -17
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +146 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +897 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +589 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring_reader.h +114 -0
- data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +14 -0
- data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +14 -0
- data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +15 -1
- data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +19 -4
- data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +14 -0
- data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +36 -18
- data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.h +14 -0
- data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +14 -0
- data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +14 -0
- data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +15 -40
- data/third_party/abseil-cpp/absl/strings/internal/string_constant.h +64 -0
- data/third_party/abseil-cpp/absl/strings/match.cc +6 -3
- data/third_party/abseil-cpp/absl/strings/match.h +16 -6
- data/third_party/abseil-cpp/absl/strings/numbers.cc +132 -4
- data/third_party/abseil-cpp/absl/strings/numbers.h +10 -10
- data/third_party/abseil-cpp/absl/strings/str_join.h +1 -1
- data/third_party/abseil-cpp/absl/strings/str_split.h +38 -4
- data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +154 -0
- data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +2 -1
- data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +2 -2
- data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +4 -4
- data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +1 -65
- data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +2 -6
- data/third_party/abseil-cpp/absl/synchronization/mutex.cc +71 -59
- data/third_party/abseil-cpp/absl/synchronization/mutex.h +79 -62
- data/third_party/abseil-cpp/absl/time/clock.cc +146 -130
- data/third_party/abseil-cpp/absl/time/clock.h +2 -2
- data/third_party/abseil-cpp/absl/time/duration.cc +3 -2
- data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +7 -11
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +7 -1
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +4 -4
- data/third_party/abseil-cpp/absl/time/time.cc +4 -3
- data/third_party/abseil-cpp/absl/time/time.h +26 -24
- data/third_party/abseil-cpp/absl/types/internal/variant.h +1 -1
- data/third_party/abseil-cpp/absl/types/variant.h +9 -4
- data/third_party/boringssl-with-bazel/err_data.c +477 -461
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +18 -8
- data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +1 -2
- data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_locl.h +5 -0
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +1 -88
- data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +14 -3
- data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +119 -273
- data/third_party/boringssl-with-bazel/src/crypto/err/err.c +87 -80
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +1 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +11 -3
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +25 -2
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.c +10 -2
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +4 -43
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +0 -1
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +0 -4
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +104 -93
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +39 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c +43 -46
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c +43 -46
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +33 -22
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c +9 -8
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +9 -8
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +17 -13
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +1 -22
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +2 -1
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +26 -7
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c +79 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +14 -9
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +45 -48
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +38 -43
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +37 -45
- data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +103 -42
- data/third_party/boringssl-with-bazel/src/crypto/hpke/internal.h +58 -37
- data/third_party/boringssl-with-bazel/src/crypto/internal.h +65 -0
- data/third_party/boringssl-with-bazel/src/crypto/mem.c +14 -0
- data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +3 -3
- data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +95 -48
- data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +0 -28
- data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +19 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +19 -25
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +3 -2
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +39 -89
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +9 -16
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +21 -17
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +7 -25
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +5 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +25 -22
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +2 -4
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c +1 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +0 -3
- data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +120 -41
- data/third_party/boringssl-with-bazel/src/include/openssl/base.h +9 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +0 -8
- data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +24 -4
- data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +5 -2
- data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +19 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/err.h +3 -2
- data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +1 -38
- data/third_party/boringssl-with-bazel/src/{crypto/x509/x509_r2x.c → include/openssl/evp_errors.h} +41 -58
- data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +24 -5
- data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +2 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +9 -1
- data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +2 -2
- data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +185 -17
- data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +1 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +416 -121
- data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +2 -0
- data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +5 -0
- data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +444 -0
- data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +244 -1
- data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +43 -12
- data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +149 -8
- data/third_party/boringssl-with-bazel/src/ssl/internal.h +220 -46
- data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +7 -1
- data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +4 -6
- data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +23 -26
- data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +74 -15
- data/third_party/boringssl-with-bazel/src/ssl/t1_lib.cc +98 -64
- data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +34 -4
- data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +205 -100
- data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +4 -2
- metadata +68 -45
- data/src/core/lib/iomgr/poller/eventmanager_libuv.cc +0 -88
- data/src/core/lib/iomgr/poller/eventmanager_libuv.h +0 -88
- data/third_party/abseil-cpp/absl/base/internal/bits.h +0 -219
- data/third_party/abseil-cpp/absl/synchronization/internal/mutex_nonprod.inc +0 -249
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/is_fips.c +0 -29
@@ -26,7 +26,7 @@ namespace grpc_core {
|
|
26
26
|
RefCountedPtr<UrlExternalAccountCredentials>
|
27
27
|
UrlExternalAccountCredentials::Create(Options options,
|
28
28
|
std::vector<std::string> scopes,
|
29
|
-
|
29
|
+
grpc_error_handle* error) {
|
30
30
|
auto creds = MakeRefCounted<UrlExternalAccountCredentials>(
|
31
31
|
std::move(options), std::move(scopes), error);
|
32
32
|
if (*error == GRPC_ERROR_NONE) {
|
@@ -37,7 +37,7 @@ UrlExternalAccountCredentials::Create(Options options,
|
|
37
37
|
}
|
38
38
|
|
39
39
|
UrlExternalAccountCredentials::UrlExternalAccountCredentials(
|
40
|
-
Options options, std::vector<std::string> scopes,
|
40
|
+
Options options, std::vector<std::string> scopes, grpc_error_handle* error)
|
41
41
|
: ExternalAccountCredentials(options, std::move(scopes)) {
|
42
42
|
auto it = options.credential_source.object_value().find("url");
|
43
43
|
if (it == options.credential_source.object_value().end()) {
|
@@ -113,7 +113,7 @@ UrlExternalAccountCredentials::UrlExternalAccountCredentials(
|
|
113
113
|
|
114
114
|
void UrlExternalAccountCredentials::RetrieveSubjectToken(
|
115
115
|
HTTPRequestContext* ctx, const Options& /*options*/,
|
116
|
-
std::function<void(std::string,
|
116
|
+
std::function<void(std::string, grpc_error_handle)> cb) {
|
117
117
|
if (ctx == nullptr) {
|
118
118
|
FinishRetrieveSubjectToken(
|
119
119
|
"",
|
@@ -151,15 +151,15 @@ void UrlExternalAccountCredentials::RetrieveSubjectToken(
|
|
151
151
|
grpc_http_request_destroy(&request.http);
|
152
152
|
}
|
153
153
|
|
154
|
-
void UrlExternalAccountCredentials::OnRetrieveSubjectToken(
|
155
|
-
|
154
|
+
void UrlExternalAccountCredentials::OnRetrieveSubjectToken(
|
155
|
+
void* arg, grpc_error_handle error) {
|
156
156
|
UrlExternalAccountCredentials* self =
|
157
157
|
static_cast<UrlExternalAccountCredentials*>(arg);
|
158
158
|
self->OnRetrieveSubjectTokenInternal(GRPC_ERROR_REF(error));
|
159
159
|
}
|
160
160
|
|
161
161
|
void UrlExternalAccountCredentials::OnRetrieveSubjectTokenInternal(
|
162
|
-
|
162
|
+
grpc_error_handle error) {
|
163
163
|
if (error != GRPC_ERROR_NONE) {
|
164
164
|
FinishRetrieveSubjectToken("", error);
|
165
165
|
return;
|
@@ -167,7 +167,7 @@ void UrlExternalAccountCredentials::OnRetrieveSubjectTokenInternal(
|
|
167
167
|
absl::string_view response_body(ctx_->response.body,
|
168
168
|
ctx_->response.body_length);
|
169
169
|
if (format_type_ == "json") {
|
170
|
-
|
170
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
171
171
|
Json response_json = Json::Parse(response_body, &error);
|
172
172
|
if (error != GRPC_ERROR_NONE ||
|
173
173
|
response_json.type() != Json::Type::OBJECT) {
|
@@ -196,7 +196,7 @@ void UrlExternalAccountCredentials::OnRetrieveSubjectTokenInternal(
|
|
196
196
|
}
|
197
197
|
|
198
198
|
void UrlExternalAccountCredentials::FinishRetrieveSubjectToken(
|
199
|
-
std::string subject_token,
|
199
|
+
std::string subject_token, grpc_error_handle error) {
|
200
200
|
// Reset context
|
201
201
|
ctx_ = nullptr;
|
202
202
|
// Move object state into local variables.
|
@@ -26,21 +26,23 @@ namespace grpc_core {
|
|
26
26
|
class UrlExternalAccountCredentials final : public ExternalAccountCredentials {
|
27
27
|
public:
|
28
28
|
static RefCountedPtr<UrlExternalAccountCredentials> Create(
|
29
|
-
Options options, std::vector<std::string> scopes,
|
29
|
+
Options options, std::vector<std::string> scopes,
|
30
|
+
grpc_error_handle* error);
|
30
31
|
|
31
32
|
UrlExternalAccountCredentials(Options options,
|
32
33
|
std::vector<std::string> scopes,
|
33
|
-
|
34
|
+
grpc_error_handle* error);
|
34
35
|
|
35
36
|
private:
|
36
37
|
void RetrieveSubjectToken(
|
37
38
|
HTTPRequestContext* ctx, const Options& options,
|
38
|
-
std::function<void(std::string,
|
39
|
+
std::function<void(std::string, grpc_error_handle)> cb) override;
|
39
40
|
|
40
|
-
static void OnRetrieveSubjectToken(void* arg,
|
41
|
-
void OnRetrieveSubjectTokenInternal(
|
41
|
+
static void OnRetrieveSubjectToken(void* arg, grpc_error_handle error);
|
42
|
+
void OnRetrieveSubjectTokenInternal(grpc_error_handle error);
|
42
43
|
|
43
|
-
void FinishRetrieveSubjectToken(std::string subject_token,
|
44
|
+
void FinishRetrieveSubjectToken(std::string subject_token,
|
45
|
+
grpc_error_handle error);
|
44
46
|
|
45
47
|
// Fields of credential source
|
46
48
|
URI url_;
|
@@ -50,7 +52,7 @@ class UrlExternalAccountCredentials final : public ExternalAccountCredentials {
|
|
50
52
|
std::string format_subject_token_field_name_;
|
51
53
|
|
52
54
|
HTTPRequestContext* ctx_ = nullptr;
|
53
|
-
std::function<void(std::string,
|
55
|
+
std::function<void(std::string, grpc_error_handle)> cb_ = nullptr;
|
54
56
|
};
|
55
57
|
|
56
58
|
} // namespace grpc_core
|
@@ -92,7 +92,7 @@ const char* grpc_fake_transport_get_expected_targets(
|
|
92
92
|
bool grpc_md_only_test_credentials::get_request_metadata(
|
93
93
|
grpc_polling_entity* /*pollent*/, grpc_auth_metadata_context /*context*/,
|
94
94
|
grpc_credentials_mdelem_array* md_array, grpc_closure* on_request_metadata,
|
95
|
-
|
95
|
+
grpc_error_handle* /*error*/) {
|
96
96
|
grpc_credentials_mdelem_array_add(md_array, md_);
|
97
97
|
if (is_async_) {
|
98
98
|
grpc_core::ExecCtx::Run(DEBUG_LOCATION, on_request_metadata,
|
@@ -103,7 +103,7 @@ bool grpc_md_only_test_credentials::get_request_metadata(
|
|
103
103
|
}
|
104
104
|
|
105
105
|
void grpc_md_only_test_credentials::cancel_get_request_metadata(
|
106
|
-
grpc_credentials_mdelem_array* /*md_array*/,
|
106
|
+
grpc_credentials_mdelem_array* /*md_array*/, grpc_error_handle error) {
|
107
107
|
GRPC_ERROR_UNREF(error);
|
108
108
|
}
|
109
109
|
|
@@ -72,10 +72,10 @@ class grpc_md_only_test_credentials : public grpc_call_credentials {
|
|
72
72
|
grpc_auth_metadata_context context,
|
73
73
|
grpc_credentials_mdelem_array* md_array,
|
74
74
|
grpc_closure* on_request_metadata,
|
75
|
-
|
75
|
+
grpc_error_handle* error) override;
|
76
76
|
|
77
77
|
void cancel_get_request_metadata(grpc_credentials_mdelem_array* md_array,
|
78
|
-
|
78
|
+
grpc_error_handle error) override;
|
79
79
|
|
80
80
|
std::string debug_string() override { return "MD only Test Credentials"; };
|
81
81
|
|
@@ -134,8 +134,8 @@ grpc_channel_args* grpc_google_default_channel_credentials::update_arguments(
|
|
134
134
|
return updated;
|
135
135
|
}
|
136
136
|
|
137
|
-
static void on_metadata_server_detection_http_response(
|
138
|
-
|
137
|
+
static void on_metadata_server_detection_http_response(
|
138
|
+
void* user_data, grpc_error_handle error) {
|
139
139
|
metadata_server_detector* detector =
|
140
140
|
static_cast<metadata_server_detector*>(user_data);
|
141
141
|
if (error == GRPC_ERROR_NONE && detector->response.status == 200 &&
|
@@ -161,7 +161,7 @@ static void on_metadata_server_detection_http_response(void* user_data,
|
|
161
161
|
gpr_mu_unlock(g_polling_mu);
|
162
162
|
}
|
163
163
|
|
164
|
-
static void destroy_pollset(void* p,
|
164
|
+
static void destroy_pollset(void* p, grpc_error_handle /*e*/) {
|
165
165
|
grpc_pollset_destroy(static_cast<grpc_pollset*>(p));
|
166
166
|
}
|
167
167
|
|
@@ -221,14 +221,14 @@ static int is_metadata_server_reachable() {
|
|
221
221
|
}
|
222
222
|
|
223
223
|
/* Takes ownership of creds_path if not NULL. */
|
224
|
-
static
|
224
|
+
static grpc_error_handle create_default_creds_from_path(
|
225
225
|
const std::string& creds_path,
|
226
226
|
grpc_core::RefCountedPtr<grpc_call_credentials>* creds) {
|
227
227
|
grpc_auth_json_key key;
|
228
228
|
grpc_auth_refresh_token token;
|
229
229
|
grpc_core::RefCountedPtr<grpc_call_credentials> result;
|
230
230
|
grpc_slice creds_data = grpc_empty_slice();
|
231
|
-
|
231
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
232
232
|
Json json;
|
233
233
|
if (creds_path.empty()) {
|
234
234
|
error = GRPC_ERROR_CREATE_FROM_STATIC_STRING("creds_path unset");
|
@@ -304,9 +304,9 @@ static bool metadata_server_available() {
|
|
304
304
|
}
|
305
305
|
|
306
306
|
static grpc_core::RefCountedPtr<grpc_call_credentials> make_default_call_creds(
|
307
|
-
|
307
|
+
grpc_error_handle* error) {
|
308
308
|
grpc_core::RefCountedPtr<grpc_call_credentials> call_creds;
|
309
|
-
|
309
|
+
grpc_error_handle err;
|
310
310
|
|
311
311
|
/* First, try the environment variable. */
|
312
312
|
char* path_from_env = gpr_getenv(GRPC_GOOGLE_CREDENTIALS_ENV_VAR);
|
@@ -344,7 +344,7 @@ grpc_channel_credentials* grpc_google_default_credentials_create(
|
|
344
344
|
grpc_call_credentials* call_credentials) {
|
345
345
|
grpc_channel_credentials* result = nullptr;
|
346
346
|
grpc_core::RefCountedPtr<grpc_call_credentials> call_creds(call_credentials);
|
347
|
-
|
347
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
348
348
|
grpc_core::ExecCtx exec_ctx;
|
349
349
|
|
350
350
|
GRPC_API_TRACE("grpc_google_default_credentials_create(%p)", 1,
|
@@ -373,7 +373,7 @@ grpc_channel_credentials* grpc_google_default_credentials_create(
|
|
373
373
|
GPR_ASSERT(result != nullptr);
|
374
374
|
} else {
|
375
375
|
gpr_log(GPR_ERROR, "Could not create google default credentials: %s",
|
376
|
-
|
376
|
+
grpc_error_std_string(error).c_str());
|
377
377
|
}
|
378
378
|
GRPC_ERROR_UNREF(error);
|
379
379
|
return result;
|
@@ -36,13 +36,13 @@ grpc_google_iam_credentials::~grpc_google_iam_credentials() {
|
|
36
36
|
bool grpc_google_iam_credentials::get_request_metadata(
|
37
37
|
grpc_polling_entity* /*pollent*/, grpc_auth_metadata_context /*context*/,
|
38
38
|
grpc_credentials_mdelem_array* md_array,
|
39
|
-
grpc_closure* /*on_request_metadata*/,
|
39
|
+
grpc_closure* /*on_request_metadata*/, grpc_error_handle* /*error*/) {
|
40
40
|
grpc_credentials_mdelem_array_append(md_array, &md_array_);
|
41
41
|
return true;
|
42
42
|
}
|
43
43
|
|
44
44
|
void grpc_google_iam_credentials::cancel_get_request_metadata(
|
45
|
-
grpc_credentials_mdelem_array* /*md_array*/,
|
45
|
+
grpc_credentials_mdelem_array* /*md_array*/, grpc_error_handle error) {
|
46
46
|
GRPC_ERROR_UNREF(error);
|
47
47
|
}
|
48
48
|
|
@@ -35,10 +35,10 @@ class grpc_google_iam_credentials : public grpc_call_credentials {
|
|
35
35
|
grpc_auth_metadata_context context,
|
36
36
|
grpc_credentials_mdelem_array* md_array,
|
37
37
|
grpc_closure* on_request_metadata,
|
38
|
-
|
38
|
+
grpc_error_handle* error) override;
|
39
39
|
|
40
40
|
void cancel_get_request_metadata(grpc_credentials_mdelem_array* md_array,
|
41
|
-
|
41
|
+
grpc_error_handle error) override;
|
42
42
|
std::string debug_string() override { return debug_string_; }
|
43
43
|
|
44
44
|
private:
|
@@ -72,7 +72,7 @@ grpc_auth_json_key grpc_auth_json_key_create_from_json(const Json& json) {
|
|
72
72
|
BIO* bio = nullptr;
|
73
73
|
const char* prop_value;
|
74
74
|
int success = 0;
|
75
|
-
|
75
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
76
76
|
|
77
77
|
memset(&result, 0, sizeof(grpc_auth_json_key));
|
78
78
|
result.type = GRPC_AUTH_JSON_TYPE_INVALID;
|
@@ -124,7 +124,7 @@ end:
|
|
124
124
|
|
125
125
|
grpc_auth_json_key grpc_auth_json_key_create_from_string(
|
126
126
|
const char* json_string) {
|
127
|
-
|
127
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
128
128
|
Json json = Json::Parse(json_string, &error);
|
129
129
|
GRPC_LOG_IF_ERROR("JSON key parsing", error);
|
130
130
|
return grpc_auth_json_key_create_from_json(json);
|
@@ -59,7 +59,7 @@ grpc_service_account_jwt_access_credentials::
|
|
59
59
|
bool grpc_service_account_jwt_access_credentials::get_request_metadata(
|
60
60
|
grpc_polling_entity* /*pollent*/, grpc_auth_metadata_context context,
|
61
61
|
grpc_credentials_mdelem_array* md_array,
|
62
|
-
grpc_closure* /*on_request_metadata*/,
|
62
|
+
grpc_closure* /*on_request_metadata*/, grpc_error_handle* error) {
|
63
63
|
gpr_timespec refresh_threshold = gpr_time_from_seconds(
|
64
64
|
GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS, GPR_TIMESPAN);
|
65
65
|
|
@@ -109,7 +109,7 @@ bool grpc_service_account_jwt_access_credentials::get_request_metadata(
|
|
109
109
|
}
|
110
110
|
|
111
111
|
void grpc_service_account_jwt_access_credentials::cancel_get_request_metadata(
|
112
|
-
grpc_credentials_mdelem_array* /*md_array*/,
|
112
|
+
grpc_credentials_mdelem_array* /*md_array*/, grpc_error_handle error) {
|
113
113
|
GRPC_ERROR_UNREF(error);
|
114
114
|
}
|
115
115
|
|
@@ -141,7 +141,7 @@ grpc_service_account_jwt_access_credentials_create_from_auth_json_key(
|
|
141
141
|
}
|
142
142
|
|
143
143
|
static char* redact_private_key(const char* json_key) {
|
144
|
-
|
144
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
145
145
|
Json json = Json::Parse(json_key, &error);
|
146
146
|
if (error != GRPC_ERROR_NONE || json.type() != Json::Type::OBJECT) {
|
147
147
|
GRPC_ERROR_UNREF(error);
|
@@ -41,10 +41,10 @@ class grpc_service_account_jwt_access_credentials
|
|
41
41
|
grpc_auth_metadata_context context,
|
42
42
|
grpc_credentials_mdelem_array* md_array,
|
43
43
|
grpc_closure* on_request_metadata,
|
44
|
-
|
44
|
+
grpc_error_handle* error) override;
|
45
45
|
|
46
46
|
void cancel_get_request_metadata(grpc_credentials_mdelem_array* md_array,
|
47
|
-
|
47
|
+
grpc_error_handle error) override;
|
48
48
|
|
49
49
|
const gpr_timespec& jwt_lifetime() const { return jwt_lifetime_; }
|
50
50
|
const grpc_auth_json_key& key() const { return key_; }
|
@@ -87,10 +87,11 @@ static Json parse_json_part_from_jwt(const char* str, size_t len) {
|
|
87
87
|
return Json(); // JSON null
|
88
88
|
}
|
89
89
|
absl::string_view string = grpc_core::StringViewFromSlice(slice);
|
90
|
-
|
90
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
91
91
|
Json json = Json::Parse(string, &error);
|
92
92
|
if (error != GRPC_ERROR_NONE) {
|
93
|
-
gpr_log(GPR_ERROR, "JSON parse error: %s",
|
93
|
+
gpr_log(GPR_ERROR, "JSON parse error: %s",
|
94
|
+
grpc_error_std_string(error).c_str());
|
94
95
|
GRPC_ERROR_UNREF(error);
|
95
96
|
json = Json(); // JSON null
|
96
97
|
}
|
@@ -412,7 +413,7 @@ static Json json_from_http(const grpc_httpcli_response* response) {
|
|
412
413
|
response->status);
|
413
414
|
return Json(); // JSON null
|
414
415
|
}
|
415
|
-
|
416
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
416
417
|
Json json = Json::Parse(
|
417
418
|
absl::string_view(response->body, response->body_length), &error);
|
418
419
|
if (error != GRPC_ERROR_NONE) {
|
@@ -627,7 +628,7 @@ end:
|
|
627
628
|
return result;
|
628
629
|
}
|
629
630
|
|
630
|
-
static void on_keys_retrieved(void* user_data,
|
631
|
+
static void on_keys_retrieved(void* user_data, grpc_error_handle /*error*/) {
|
631
632
|
verifier_cb_ctx* ctx = static_cast<verifier_cb_ctx*>(user_data);
|
632
633
|
Json json = json_from_http(&ctx->responses[HTTP_RESPONSE_KEYS]);
|
633
634
|
EVP_PKEY* verification_key = nullptr;
|
@@ -666,7 +667,8 @@ end:
|
|
666
667
|
verifier_cb_ctx_destroy(ctx);
|
667
668
|
}
|
668
669
|
|
669
|
-
static void on_openid_config_retrieved(void* user_data,
|
670
|
+
static void on_openid_config_retrieved(void* user_data,
|
671
|
+
grpc_error_handle /*error*/) {
|
670
672
|
verifier_cb_ctx* ctx = static_cast<verifier_cb_ctx*>(user_data);
|
671
673
|
const grpc_http_response* response = &ctx->responses[HTTP_RESPONSE_OPENID];
|
672
674
|
Json json = json_from_http(response);
|
@@ -61,7 +61,7 @@ grpc_auth_refresh_token grpc_auth_refresh_token_create_from_json(
|
|
61
61
|
grpc_auth_refresh_token result;
|
62
62
|
const char* prop_value;
|
63
63
|
int success = 0;
|
64
|
-
|
64
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
65
65
|
|
66
66
|
memset(&result, 0, sizeof(grpc_auth_refresh_token));
|
67
67
|
result.type = GRPC_AUTH_JSON_TYPE_INVALID;
|
@@ -94,10 +94,11 @@ end:
|
|
94
94
|
|
95
95
|
grpc_auth_refresh_token grpc_auth_refresh_token_create_from_string(
|
96
96
|
const char* json_string) {
|
97
|
-
|
97
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
98
98
|
Json json = Json::Parse(json_string, &error);
|
99
99
|
if (error != GRPC_ERROR_NONE) {
|
100
|
-
gpr_log(GPR_ERROR, "JSON parsing failed: %s",
|
100
|
+
gpr_log(GPR_ERROR, "JSON parsing failed: %s",
|
101
|
+
grpc_error_std_string(error).c_str());
|
101
102
|
GRPC_ERROR_UNREF(error);
|
102
103
|
}
|
103
104
|
return grpc_auth_refresh_token_create_from_json(json);
|
@@ -164,11 +165,11 @@ grpc_oauth2_token_fetcher_credentials_parse_server_response(
|
|
164
165
|
const char* token_type = nullptr;
|
165
166
|
const char* expires_in = nullptr;
|
166
167
|
Json::Object::const_iterator it;
|
167
|
-
|
168
|
+
grpc_error_handle error = GRPC_ERROR_NONE;
|
168
169
|
json = Json::Parse(null_terminated_body, &error);
|
169
170
|
if (error != GRPC_ERROR_NONE) {
|
170
171
|
gpr_log(GPR_ERROR, "Could not parse JSON from %s: %s",
|
171
|
-
null_terminated_body,
|
172
|
+
null_terminated_body, grpc_error_std_string(error).c_str());
|
172
173
|
GRPC_ERROR_UNREF(error);
|
173
174
|
status = GRPC_CREDENTIALS_ERROR;
|
174
175
|
goto end;
|
@@ -221,7 +222,7 @@ end:
|
|
221
222
|
}
|
222
223
|
|
223
224
|
static void on_oauth2_token_fetcher_http_response(void* user_data,
|
224
|
-
|
225
|
+
grpc_error_handle error) {
|
225
226
|
GRPC_LOG_IF_ERROR("oauth_fetch", GRPC_ERROR_REF(error));
|
226
227
|
grpc_credentials_metadata_request* r =
|
227
228
|
static_cast<grpc_credentials_metadata_request*>(user_data);
|
@@ -231,7 +232,7 @@ static void on_oauth2_token_fetcher_http_response(void* user_data,
|
|
231
232
|
}
|
232
233
|
|
233
234
|
void grpc_oauth2_token_fetcher_credentials::on_http_response(
|
234
|
-
grpc_credentials_metadata_request* r,
|
235
|
+
grpc_credentials_metadata_request* r, grpc_error_handle error) {
|
235
236
|
grpc_mdelem access_token_md = GRPC_MDNULL;
|
236
237
|
grpc_millis token_lifetime = 0;
|
237
238
|
grpc_credentials_status status =
|
@@ -253,7 +254,7 @@ void grpc_oauth2_token_fetcher_credentials::on_http_response(
|
|
253
254
|
gpr_mu_unlock(&mu_);
|
254
255
|
// Invoke callbacks for all pending requests.
|
255
256
|
while (pending_request != nullptr) {
|
256
|
-
|
257
|
+
grpc_error_handle new_error = GRPC_ERROR_NONE;
|
257
258
|
if (status == GRPC_CREDENTIALS_OK) {
|
258
259
|
grpc_credentials_mdelem_array_add(pending_request->md_array,
|
259
260
|
access_token_md);
|
@@ -277,7 +278,7 @@ void grpc_oauth2_token_fetcher_credentials::on_http_response(
|
|
277
278
|
bool grpc_oauth2_token_fetcher_credentials::get_request_metadata(
|
278
279
|
grpc_polling_entity* pollent, grpc_auth_metadata_context /*context*/,
|
279
280
|
grpc_credentials_mdelem_array* md_array, grpc_closure* on_request_metadata,
|
280
|
-
|
281
|
+
grpc_error_handle* /*error*/) {
|
281
282
|
// Check if we can use the cached token.
|
282
283
|
grpc_millis refresh_threshold =
|
283
284
|
GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS * GPR_MS_PER_SEC;
|
@@ -325,7 +326,7 @@ bool grpc_oauth2_token_fetcher_credentials::get_request_metadata(
|
|
325
326
|
}
|
326
327
|
|
327
328
|
void grpc_oauth2_token_fetcher_credentials::cancel_get_request_metadata(
|
328
|
-
grpc_credentials_mdelem_array* md_array,
|
329
|
+
grpc_credentials_mdelem_array* md_array, grpc_error_handle error) {
|
329
330
|
gpr_mu_lock(&mu_);
|
330
331
|
grpc_oauth2_pending_get_request_metadata* prev = nullptr;
|
331
332
|
grpc_oauth2_pending_get_request_metadata* pending_request = pending_requests_;
|
@@ -525,8 +526,8 @@ void MaybeAddToBody(const char* field_name, const char* field,
|
|
525
526
|
body->push_back(absl::StrFormat("&%s=%s", field_name, field));
|
526
527
|
}
|
527
528
|
|
528
|
-
|
529
|
-
|
529
|
+
grpc_error_handle LoadTokenFile(const char* path, gpr_slice* token) {
|
530
|
+
grpc_error_handle err = grpc_load_file(path, 1, token);
|
530
531
|
if (err != GRPC_ERROR_NONE) return err;
|
531
532
|
if (GRPC_SLICE_LENGTH(*token) == 0) {
|
532
533
|
gpr_log(GPR_ERROR, "Token file %s is empty", path);
|
@@ -565,7 +566,7 @@ class StsTokenFetcherCredentials
|
|
565
566
|
grpc_millis deadline) override {
|
566
567
|
char* body = nullptr;
|
567
568
|
size_t body_length = 0;
|
568
|
-
|
569
|
+
grpc_error_handle err = FillBody(&body, &body_length);
|
569
570
|
if (err != GRPC_ERROR_NONE) {
|
570
571
|
response_cb(metadata_req, err);
|
571
572
|
GRPC_ERROR_UNREF(err);
|
@@ -598,12 +599,12 @@ class StsTokenFetcherCredentials
|
|
598
599
|
gpr_free(body);
|
599
600
|
}
|
600
601
|
|
601
|
-
|
602
|
+
grpc_error_handle FillBody(char** body, size_t* body_length) {
|
602
603
|
*body = nullptr;
|
603
604
|
std::vector<std::string> body_parts;
|
604
605
|
grpc_slice subject_token = grpc_empty_slice();
|
605
606
|
grpc_slice actor_token = grpc_empty_slice();
|
606
|
-
|
607
|
+
grpc_error_handle err = GRPC_ERROR_NONE;
|
607
608
|
|
608
609
|
auto cleanup = [&body, &body_length, &body_parts, &subject_token,
|
609
610
|
&actor_token, &err]() {
|
@@ -656,7 +657,7 @@ class StsTokenFetcherCredentials
|
|
656
657
|
|
657
658
|
absl::StatusOr<URI> ValidateStsCredentialsOptions(
|
658
659
|
const grpc_sts_credentials_options* options) {
|
659
|
-
absl::InlinedVector<
|
660
|
+
absl::InlinedVector<grpc_error_handle, 3> error_list;
|
660
661
|
absl::StatusOr<URI> sts_url =
|
661
662
|
URI::Parse(options->token_exchange_service_uri == nullptr
|
662
663
|
? ""
|
@@ -685,7 +686,8 @@ absl::StatusOr<URI> ValidateStsCredentialsOptions(
|
|
685
686
|
}
|
686
687
|
auto grpc_error_vec = GRPC_ERROR_CREATE_FROM_VECTOR(
|
687
688
|
"Invalid STS Credentials Options", &error_list);
|
688
|
-
auto retval =
|
689
|
+
auto retval =
|
690
|
+
absl::InvalidArgumentError(grpc_error_std_string(grpc_error_vec));
|
689
691
|
GRPC_ERROR_UNREF(grpc_error_vec);
|
690
692
|
return retval;
|
691
693
|
}
|
@@ -718,13 +720,13 @@ grpc_access_token_credentials::~grpc_access_token_credentials() {
|
|
718
720
|
bool grpc_access_token_credentials::get_request_metadata(
|
719
721
|
grpc_polling_entity* /*pollent*/, grpc_auth_metadata_context /*context*/,
|
720
722
|
grpc_credentials_mdelem_array* md_array,
|
721
|
-
grpc_closure* /*on_request_metadata*/,
|
723
|
+
grpc_closure* /*on_request_metadata*/, grpc_error_handle* /*error*/) {
|
722
724
|
grpc_credentials_mdelem_array_add(md_array, access_token_md_);
|
723
725
|
return true;
|
724
726
|
}
|
725
727
|
|
726
728
|
void grpc_access_token_credentials::cancel_get_request_metadata(
|
727
|
-
grpc_credentials_mdelem_array* /*md_array*/,
|
729
|
+
grpc_credentials_mdelem_array* /*md_array*/, grpc_error_handle error) {
|
728
730
|
GRPC_ERROR_UNREF(error);
|
729
731
|
}
|
730
732
|
|