grpc 1.64.3 → 1.65.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Makefile +57 -58
- data/include/grpc/event_engine/event_engine.h +13 -6
- data/include/grpc/impl/channel_arg_names.h +7 -3
- data/include/grpc/module.modulemap +1 -0
- data/include/grpc/passive_listener.h +62 -0
- data/include/grpc/support/log.h +7 -17
- data/include/grpc/support/port_platform.h +3 -0
- data/src/core/channelz/channel_trace.cc +1 -1
- data/src/core/channelz/channel_trace.h +1 -1
- data/src/core/channelz/channelz.cc +3 -3
- data/src/core/channelz/channelz.h +7 -7
- data/src/core/channelz/channelz_registry.cc +4 -3
- data/src/core/client_channel/backup_poller.cc +4 -5
- data/src/core/client_channel/client_channel.cc +1324 -0
- data/src/core/client_channel/client_channel.h +243 -0
- data/src/core/client_channel/client_channel_filter.cc +266 -709
- data/src/core/client_channel/client_channel_filter.h +11 -64
- data/src/core/client_channel/client_channel_internal.h +16 -5
- data/src/core/client_channel/client_channel_plugin.cc +1 -14
- data/src/core/client_channel/client_channel_service_config.h +3 -3
- data/src/core/client_channel/config_selector.cc +1 -1
- data/src/core/client_channel/config_selector.h +1 -1
- data/src/core/client_channel/dynamic_filters.cc +3 -3
- data/src/core/client_channel/dynamic_filters.h +1 -3
- data/src/core/client_channel/load_balanced_call_destination.cc +336 -0
- data/src/core/client_channel/load_balanced_call_destination.h +49 -0
- data/src/core/client_channel/retry_filter.cc +2 -9
- data/src/core/client_channel/retry_filter.h +2 -7
- data/src/core/client_channel/retry_filter_legacy_call_data.cc +65 -72
- data/src/core/client_channel/retry_filter_legacy_call_data.h +0 -2
- data/src/core/client_channel/retry_service_config.cc +4 -5
- data/src/core/client_channel/retry_service_config.h +3 -3
- data/src/core/client_channel/subchannel.cc +220 -112
- data/src/core/client_channel/subchannel.h +31 -18
- data/src/core/client_channel/subchannel_pool_interface.cc +0 -2
- data/src/core/client_channel/subchannel_pool_interface.h +2 -4
- data/src/core/client_channel/subchannel_stream_client.cc +36 -49
- data/src/core/client_channel/subchannel_stream_client.h +2 -4
- data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +7 -10
- data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +1 -0
- data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +7 -0
- data/src/core/ext/filters/census/grpc_context.cc +2 -4
- data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +8 -15
- data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +2 -0
- data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +3 -7
- data/src/core/ext/filters/fault_injection/fault_injection_filter.h +1 -0
- data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +3 -3
- data/src/core/ext/filters/http/client/http_client_filter.cc +1 -0
- data/src/core/ext/filters/http/client/http_client_filter.h +1 -0
- data/src/core/ext/filters/http/client_authority_filter.cc +1 -0
- data/src/core/ext/filters/http/client_authority_filter.h +1 -0
- data/src/core/ext/filters/http/message_compress/compression_filter.cc +10 -15
- data/src/core/ext/filters/http/message_compress/compression_filter.h +2 -0
- data/src/core/ext/filters/http/server/http_server_filter.cc +2 -2
- data/src/core/ext/filters/http/server/http_server_filter.h +1 -0
- data/src/core/ext/filters/message_size/message_size_filter.cc +6 -9
- data/src/core/ext/filters/message_size/message_size_filter.h +6 -6
- data/src/core/ext/filters/rbac/rbac_filter.cc +2 -5
- data/src/core/ext/filters/rbac/rbac_filter.h +1 -0
- data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +2 -2
- data/src/core/ext/filters/rbac/rbac_service_config_parser.h +1 -1
- data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +2 -6
- data/src/core/ext/filters/stateful_session/stateful_session_filter.h +1 -0
- data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
- data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -1
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +8 -25
- data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -5
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +223 -148
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +33 -0
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +131 -107
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +8 -8
- data/src/core/ext/transport/chttp2/transport/context_list_entry.h +1 -1
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -4
- data/src/core/ext/transport/chttp2/transport/flow_control.h +0 -2
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -6
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +1 -2
- data/src/core/ext/transport/chttp2/transport/frame_settings.cc +9 -5
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +5 -4
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +9 -2
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +32 -43
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +1 -3
- data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +3 -8
- data/src/core/ext/transport/chttp2/transport/http2_settings.cc +1 -1
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +1 -1
- data/src/core/ext/transport/chttp2/transport/internal.h +29 -19
- data/src/core/ext/transport/chttp2/transport/parsing.cc +15 -25
- data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +0 -2
- data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +0 -2
- data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +29 -13
- data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +5 -4
- data/src/core/ext/transport/chttp2/transport/stream_lists.cc +3 -5
- data/src/core/ext/transport/chttp2/transport/writing.cc +24 -25
- data/src/core/ext/transport/inproc/inproc_transport.cc +56 -32
- data/src/core/ext/transport/inproc/inproc_transport.h +1 -3
- data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +13 -15
- data/src/core/ext/transport/inproc/legacy_inproc_transport.h +0 -2
- data/src/core/handshaker/handshaker.cc +6 -14
- data/src/core/handshaker/http_connect/http_connect_handshaker.cc +9 -17
- data/src/core/handshaker/http_connect/http_proxy_mapper.cc +3 -2
- data/src/core/handshaker/security/secure_endpoint.cc +38 -32
- data/src/core/handshaker/security/secure_endpoint.h +0 -2
- data/src/core/handshaker/security/security_handshaker.cc +25 -37
- data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +2 -1
- data/src/core/lib/address_utils/parse_address.cc +27 -39
- data/src/core/lib/address_utils/sockaddr_utils.cc +5 -6
- data/src/core/lib/avl/avl.h +1 -1
- data/src/core/lib/channel/channel_args.cc +13 -17
- data/src/core/lib/channel/channel_args.h +19 -8
- data/src/core/lib/channel/channel_stack.cc +5 -63
- data/src/core/lib/channel/channel_stack.h +13 -37
- data/src/core/lib/channel/channel_stack_builder.h +0 -5
- data/src/core/lib/channel/channel_stack_builder_impl.cc +0 -142
- data/src/core/lib/channel/channel_stack_builder_impl.h +0 -2
- data/src/core/lib/channel/connected_channel.cc +37 -676
- data/src/core/lib/channel/promise_based_filter.cc +41 -47
- data/src/core/lib/channel/promise_based_filter.h +124 -477
- data/src/core/lib/channel/status_util.cc +1 -1
- data/src/core/lib/compression/compression.cc +1 -1
- data/src/core/lib/compression/message_compress.cc +6 -6
- data/src/core/lib/config/config_vars.cc +3 -8
- data/src/core/lib/config/config_vars.h +1 -5
- data/src/core/lib/debug/event_log.h +1 -1
- data/src/core/lib/debug/trace.cc +43 -59
- data/src/core/lib/debug/trace.h +2 -97
- data/src/core/lib/debug/trace_flags.cc +255 -0
- data/src/core/lib/debug/trace_flags.h +133 -0
- data/src/core/lib/debug/trace_impl.h +115 -0
- data/src/core/lib/event_engine/ares_resolver.cc +5 -7
- data/src/core/lib/event_engine/ares_resolver.h +1 -3
- data/src/core/lib/event_engine/cf_engine/cf_engine.cc +1 -1
- data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +17 -22
- data/src/core/lib/event_engine/event_engine.cc +29 -4
- data/src/core/lib/event_engine/extensions/supports_fd.h +7 -0
- data/src/core/lib/event_engine/extensions/tcp_trace.h +43 -0
- data/src/core/lib/event_engine/forkable.cc +4 -5
- data/src/core/lib/event_engine/forkable.h +0 -11
- data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +10 -11
- data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +4 -3
- data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +1 -1
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +19 -33
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +3 -2
- data/src/core/lib/event_engine/posix_engine/posix_engine.cc +24 -7
- data/src/core/lib/event_engine/posix_engine/posix_engine.h +2 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +14 -16
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +18 -22
- data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +13 -17
- data/src/core/lib/event_engine/posix_engine/timer.cc +1 -1
- data/src/core/lib/event_engine/posix_engine/timer_manager.cc +4 -6
- data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +2 -1
- data/src/core/lib/event_engine/shim.cc +1 -1
- data/src/core/lib/event_engine/tcp_socket_utils.cc +6 -8
- data/src/core/lib/event_engine/thread_local.h +1 -1
- data/src/core/lib/event_engine/thread_pool/thread_count.h +1 -1
- data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +19 -21
- data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +3 -6
- data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +14 -13
- data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +4 -3
- data/src/core/lib/event_engine/trace.h +6 -17
- data/src/core/lib/event_engine/windows/iocp.h +1 -1
- data/src/core/lib/event_engine/windows/win_socket.cc +23 -17
- data/src/core/lib/event_engine/windows/win_socket.h +4 -5
- data/src/core/lib/event_engine/windows/windows_endpoint.cc +6 -9
- data/src/core/lib/event_engine/windows/windows_engine.cc +201 -87
- data/src/core/lib/event_engine/windows/windows_engine.h +136 -25
- data/src/core/lib/event_engine/windows/windows_listener.cc +12 -23
- data/src/core/lib/experiments/experiments.cc +35 -151
- data/src/core/lib/experiments/experiments.h +12 -45
- data/src/core/lib/gprpp/bitset.h +1 -1
- data/src/core/lib/gprpp/crash.cc +2 -3
- data/src/core/lib/gprpp/dual_ref_counted.h +45 -33
- data/src/core/lib/gprpp/dump_args.cc +54 -0
- data/src/core/lib/gprpp/dump_args.h +69 -0
- data/src/core/lib/gprpp/glob.cc +70 -0
- data/src/core/lib/gprpp/glob.h +29 -0
- data/src/core/lib/gprpp/per_cpu.cc +1 -1
- data/src/core/lib/gprpp/posix/stat.cc +3 -4
- data/src/core/lib/gprpp/posix/thd.cc +8 -9
- data/src/core/lib/gprpp/ref_counted.h +30 -22
- data/src/core/lib/gprpp/single_set_ptr.h +5 -3
- data/src/core/lib/gprpp/status_helper.cc +11 -30
- data/src/core/lib/gprpp/status_helper.h +3 -31
- data/src/core/lib/gprpp/time.cc +3 -4
- data/src/core/lib/gprpp/time.h +3 -2
- data/src/core/lib/gprpp/unique_type_name.h +1 -1
- data/src/core/lib/gprpp/validation_errors.cc +10 -1
- data/src/core/lib/gprpp/validation_errors.h +11 -0
- data/src/core/lib/gprpp/windows/stat.cc +3 -4
- data/src/core/lib/gprpp/windows/thd.cc +3 -2
- data/src/core/lib/gprpp/work_serializer.cc +48 -57
- data/src/core/lib/iomgr/buffer_list.cc +4 -2
- data/src/core/lib/iomgr/call_combiner.cc +18 -27
- data/src/core/lib/iomgr/call_combiner.h +1 -3
- data/src/core/lib/iomgr/cfstream_handle.cc +4 -6
- data/src/core/lib/iomgr/closure.h +2 -4
- data/src/core/lib/iomgr/combiner.cc +6 -8
- data/src/core/lib/iomgr/combiner.h +0 -2
- data/src/core/lib/iomgr/endpoint.cc +0 -6
- data/src/core/lib/iomgr/endpoint.h +0 -2
- data/src/core/lib/iomgr/endpoint_cfstream.cc +19 -41
- data/src/core/lib/iomgr/endpoint_pair_posix.cc +1 -1
- data/src/core/lib/iomgr/endpoint_pair_windows.cc +5 -6
- data/src/core/lib/iomgr/error.cc +13 -21
- data/src/core/lib/iomgr/error.h +1 -1
- data/src/core/lib/iomgr/ev_apple.cc +3 -5
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +43 -42
- data/src/core/lib/iomgr/ev_poll_posix.cc +38 -29
- data/src/core/lib/iomgr/ev_posix.cc +8 -9
- data/src/core/lib/iomgr/ev_posix.h +10 -7
- data/src/core/lib/iomgr/event_engine_shims/closure.cc +2 -2
- data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +14 -28
- data/src/core/lib/iomgr/exec_ctx.cc +2 -2
- data/src/core/lib/iomgr/exec_ctx.h +1 -1
- data/src/core/lib/iomgr/executor.cc +6 -15
- data/src/core/lib/iomgr/executor.h +1 -1
- data/src/core/lib/iomgr/fork_posix.cc +8 -10
- data/src/core/lib/iomgr/fork_windows.cc +3 -1
- data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +2 -3
- data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +3 -5
- data/src/core/lib/iomgr/internal_errqueue.cc +4 -2
- data/src/core/lib/iomgr/iocp_windows.cc +4 -3
- data/src/core/lib/iomgr/iomgr.cc +13 -17
- data/src/core/lib/iomgr/lockfree_event.cc +3 -5
- data/src/core/lib/iomgr/pollset.h +0 -2
- data/src/core/lib/iomgr/pollset_windows.cc +0 -2
- data/src/core/lib/iomgr/resolve_address_posix.cc +7 -14
- data/src/core/lib/iomgr/resolve_address_windows.cc +1 -1
- data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
- data/src/core/lib/iomgr/socket_mutator.cc +1 -1
- data/src/core/lib/iomgr/socket_utils_common_posix.cc +11 -17
- data/src/core/lib/iomgr/socket_windows.cc +4 -6
- data/src/core/lib/iomgr/tcp_client_cfstream.cc +3 -5
- data/src/core/lib/iomgr/tcp_client_posix.cc +9 -15
- data/src/core/lib/iomgr/tcp_client_windows.cc +2 -4
- data/src/core/lib/iomgr/tcp_posix.cc +57 -84
- data/src/core/lib/iomgr/tcp_posix.h +0 -2
- data/src/core/lib/iomgr/tcp_server_posix.cc +3 -3
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +4 -6
- data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +7 -7
- data/src/core/lib/iomgr/tcp_server_windows.cc +10 -16
- data/src/core/lib/iomgr/tcp_windows.cc +25 -41
- data/src/core/lib/iomgr/timer_generic.cc +17 -20
- data/src/core/lib/iomgr/timer_heap.cc +1 -1
- data/src/core/lib/iomgr/timer_manager.cc +17 -30
- data/src/core/lib/iomgr/unix_sockets_posix.cc +1 -1
- data/src/core/lib/iomgr/vsock.cc +1 -1
- data/src/core/lib/iomgr/wakeup_fd_pipe.cc +3 -3
- data/src/core/lib/promise/activity.h +27 -4
- data/src/core/lib/promise/cancel_callback.h +24 -0
- data/src/core/lib/promise/context.h +11 -0
- data/src/core/lib/promise/detail/basic_seq.h +1 -2
- data/src/core/lib/promise/detail/join_state.h +354 -398
- data/src/core/lib/promise/detail/promise_like.h +6 -5
- data/src/core/lib/promise/detail/seq_state.h +1178 -1178
- data/src/core/lib/promise/for_each.h +6 -6
- data/src/core/lib/promise/interceptor_list.h +6 -7
- data/src/core/lib/promise/latch.h +9 -9
- data/src/core/lib/promise/map.h +17 -0
- data/src/core/lib/promise/observable.h +182 -0
- data/src/core/lib/promise/party.cc +7 -8
- data/src/core/lib/promise/party.h +10 -8
- data/src/core/lib/promise/pipe.h +16 -35
- data/src/core/lib/promise/promise.h +1 -0
- data/src/core/lib/promise/status_flag.h +2 -0
- data/src/core/lib/resource_quota/arena.cc +56 -79
- data/src/core/lib/resource_quota/arena.h +118 -209
- data/src/core/lib/resource_quota/memory_quota.cc +12 -13
- data/src/core/lib/resource_quota/memory_quota.h +2 -3
- data/src/core/lib/resource_quota/periodic_update.cc +1 -1
- data/src/core/lib/resource_quota/resource_quota.h +1 -1
- data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
- data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -1
- data/src/core/lib/security/authorization/evaluate_args.cc +6 -8
- data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +5 -6
- data/src/core/lib/security/authorization/grpc_server_authz_filter.h +1 -0
- data/src/core/lib/security/authorization/matchers.cc +3 -3
- data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +2 -2
- data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +2 -3
- data/src/core/lib/security/context/security_context.cc +12 -13
- data/src/core/lib/security/context/security_context.h +31 -8
- data/src/core/lib/security/credentials/alts/alts_credentials.h +1 -1
- data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +3 -1
- data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +2 -3
- data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +5 -5
- data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +3 -3
- data/src/core/lib/security/credentials/call_creds_util.cc +2 -1
- data/src/core/lib/security/credentials/channel_creds_registry.h +2 -2
- data/src/core/lib/security/credentials/channel_creds_registry_init.cc +5 -3
- data/src/core/lib/security/credentials/composite/composite_credentials.h +1 -1
- data/src/core/lib/security/credentials/credentials.cc +6 -6
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +4 -4
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +2 -2
- data/src/core/lib/security/credentials/external/external_account_credentials.cc +9 -11
- data/src/core/lib/security/credentials/external/external_account_credentials.h +3 -3
- data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +2 -2
- data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +4 -4
- data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -1
- data/src/core/lib/security/credentials/fake/fake_credentials.h +1 -1
- data/src/core/lib/security/credentials/google_default/credentials_generic.cc +3 -3
- data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +11 -11
- data/src/core/lib/security/credentials/google_default/google_default_credentials.h +1 -1
- data/src/core/lib/security/credentials/iam/iam_credentials.h +1 -1
- data/src/core/lib/security/credentials/jwt/json_token.cc +14 -15
- data/src/core/lib/security/credentials/jwt/json_token.h +1 -1
- data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +6 -5
- data/src/core/lib/security/credentials/jwt/jwt_credentials.h +1 -1
- data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +50 -54
- data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -1
- data/src/core/lib/security/credentials/local/local_credentials.h +1 -1
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +12 -11
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +4 -4
- data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +6 -7
- data/src/core/lib/security/credentials/plugin/plugin_credentials.h +1 -3
- data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +15 -21
- data/src/core/lib/security/credentials/ssl/ssl_credentials.h +1 -1
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +21 -30
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +1 -1
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +1 -1
- data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +4 -4
- data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +3 -5
- data/src/core/lib/security/credentials/tls/tls_credentials.cc +14 -16
- data/src/core/lib/security/credentials/tls/tls_utils.cc +4 -4
- data/src/core/lib/security/credentials/xds/xds_credentials.cc +1 -1
- data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +13 -16
- data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +15 -12
- data/src/core/lib/security/security_connector/load_system_roots_supported.cc +6 -6
- data/src/core/lib/security/security_connector/load_system_roots_windows.cc +1 -1
- data/src/core/lib/security/security_connector/local/local_security_connector.cc +8 -12
- data/src/core/lib/security/security_connector/security_connector.cc +1 -4
- data/src/core/lib/security/security_connector/security_connector.h +1 -3
- data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +17 -19
- data/src/core/lib/security/security_connector/ssl_utils.cc +19 -21
- data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +29 -40
- data/src/core/lib/security/transport/auth_filters.h +1 -0
- data/src/core/lib/security/transport/client_auth_filter.cc +7 -13
- data/src/core/lib/security/transport/server_auth_filter.cc +3 -8
- data/src/core/lib/security/util/json_util.h +1 -1
- data/src/core/lib/slice/slice.h +1 -1
- data/src/core/lib/slice/slice_refcount.h +2 -4
- data/src/core/lib/slice/slice_string_helpers.cc +1 -1
- data/src/core/lib/surface/api_trace.h +1 -3
- data/src/core/lib/surface/call.cc +64 -3738
- data/src/core/lib/surface/call.h +41 -143
- data/src/core/lib/surface/call_log_batch.cc +1 -1
- data/src/core/lib/surface/call_utils.cc +276 -0
- data/src/core/lib/surface/call_utils.h +449 -0
- data/src/core/lib/surface/channel.cc +8 -3
- data/src/core/lib/surface/channel.h +10 -7
- data/src/core/lib/surface/channel_create.cc +14 -6
- data/src/core/lib/surface/channel_create.h +3 -2
- data/src/core/lib/surface/channel_init.cc +21 -77
- data/src/core/lib/surface/channel_init.h +19 -97
- data/src/core/lib/surface/client_call.cc +419 -0
- data/src/core/lib/surface/client_call.h +180 -0
- data/src/core/lib/surface/completion_queue.cc +28 -33
- data/src/core/lib/surface/completion_queue.h +0 -8
- data/src/core/lib/surface/filter_stack_call.cc +1157 -0
- data/src/core/lib/surface/filter_stack_call.h +369 -0
- data/src/core/lib/surface/init.cc +7 -6
- data/src/core/lib/surface/lame_client.cc +1 -1
- data/src/core/lib/surface/legacy_channel.cc +40 -27
- data/src/core/lib/surface/legacy_channel.h +9 -18
- data/src/core/lib/surface/server_call.cc +222 -0
- data/src/core/lib/surface/server_call.h +167 -0
- data/src/core/lib/surface/version.cc +2 -2
- data/src/core/lib/transport/bdp_estimator.cc +3 -5
- data/src/core/lib/transport/bdp_estimator.h +2 -4
- data/src/core/lib/transport/call_arena_allocator.h +9 -7
- data/src/core/lib/transport/call_destination.h +76 -0
- data/src/core/lib/transport/call_filters.cc +28 -10
- data/src/core/lib/transport/call_filters.h +128 -22
- data/src/core/lib/transport/call_spine.cc +5 -6
- data/src/core/lib/transport/call_spine.h +159 -334
- data/src/core/lib/transport/connectivity_state.cc +8 -10
- data/src/core/lib/transport/connectivity_state.h +0 -2
- data/src/core/lib/transport/interception_chain.cc +155 -0
- data/src/core/lib/transport/interception_chain.h +236 -0
- data/src/core/lib/transport/metadata_batch.h +10 -1
- data/src/core/lib/transport/metadata_info.h +1 -1
- data/src/core/lib/transport/transport.cc +3 -6
- data/src/core/lib/transport/transport.h +43 -40
- data/src/core/load_balancing/child_policy_handler.cc +8 -8
- data/src/core/load_balancing/endpoint_list.cc +5 -5
- data/src/core/load_balancing/endpoint_list.h +1 -1
- data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +1 -0
- data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +1 -0
- data/src/core/load_balancing/grpclb/grpclb.cc +25 -29
- data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +1 -1
- data/src/core/load_balancing/grpclb/load_balancer_api.cc +3 -4
- data/src/core/load_balancing/health_check_client.cc +10 -13
- data/src/core/load_balancing/lb_policy.cc +5 -8
- data/src/core/load_balancing/lb_policy.h +19 -3
- data/src/core/load_balancing/lb_policy_factory.h +1 -1
- data/src/core/load_balancing/lb_policy_registry.cc +2 -3
- data/src/core/load_balancing/lb_policy_registry.h +1 -1
- data/src/core/load_balancing/oob_backend_metric.cc +2 -4
- data/src/core/load_balancing/outlier_detection/outlier_detection.cc +33 -35
- data/src/core/load_balancing/outlier_detection/outlier_detection.h +3 -3
- data/src/core/load_balancing/pick_first/pick_first.cc +65 -65
- data/src/core/load_balancing/priority/priority.cc +26 -28
- data/src/core/load_balancing/ring_hash/ring_hash.cc +11 -13
- data/src/core/load_balancing/ring_hash/ring_hash.h +3 -3
- data/src/core/load_balancing/rls/rls.cc +82 -82
- data/src/core/load_balancing/round_robin/round_robin.cc +17 -20
- data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +54 -43
- data/src/core/load_balancing/weighted_target/weighted_target.cc +21 -24
- data/src/core/load_balancing/xds/cds.cc +14 -16
- data/src/core/load_balancing/xds/xds_cluster_impl.cc +16 -18
- data/src/core/load_balancing/xds/xds_cluster_manager.cc +15 -17
- data/src/core/load_balancing/xds/xds_override_host.cc +40 -41
- data/src/core/load_balancing/xds/xds_override_host.h +3 -3
- data/src/core/load_balancing/xds/xds_wrr_locality.cc +10 -12
- data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -1
- data/src/core/resolver/binder/binder_resolver.cc +3 -2
- data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +3 -2
- data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +1 -1
- data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +7 -14
- data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +1 -5
- data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
- data/src/core/resolver/dns/dns_resolver_plugin.cc +6 -5
- data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +4 -9
- data/src/core/resolver/dns/event_engine/service_config_helper.cc +5 -5
- data/src/core/resolver/dns/native/dns_resolver.cc +8 -9
- data/src/core/resolver/endpoint_addresses.cc +1 -1
- data/src/core/resolver/fake/fake_resolver.cc +1 -1
- data/src/core/resolver/fake/fake_resolver.h +1 -1
- data/src/core/resolver/google_c2p/google_c2p_resolver.cc +13 -14
- data/src/core/resolver/polling_resolver.cc +30 -35
- data/src/core/resolver/resolver.cc +2 -6
- data/src/core/resolver/resolver.h +0 -2
- data/src/core/resolver/resolver_registry.cc +6 -8
- data/src/core/resolver/sockaddr/sockaddr_resolver.cc +3 -3
- data/src/core/resolver/xds/xds_dependency_manager.cc +22 -23
- data/src/core/resolver/xds/xds_resolver.cc +13 -15
- data/src/core/server/server.cc +269 -389
- data/src/core/server/server.h +37 -19
- data/src/core/server/server_call_tracer_filter.cc +7 -14
- data/src/core/server/server_config_selector.h +1 -1
- data/src/core/server/server_config_selector_filter.cc +3 -3
- data/src/core/server/server_interface.h +2 -0
- data/src/core/server/xds_channel_stack_modifier.cc +1 -1
- data/src/core/server/xds_channel_stack_modifier.h +1 -1
- data/src/core/server/xds_server_config_fetcher.cc +1 -4
- data/src/core/service_config/service_config.h +1 -1
- data/src/core/service_config/service_config_call_data.h +13 -11
- data/src/core/service_config/service_config_channel_arg_filter.cc +6 -4
- data/src/core/service_config/service_config_impl.cc +5 -5
- data/src/core/service_config/service_config_impl.h +1 -1
- data/src/core/service_config/service_config_parser.cc +3 -6
- data/src/core/service_config/service_config_parser.h +1 -1
- data/src/core/{lib/channel → telemetry}/call_tracer.cc +20 -30
- data/src/core/{lib/channel → telemetry}/call_tracer.h +32 -9
- data/src/core/{lib/debug → telemetry}/histogram_view.cc +1 -1
- data/src/core/{lib/debug → telemetry}/histogram_view.h +3 -3
- data/src/core/telemetry/metrics.cc +178 -0
- data/src/core/telemetry/metrics.h +562 -0
- data/src/core/{lib/debug → telemetry}/stats.cc +1 -1
- data/src/core/{lib/debug → telemetry}/stats.h +5 -5
- data/src/core/{lib/debug → telemetry}/stats_data.cc +1 -1
- data/src/core/{lib/debug → telemetry}/stats_data.h +4 -4
- data/src/core/{lib/channel → telemetry}/tcp_tracer.h +3 -3
- data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +12 -13
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +25 -27
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +32 -33
- data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -1
- data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -1
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +5 -4
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +5 -3
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +1 -1
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +4 -3
- data/src/core/tsi/fake_transport_security.cc +14 -17
- data/src/core/tsi/local_transport_security.cc +6 -5
- data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +4 -4
- data/src/core/tsi/ssl_transport_security.cc +76 -81
- data/src/core/tsi/ssl_transport_security_utils.cc +74 -18
- data/src/core/tsi/ssl_transport_security_utils.h +11 -0
- data/src/core/tsi/transport_security.cc +0 -4
- data/src/core/tsi/transport_security.h +0 -2
- data/src/core/tsi/transport_security_interface.h +0 -4
- data/src/core/{lib/gpr → util}/alloc.h +3 -3
- data/src/core/{lib/gpr → util}/android/log.cc +0 -19
- data/src/core/{lib/gpr → util}/atm.cc +1 -1
- data/src/core/{ext/gcp/metadata_query.cc → util/gcp_metadata_query.cc} +25 -26
- data/src/core/{ext/gcp/metadata_query.h → util/gcp_metadata_query.h} +11 -11
- data/src/core/{lib/http → util/http_client}/format_request.cc +4 -3
- data/src/core/{lib/http → util/http_client}/format_request.h +6 -5
- data/src/core/{lib/http → util/http_client}/httpcli.cc +9 -10
- data/src/core/{lib/http → util/http_client}/httpcli.h +6 -5
- data/src/core/{lib/http → util/http_client}/httpcli_security_connector.cc +9 -9
- data/src/core/{lib/http → util/http_client}/httpcli_ssl_credentials.h +5 -4
- data/src/core/{lib/http → util/http_client}/parser.cc +4 -5
- data/src/core/{lib/http → util/http_client}/parser.h +5 -6
- data/src/core/{lib → util}/json/json.h +5 -4
- data/src/core/{lib → util}/json/json_args.h +5 -5
- data/src/core/{lib → util}/json/json_channel_args.h +6 -6
- data/src/core/{lib → util}/json/json_object_loader.cc +3 -2
- data/src/core/{lib → util}/json/json_object_loader.h +7 -7
- data/src/core/{lib → util}/json/json_reader.cc +3 -2
- data/src/core/{lib → util}/json/json_reader.h +6 -6
- data/src/core/{lib → util}/json/json_util.cc +4 -4
- data/src/core/{lib → util}/json/json_util.h +6 -6
- data/src/core/{lib → util}/json/json_writer.cc +3 -3
- data/src/core/{lib → util}/json/json_writer.h +6 -6
- data/src/core/{lib/gpr → util}/linux/log.cc +0 -45
- data/src/core/util/log.cc +165 -0
- data/src/core/{lib/gpr → util}/msys/tmpfile.cc +2 -2
- data/src/core/{lib/gpr → util}/posix/cpu.cc +1 -1
- data/src/core/{lib/gpr → util}/posix/log.cc +0 -42
- data/src/core/{lib/gpr → util}/posix/time.cc +1 -1
- data/src/core/{lib/gpr → util}/posix/tmpfile.cc +2 -2
- data/src/core/{lib/gpr → util}/spinlock.h +3 -3
- data/src/core/{lib/gpr → util}/string.cc +2 -2
- data/src/core/{lib/gpr → util}/string.h +3 -3
- data/src/core/{lib/gpr → util}/time_precise.cc +1 -1
- data/src/core/{lib/gpr → util}/time_precise.h +3 -3
- data/src/core/{lib/gpr → util}/tmpfile.h +3 -3
- data/src/core/{lib/gpr → util}/useful.h +3 -3
- data/src/core/{lib/gpr → util}/windows/log.cc +1 -44
- data/src/core/{lib/gpr → util}/windows/string.cc +1 -1
- data/src/core/{lib/gpr → util}/windows/string_util.cc +1 -1
- data/src/core/{lib/gpr → util}/windows/time.cc +1 -1
- data/src/core/{lib/gpr → util}/windows/tmpfile.cc +1 -1
- data/src/core/xds/grpc/certificate_provider_store.cc +3 -3
- data/src/core/xds/grpc/certificate_provider_store.h +4 -4
- data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +3 -3
- data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +3 -3
- data/src/core/xds/grpc/xds_audit_logger_registry.h +1 -1
- data/src/core/xds/grpc/xds_bootstrap_grpc.cc +5 -5
- data/src/core/xds/grpc/xds_bootstrap_grpc.h +3 -3
- data/src/core/xds/grpc/xds_certificate_provider.h +1 -1
- data/src/core/xds/grpc/xds_client_grpc.cc +27 -23
- data/src/core/xds/grpc/xds_client_grpc.h +2 -2
- data/src/core/xds/grpc/xds_cluster.cc +4 -5
- data/src/core/xds/grpc/xds_cluster.h +1 -1
- data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +2 -2
- data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +1 -1
- data/src/core/xds/grpc/xds_common_types.cc +1 -1
- data/src/core/xds/grpc/xds_common_types.h +1 -1
- data/src/core/xds/grpc/xds_endpoint.cc +4 -5
- data/src/core/xds/grpc/xds_http_fault_filter.cc +2 -2
- data/src/core/xds/grpc/xds_http_filters.h +2 -2
- data/src/core/xds/grpc/xds_http_rbac_filter.cc +3 -3
- data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +2 -2
- data/src/core/xds/grpc/xds_lb_policy_registry.h +1 -1
- data/src/core/xds/grpc/xds_listener.cc +4 -6
- data/src/core/xds/grpc/xds_route_config.cc +7 -8
- data/src/core/xds/grpc/xds_transport_grpc.cc +2 -2
- data/src/core/xds/grpc/xds_transport_grpc.h +1 -1
- data/src/core/xds/xds_client/xds_api.cc +5 -9
- data/src/core/xds/xds_client/xds_bootstrap.cc +1 -1
- data/src/core/xds/xds_client/xds_bootstrap.h +1 -1
- data/src/core/xds/xds_client/xds_client.cc +39 -45
- data/src/core/xds/xds_client/xds_client.h +0 -3
- data/src/core/xds/xds_client/xds_client_stats.cc +6 -6
- data/src/core/xds/xds_client/xds_client_stats.h +2 -2
- data/src/ruby/bin/math_pb.rb +1 -22
- data/src/ruby/ext/grpc/rb_call.c +8 -1
- data/src/ruby/ext/grpc/rb_completion_queue.c +15 -32
- data/src/ruby/ext/grpc/rb_completion_queue.h +7 -1
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +2 -2
- data/src/ruby/ext/grpc/rb_server.c +39 -22
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/grpc/health/v1/health_pb.rb +1 -22
- data/src/ruby/pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb +5 -5
- data/src/ruby/pb/grpc/testing/metrics_pb.rb +10 -19
- data/src/ruby/pb/grpc/testing/metrics_services_pb.rb +5 -5
- data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +1 -22
- data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +1 -22
- data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +1 -22
- data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +12 -12
- data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +66 -41
- data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +1497 -0
- data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +58 -0
- data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +10 -3
- data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -2
- data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +5 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +45 -1
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +33 -23
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +3 -6
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +9 -4
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +6 -0
- data/third_party/boringssl-with-bazel/src/crypto/internal.h +7 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +0 -4
- data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +49 -16
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -10
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +7 -17
- data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -6
- data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +3 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +125 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +0 -23
- data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +1 -1
- data/third_party/boringssl-with-bazel/src/ssl/internal.h +4 -10
- metadata +103 -93
- data/src/core/ext/transport/chttp2/transport/http_trace.cc +0 -19
- data/src/core/ext/transport/chttp2/transport/http_trace.h +0 -24
- data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -23
- data/src/core/handshaker/security/tsi_error.cc +0 -31
- data/src/core/handshaker/security/tsi_error.h +0 -30
- data/src/core/lib/channel/channel_stack_trace.cc +0 -19
- data/src/core/lib/channel/channel_stack_trace.h +0 -24
- data/src/core/lib/channel/context.h +0 -105
- data/src/core/lib/channel/metrics.cc +0 -334
- data/src/core/lib/channel/metrics.h +0 -365
- data/src/core/lib/event_engine/trace.cc +0 -25
- data/src/core/lib/gpr/log.cc +0 -166
- data/src/core/lib/iomgr/ev_windows.cc +0 -30
- data/src/core/lib/promise/trace.cc +0 -20
- data/src/core/lib/promise/trace.h +0 -24
- data/src/core/lib/resource_quota/trace.cc +0 -19
- data/src/core/lib/resource_quota/trace.h +0 -24
- data/src/core/lib/slice/slice_refcount.cc +0 -20
- data/src/core/lib/surface/api_trace.cc +0 -25
- data/src/core/lib/surface/call_trace.h +0 -24
- data/src/core/lib/surface/wait_for_cq_end_op.cc +0 -75
- data/src/core/lib/surface/wait_for_cq_end_op.h +0 -72
- data/src/core/lib/transport/batch_builder.cc +0 -172
- data/src/core/lib/transport/batch_builder.h +0 -474
- data/src/core/resolver/xds/xds_resolver_trace.cc +0 -25
- data/src/core/resolver/xds/xds_resolver_trace.h +0 -30
- data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +0 -122
- /data/src/core/{lib/gpr → util}/alloc.cc +0 -0
- /data/src/core/{lib/gpr → util}/iphone/cpu.cc +0 -0
- /data/src/core/{lib/gpr → util}/linux/cpu.cc +0 -0
- /data/src/core/{lib/gpr → util}/posix/string.cc +0 -0
- /data/src/core/{lib/gpr → util}/posix/sync.cc +0 -0
- /data/src/core/{lib/gpr → util}/sync.cc +0 -0
- /data/src/core/{lib/gpr → util}/sync_abseil.cc +0 -0
- /data/src/core/{lib/gpr → util}/time.cc +0 -0
- /data/src/core/{lib/gpr → util}/windows/cpu.cc +0 -0
- /data/src/core/{lib/gpr → util}/windows/sync.cc +0 -0
@@ -32,15 +32,16 @@
|
|
32
32
|
#include <sys/stat.h>
|
33
33
|
#include <unistd.h>
|
34
34
|
|
35
|
+
#include "absl/log/log.h"
|
36
|
+
|
35
37
|
#include <grpc/support/alloc.h>
|
36
|
-
#include <grpc/support/log.h>
|
37
38
|
|
38
39
|
#include "src/core/lib/config/config_vars.h"
|
39
|
-
#include "src/core/lib/gpr/useful.h"
|
40
40
|
#include "src/core/lib/gprpp/load_file.h"
|
41
41
|
#include "src/core/lib/iomgr/error.h"
|
42
42
|
#include "src/core/lib/security/security_connector/load_system_roots.h"
|
43
43
|
#include "src/core/lib/security/security_connector/load_system_roots_supported.h"
|
44
|
+
#include "src/core/util/useful.h"
|
44
45
|
|
45
46
|
namespace grpc_core {
|
46
47
|
namespace {
|
@@ -79,8 +80,7 @@ void GetAbsoluteFilePath(const char* valid_file_dir,
|
|
79
80
|
int path_len = snprintf(path_buffer, MAXPATHLEN, "%s/%s", valid_file_dir,
|
80
81
|
file_entry_name);
|
81
82
|
if (path_len == 0) {
|
82
|
-
|
83
|
-
file_entry_name);
|
83
|
+
LOG(ERROR) << "failed to get absolute path for file: " << file_entry_name;
|
84
84
|
}
|
85
85
|
}
|
86
86
|
}
|
@@ -110,7 +110,7 @@ grpc_slice CreateRootCertsBundle(const char* certs_directory) {
|
|
110
110
|
if (stat_return == -1 || !S_ISREG(dir_entry_stat.st_mode)) {
|
111
111
|
// no subdirectories.
|
112
112
|
if (stat_return == -1) {
|
113
|
-
|
113
|
+
LOG(ERROR) << "failed to get status for file: " << file_data.path;
|
114
114
|
}
|
115
115
|
continue;
|
116
116
|
}
|
@@ -131,7 +131,7 @@ grpc_slice CreateRootCertsBundle(const char* certs_directory) {
|
|
131
131
|
if (read_ret != -1) {
|
132
132
|
bytes_read += read_ret;
|
133
133
|
} else {
|
134
|
-
|
134
|
+
LOG(ERROR) << "failed to read file: " << roots_filenames[i].path;
|
135
135
|
}
|
136
136
|
}
|
137
137
|
}
|
@@ -32,9 +32,9 @@
|
|
32
32
|
#include <grpc/support/alloc.h>
|
33
33
|
#include <grpc/support/log.h>
|
34
34
|
|
35
|
-
#include "src/core/lib/gpr/useful.h"
|
36
35
|
#include "src/core/lib/security/security_connector/load_system_roots.h"
|
37
36
|
#include "src/core/lib/slice/slice_internal.h"
|
37
|
+
#include "src/core/util/useful.h"
|
38
38
|
|
39
39
|
namespace grpc_core {
|
40
40
|
namespace {
|
@@ -24,6 +24,7 @@
|
|
24
24
|
#include <utility>
|
25
25
|
|
26
26
|
#include "absl/log/check.h"
|
27
|
+
#include "absl/log/log.h"
|
27
28
|
#include "absl/status/status.h"
|
28
29
|
#include "absl/status/statusor.h"
|
29
30
|
#include "absl/strings/match.h"
|
@@ -33,7 +34,6 @@
|
|
33
34
|
#include <grpc/grpc.h>
|
34
35
|
#include <grpc/grpc_security_constants.h>
|
35
36
|
#include <grpc/support/alloc.h>
|
36
|
-
#include <grpc/support/log.h>
|
37
37
|
#include <grpc/support/port_platform.h>
|
38
38
|
#include <grpc/support/string_util.h>
|
39
39
|
|
@@ -99,8 +99,7 @@ void local_check_peer(tsi_peer peer, grpc_endpoint* ep,
|
|
99
99
|
absl::string_view local_addr = grpc_endpoint_get_local_address(ep);
|
100
100
|
absl::StatusOr<grpc_core::URI> uri = grpc_core::URI::Parse(local_addr);
|
101
101
|
if (!uri.ok() || !grpc_parse_uri(*uri, &resolved_addr)) {
|
102
|
-
|
103
|
-
std::string(local_addr.data(), local_addr.size()).c_str());
|
102
|
+
LOG(ERROR) << "Could not parse endpoint address: " << local_addr;
|
104
103
|
} else {
|
105
104
|
grpc_resolved_address addr_normalized;
|
106
105
|
grpc_resolved_address* addr =
|
@@ -269,9 +268,8 @@ grpc_local_channel_security_connector_create(
|
|
269
268
|
grpc_core::RefCountedPtr<grpc_call_credentials> request_metadata_creds,
|
270
269
|
const grpc_core::ChannelArgs& args, const char* target_name) {
|
271
270
|
if (channel_creds == nullptr || target_name == nullptr) {
|
272
|
-
|
273
|
-
|
274
|
-
"Invalid arguments to grpc_local_channel_security_connector_create()");
|
271
|
+
LOG(ERROR) << "Invalid arguments to "
|
272
|
+
"grpc_local_channel_security_connector_create()";
|
275
273
|
return nullptr;
|
276
274
|
}
|
277
275
|
// Perform sanity check on UDS address. For TCP local connection, the check
|
@@ -283,9 +281,8 @@ grpc_local_channel_security_connector_create(
|
|
283
281
|
if (creds->connect_type() == UDS &&
|
284
282
|
!absl::StartsWith(server_uri_str, GRPC_UDS_URI_PATTERN) &&
|
285
283
|
!absl::StartsWith(server_uri_str, GRPC_ABSTRACT_UDS_URI_PATTERN)) {
|
286
|
-
|
287
|
-
|
288
|
-
"grpc_local_channel_security_connector_create()");
|
284
|
+
LOG(ERROR) << "Invalid UDS target name to "
|
285
|
+
"grpc_local_channel_security_connector_create()";
|
289
286
|
return nullptr;
|
290
287
|
}
|
291
288
|
return grpc_core::MakeRefCounted<grpc_local_channel_security_connector>(
|
@@ -296,9 +293,8 @@ grpc_core::RefCountedPtr<grpc_server_security_connector>
|
|
296
293
|
grpc_local_server_security_connector_create(
|
297
294
|
grpc_core::RefCountedPtr<grpc_server_credentials> server_creds) {
|
298
295
|
if (server_creds == nullptr) {
|
299
|
-
|
300
|
-
|
301
|
-
"Invalid arguments to grpc_local_server_security_connector_create()");
|
296
|
+
LOG(ERROR)
|
297
|
+
<< "Invalid arguments to grpc_local_server_security_connector_create()";
|
302
298
|
return nullptr;
|
303
299
|
}
|
304
300
|
return grpc_core::MakeRefCounted<grpc_local_server_security_connector>(
|
@@ -28,12 +28,9 @@
|
|
28
28
|
#include <grpc/support/port_platform.h>
|
29
29
|
|
30
30
|
#include "src/core/lib/channel/channel_args.h"
|
31
|
-
#include "src/core/lib/gpr/useful.h"
|
32
31
|
#include "src/core/lib/gprpp/debug_location.h"
|
33
32
|
#include "src/core/lib/security/credentials/credentials.h"
|
34
|
-
|
35
|
-
grpc_core::DebugOnlyTraceFlag grpc_trace_security_connector_refcount(
|
36
|
-
false, "security_connector_refcount");
|
33
|
+
#include "src/core/util/useful.h"
|
37
34
|
|
38
35
|
grpc_channel_security_connector::grpc_channel_security_connector(
|
39
36
|
absl::string_view url_scheme,
|
@@ -42,8 +42,6 @@
|
|
42
42
|
#include "src/core/lib/promise/arena_promise.h"
|
43
43
|
#include "src/core/tsi/transport_security_interface.h"
|
44
44
|
|
45
|
-
extern grpc_core::DebugOnlyTraceFlag grpc_trace_security_connector_refcount;
|
46
|
-
|
47
45
|
// --- URL schemes. ---
|
48
46
|
|
49
47
|
#define GRPC_SSL_URL_SCHEME "https"
|
@@ -63,7 +61,7 @@ class grpc_security_connector
|
|
63
61
|
public:
|
64
62
|
explicit grpc_security_connector(absl::string_view url_scheme)
|
65
63
|
: grpc_core::RefCounted<grpc_security_connector>(
|
66
|
-
GRPC_TRACE_FLAG_ENABLED(
|
64
|
+
GRPC_TRACE_FLAG_ENABLED(security_connector_refcount)
|
67
65
|
? "security_connector_refcount"
|
68
66
|
: nullptr),
|
69
67
|
url_scheme_(url_scheme) {}
|
@@ -25,13 +25,13 @@
|
|
25
25
|
#include <utility>
|
26
26
|
|
27
27
|
#include "absl/log/check.h"
|
28
|
+
#include "absl/log/log.h"
|
28
29
|
#include "absl/status/status.h"
|
29
30
|
#include "absl/strings/str_cat.h"
|
30
31
|
#include "absl/strings/str_format.h"
|
31
32
|
#include "absl/strings/string_view.h"
|
32
33
|
|
33
34
|
#include <grpc/support/alloc.h>
|
34
|
-
#include <grpc/support/log.h>
|
35
35
|
#include <grpc/support/port_platform.h>
|
36
36
|
|
37
37
|
#include "src/core/handshaker/handshaker.h"
|
@@ -112,8 +112,8 @@ class grpc_ssl_channel_security_connector final
|
|
112
112
|
/*network_bio_buf_size=*/0,
|
113
113
|
/*ssl_bio_buf_size=*/0, &tsi_hs);
|
114
114
|
if (result != TSI_OK) {
|
115
|
-
|
116
|
-
|
115
|
+
LOG(ERROR) << "Handshaker creation failed with error "
|
116
|
+
<< tsi_result_to_string(result);
|
117
117
|
return;
|
118
118
|
}
|
119
119
|
// Create handshakers.
|
@@ -204,8 +204,7 @@ class grpc_ssl_server_security_connector
|
|
204
204
|
if (has_cert_config_fetcher()) {
|
205
205
|
// Load initial credentials from certificate_config_fetcher:
|
206
206
|
if (!try_fetch_ssl_server_credentials()) {
|
207
|
-
|
208
|
-
"Failed loading SSL server credentials from fetcher.");
|
207
|
+
LOG(ERROR) << "Failed loading SSL server credentials from fetcher.";
|
209
208
|
return GRPC_SECURITY_ERROR;
|
210
209
|
}
|
211
210
|
} else {
|
@@ -236,8 +235,8 @@ class grpc_ssl_server_security_connector
|
|
236
235
|
&options, &server_handshaker_factory_);
|
237
236
|
gpr_free(alpn_protocol_strings);
|
238
237
|
if (result != TSI_OK) {
|
239
|
-
|
240
|
-
|
238
|
+
LOG(ERROR) << "Handshaker factory creation failed with "
|
239
|
+
<< tsi_result_to_string(result);
|
241
240
|
return GRPC_SECURITY_ERROR;
|
242
241
|
}
|
243
242
|
}
|
@@ -254,8 +253,8 @@ class grpc_ssl_server_security_connector
|
|
254
253
|
server_handshaker_factory_, /*network_bio_buf_size=*/0,
|
255
254
|
/*ssl_bio_buf_size=*/0, &tsi_hs);
|
256
255
|
if (result != TSI_OK) {
|
257
|
-
|
258
|
-
|
256
|
+
LOG(ERROR) << "Handshaker creation failed with error "
|
257
|
+
<< tsi_result_to_string(result);
|
259
258
|
return;
|
260
259
|
}
|
261
260
|
// Create handshakers.
|
@@ -299,9 +298,8 @@ class grpc_ssl_server_security_connector
|
|
299
298
|
status = try_replace_server_handshaker_factory(certificate_config);
|
300
299
|
} else {
|
301
300
|
// Log error, continue using previously-loaded credentials.
|
302
|
-
|
303
|
-
|
304
|
-
"use previously-loaded credentials.");
|
301
|
+
LOG(ERROR) << "Failed fetching new server credentials, continuing to "
|
302
|
+
"use previously-loaded credentials.";
|
305
303
|
status = false;
|
306
304
|
}
|
307
305
|
|
@@ -318,12 +316,12 @@ class grpc_ssl_server_security_connector
|
|
318
316
|
bool try_replace_server_handshaker_factory(
|
319
317
|
const grpc_ssl_server_certificate_config* config) {
|
320
318
|
if (config == nullptr) {
|
321
|
-
|
322
|
-
|
323
|
-
|
319
|
+
LOG(ERROR)
|
320
|
+
<< "Server certificate config callback returned invalid (NULL) "
|
321
|
+
"config.";
|
324
322
|
return false;
|
325
323
|
}
|
326
|
-
|
324
|
+
VLOG(2) << "Using new server certificate config (" << config << ").";
|
327
325
|
|
328
326
|
size_t num_alpn_protocols = 0;
|
329
327
|
const char** alpn_protocol_strings =
|
@@ -351,8 +349,8 @@ class grpc_ssl_server_security_connector
|
|
351
349
|
gpr_free(alpn_protocol_strings);
|
352
350
|
|
353
351
|
if (result != TSI_OK) {
|
354
|
-
|
355
|
-
|
352
|
+
LOG(ERROR) << "Handshaker factory creation failed with "
|
353
|
+
<< tsi_result_to_string(result);
|
356
354
|
return false;
|
357
355
|
}
|
358
356
|
set_server_handshaker_factory(new_handshaker_factory);
|
@@ -380,7 +378,7 @@ grpc_ssl_channel_security_connector_create(
|
|
380
378
|
const char* overridden_target_name,
|
381
379
|
tsi_ssl_client_handshaker_factory* client_factory) {
|
382
380
|
if (config == nullptr || target_name == nullptr) {
|
383
|
-
|
381
|
+
LOG(ERROR) << "An ssl channel needs a config and a target name.";
|
384
382
|
return nullptr;
|
385
383
|
}
|
386
384
|
|
@@ -26,6 +26,7 @@
|
|
26
26
|
#include <vector>
|
27
27
|
|
28
28
|
#include "absl/log/check.h"
|
29
|
+
#include "absl/log/log.h"
|
29
30
|
#include "absl/strings/match.h"
|
30
31
|
#include "absl/strings/str_cat.h"
|
31
32
|
#include "absl/strings/str_split.h"
|
@@ -35,7 +36,6 @@
|
|
35
36
|
#include <grpc/grpc_crl_provider.h>
|
36
37
|
#include <grpc/impl/channel_arg_names.h>
|
37
38
|
#include <grpc/support/alloc.h>
|
38
|
-
#include <grpc/support/log.h>
|
39
39
|
#include <grpc/support/port_platform.h>
|
40
40
|
#include <grpc/support/string_util.h>
|
41
41
|
#include <grpc/support/sync.h>
|
@@ -43,7 +43,6 @@
|
|
43
43
|
#include "src/core/ext/transport/chttp2/alpn/alpn.h"
|
44
44
|
#include "src/core/lib/channel/channel_args.h"
|
45
45
|
#include "src/core/lib/config/config_vars.h"
|
46
|
-
#include "src/core/lib/gpr/useful.h"
|
47
46
|
#include "src/core/lib/gprpp/host_port.h"
|
48
47
|
#include "src/core/lib/gprpp/load_file.h"
|
49
48
|
#include "src/core/lib/gprpp/ref_counted_ptr.h"
|
@@ -51,6 +50,7 @@
|
|
51
50
|
#include "src/core/lib/security/security_connector/load_system_roots.h"
|
52
51
|
#include "src/core/tsi/ssl_transport_security.h"
|
53
52
|
#include "src/core/tsi/transport_security.h"
|
53
|
+
#include "src/core/util/useful.h"
|
54
54
|
|
55
55
|
// -- Constants. --
|
56
56
|
|
@@ -123,7 +123,7 @@ tsi_tls_version grpc_get_tsi_tls_version(grpc_tls_version tls_version) {
|
|
123
123
|
case grpc_tls_version::TLS1_3:
|
124
124
|
return tsi_tls_version::TSI_TLS1_3;
|
125
125
|
default:
|
126
|
-
|
126
|
+
LOG(INFO) << "Falling back to TLS 1.2.";
|
127
127
|
return tsi_tls_version::TSI_TLS1_2;
|
128
128
|
}
|
129
129
|
}
|
@@ -180,7 +180,7 @@ absl::Status SslCheckCallHost(absl::string_view host,
|
|
180
180
|
status = GRPC_SECURITY_OK;
|
181
181
|
}
|
182
182
|
if (status != GRPC_SECURITY_OK) {
|
183
|
-
|
183
|
+
LOG(ERROR) << "call host does not match SSL server name";
|
184
184
|
grpc_shallow_peer_destruct(&peer);
|
185
185
|
return absl::UnauthenticatedError(
|
186
186
|
"call host does not match SSL server name");
|
@@ -232,16 +232,16 @@ static bool IsSpiffeId(absl::string_view uri) {
|
|
232
232
|
return false;
|
233
233
|
};
|
234
234
|
if (uri.size() > 2048) {
|
235
|
-
|
235
|
+
LOG(INFO) << "Invalid SPIFFE ID: ID longer than 2048 bytes.";
|
236
236
|
return false;
|
237
237
|
}
|
238
238
|
std::vector<absl::string_view> splits = absl::StrSplit(uri, '/');
|
239
239
|
if (splits.size() < 4 || splits[3].empty()) {
|
240
|
-
|
240
|
+
LOG(INFO) << "Invalid SPIFFE ID: workload id is empty.";
|
241
241
|
return false;
|
242
242
|
}
|
243
243
|
if (splits[2].size() > 255) {
|
244
|
-
|
244
|
+
LOG(INFO) << "Invalid SPIFFE ID: domain longer than 255 characters.";
|
245
245
|
return false;
|
246
246
|
}
|
247
247
|
return true;
|
@@ -332,7 +332,7 @@ grpc_core::RefCountedPtr<grpc_auth_context> grpc_ssl_peer_to_auth_context(
|
|
332
332
|
GRPC_PEER_SPIFFE_ID_PROPERTY_NAME,
|
333
333
|
spiffe_data, spiffe_length);
|
334
334
|
} else {
|
335
|
-
|
335
|
+
LOG(INFO) << "Invalid SPIFFE ID: multiple URI SANs.";
|
336
336
|
}
|
337
337
|
}
|
338
338
|
return ctx;
|
@@ -419,13 +419,12 @@ grpc_security_status grpc_ssl_tsi_client_handshaker_factory_init(
|
|
419
419
|
const char* root_certs;
|
420
420
|
const tsi_ssl_root_certs_store* root_store;
|
421
421
|
if (pem_root_certs == nullptr && !skip_server_certificate_verification) {
|
422
|
-
|
423
|
-
|
424
|
-
"locations instead");
|
422
|
+
LOG(INFO) << "No root certificates specified; use ones stored in system "
|
423
|
+
"default locations instead";
|
425
424
|
// Use default root certificates.
|
426
425
|
root_certs = grpc_core::DefaultSslRootStore::GetPemRootCerts();
|
427
426
|
if (root_certs == nullptr) {
|
428
|
-
|
427
|
+
LOG(ERROR) << "Could not get default pem root certs.";
|
429
428
|
return GRPC_SECURITY_ERROR;
|
430
429
|
}
|
431
430
|
root_store = grpc_core::DefaultSslRootStore::GetRootStore();
|
@@ -458,8 +457,8 @@ grpc_security_status grpc_ssl_tsi_client_handshaker_factory_init(
|
|
458
457
|
handshaker_factory);
|
459
458
|
gpr_free(options.alpn_protocols);
|
460
459
|
if (result != TSI_OK) {
|
461
|
-
|
462
|
-
|
460
|
+
LOG(ERROR) << "Handshaker factory creation failed with "
|
461
|
+
<< tsi_result_to_string(result);
|
463
462
|
return GRPC_SECURITY_ERROR;
|
464
463
|
}
|
465
464
|
return GRPC_SECURITY_OK;
|
@@ -497,8 +496,8 @@ grpc_security_status grpc_ssl_tsi_server_handshaker_factory_init(
|
|
497
496
|
handshaker_factory);
|
498
497
|
gpr_free(alpn_protocol_strings);
|
499
498
|
if (result != TSI_OK) {
|
500
|
-
|
501
|
-
|
499
|
+
LOG(ERROR) << "Handshaker factory creation failed with "
|
500
|
+
<< tsi_result_to_string(result);
|
502
501
|
return GRPC_SECURITY_ERROR;
|
503
502
|
}
|
504
503
|
return GRPC_SECURITY_OK;
|
@@ -575,9 +574,8 @@ grpc_slice DefaultSslRootStore::ComputePemRootCerts() {
|
|
575
574
|
auto slice =
|
576
575
|
LoadFile(default_root_certs_path, /*add_null_terminator=*/true);
|
577
576
|
if (!slice.ok()) {
|
578
|
-
|
579
|
-
|
580
|
-
slice.status().ToString().c_str());
|
577
|
+
LOG(ERROR) << "error loading file " << default_root_certs_path << ": "
|
578
|
+
<< slice.status();
|
581
579
|
} else {
|
582
580
|
result = std::move(*slice);
|
583
581
|
}
|
@@ -603,8 +601,8 @@ grpc_slice DefaultSslRootStore::ComputePemRootCerts() {
|
|
603
601
|
if (result.empty() && ovrd_res != GRPC_SSL_ROOTS_OVERRIDE_FAIL_PERMANENTLY) {
|
604
602
|
auto slice = LoadFile(installed_roots_path, /*add_null_terminator=*/true);
|
605
603
|
if (!slice.ok()) {
|
606
|
-
|
607
|
-
|
604
|
+
LOG(ERROR) << "error loading file " << installed_roots_path << ": "
|
605
|
+
<< slice.status();
|
608
606
|
} else {
|
609
607
|
result = std::move(*slice);
|
610
608
|
}
|
@@ -26,13 +26,13 @@
|
|
26
26
|
|
27
27
|
#include "absl/functional/bind_front.h"
|
28
28
|
#include "absl/log/check.h"
|
29
|
+
#include "absl/log/log.h"
|
29
30
|
#include "absl/strings/str_cat.h"
|
30
31
|
#include "absl/strings/string_view.h"
|
31
32
|
|
32
33
|
#include <grpc/grpc.h>
|
33
34
|
#include <grpc/grpc_security_constants.h>
|
34
35
|
#include <grpc/support/alloc.h>
|
35
|
-
#include <grpc/support/log.h>
|
36
36
|
#include <grpc/support/port_platform.h>
|
37
37
|
#include <grpc/support/string_util.h>
|
38
38
|
|
@@ -246,21 +246,18 @@ TlsChannelSecurityConnector::CreateTlsChannelSecurityConnector(
|
|
246
246
|
const char* target_name, const char* overridden_target_name,
|
247
247
|
tsi_ssl_session_cache* ssl_session_cache) {
|
248
248
|
if (channel_creds == nullptr) {
|
249
|
-
|
250
|
-
|
251
|
-
"TlsChannelSecurityConnectorCreate()");
|
249
|
+
LOG(ERROR) << "channel_creds is nullptr in "
|
250
|
+
"TlsChannelSecurityConnectorCreate()";
|
252
251
|
return nullptr;
|
253
252
|
}
|
254
253
|
if (options == nullptr) {
|
255
|
-
|
256
|
-
|
257
|
-
"TlsChannelSecurityConnectorCreate()");
|
254
|
+
LOG(ERROR) << "options is nullptr in "
|
255
|
+
"TlsChannelSecurityConnectorCreate()";
|
258
256
|
return nullptr;
|
259
257
|
}
|
260
258
|
if (target_name == nullptr) {
|
261
|
-
|
262
|
-
|
263
|
-
"TlsChannelSecurityConnectorCreate()");
|
259
|
+
LOG(ERROR) << "target_name is nullptr in "
|
260
|
+
"TlsChannelSecurityConnectorCreate()";
|
264
261
|
return nullptr;
|
265
262
|
}
|
266
263
|
return MakeRefCounted<TlsChannelSecurityConnector>(
|
@@ -354,8 +351,8 @@ void TlsChannelSecurityConnector::add_handshakers(
|
|
354
351
|
/*network_bio_buf_size=*/0,
|
355
352
|
/*ssl_bio_buf_size=*/0, &tsi_hs);
|
356
353
|
if (result != TSI_OK) {
|
357
|
-
|
358
|
-
|
354
|
+
LOG(ERROR) << "Handshaker creation failed with error "
|
355
|
+
<< tsi_result_to_string(result);
|
359
356
|
}
|
360
357
|
}
|
361
358
|
// If tsi_hs is null, this will add a failing handshaker.
|
@@ -400,9 +397,8 @@ void TlsChannelSecurityConnector::cancel_check_peer(
|
|
400
397
|
if (it != pending_verifier_requests_.end()) {
|
401
398
|
pending_verifier_request = it->second->request();
|
402
399
|
} else {
|
403
|
-
|
404
|
-
|
405
|
-
"corresponding pending request found");
|
400
|
+
LOG(INFO) << "TlsChannelSecurityConnector::cancel_check_peer: no "
|
401
|
+
"corresponding pending request found";
|
406
402
|
}
|
407
403
|
}
|
408
404
|
if (pending_verifier_request != nullptr) {
|
@@ -452,7 +448,7 @@ void TlsChannelSecurityConnector::TlsChannelCertificateWatcher::
|
|
452
448
|
if (root_ready && identity_ready) {
|
453
449
|
if (security_connector_->UpdateHandshakerFactoryLocked() !=
|
454
450
|
GRPC_SECURITY_OK) {
|
455
|
-
|
451
|
+
LOG(ERROR) << "Update handshaker factory failed.";
|
456
452
|
}
|
457
453
|
}
|
458
454
|
}
|
@@ -462,14 +458,12 @@ void TlsChannelSecurityConnector::TlsChannelCertificateWatcher::
|
|
462
458
|
void TlsChannelSecurityConnector::TlsChannelCertificateWatcher::OnError(
|
463
459
|
grpc_error_handle root_cert_error, grpc_error_handle identity_cert_error) {
|
464
460
|
if (!root_cert_error.ok()) {
|
465
|
-
|
466
|
-
|
467
|
-
StatusToString(root_cert_error).c_str());
|
461
|
+
LOG(ERROR) << "TlsChannelCertificateWatcher getting root_cert_error: "
|
462
|
+
<< StatusToString(root_cert_error);
|
468
463
|
}
|
469
464
|
if (!identity_cert_error.ok()) {
|
470
|
-
|
471
|
-
|
472
|
-
StatusToString(identity_cert_error).c_str());
|
465
|
+
LOG(ERROR) << "TlsChannelCertificateWatcher getting identity_cert_error: "
|
466
|
+
<< StatusToString(identity_cert_error);
|
473
467
|
}
|
474
468
|
}
|
475
469
|
|
@@ -565,15 +559,13 @@ TlsServerSecurityConnector::CreateTlsServerSecurityConnector(
|
|
565
559
|
RefCountedPtr<grpc_server_credentials> server_creds,
|
566
560
|
RefCountedPtr<grpc_tls_credentials_options> options) {
|
567
561
|
if (server_creds == nullptr) {
|
568
|
-
|
569
|
-
|
570
|
-
"TlsServerSecurityConnectorCreate()");
|
562
|
+
LOG(ERROR) << "server_creds is nullptr in "
|
563
|
+
"TlsServerSecurityConnectorCreate()";
|
571
564
|
return nullptr;
|
572
565
|
}
|
573
566
|
if (options == nullptr) {
|
574
|
-
|
575
|
-
|
576
|
-
"TlsServerSecurityConnectorCreate()");
|
567
|
+
LOG(ERROR) << "options is nullptr in "
|
568
|
+
"TlsServerSecurityConnectorCreate()";
|
577
569
|
return nullptr;
|
578
570
|
}
|
579
571
|
return MakeRefCounted<TlsServerSecurityConnector>(std::move(server_creds),
|
@@ -633,8 +625,8 @@ void TlsServerSecurityConnector::add_handshakers(
|
|
633
625
|
server_handshaker_factory_, /*network_bio_buf_size=*/0,
|
634
626
|
/*ssl_bio_buf_size=*/0, &tsi_hs);
|
635
627
|
if (result != TSI_OK) {
|
636
|
-
|
637
|
-
|
628
|
+
LOG(ERROR) << "Handshaker creation failed with error "
|
629
|
+
<< tsi_result_to_string(result);
|
638
630
|
}
|
639
631
|
}
|
640
632
|
// If tsi_hs is null, this will add a failing handshaker.
|
@@ -679,9 +671,8 @@ void TlsServerSecurityConnector::cancel_check_peer(
|
|
679
671
|
if (it != pending_verifier_requests_.end()) {
|
680
672
|
pending_verifier_request = it->second->request();
|
681
673
|
} else {
|
682
|
-
|
683
|
-
|
684
|
-
"corresponding pending request found");
|
674
|
+
LOG(INFO) << "TlsServerSecurityConnector::cancel_check_peer: no "
|
675
|
+
"corresponding pending request found";
|
685
676
|
}
|
686
677
|
}
|
687
678
|
if (pending_verifier_request != nullptr) {
|
@@ -721,7 +712,7 @@ void TlsServerSecurityConnector::TlsServerCertificateWatcher::
|
|
721
712
|
(!root_being_watched && identity_being_watched && identity_has_value)) {
|
722
713
|
if (security_connector_->UpdateHandshakerFactoryLocked() !=
|
723
714
|
GRPC_SECURITY_OK) {
|
724
|
-
|
715
|
+
LOG(ERROR) << "Update handshaker factory failed.";
|
725
716
|
}
|
726
717
|
}
|
727
718
|
}
|
@@ -731,14 +722,12 @@ void TlsServerSecurityConnector::TlsServerCertificateWatcher::
|
|
731
722
|
void TlsServerSecurityConnector::TlsServerCertificateWatcher::OnError(
|
732
723
|
grpc_error_handle root_cert_error, grpc_error_handle identity_cert_error) {
|
733
724
|
if (!root_cert_error.ok()) {
|
734
|
-
|
735
|
-
|
736
|
-
StatusToString(root_cert_error).c_str());
|
725
|
+
LOG(ERROR) << "TlsServerCertificateWatcher getting root_cert_error: "
|
726
|
+
<< StatusToString(root_cert_error);
|
737
727
|
}
|
738
728
|
if (!identity_cert_error.ok()) {
|
739
|
-
|
740
|
-
|
741
|
-
StatusToString(identity_cert_error).c_str());
|
729
|
+
LOG(ERROR) << "TlsServerCertificateWatcher getting identity_cert_error: "
|
730
|
+
<< StatusToString(identity_cert_error);
|
742
731
|
}
|
743
732
|
}
|
744
733
|
|
@@ -115,6 +115,7 @@ class ServerAuthFilter final : public ImplementChannelFilter<ServerAuthFilter> {
|
|
115
115
|
}
|
116
116
|
static const NoInterceptor OnServerInitialMetadata;
|
117
117
|
static const NoInterceptor OnClientToServerMessage;
|
118
|
+
static const NoInterceptor OnClientToServerHalfClose;
|
118
119
|
static const NoInterceptor OnServerToClientMessage;
|
119
120
|
static const NoInterceptor OnServerTrailingMetadata;
|
120
121
|
static const NoInterceptor OnFinalize;
|
@@ -36,7 +36,6 @@
|
|
36
36
|
#include "src/core/lib/channel/channel_args.h"
|
37
37
|
#include "src/core/lib/channel/channel_fwd.h"
|
38
38
|
#include "src/core/lib/channel/channel_stack.h"
|
39
|
-
#include "src/core/lib/channel/context.h"
|
40
39
|
#include "src/core/lib/channel/promise_based_filter.h"
|
41
40
|
#include "src/core/lib/channel/status_util.h"
|
42
41
|
#include "src/core/lib/gprpp/debug_location.h"
|
@@ -110,8 +109,7 @@ ClientAuthFilter::ClientAuthFilter(
|
|
110
109
|
|
111
110
|
ArenaPromise<absl::StatusOr<CallArgs>> ClientAuthFilter::GetCallCredsMetadata(
|
112
111
|
CallArgs call_args) {
|
113
|
-
auto* ctx =
|
114
|
-
GetContext<grpc_call_context_element>()[GRPC_CONTEXT_SECURITY].value);
|
112
|
+
auto* ctx = GetContext<grpc_client_security_context>();
|
115
113
|
grpc_call_credentials* channel_call_creds =
|
116
114
|
args_.security_connector->mutable_request_metadata_creds();
|
117
115
|
const bool call_creds_has_md = (ctx != nullptr) && (ctx->creds != nullptr);
|
@@ -178,17 +176,13 @@ ArenaPromise<absl::StatusOr<CallArgs>> ClientAuthFilter::GetCallCredsMetadata(
|
|
178
176
|
|
179
177
|
ArenaPromise<ServerMetadataHandle> ClientAuthFilter::MakeCallPromise(
|
180
178
|
CallArgs call_args, NextPromiseFactory next_promise_factory) {
|
181
|
-
auto*
|
182
|
-
if (
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
legacy_ctx[GRPC_CONTEXT_SECURITY].destroy =
|
187
|
-
grpc_client_security_context_destroy;
|
179
|
+
auto* sec_ctx = MaybeGetContext<grpc_client_security_context>();
|
180
|
+
if (sec_ctx == nullptr) {
|
181
|
+
sec_ctx = grpc_client_security_context_create(GetContext<Arena>(),
|
182
|
+
/*creds=*/nullptr);
|
183
|
+
SetContext<SecurityContext>(sec_ctx);
|
188
184
|
}
|
189
|
-
|
190
|
-
legacy_ctx[GRPC_CONTEXT_SECURITY].value)
|
191
|
-
->auth_context = args_.auth_context;
|
185
|
+
sec_ctx->auth_context = args_.auth_context;
|
192
186
|
|
193
187
|
auto* host =
|
194
188
|
call_args.client_initial_metadata->get_pointer(HttpAuthorityMetadata());
|
@@ -38,7 +38,6 @@
|
|
38
38
|
#include "src/core/lib/channel/channel_args.h"
|
39
39
|
#include "src/core/lib/channel/channel_fwd.h"
|
40
40
|
#include "src/core/lib/channel/channel_stack.h"
|
41
|
-
#include "src/core/lib/channel/context.h"
|
42
41
|
#include "src/core/lib/channel/promise_based_filter.h"
|
43
42
|
#include "src/core/lib/debug/trace.h"
|
44
43
|
#include "src/core/lib/gprpp/debug_location.h"
|
@@ -57,7 +56,6 @@
|
|
57
56
|
#include "src/core/lib/security/transport/auth_filters.h" // IWYU pragma: keep
|
58
57
|
#include "src/core/lib/slice/slice.h"
|
59
58
|
#include "src/core/lib/slice/slice_internal.h"
|
60
|
-
#include "src/core/lib/surface/call_trace.h"
|
61
59
|
#include "src/core/lib/transport/metadata_batch.h"
|
62
60
|
#include "src/core/lib/transport/transport.h"
|
63
61
|
|
@@ -68,6 +66,7 @@ const grpc_channel_filter ServerAuthFilter::kFilter =
|
|
68
66
|
"server-auth");
|
69
67
|
|
70
68
|
const NoInterceptor ServerAuthFilter::Call::OnClientToServerMessage;
|
69
|
+
const NoInterceptor ServerAuthFilter::Call::OnClientToServerHalfClose;
|
71
70
|
const NoInterceptor ServerAuthFilter::Call::OnServerToClientMessage;
|
72
71
|
const NoInterceptor ServerAuthFilter::Call::OnServerInitialMetadata;
|
73
72
|
const NoInterceptor ServerAuthFilter::Call::OnServerTrailingMetadata;
|
@@ -133,7 +132,7 @@ struct ServerAuthFilter::RunApplicationCode::State {
|
|
133
132
|
ServerAuthFilter::RunApplicationCode::RunApplicationCode(
|
134
133
|
ServerAuthFilter* filter, ClientMetadata& metadata)
|
135
134
|
: state_(GetContext<Arena>()->ManagedNew<State>(metadata)) {
|
136
|
-
if (
|
135
|
+
if (GRPC_TRACE_FLAG_ENABLED(call)) {
|
137
136
|
gpr_log(GPR_ERROR,
|
138
137
|
"%s[server-auth]: Delegate to application: filter=%p this=%p "
|
139
138
|
"auth_ctx=%p",
|
@@ -202,11 +201,7 @@ ServerAuthFilter::Call::Call(ServerAuthFilter* filter) {
|
|
202
201
|
grpc_server_security_context_create(GetContext<Arena>());
|
203
202
|
server_ctx->auth_context =
|
204
203
|
filter->auth_context_->Ref(DEBUG_LOCATION, "server_auth_filter");
|
205
|
-
|
206
|
-
GetContext<grpc_call_context_element>()[GRPC_CONTEXT_SECURITY];
|
207
|
-
if (context.value != nullptr) context.destroy(context.value);
|
208
|
-
context.value = server_ctx;
|
209
|
-
context.destroy = grpc_server_security_context_destroy;
|
204
|
+
SetContext<SecurityContext>(server_ctx);
|
210
205
|
}
|
211
206
|
|
212
207
|
ServerAuthFilter::ServerAuthFilter(
|