grpc 1.7.3 → 1.8.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of grpc might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Makefile +2106 -2116
- data/include/grpc/census.h +1 -432
- data/include/grpc/compression.h +9 -9
- data/include/grpc/grpc.h +115 -98
- data/include/grpc/grpc_cronet.h +3 -3
- data/include/grpc/grpc_posix.h +4 -4
- data/include/grpc/grpc_security.h +160 -88
- data/include/grpc/grpc_security_constants.h +7 -0
- data/include/grpc/impl/codegen/atm.h +9 -1
- data/include/grpc/impl/codegen/atm_gcc_atomic.h +13 -4
- data/include/grpc/impl/codegen/atm_gcc_sync.h +6 -5
- data/include/grpc/impl/codegen/atm_windows.h +23 -22
- data/include/grpc/impl/codegen/byte_buffer.h +14 -14
- data/include/grpc/impl/codegen/byte_buffer_reader.h +2 -2
- data/include/grpc/impl/codegen/connectivity_state.h +0 -2
- data/include/grpc/impl/codegen/grpc_types.h +32 -28
- data/include/grpc/impl/codegen/port_platform.h +48 -0
- data/include/grpc/impl/codegen/slice.h +10 -10
- data/include/grpc/impl/codegen/sync_generic.h +9 -3
- data/include/grpc/slice.h +16 -17
- data/include/grpc/slice_buffer.h +22 -22
- data/include/grpc/support/alloc.h +11 -11
- data/include/grpc/support/avl.h +28 -20
- data/include/grpc/support/cmdline.h +13 -13
- data/include/grpc/support/histogram.h +17 -17
- data/include/grpc/support/host_port.h +2 -2
- data/include/grpc/support/log.h +9 -9
- data/include/grpc/support/log_windows.h +1 -1
- data/include/grpc/support/string_util.h +2 -2
- data/include/grpc/support/subprocess.h +5 -5
- data/include/grpc/support/sync.h +43 -27
- data/include/grpc/support/thd.h +6 -6
- data/include/grpc/support/tls_gcc.h +1 -1
- data/include/grpc/support/tls_pthread.h +1 -1
- data/src/core/ext/census/{grpc_context.c → grpc_context.cc} +5 -8
- data/src/core/ext/filters/client_channel/backup_poller.cc +165 -0
- data/src/core/ext/{census/grpc_filter.h → filters/client_channel/backup_poller.h} +12 -7
- data/src/core/ext/filters/client_channel/{channel_connectivity.c → channel_connectivity.cc} +45 -42
- data/src/core/ext/filters/client_channel/{client_channel.c → client_channel.cc} +452 -417
- data/src/core/ext/filters/client_channel/client_channel.h +16 -8
- data/src/core/ext/filters/client_channel/{client_channel_factory.c → client_channel_factory.cc} +0 -0
- data/src/core/ext/filters/client_channel/client_channel_factory.h +29 -21
- data/src/core/ext/filters/client_channel/{client_channel_plugin.c → client_channel_plugin.cc} +15 -19
- data/src/core/ext/filters/client_channel/{connector.c → connector.cc} +0 -0
- data/src/core/ext/filters/client_channel/connector.h +29 -21
- data/src/core/ext/filters/client_channel/{http_connect_handshaker.c → http_connect_handshaker.cc} +10 -10
- data/src/core/ext/filters/client_channel/http_connect_handshaker.h +8 -0
- data/src/core/ext/filters/client_channel/{http_proxy.c → http_proxy.cc} +14 -14
- data/src/core/ext/filters/client_channel/http_proxy.h +8 -0
- data/src/core/ext/filters/client_channel/{lb_policy.c → lb_policy.cc} +47 -48
- data/src/core/ext/filters/client_channel/lb_policy.h +76 -70
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/{client_load_reporting_filter.c → client_load_reporting_filter.cc} +28 -29
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +9 -1
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb.c → grpclb.cc} +554 -563
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +9 -1
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +17 -9
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb_channel_secure.c → grpclb_channel_secure.cc} +17 -17
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb_client_stats.c → grpclb_client_stats.cc} +3 -3
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +9 -1
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/{load_balancer_api.c → load_balancer_api.cc} +64 -67
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +20 -21
- data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +599 -0
- data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +695 -0
- data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.cc +270 -0
- data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +153 -0
- data/src/core/ext/filters/client_channel/{lb_policy_factory.c → lb_policy_factory.cc} +10 -10
- data/src/core/ext/filters/client_channel/lb_policy_factory.h +48 -40
- data/src/core/ext/filters/client_channel/{lb_policy_registry.c → lb_policy_registry.cc} +9 -9
- data/src/core/ext/filters/client_channel/lb_policy_registry.h +11 -3
- data/src/core/ext/filters/client_channel/{parse_address.c → parse_address.cc} +24 -24
- data/src/core/ext/filters/client_channel/parse_address.h +14 -6
- data/src/core/ext/filters/client_channel/{proxy_mapper.c → proxy_mapper.cc} +0 -0
- data/src/core/ext/filters/client_channel/proxy_mapper.h +8 -0
- data/src/core/ext/filters/client_channel/{proxy_mapper_registry.c → proxy_mapper_registry.cc} +0 -0
- data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +8 -0
- data/src/core/ext/filters/client_channel/{resolver.c → resolver.cc} +21 -23
- data/src/core/ext/filters/client_channel/resolver.h +33 -27
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/{dns_resolver_ares.c → dns_resolver_ares.cc} +133 -133
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +18 -9
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/{grpc_ares_ev_driver_posix.c → grpc_ares_ev_driver_posix.cc} +58 -56
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/{grpc_ares_wrapper.c → grpc_ares_wrapper.cc} +118 -115
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +23 -15
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc +60 -0
- data/src/core/ext/filters/client_channel/resolver/dns/native/{dns_resolver.c → dns_resolver.cc} +100 -94
- data/src/core/ext/filters/client_channel/resolver/fake/{fake_resolver.c → fake_resolver.cc} +14 -14
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +9 -1
- data/src/core/ext/filters/client_channel/resolver/sockaddr/{sockaddr_resolver.c → sockaddr_resolver.cc} +60 -60
- data/src/core/ext/filters/client_channel/{resolver_factory.c → resolver_factory.cc} +2 -2
- data/src/core/ext/filters/client_channel/resolver_factory.h +27 -19
- data/src/core/ext/filters/client_channel/{resolver_registry.c → resolver_registry.cc} +35 -35
- data/src/core/ext/filters/client_channel/resolver_registry.h +18 -10
- data/src/core/ext/filters/client_channel/{retry_throttle.c → retry_throttle.cc} +10 -10
- data/src/core/ext/filters/client_channel/retry_throttle.h +8 -0
- data/src/core/ext/filters/client_channel/{subchannel.c → subchannel.cc} +210 -213
- data/src/core/ext/filters/client_channel/subchannel.h +68 -60
- data/src/core/ext/filters/client_channel/{subchannel_index.c → subchannel_index.cc} +52 -52
- data/src/core/ext/filters/client_channel/subchannel_index.h +22 -14
- data/src/core/ext/filters/client_channel/{uri_parser.c → uri_parser.cc} +29 -27
- data/src/core/ext/filters/client_channel/uri_parser.h +18 -10
- data/src/core/ext/filters/deadline/{deadline_filter.c → deadline_filter.cc} +12 -15
- data/src/core/ext/filters/deadline/deadline_filter.h +11 -2
- data/src/core/ext/filters/http/client/{http_client_filter.c → http_client_filter.cc} +83 -83
- data/src/core/ext/filters/http/client/http_client_filter.h +8 -0
- data/src/core/ext/filters/http/{http_filters_plugin.c → http_filters_plugin.cc} +20 -21
- data/src/core/ext/filters/http/message_compress/{message_compress_filter.c → message_compress_filter.cc} +84 -83
- data/src/core/ext/filters/http/message_compress/message_compress_filter.h +9 -1
- data/src/core/ext/filters/http/server/{http_server_filter.c → http_server_filter.cc} +80 -78
- data/src/core/ext/filters/http/server/http_server_filter.h +8 -0
- data/src/core/ext/filters/load_reporting/{server_load_reporting_filter.c → server_load_reporting_filter.cc} +29 -29
- data/src/core/ext/filters/load_reporting/server_load_reporting_filter.h +9 -1
- data/src/core/ext/filters/load_reporting/{server_load_reporting_plugin.c → server_load_reporting_plugin.cc} +11 -11
- data/src/core/ext/filters/load_reporting/server_load_reporting_plugin.h +13 -5
- data/src/core/ext/filters/max_age/{max_age_filter.c → max_age_filter.cc} +46 -56
- data/src/core/ext/filters/max_age/max_age_filter.h +8 -0
- data/src/core/ext/filters/message_size/{message_size_filter.c → message_size_filter.cc} +62 -40
- data/src/core/ext/filters/message_size/message_size_filter.h +8 -0
- data/src/core/ext/filters/workarounds/{workaround_cronet_compression_filter.c → workaround_cronet_compression_filter.cc} +11 -11
- data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h +8 -0
- data/src/core/ext/filters/workarounds/{workaround_utils.c → workaround_utils.cc} +7 -7
- data/src/core/ext/filters/workarounds/workaround_utils.h +9 -1
- data/src/core/ext/transport/chttp2/alpn/{alpn.c → alpn.cc} +3 -3
- data/src/core/ext/transport/chttp2/alpn/alpn.h +10 -2
- data/src/core/ext/transport/chttp2/client/{chttp2_connector.c → chttp2_connector.cc} +49 -45
- data/src/core/ext/transport/chttp2/client/chttp2_connector.h +8 -0
- data/src/core/ext/transport/chttp2/client/insecure/{channel_create.c → channel_create.cc} +28 -27
- data/src/core/ext/transport/chttp2/client/insecure/{channel_create_posix.c → channel_create_posix.cc} +14 -13
- data/src/core/ext/transport/chttp2/client/secure/{secure_channel_create.c → secure_channel_create.cc} +68 -66
- data/src/core/ext/transport/chttp2/server/{chttp2_server.c → chttp2_server.cc} +76 -77
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +11 -3
- data/src/core/ext/transport/chttp2/server/insecure/{server_chttp2.c → server_chttp2.cc} +3 -3
- data/src/core/ext/transport/chttp2/server/insecure/{server_chttp2_posix.c → server_chttp2_posix.cc} +13 -12
- data/src/core/ext/transport/chttp2/server/secure/{server_secure_chttp2.c → server_secure_chttp2.cc} +12 -10
- data/src/core/ext/transport/chttp2/transport/{bin_decoder.c → bin_decoder.cc} +7 -7
- data/src/core/ext/transport/chttp2/transport/bin_decoder.h +15 -7
- data/src/core/ext/transport/chttp2/transport/{bin_encoder.c → bin_encoder.cc} +11 -11
- data/src/core/ext/transport/chttp2/transport/bin_encoder.h +8 -0
- data/src/core/ext/transport/chttp2/transport/{chttp2_plugin.c → chttp2_plugin.cc} +2 -9
- data/src/core/ext/transport/chttp2/transport/{chttp2_transport.c → chttp2_transport.cc} +778 -778
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +14 -10
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +385 -0
- data/src/core/ext/transport/chttp2/transport/flow_control.h +337 -0
- data/src/core/ext/transport/chttp2/transport/frame.h +8 -0
- data/src/core/ext/transport/chttp2/transport/{frame_data.c → frame_data.cc} +34 -34
- data/src/core/ext/transport/chttp2/transport/frame_data.h +25 -17
- data/src/core/ext/transport/chttp2/transport/{frame_goaway.c → frame_goaway.cc} +18 -18
- data/src/core/ext/transport/chttp2/transport/frame_goaway.h +18 -10
- data/src/core/ext/transport/chttp2/transport/{frame_ping.c → frame_ping.cc} +18 -19
- data/src/core/ext/transport/chttp2/transport/frame_ping.h +12 -4
- data/src/core/ext/transport/chttp2/transport/{frame_rst_stream.c → frame_rst_stream.cc} +16 -16
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +16 -8
- data/src/core/ext/transport/chttp2/transport/{frame_settings.c → frame_settings.cc} +23 -24
- data/src/core/ext/transport/chttp2/transport/frame_settings.h +17 -9
- data/src/core/ext/transport/chttp2/transport/{frame_window_update.c → frame_window_update.cc} +22 -24
- data/src/core/ext/transport/chttp2/transport/frame_window_update.h +14 -6
- data/src/core/ext/transport/chttp2/transport/{hpack_encoder.c → hpack_encoder.cc} +206 -161
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +23 -13
- data/src/core/ext/transport/chttp2/transport/{hpack_parser.c → hpack_parser.cc} +340 -334
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +30 -22
- data/src/core/ext/transport/chttp2/transport/{hpack_table.c → hpack_table.cc} +25 -25
- data/src/core/ext/transport/chttp2/transport/hpack_table.h +19 -11
- data/src/core/ext/transport/chttp2/transport/{http2_settings.c → http2_settings.cc} +1 -1
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +10 -2
- data/src/core/ext/transport/chttp2/transport/{huffsyms.c → huffsyms.cc} +0 -0
- data/src/core/ext/transport/chttp2/transport/huffsyms.h +8 -0
- data/src/core/ext/transport/chttp2/transport/{incoming_metadata.c → incoming_metadata.cc} +14 -13
- data/src/core/ext/transport/chttp2/transport/incoming_metadata.h +18 -10
- data/src/core/ext/transport/chttp2/transport/internal.h +214 -340
- data/src/core/ext/transport/chttp2/transport/{parsing.c → parsing.cc} +152 -141
- data/src/core/ext/transport/chttp2/transport/{stream_lists.c → stream_lists.cc} +53 -53
- data/src/core/ext/transport/chttp2/transport/{stream_map.c → stream_map.cc} +35 -34
- data/src/core/ext/transport/chttp2/transport/stream_map.h +22 -14
- data/src/core/ext/transport/chttp2/transport/{varint.c → varint.cc} +0 -0
- data/src/core/ext/transport/chttp2/transport/varint.h +8 -0
- data/src/core/ext/transport/chttp2/transport/writing.cc +636 -0
- data/src/core/ext/transport/inproc/{inproc_plugin.c → inproc_plugin.cc} +5 -6
- data/src/core/ext/transport/inproc/{inproc_transport.c → inproc_transport.cc} +479 -544
- data/src/core/ext/transport/inproc/inproc_transport.h +4 -4
- data/src/core/lib/backoff/backoff.cc +80 -0
- data/src/core/lib/backoff/backoff.h +83 -0
- data/src/core/lib/channel/{channel_args.c → channel_args.cc} +92 -92
- data/src/core/lib/channel/channel_args.h +45 -37
- data/src/core/lib/channel/{channel_stack.c → channel_stack.cc} +67 -68
- data/src/core/lib/channel/channel_stack.h +76 -75
- data/src/core/lib/channel/{channel_stack_builder.c → channel_stack_builder.cc} +91 -91
- data/src/core/lib/channel/channel_stack_builder.h +45 -45
- data/src/core/lib/channel/{connected_channel.c → connected_channel.cc} +70 -70
- data/src/core/lib/channel/connected_channel.h +12 -4
- data/src/core/lib/channel/context.h +2 -2
- data/src/core/lib/channel/{handshaker.c → handshaker.cc} +7 -9
- data/src/core/lib/channel/handshaker.h +9 -1
- data/src/core/lib/channel/{handshaker_factory.c → handshaker_factory.cc} +7 -7
- data/src/core/lib/channel/handshaker_factory.h +18 -10
- data/src/core/lib/channel/{handshaker_registry.c → handshaker_registry.cc} +0 -0
- data/src/core/lib/channel/handshaker_registry.h +8 -0
- data/src/core/lib/compression/algorithm_metadata.h +8 -0
- data/src/core/lib/compression/{compression.c → compression.cc} +9 -9
- data/src/core/lib/compression/{message_compress.c → message_compress.cc} +0 -0
- data/src/core/lib/compression/message_compress.h +8 -0
- data/src/core/lib/compression/{stream_compression.c → stream_compression.cc} +12 -12
- data/src/core/lib/compression/stream_compression.h +27 -19
- data/src/core/lib/compression/{stream_compression_gzip.c → stream_compression_gzip.cc} +35 -36
- data/src/core/lib/compression/stream_compression_gzip.h +8 -0
- data/src/core/lib/compression/{stream_compression_identity.c → stream_compression_identity.cc} +19 -20
- data/src/core/lib/compression/stream_compression_identity.h +8 -0
- data/src/core/lib/debug/{stats.c → stats.cc} +19 -19
- data/src/core/lib/debug/stats.h +17 -9
- data/src/core/lib/debug/{stats_data.c → stats_data.cc} +45 -22
- data/src/core/lib/debug/stats_data.h +58 -19
- data/src/core/lib/debug/trace.cc +142 -0
- data/src/core/lib/debug/trace.h +74 -14
- data/src/core/lib/http/{format_request.c → format_request.cc} +10 -10
- data/src/core/lib/http/format_request.h +12 -4
- data/src/core/lib/http/{httpcli.c → httpcli.cc} +80 -80
- data/src/core/lib/http/httpcli.h +41 -33
- data/src/core/lib/http/{httpcli_security_connector.c → httpcli_security_connector.cc} +69 -55
- data/src/core/lib/http/{parser.c → parser.cc} +42 -42
- data/src/core/lib/http/parser.h +28 -20
- data/src/core/lib/{support → iomgr}/block_annotate.h +17 -8
- data/src/core/lib/iomgr/{call_combiner.c → call_combiner.cc} +29 -17
- data/src/core/lib/iomgr/call_combiner.h +9 -1
- data/src/core/lib/iomgr/closure.h +220 -62
- data/src/core/lib/iomgr/{combiner.c → combiner.cc} +63 -62
- data/src/core/lib/iomgr/combiner.h +16 -8
- data/src/core/lib/iomgr/{endpoint.c → endpoint.cc} +6 -0
- data/src/core/lib/iomgr/endpoint.h +47 -32
- data/src/core/lib/iomgr/endpoint_pair.h +12 -4
- data/src/core/lib/iomgr/{endpoint_pair_posix.c → endpoint_pair_posix.cc} +3 -3
- data/src/core/lib/iomgr/{endpoint_pair_uv.c → endpoint_pair_uv.cc} +2 -2
- data/src/core/lib/iomgr/{endpoint_pair_windows.c → endpoint_pair_windows.cc} +6 -6
- data/src/core/lib/iomgr/{error.c → error.cc} +125 -124
- data/src/core/lib/iomgr/error.h +32 -27
- data/src/core/lib/iomgr/error_internal.h +11 -2
- data/src/core/lib/iomgr/{ev_epoll1_linux.c → ev_epoll1_linux.cc} +214 -215
- data/src/core/lib/iomgr/ev_epoll1_linux.h +9 -1
- data/src/core/lib/iomgr/ev_epollex_linux.cc +1488 -0
- data/src/core/lib/iomgr/ev_epollex_linux.h +9 -1
- data/src/core/lib/iomgr/{ev_epollsig_linux.c → ev_epollsig_linux.cc} +304 -305
- data/src/core/lib/iomgr/ev_epollsig_linux.h +12 -4
- data/src/core/lib/iomgr/{ev_poll_posix.c → ev_poll_posix.cc} +272 -283
- data/src/core/lib/iomgr/ev_poll_posix.h +10 -2
- data/src/core/lib/iomgr/ev_posix.cc +288 -0
- data/src/core/lib/iomgr/ev_posix.h +75 -67
- data/src/core/lib/iomgr/{ev_windows.c → ev_windows.cc} +2 -2
- data/src/core/lib/iomgr/exec_ctx.cc +177 -0
- data/src/core/lib/iomgr/exec_ctx.h +35 -13
- data/src/core/lib/iomgr/{executor.c → executor.cc} +34 -35
- data/src/core/lib/iomgr/executor.h +12 -4
- data/src/core/lib/iomgr/{fork_posix.c → fork_posix.cc} +0 -0
- data/src/core/lib/iomgr/{fork_windows.c → fork_windows.cc} +0 -0
- data/src/core/lib/iomgr/gethostname.h +9 -1
- data/src/core/lib/iomgr/{gethostname_fallback.c → gethostname_fallback.cc} +2 -1
- data/src/core/lib/iomgr/{gethostname_host_name_max.c → gethostname_host_name_max.cc} +4 -3
- data/src/core/lib/iomgr/{gethostname_sysconf.c → gethostname_sysconf.cc} +3 -2
- data/src/core/lib/iomgr/{iocp_windows.c → iocp_windows.cc} +23 -25
- data/src/core/lib/iomgr/iocp_windows.h +17 -3
- data/src/core/lib/iomgr/{iomgr.c → iomgr.cc} +25 -19
- data/src/core/lib/iomgr/iomgr.h +11 -3
- data/src/core/lib/iomgr/iomgr_internal.h +13 -5
- data/src/core/lib/iomgr/{iomgr_posix.c → iomgr_posix.cc} +0 -1
- data/src/core/lib/iomgr/{iomgr_uv.c → iomgr_uv.cc} +1 -1
- data/src/core/lib/iomgr/iomgr_uv.h +8 -0
- data/src/core/lib/iomgr/{iomgr_windows.c → iomgr_windows.cc} +0 -0
- data/src/core/lib/iomgr/{is_epollexclusive_available.c → is_epollexclusive_available.cc} +1 -1
- data/src/core/lib/iomgr/is_epollexclusive_available.h +8 -0
- data/src/core/lib/iomgr/{load_file.c → load_file.cc} +12 -12
- data/src/core/lib/iomgr/load_file.h +2 -2
- data/src/core/lib/iomgr/{lockfree_event.c → lockfree_event.cc} +76 -68
- data/src/core/lib/iomgr/lockfree_event.h +30 -11
- data/src/core/lib/iomgr/{network_status_tracker.c → network_status_tracker.cc} +3 -2
- data/src/core/lib/iomgr/network_status_tracker.h +2 -2
- data/src/core/lib/iomgr/{polling_entity.c → polling_entity.cc} +18 -18
- data/src/core/lib/iomgr/polling_entity.h +21 -13
- data/src/core/lib/iomgr/pollset.h +17 -11
- data/src/core/lib/iomgr/pollset_set.h +23 -15
- data/src/core/lib/iomgr/{pollset_set_uv.c → pollset_set_uv.cc} +0 -0
- data/src/core/lib/iomgr/{pollset_set_windows.c → pollset_set_windows.cc} +0 -0
- data/src/core/lib/iomgr/{pollset_uv.c → pollset_uv.cc} +31 -29
- data/src/core/lib/iomgr/pollset_uv.h +8 -0
- data/src/core/lib/iomgr/{pollset_windows.c → pollset_windows.cc} +24 -24
- data/src/core/lib/iomgr/pollset_windows.h +17 -4
- data/src/core/lib/iomgr/port.h +10 -0
- data/src/core/lib/iomgr/resolve_address.h +18 -10
- data/src/core/lib/iomgr/{resolve_address_posix.c → resolve_address_posix.cc} +40 -40
- data/src/core/lib/iomgr/{resolve_address_uv.c → resolve_address_uv.cc} +61 -56
- data/src/core/lib/iomgr/{resolve_address_windows.c → resolve_address_windows.cc} +36 -34
- data/src/core/lib/iomgr/{resource_quota.c → resource_quota.cc} +209 -180
- data/src/core/lib/iomgr/resource_quota.h +45 -37
- data/src/core/lib/iomgr/{sockaddr_utils.c → sockaddr_utils.cc} +61 -61
- data/src/core/lib/iomgr/sockaddr_utils.h +23 -15
- data/src/core/lib/iomgr/sockaddr_windows.h +6 -0
- data/src/core/lib/iomgr/{socket_factory_posix.c → socket_factory_posix.cc} +20 -20
- data/src/core/lib/iomgr/socket_factory_posix.h +15 -15
- data/src/core/lib/iomgr/{socket_mutator.c → socket_mutator.cc} +18 -18
- data/src/core/lib/iomgr/socket_mutator.h +11 -11
- data/src/core/lib/iomgr/socket_utils.h +9 -1
- data/src/core/lib/iomgr/{socket_utils_common_posix.c → socket_utils_common_posix.cc} +28 -28
- data/src/core/lib/iomgr/{socket_utils_linux.c → socket_utils_linux.cc} +3 -3
- data/src/core/lib/iomgr/{socket_utils_posix.c → socket_utils_posix.cc} +3 -3
- data/src/core/lib/iomgr/socket_utils_posix.h +26 -18
- data/src/core/lib/iomgr/{socket_utils_uv.c → socket_utils_uv.cc} +1 -1
- data/src/core/lib/iomgr/{socket_utils_windows.c → socket_utils_windows.cc} +2 -2
- data/src/core/lib/iomgr/{socket_windows.c → socket_windows.cc} +18 -18
- data/src/core/lib/iomgr/socket_windows.h +26 -13
- data/src/core/lib/iomgr/tcp_client.h +14 -6
- data/src/core/lib/iomgr/{tcp_client_posix.c → tcp_client_posix.cc} +69 -70
- data/src/core/lib/iomgr/tcp_client_posix.h +11 -3
- data/src/core/lib/iomgr/{tcp_client_uv.c → tcp_client_uv.cc} +47 -48
- data/src/core/lib/iomgr/{tcp_client_windows.c → tcp_client_windows.cc} +46 -44
- data/src/core/lib/iomgr/{tcp_posix.c → tcp_posix.cc} +198 -175
- data/src/core/lib/iomgr/tcp_posix.h +15 -7
- data/src/core/lib/iomgr/tcp_server.h +31 -23
- data/src/core/lib/iomgr/{tcp_server_posix.c → tcp_server_posix.cc} +78 -77
- data/src/core/lib/iomgr/tcp_server_utils_posix.h +27 -19
- data/src/core/lib/iomgr/{tcp_server_utils_posix_common.c → tcp_server_utils_posix_common.cc} +27 -27
- data/src/core/lib/iomgr/{tcp_server_utils_posix_ifaddrs.c → tcp_server_utils_posix_ifaddrs.cc} +25 -25
- data/src/core/lib/iomgr/{tcp_server_utils_posix_noifaddrs.c → tcp_server_utils_posix_noifaddrs.cc} +2 -2
- data/src/core/lib/iomgr/{tcp_server_uv.c → tcp_server_uv.cc} +133 -105
- data/src/core/lib/iomgr/{tcp_server_windows.c → tcp_server_windows.cc} +81 -77
- data/src/core/lib/iomgr/tcp_uv.cc +420 -0
- data/src/core/lib/iomgr/tcp_uv.h +18 -4
- data/src/core/lib/iomgr/{tcp_windows.c → tcp_windows.cc} +90 -79
- data/src/core/lib/iomgr/tcp_windows.h +17 -4
- data/src/core/lib/iomgr/{time_averaged_stats.c → time_averaged_stats.cc} +0 -0
- data/src/core/lib/iomgr/time_averaged_stats.h +8 -0
- data/src/core/lib/iomgr/timer.h +16 -9
- data/src/core/lib/iomgr/{timer_generic.c → timer_generic.cc} +130 -171
- data/src/core/lib/iomgr/timer_generic.h +4 -4
- data/src/core/lib/iomgr/{timer_heap.c → timer_heap.cc} +20 -21
- data/src/core/lib/iomgr/timer_heap.h +16 -8
- data/src/core/lib/iomgr/{timer_manager.c → timer_manager.cc} +54 -52
- data/src/core/lib/iomgr/timer_manager.h +8 -0
- data/src/core/lib/iomgr/{timer_uv.c → timer_uv.cc} +22 -24
- data/src/core/lib/iomgr/timer_uv.h +2 -2
- data/src/core/lib/iomgr/{udp_server.c → udp_server.cc} +75 -75
- data/src/core/lib/iomgr/udp_server.h +25 -17
- data/src/core/lib/iomgr/{unix_sockets_posix.c → unix_sockets_posix.cc} +22 -21
- data/src/core/lib/iomgr/unix_sockets_posix.h +14 -6
- data/src/core/lib/iomgr/{unix_sockets_posix_noop.c → unix_sockets_posix_noop.cc} +5 -5
- data/src/core/lib/iomgr/{wakeup_fd_cv.c → wakeup_fd_cv.cc} +2 -2
- data/src/core/lib/iomgr/wakeup_fd_cv.h +10 -0
- data/src/core/lib/iomgr/{wakeup_fd_eventfd.c → wakeup_fd_eventfd.cc} +0 -0
- data/src/core/lib/iomgr/{wakeup_fd_nospecial.c → wakeup_fd_nospecial.cc} +0 -0
- data/src/core/lib/iomgr/{wakeup_fd_pipe.c → wakeup_fd_pipe.cc} +1 -0
- data/src/core/lib/iomgr/wakeup_fd_pipe.h +9 -1
- data/src/core/lib/iomgr/{wakeup_fd_posix.c → wakeup_fd_posix.cc} +6 -7
- data/src/core/lib/iomgr/wakeup_fd_posix.h +8 -0
- data/src/core/lib/json/{json.c → json.cc} +0 -0
- data/src/core/lib/json/json.h +8 -0
- data/src/core/lib/json/{json_reader.c → json_reader.cc} +18 -18
- data/src/core/lib/json/json_reader.h +26 -18
- data/src/core/lib/json/{json_string.c → json_string.cc} +57 -57
- data/src/core/lib/json/{json_writer.c → json_writer.cc} +20 -20
- data/src/core/lib/json/json_writer.h +23 -15
- data/src/core/lib/profiling/{basic_timers.c → basic_timers.cc} +34 -34
- data/src/core/lib/profiling/{stap_timers.c → stap_timers.cc} +5 -5
- data/src/core/lib/profiling/timers.h +6 -6
- data/src/core/lib/security/context/{security_context.c → security_context.cc} +98 -95
- data/src/core/lib/security/context/security_context.h +27 -29
- data/src/core/lib/security/credentials/composite/{composite_credentials.c → composite_credentials.cc} +79 -73
- data/src/core/lib/security/credentials/composite/composite_credentials.h +17 -9
- data/src/core/lib/security/credentials/{credentials.c → credentials.cc} +97 -92
- data/src/core/lib/security/credentials/credentials.h +83 -75
- data/src/core/lib/security/credentials/{credentials_metadata.c → credentials_metadata.cc} +7 -6
- data/src/core/lib/security/credentials/fake/{fake_credentials.c → fake_credentials.cc} +39 -36
- data/src/core/lib/security/credentials/fake/fake_credentials.h +13 -5
- data/src/core/lib/security/credentials/google_default/{credentials_generic.c → credentials_generic.cc} +5 -5
- data/src/core/lib/security/credentials/google_default/{google_default_credentials.c → google_default_credentials.cc} +55 -55
- data/src/core/lib/security/credentials/google_default/google_default_credentials.h +9 -1
- data/src/core/lib/security/credentials/iam/{iam_credentials.c → iam_credentials.cc} +19 -18
- data/src/core/lib/security/credentials/jwt/{json_token.c → json_token.cc} +80 -75
- data/src/core/lib/security/credentials/jwt/json_token.h +23 -15
- data/src/core/lib/security/credentials/jwt/{jwt_credentials.c → jwt_credentials.cc} +45 -41
- data/src/core/lib/security/credentials/jwt/jwt_credentials.h +11 -3
- data/src/core/lib/security/credentials/jwt/{jwt_verifier.c → jwt_verifier.cc} +262 -252
- data/src/core/lib/security/credentials/jwt/jwt_verifier.h +38 -30
- data/src/core/lib/security/credentials/oauth2/{oauth2_credentials.c → oauth2_credentials.cc} +138 -141
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +30 -22
- data/src/core/lib/security/credentials/plugin/{plugin_credentials.c → plugin_credentials.cc} +52 -53
- data/src/core/lib/security/credentials/plugin/plugin_credentials.h +7 -7
- data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +344 -0
- data/src/core/lib/security/credentials/ssl/ssl_credentials.h +27 -0
- data/src/core/lib/security/transport/auth_filters.h +16 -0
- data/src/core/lib/security/transport/{client_auth_filter.c → client_auth_filter.cc} +127 -115
- data/src/core/lib/security/transport/{lb_targets_info.c → lb_targets_info.cc} +16 -13
- data/src/core/lib/security/transport/lb_targets_info.h +11 -3
- data/src/core/lib/security/transport/{secure_endpoint.c → secure_endpoint.cc} +84 -76
- data/src/core/lib/security/transport/secure_endpoint.h +13 -5
- data/src/core/lib/security/transport/security_connector.cc +1121 -0
- data/src/core/lib/security/transport/security_connector.h +97 -79
- data/src/core/lib/security/transport/{security_handshaker.c → security_handshaker.cc} +139 -132
- data/src/core/lib/security/transport/security_handshaker.h +11 -3
- data/src/core/lib/security/transport/{server_auth_filter.c → server_auth_filter.cc} +68 -68
- data/src/core/lib/security/transport/{tsi_error.c → tsi_error.cc} +1 -1
- data/src/core/lib/security/transport/tsi_error.h +9 -1
- data/src/core/lib/security/util/{json_util.c → json_util.cc} +11 -11
- data/src/core/lib/security/util/json_util.h +12 -4
- data/src/core/lib/slice/{b64.c → b64.cc} +15 -15
- data/src/core/lib/slice/b64.h +12 -4
- data/src/core/lib/slice/{percent_encoding.c → percent_encoding.cc} +15 -15
- data/src/core/lib/slice/percent_encoding.h +11 -3
- data/src/core/lib/slice/{slice.c → slice.cc} +64 -64
- data/src/core/lib/slice/{slice_buffer.c → slice_buffer.cc} +38 -38
- data/src/core/lib/slice/{slice_hash_table.c → slice_hash_table.cc} +7 -7
- data/src/core/lib/slice/slice_hash_table.h +19 -11
- data/src/core/lib/slice/{slice_intern.c → slice_intern.cc} +35 -34
- data/src/core/lib/slice/slice_internal.h +17 -6
- data/src/core/lib/slice/{slice_string_helpers.c → slice_string_helpers.cc} +9 -9
- data/src/core/lib/slice/slice_string_helpers.h +3 -3
- data/src/core/lib/support/abstract.h +29 -0
- data/src/core/lib/support/{alloc.c → alloc.cc} +22 -22
- data/src/core/lib/support/{arena.c → arena.cc} +12 -12
- data/src/core/lib/support/arena.h +11 -3
- data/src/core/lib/support/{atm.c → atm.cc} +1 -1
- data/src/core/lib/support/{avl.c → avl.cc} +71 -70
- data/src/core/lib/support/{cmdline.c → cmdline.cc} +62 -62
- data/src/core/lib/support/{cpu_iphone.c → cpu_iphone.cc} +2 -0
- data/src/core/lib/support/{cpu_linux.c → cpu_linux.cc} +10 -0
- data/src/core/lib/support/{cpu_posix.c → cpu_posix.cc} +27 -4
- data/src/core/lib/support/{cpu_windows.c → cpu_windows.cc} +1 -0
- data/src/core/lib/support/env.h +3 -3
- data/src/core/lib/support/{env_linux.c → env_linux.cc} +11 -11
- data/src/core/lib/support/{env_posix.c → env_posix.cc} +4 -4
- data/src/core/lib/support/{env_windows.c → env_windows.cc} +5 -5
- data/src/core/lib/support/{fork.c → fork.cc} +2 -2
- data/src/core/lib/support/{histogram.c → histogram.cc} +25 -26
- data/src/core/lib/support/{host_port.c → host_port.cc} +16 -16
- data/src/core/lib/support/{log.c → log.cc} +8 -8
- data/src/core/lib/support/{log_android.c → log_android.cc} +7 -7
- data/src/core/lib/support/{log_linux.c → log_linux.cc} +8 -8
- data/src/core/lib/support/{log_posix.c → log_posix.cc} +9 -10
- data/src/core/lib/support/{log_windows.c → log_windows.cc} +7 -7
- data/src/core/lib/support/manual_constructor.h +211 -0
- data/src/core/lib/support/memory.h +41 -0
- data/src/core/lib/support/mpscq.cc +114 -0
- data/src/core/lib/support/mpscq.h +45 -7
- data/src/core/lib/support/{murmur_hash.c → murmur_hash.cc} +9 -12
- data/src/core/lib/support/murmur_hash.h +9 -1
- data/src/core/lib/support/spinlock.h +8 -1
- data/src/core/lib/support/{string.c → string.cc} +56 -55
- data/src/core/lib/support/string.h +21 -21
- data/src/core/lib/support/{string_posix.c → string_posix.cc} +5 -4
- data/src/core/lib/support/{string_util_windows.c → string_util_windows.cc} +9 -6
- data/src/core/lib/support/{string_windows.c → string_windows.cc} +3 -2
- data/src/core/lib/support/string_windows.h +8 -0
- data/src/core/lib/support/{subprocess_posix.c → subprocess_posix.cc} +13 -13
- data/src/core/lib/support/{subprocess_windows.c → subprocess_windows.cc} +9 -9
- data/src/core/lib/support/{sync.c → sync.cc} +22 -22
- data/src/core/lib/support/{sync_posix.c → sync_posix.cc} +6 -2
- data/src/core/lib/support/{sync_windows.c → sync_windows.cc} +14 -14
- data/src/core/lib/support/{thd.c → thd.cc} +0 -0
- data/src/core/lib/support/{thd_posix.c → thd_posix.cc} +10 -10
- data/src/core/lib/support/{thd_windows.c → thd_windows.cc} +10 -10
- data/src/core/lib/support/{time.c → time.cc} +0 -0
- data/src/core/lib/support/{time_posix.c → time_posix.cc} +5 -6
- data/src/core/lib/support/{time_precise.c → time_precise.cc} +6 -4
- data/src/core/lib/support/time_precise.h +9 -1
- data/src/core/lib/support/{time_windows.c → time_windows.cc} +2 -3
- data/src/core/lib/support/{tls_pthread.c → tls_pthread.cc} +2 -2
- data/src/core/lib/support/tmpfile.h +1 -1
- data/src/core/lib/support/{tmpfile_msys.c → tmpfile_msys.cc} +2 -2
- data/src/core/lib/support/{tmpfile_posix.c → tmpfile_posix.cc} +7 -7
- data/src/core/lib/support/{tmpfile_windows.c → tmpfile_windows.cc} +2 -2
- data/src/core/lib/support/{wrap_memcpy.c → wrap_memcpy.cc} +4 -2
- data/src/core/lib/surface/{alarm.c → alarm.cc} +32 -31
- data/src/core/lib/surface/alarm_internal.h +10 -2
- data/src/core/lib/surface/{api_trace.c → api_trace.cc} +1 -1
- data/src/core/lib/surface/api_trace.h +2 -2
- data/src/core/lib/surface/{byte_buffer.c → byte_buffer.cc} +13 -13
- data/src/core/lib/surface/{byte_buffer_reader.c → byte_buffer_reader.cc} +9 -9
- data/src/core/lib/surface/{call.c → call.cc} +379 -372
- data/src/core/lib/surface/call.h +37 -38
- data/src/core/lib/surface/{call_details.c → call_details.cc} +0 -0
- data/src/core/lib/surface/{call_log_batch.c → call_log_batch.cc} +13 -11
- data/src/core/lib/surface/call_test_only.h +5 -5
- data/src/core/lib/surface/{channel.c → channel.cc} +94 -95
- data/src/core/lib/surface/channel.h +29 -21
- data/src/core/lib/surface/{channel_init.c → channel_init.cc} +13 -13
- data/src/core/lib/surface/channel_init.h +6 -6
- data/src/core/lib/surface/{channel_ping.c → channel_ping.cc} +12 -12
- data/src/core/lib/surface/{channel_stack_type.c → channel_stack_type.cc} +1 -1
- data/src/core/lib/surface/channel_stack_type.h +9 -1
- data/src/core/lib/surface/{completion_queue.c → completion_queue.cc} +416 -379
- data/src/core/lib/surface/completion_queue.h +29 -29
- data/src/core/lib/surface/{completion_queue_factory.c → completion_queue_factory.cc} +1 -1
- data/src/core/lib/surface/completion_queue_factory.h +8 -0
- data/src/core/lib/surface/{event_string.c → event_string.cc} +9 -9
- data/src/core/lib/surface/event_string.h +9 -1
- data/src/core/lib/surface/{init.c → init.cc} +16 -39
- data/src/core/lib/surface/init.h +8 -0
- data/src/core/lib/surface/{init_secure.c → init_secure.cc} +12 -25
- data/src/core/lib/surface/lame_client.cc +38 -40
- data/src/core/lib/surface/lame_client.h +8 -0
- data/src/core/lib/surface/{metadata_array.c → metadata_array.cc} +0 -0
- data/src/core/lib/surface/{server.c → server.cc} +340 -404
- data/src/core/lib/surface/server.h +22 -14
- data/src/core/lib/surface/{validate_metadata.c → validate_metadata.cc} +10 -9
- data/src/core/lib/surface/validate_metadata.h +10 -2
- data/src/core/lib/surface/{version.c → version.cc} +2 -2
- data/src/core/lib/transport/bdp_estimator.cc +84 -0
- data/src/core/lib/transport/bdp_estimator.h +67 -42
- data/src/core/lib/transport/{byte_stream.c → byte_stream.cc} +51 -51
- data/src/core/lib/transport/byte_stream.h +41 -33
- data/src/core/lib/transport/{connectivity_state.c → connectivity_state.cc} +36 -40
- data/src/core/lib/transport/connectivity_state.h +29 -21
- data/src/core/lib/transport/{error_utils.c → error_utils.cc} +26 -22
- data/src/core/lib/transport/error_utils.h +18 -6
- data/src/core/lib/transport/{metadata.c → metadata.cc} +92 -88
- data/src/core/lib/transport/metadata.h +22 -20
- data/src/core/lib/transport/{metadata_batch.c → metadata_batch.cc} +78 -79
- data/src/core/lib/transport/metadata_batch.h +46 -45
- data/src/core/lib/transport/pid_controller.cc +48 -0
- data/src/core/lib/transport/pid_controller.h +84 -32
- data/src/core/lib/transport/{service_config.c → service_config.cc} +66 -48
- data/src/core/lib/transport/service_config.h +11 -2
- data/src/core/lib/transport/{static_metadata.c → static_metadata.cc} +2 -2
- data/src/core/lib/transport/static_metadata.h +30 -23
- data/src/core/lib/transport/{status_conversion.c → status_conversion.cc} +4 -3
- data/src/core/lib/transport/status_conversion.h +12 -2
- data/src/core/lib/transport/{timeout_encoding.c → timeout_encoding.cc} +28 -61
- data/src/core/lib/transport/timeout_encoding.h +11 -2
- data/src/core/lib/transport/{transport.c → transport.cc} +79 -79
- data/src/core/lib/transport/transport.h +78 -80
- data/src/core/lib/transport/transport_impl.h +27 -19
- data/src/core/lib/transport/{transport_op_string.c → transport_op_string.cc} +32 -30
- data/src/core/plugin_registry/{grpc_plugin_registry.c → grpc_plugin_registry.cc} +34 -38
- data/src/core/tsi/{fake_transport_security.c → fake_transport_security.cc} +141 -132
- data/src/core/tsi/fake_transport_security.h +5 -5
- data/src/core/tsi/{gts_transport_security.c → gts_transport_security.cc} +4 -4
- data/src/core/tsi/gts_transport_security.h +11 -3
- data/src/core/tsi/{ssl_transport_security.c → ssl_transport_security.cc} +309 -300
- data/src/core/tsi/ssl_transport_security.h +25 -25
- data/src/core/tsi/ssl_types.h +8 -0
- data/src/core/tsi/{transport_security.c → transport_security.cc} +94 -87
- data/src/core/tsi/transport_security.h +55 -55
- data/src/core/tsi/{transport_security_adapter.c → transport_security_adapter.cc} +58 -55
- data/src/core/tsi/transport_security_adapter.h +2 -2
- data/src/core/tsi/{transport_security_grpc.c → transport_security_grpc.cc} +21 -21
- data/src/core/tsi/transport_security_grpc.h +19 -19
- data/src/core/tsi/transport_security_interface.h +41 -41
- data/src/ruby/ext/grpc/extconf.rb +4 -2
- data/src/ruby/ext/grpc/rb_byte_buffer.c +5 -5
- data/src/ruby/ext/grpc/rb_byte_buffer.h +2 -2
- data/src/ruby/ext/grpc/rb_call.c +41 -42
- data/src/ruby/ext/grpc/rb_call.h +6 -6
- data/src/ruby/ext/grpc/rb_call_credentials.c +30 -30
- data/src/ruby/ext/grpc/rb_channel.c +87 -87
- data/src/ruby/ext/grpc/rb_channel_credentials.c +23 -23
- data/src/ruby/ext/grpc/rb_completion_queue.c +11 -11
- data/src/ruby/ext/grpc/rb_completion_queue.h +3 -3
- data/src/ruby/ext/grpc/rb_compression_options.c +20 -20
- data/src/ruby/ext/grpc/rb_event_thread.c +14 -14
- data/src/ruby/ext/grpc/rb_event_thread.h +1 -1
- data/src/ruby/ext/grpc/rb_grpc.c +8 -8
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +16 -58
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +242 -306
- data/src/ruby/ext/grpc/rb_server.c +23 -23
- data/src/ruby/ext/grpc/rb_server_credentials.c +13 -13
- data/src/ruby/lib/grpc/generic/rpc_server.rb +25 -12
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/grpc/health/checker.rb +14 -0
- data/src/ruby/spec/pb/health/checker_spec.rb +29 -0
- data/third_party/cares/config_freebsd/ares_config.h +502 -0
- data/third_party/cares/config_openbsd/ares_config.h +502 -0
- metadata +302 -328
- data/src/core/ext/census/aggregation.h +0 -51
- data/src/core/ext/census/base_resources.c +0 -56
- data/src/core/ext/census/base_resources.h +0 -24
- data/src/core/ext/census/census_interface.h +0 -61
- data/src/core/ext/census/census_rpc_stats.h +0 -86
- data/src/core/ext/census/context.c +0 -496
- data/src/core/ext/census/gen/census.pb.c +0 -161
- data/src/core/ext/census/gen/census.pb.h +0 -280
- data/src/core/ext/census/gen/trace_context.pb.c +0 -39
- data/src/core/ext/census/gen/trace_context.pb.h +0 -78
- data/src/core/ext/census/grpc_filter.c +0 -196
- data/src/core/ext/census/grpc_plugin.c +0 -70
- data/src/core/ext/census/initialize.c +0 -51
- data/src/core/ext/census/intrusive_hash_map.c +0 -305
- data/src/core/ext/census/intrusive_hash_map.h +0 -152
- data/src/core/ext/census/intrusive_hash_map_internal.h +0 -48
- data/src/core/ext/census/mlog.c +0 -586
- data/src/core/ext/census/mlog.h +0 -80
- data/src/core/ext/census/operation.c +0 -48
- data/src/core/ext/census/placeholders.c +0 -49
- data/src/core/ext/census/resource.c +0 -303
- data/src/core/ext/census/resource.h +0 -48
- data/src/core/ext/census/rpc_metric_id.h +0 -36
- data/src/core/ext/census/trace_context.c +0 -71
- data/src/core/ext/census/trace_context.h +0 -56
- data/src/core/ext/census/trace_label.h +0 -46
- data/src/core/ext/census/trace_propagation.h +0 -48
- data/src/core/ext/census/trace_status.h +0 -30
- data/src/core/ext/census/trace_string.h +0 -35
- data/src/core/ext/census/tracing.c +0 -55
- data/src/core/ext/census/tracing.h +0 -109
- data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.c +0 -714
- data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.c +0 -924
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.c +0 -60
- data/src/core/ext/transport/chttp2/transport/flow_control.c +0 -502
- data/src/core/ext/transport/chttp2/transport/writing.c +0 -534
- data/src/core/lib/debug/trace.c +0 -146
- data/src/core/lib/iomgr/closure.c +0 -219
- data/src/core/lib/iomgr/ev_epollex_linux.c +0 -1461
- data/src/core/lib/iomgr/ev_posix.c +0 -266
- data/src/core/lib/iomgr/exec_ctx.c +0 -113
- data/src/core/lib/iomgr/tcp_uv.c +0 -381
- data/src/core/lib/security/credentials/ssl/ssl_credentials.c +0 -194
- data/src/core/lib/security/transport/security_connector.c +0 -914
- data/src/core/lib/support/backoff.c +0 -72
- data/src/core/lib/support/backoff.h +0 -56
- data/src/core/lib/support/mpscq.c +0 -79
- data/src/core/lib/support/stack_lockfree.c +0 -137
- data/src/core/lib/support/stack_lockfree.h +0 -38
- data/src/core/lib/transport/bdp_estimator.c +0 -110
- data/src/core/lib/transport/pid_controller.c +0 -63
@@ -25,11 +25,11 @@
|
|
25
25
|
extern "C" {
|
26
26
|
#endif
|
27
27
|
|
28
|
-
grpc_channel
|
29
|
-
grpc_channel_args
|
30
|
-
void
|
28
|
+
grpc_channel* grpc_inproc_channel_create(grpc_server* server,
|
29
|
+
grpc_channel_args* args,
|
30
|
+
void* reserved);
|
31
31
|
|
32
|
-
extern
|
32
|
+
extern grpc_core::TraceFlag grpc_inproc_trace;
|
33
33
|
|
34
34
|
void grpc_inproc_transport_init(void);
|
35
35
|
void grpc_inproc_transport_shutdown(void);
|
@@ -0,0 +1,80 @@
|
|
1
|
+
/*
|
2
|
+
*
|
3
|
+
* Copyright 2016 gRPC authors.
|
4
|
+
*
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
* you may not use this file except in compliance with the License.
|
7
|
+
* You may obtain a copy of the License at
|
8
|
+
*
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
*
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
* See the License for the specific language governing permissions and
|
15
|
+
* limitations under the License.
|
16
|
+
*
|
17
|
+
*/
|
18
|
+
|
19
|
+
#include "src/core/lib/backoff/backoff.h"
|
20
|
+
|
21
|
+
#include <grpc/support/useful.h>
|
22
|
+
|
23
|
+
void grpc_backoff_init(grpc_backoff* backoff, grpc_millis initial_backoff,
|
24
|
+
double multiplier, double jitter,
|
25
|
+
grpc_millis min_connect_timeout,
|
26
|
+
grpc_millis max_backoff) {
|
27
|
+
backoff->initial_backoff = initial_backoff;
|
28
|
+
backoff->multiplier = multiplier;
|
29
|
+
backoff->jitter = jitter;
|
30
|
+
backoff->min_connect_timeout = min_connect_timeout;
|
31
|
+
backoff->max_backoff = max_backoff;
|
32
|
+
backoff->rng_state = (uint32_t)gpr_now(GPR_CLOCK_REALTIME).tv_nsec;
|
33
|
+
}
|
34
|
+
|
35
|
+
grpc_backoff_result grpc_backoff_begin(grpc_exec_ctx* exec_ctx,
|
36
|
+
grpc_backoff* backoff) {
|
37
|
+
backoff->current_backoff = backoff->initial_backoff;
|
38
|
+
const grpc_millis initial_timeout =
|
39
|
+
GPR_MAX(backoff->initial_backoff, backoff->min_connect_timeout);
|
40
|
+
const grpc_millis now = grpc_exec_ctx_now(exec_ctx);
|
41
|
+
const grpc_backoff_result result = {now + initial_timeout,
|
42
|
+
now + backoff->current_backoff};
|
43
|
+
return result;
|
44
|
+
}
|
45
|
+
|
46
|
+
/* Generate a random number between 0 and 1. */
|
47
|
+
static double generate_uniform_random_number(uint32_t* rng_state) {
|
48
|
+
*rng_state = (1103515245 * *rng_state + 12345) % ((uint32_t)1 << 31);
|
49
|
+
return *rng_state / (double)((uint32_t)1 << 31);
|
50
|
+
}
|
51
|
+
|
52
|
+
static double generate_uniform_random_number_between(uint32_t* rng_state,
|
53
|
+
double a, double b) {
|
54
|
+
if (a == b) return a;
|
55
|
+
if (a > b) GPR_SWAP(double, a, b); // make sure a < b
|
56
|
+
const double range = b - a;
|
57
|
+
return a + generate_uniform_random_number(rng_state) * range;
|
58
|
+
}
|
59
|
+
|
60
|
+
grpc_backoff_result grpc_backoff_step(grpc_exec_ctx* exec_ctx,
|
61
|
+
grpc_backoff* backoff) {
|
62
|
+
backoff->current_backoff = (grpc_millis)(GPR_MIN(
|
63
|
+
backoff->current_backoff * backoff->multiplier, backoff->max_backoff));
|
64
|
+
const double jitter = generate_uniform_random_number_between(
|
65
|
+
&backoff->rng_state, -backoff->jitter * backoff->current_backoff,
|
66
|
+
backoff->jitter * backoff->current_backoff);
|
67
|
+
const grpc_millis current_timeout =
|
68
|
+
GPR_MAX((grpc_millis)(backoff->current_backoff + jitter),
|
69
|
+
backoff->min_connect_timeout);
|
70
|
+
const grpc_millis next_timeout = GPR_MIN(
|
71
|
+
(grpc_millis)(backoff->current_backoff + jitter), backoff->max_backoff);
|
72
|
+
const grpc_millis now = grpc_exec_ctx_now(exec_ctx);
|
73
|
+
const grpc_backoff_result result = {now + current_timeout,
|
74
|
+
now + next_timeout};
|
75
|
+
return result;
|
76
|
+
}
|
77
|
+
|
78
|
+
void grpc_backoff_reset(grpc_backoff* backoff) {
|
79
|
+
backoff->current_backoff = backoff->initial_backoff;
|
80
|
+
}
|
@@ -0,0 +1,83 @@
|
|
1
|
+
/*
|
2
|
+
*
|
3
|
+
* Copyright 2016 gRPC authors.
|
4
|
+
*
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
* you may not use this file except in compliance with the License.
|
7
|
+
* You may obtain a copy of the License at
|
8
|
+
*
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
*
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
* See the License for the specific language governing permissions and
|
15
|
+
* limitations under the License.
|
16
|
+
*
|
17
|
+
*/
|
18
|
+
|
19
|
+
#ifndef GRPC_CORE_LIB_BACKOFF_BACKOFF_H
|
20
|
+
#define GRPC_CORE_LIB_BACKOFF_BACKOFF_H
|
21
|
+
|
22
|
+
#include "src/core/lib/iomgr/exec_ctx.h"
|
23
|
+
|
24
|
+
#ifdef __cplusplus
|
25
|
+
extern "C" {
|
26
|
+
#endif
|
27
|
+
|
28
|
+
typedef struct {
|
29
|
+
/// const: how long to wait after the first failure before retrying
|
30
|
+
grpc_millis initial_backoff;
|
31
|
+
|
32
|
+
/// const: factor with which to multiply backoff after a failed retry
|
33
|
+
double multiplier;
|
34
|
+
|
35
|
+
/// const: amount to randomize backoffs
|
36
|
+
double jitter;
|
37
|
+
|
38
|
+
/// const: minimum time between retries
|
39
|
+
grpc_millis min_connect_timeout;
|
40
|
+
|
41
|
+
/// const: maximum time between retries
|
42
|
+
grpc_millis max_backoff;
|
43
|
+
|
44
|
+
/// current delay before retries
|
45
|
+
grpc_millis current_backoff;
|
46
|
+
|
47
|
+
/// random number generator
|
48
|
+
uint32_t rng_state;
|
49
|
+
} grpc_backoff;
|
50
|
+
|
51
|
+
typedef struct {
|
52
|
+
/// Deadline to be used for the current attempt.
|
53
|
+
grpc_millis current_deadline;
|
54
|
+
|
55
|
+
/// Deadline to be used for the next attempt, following the backoff strategy.
|
56
|
+
grpc_millis next_attempt_start_time;
|
57
|
+
} grpc_backoff_result;
|
58
|
+
|
59
|
+
/// Initialize backoff machinery - does not need to be destroyed
|
60
|
+
void grpc_backoff_init(grpc_backoff* backoff, grpc_millis initial_backoff,
|
61
|
+
double multiplier, double jitter,
|
62
|
+
grpc_millis min_connect_timeout,
|
63
|
+
grpc_millis max_backoff);
|
64
|
+
|
65
|
+
/// Begin retry loop: returns the deadlines to be used for the current attempt
|
66
|
+
/// and the subsequent retry, if any.
|
67
|
+
grpc_backoff_result grpc_backoff_begin(grpc_exec_ctx* exec_ctx,
|
68
|
+
grpc_backoff* backoff);
|
69
|
+
|
70
|
+
/// Step a retry loop: returns the deadlines to be used for the current attempt
|
71
|
+
/// and the subsequent retry, if any.
|
72
|
+
grpc_backoff_result grpc_backoff_step(grpc_exec_ctx* exec_ctx,
|
73
|
+
grpc_backoff* backoff);
|
74
|
+
|
75
|
+
/// Reset the backoff, so the next grpc_backoff_step will be a
|
76
|
+
/// grpc_backoff_begin.
|
77
|
+
void grpc_backoff_reset(grpc_backoff* backoff);
|
78
|
+
|
79
|
+
#ifdef __cplusplus
|
80
|
+
}
|
81
|
+
#endif
|
82
|
+
|
83
|
+
#endif /* GRPC_CORE_LIB_BACKOFF_BACKOFF_H */
|
@@ -31,7 +31,7 @@
|
|
31
31
|
#include "src/core/lib/channel/channel_args.h"
|
32
32
|
#include "src/core/lib/support/string.h"
|
33
33
|
|
34
|
-
static grpc_arg copy_arg(const grpc_arg
|
34
|
+
static grpc_arg copy_arg(const grpc_arg* src) {
|
35
35
|
grpc_arg dst;
|
36
36
|
dst.type = src->type;
|
37
37
|
dst.key = gpr_strdup(src->key);
|
@@ -51,21 +51,21 @@ static grpc_arg copy_arg(const grpc_arg *src) {
|
|
51
51
|
return dst;
|
52
52
|
}
|
53
53
|
|
54
|
-
grpc_channel_args
|
55
|
-
const grpc_arg
|
54
|
+
grpc_channel_args* grpc_channel_args_copy_and_add(const grpc_channel_args* src,
|
55
|
+
const grpc_arg* to_add,
|
56
56
|
size_t num_to_add) {
|
57
|
-
return grpc_channel_args_copy_and_add_and_remove(src,
|
57
|
+
return grpc_channel_args_copy_and_add_and_remove(src, nullptr, 0, to_add,
|
58
58
|
num_to_add);
|
59
59
|
}
|
60
60
|
|
61
|
-
grpc_channel_args
|
62
|
-
const grpc_channel_args
|
61
|
+
grpc_channel_args* grpc_channel_args_copy_and_remove(
|
62
|
+
const grpc_channel_args* src, const char** to_remove,
|
63
63
|
size_t num_to_remove) {
|
64
64
|
return grpc_channel_args_copy_and_add_and_remove(src, to_remove,
|
65
|
-
num_to_remove,
|
65
|
+
num_to_remove, nullptr, 0);
|
66
66
|
}
|
67
67
|
|
68
|
-
static bool should_remove_arg(const grpc_arg
|
68
|
+
static bool should_remove_arg(const grpc_arg* arg, const char** to_remove,
|
69
69
|
size_t num_to_remove) {
|
70
70
|
for (size_t i = 0; i < num_to_remove; ++i) {
|
71
71
|
if (strcmp(arg->key, to_remove[i]) == 0) return true;
|
@@ -73,12 +73,12 @@ static bool should_remove_arg(const grpc_arg *arg, const char **to_remove,
|
|
73
73
|
return false;
|
74
74
|
}
|
75
75
|
|
76
|
-
grpc_channel_args
|
77
|
-
const grpc_channel_args
|
78
|
-
const grpc_arg
|
76
|
+
grpc_channel_args* grpc_channel_args_copy_and_add_and_remove(
|
77
|
+
const grpc_channel_args* src, const char** to_remove, size_t num_to_remove,
|
78
|
+
const grpc_arg* to_add, size_t num_to_add) {
|
79
79
|
// Figure out how many args we'll be copying.
|
80
80
|
size_t num_args_to_copy = 0;
|
81
|
-
if (src !=
|
81
|
+
if (src != nullptr) {
|
82
82
|
for (size_t i = 0; i < src->num_args; ++i) {
|
83
83
|
if (!should_remove_arg(&src->args[i], to_remove, num_to_remove)) {
|
84
84
|
++num_args_to_copy;
|
@@ -86,17 +86,17 @@ grpc_channel_args *grpc_channel_args_copy_and_add_and_remove(
|
|
86
86
|
}
|
87
87
|
}
|
88
88
|
// Create result.
|
89
|
-
grpc_channel_args
|
90
|
-
(grpc_channel_args
|
89
|
+
grpc_channel_args* dst =
|
90
|
+
(grpc_channel_args*)gpr_malloc(sizeof(grpc_channel_args));
|
91
91
|
dst->num_args = num_args_to_copy + num_to_add;
|
92
92
|
if (dst->num_args == 0) {
|
93
|
-
dst->args =
|
93
|
+
dst->args = nullptr;
|
94
94
|
return dst;
|
95
95
|
}
|
96
|
-
dst->args = (grpc_arg
|
96
|
+
dst->args = (grpc_arg*)gpr_malloc(sizeof(grpc_arg) * dst->num_args);
|
97
97
|
// Copy args from src that are not being removed.
|
98
98
|
size_t dst_idx = 0;
|
99
|
-
if (src !=
|
99
|
+
if (src != nullptr) {
|
100
100
|
for (size_t i = 0; i < src->num_args; ++i) {
|
101
101
|
if (!should_remove_arg(&src->args[i], to_remove, num_to_remove)) {
|
102
102
|
dst->args[dst_idx++] = copy_arg(&src->args[i]);
|
@@ -111,30 +111,30 @@ grpc_channel_args *grpc_channel_args_copy_and_add_and_remove(
|
|
111
111
|
return dst;
|
112
112
|
}
|
113
113
|
|
114
|
-
grpc_channel_args
|
115
|
-
return grpc_channel_args_copy_and_add(src,
|
114
|
+
grpc_channel_args* grpc_channel_args_copy(const grpc_channel_args* src) {
|
115
|
+
return grpc_channel_args_copy_and_add(src, nullptr, 0);
|
116
116
|
}
|
117
117
|
|
118
|
-
grpc_channel_args
|
119
|
-
const grpc_channel_args
|
118
|
+
grpc_channel_args* grpc_channel_args_union(const grpc_channel_args* a,
|
119
|
+
const grpc_channel_args* b) {
|
120
120
|
const size_t max_out = (a->num_args + b->num_args);
|
121
|
-
grpc_arg
|
121
|
+
grpc_arg* uniques = (grpc_arg*)gpr_malloc(sizeof(*uniques) * max_out);
|
122
122
|
for (size_t i = 0; i < a->num_args; ++i) uniques[i] = a->args[i];
|
123
123
|
|
124
124
|
size_t uniques_idx = a->num_args;
|
125
125
|
for (size_t i = 0; i < b->num_args; ++i) {
|
126
|
-
const char
|
127
|
-
if (grpc_channel_args_find(a, b_key) ==
|
126
|
+
const char* b_key = b->args[i].key;
|
127
|
+
if (grpc_channel_args_find(a, b_key) == nullptr) { // not found
|
128
128
|
uniques[uniques_idx++] = b->args[i];
|
129
129
|
}
|
130
130
|
}
|
131
|
-
grpc_channel_args
|
132
|
-
grpc_channel_args_copy_and_add(
|
131
|
+
grpc_channel_args* result =
|
132
|
+
grpc_channel_args_copy_and_add(nullptr, uniques, uniques_idx);
|
133
133
|
gpr_free(uniques);
|
134
134
|
return result;
|
135
135
|
}
|
136
136
|
|
137
|
-
static int cmp_arg(const grpc_arg
|
137
|
+
static int cmp_arg(const grpc_arg* a, const grpc_arg* b) {
|
138
138
|
int c = GPR_ICMP(a->type, b->type);
|
139
139
|
if (c != 0) return c;
|
140
140
|
c = strcmp(a->key, b->key);
|
@@ -160,26 +160,26 @@ static int cmp_arg(const grpc_arg *a, const grpc_arg *b) {
|
|
160
160
|
|
161
161
|
/* stabilizing comparison function: since channel_args ordering matters for
|
162
162
|
* keys with the same name, we need to preserve that ordering */
|
163
|
-
static int cmp_key_stable(const void
|
164
|
-
const grpc_arg *
|
165
|
-
const grpc_arg *
|
163
|
+
static int cmp_key_stable(const void* ap, const void* bp) {
|
164
|
+
const grpc_arg* const* a = (const grpc_arg* const*)ap;
|
165
|
+
const grpc_arg* const* b = (const grpc_arg* const*)bp;
|
166
166
|
int c = strcmp((*a)->key, (*b)->key);
|
167
167
|
if (c == 0) c = GPR_ICMP(*a, *b);
|
168
168
|
return c;
|
169
169
|
}
|
170
170
|
|
171
|
-
grpc_channel_args
|
172
|
-
grpc_arg
|
171
|
+
grpc_channel_args* grpc_channel_args_normalize(const grpc_channel_args* a) {
|
172
|
+
grpc_arg** args = (grpc_arg**)gpr_malloc(sizeof(grpc_arg*) * a->num_args);
|
173
173
|
for (size_t i = 0; i < a->num_args; i++) {
|
174
174
|
args[i] = &a->args[i];
|
175
175
|
}
|
176
176
|
if (a->num_args > 1)
|
177
|
-
qsort(args, a->num_args, sizeof(grpc_arg
|
177
|
+
qsort(args, a->num_args, sizeof(grpc_arg*), cmp_key_stable);
|
178
178
|
|
179
|
-
grpc_channel_args
|
180
|
-
(grpc_channel_args
|
179
|
+
grpc_channel_args* b =
|
180
|
+
(grpc_channel_args*)gpr_malloc(sizeof(grpc_channel_args));
|
181
181
|
b->num_args = a->num_args;
|
182
|
-
b->args = (grpc_arg
|
182
|
+
b->args = (grpc_arg*)gpr_malloc(sizeof(grpc_arg) * b->num_args);
|
183
183
|
for (size_t i = 0; i < a->num_args; i++) {
|
184
184
|
b->args[i] = copy_arg(args[i]);
|
185
185
|
}
|
@@ -188,7 +188,7 @@ grpc_channel_args *grpc_channel_args_normalize(const grpc_channel_args *a) {
|
|
188
188
|
return b;
|
189
189
|
}
|
190
190
|
|
191
|
-
void grpc_channel_args_destroy(grpc_exec_ctx
|
191
|
+
void grpc_channel_args_destroy(grpc_exec_ctx* exec_ctx, grpc_channel_args* a) {
|
192
192
|
size_t i;
|
193
193
|
if (!a) return;
|
194
194
|
for (i = 0; i < a->num_args; i++) {
|
@@ -210,9 +210,9 @@ void grpc_channel_args_destroy(grpc_exec_ctx *exec_ctx, grpc_channel_args *a) {
|
|
210
210
|
}
|
211
211
|
|
212
212
|
grpc_compression_algorithm grpc_channel_args_get_compression_algorithm(
|
213
|
-
const grpc_channel_args
|
213
|
+
const grpc_channel_args* a) {
|
214
214
|
size_t i;
|
215
|
-
if (a ==
|
215
|
+
if (a == nullptr) return GRPC_COMPRESS_NONE;
|
216
216
|
for (i = 0; i < a->num_args; ++i) {
|
217
217
|
if (a->args[i].type == GRPC_ARG_INTEGER &&
|
218
218
|
!strcmp(GRPC_COMPRESSION_CHANNEL_DEFAULT_ALGORITHM, a->args[i].key)) {
|
@@ -224,9 +224,9 @@ grpc_compression_algorithm grpc_channel_args_get_compression_algorithm(
|
|
224
224
|
}
|
225
225
|
|
226
226
|
grpc_stream_compression_algorithm
|
227
|
-
grpc_channel_args_get_stream_compression_algorithm(const grpc_channel_args
|
227
|
+
grpc_channel_args_get_stream_compression_algorithm(const grpc_channel_args* a) {
|
228
228
|
size_t i;
|
229
|
-
if (a ==
|
229
|
+
if (a == nullptr) return GRPC_STREAM_COMPRESS_NONE;
|
230
230
|
for (i = 0; i < a->num_args; ++i) {
|
231
231
|
if (a->args[i].type == GRPC_ARG_INTEGER &&
|
232
232
|
!strcmp(GRPC_STREAM_COMPRESSION_CHANNEL_DEFAULT_ALGORITHM,
|
@@ -238,22 +238,22 @@ grpc_channel_args_get_stream_compression_algorithm(const grpc_channel_args *a) {
|
|
238
238
|
return GRPC_STREAM_COMPRESS_NONE;
|
239
239
|
}
|
240
240
|
|
241
|
-
grpc_channel_args
|
242
|
-
grpc_channel_args
|
241
|
+
grpc_channel_args* grpc_channel_args_set_compression_algorithm(
|
242
|
+
grpc_channel_args* a, grpc_compression_algorithm algorithm) {
|
243
243
|
GPR_ASSERT(algorithm < GRPC_COMPRESS_ALGORITHMS_COUNT);
|
244
244
|
grpc_arg tmp;
|
245
245
|
tmp.type = GRPC_ARG_INTEGER;
|
246
|
-
tmp.key = (char
|
246
|
+
tmp.key = (char*)GRPC_COMPRESSION_CHANNEL_DEFAULT_ALGORITHM;
|
247
247
|
tmp.value.integer = algorithm;
|
248
248
|
return grpc_channel_args_copy_and_add(a, &tmp, 1);
|
249
249
|
}
|
250
250
|
|
251
|
-
grpc_channel_args
|
252
|
-
grpc_channel_args
|
251
|
+
grpc_channel_args* grpc_channel_args_set_stream_compression_algorithm(
|
252
|
+
grpc_channel_args* a, grpc_stream_compression_algorithm algorithm) {
|
253
253
|
GPR_ASSERT(algorithm < GRPC_STREAM_COMPRESS_ALGORITHMS_COUNT);
|
254
254
|
grpc_arg tmp;
|
255
255
|
tmp.type = GRPC_ARG_INTEGER;
|
256
|
-
tmp.key = (char
|
256
|
+
tmp.key = (char*)GRPC_STREAM_COMPRESSION_CHANNEL_DEFAULT_ALGORITHM;
|
257
257
|
tmp.value.integer = algorithm;
|
258
258
|
return grpc_channel_args_copy_and_add(a, &tmp, 1);
|
259
259
|
}
|
@@ -261,9 +261,9 @@ grpc_channel_args *grpc_channel_args_set_stream_compression_algorithm(
|
|
261
261
|
/** Returns 1 if the argument for compression algorithm's enabled states bitset
|
262
262
|
* was found in \a a, returning the arg's value in \a states. Otherwise, returns
|
263
263
|
* 0. */
|
264
|
-
static int find_compression_algorithm_states_bitset(const grpc_channel_args
|
265
|
-
int
|
266
|
-
if (a !=
|
264
|
+
static int find_compression_algorithm_states_bitset(const grpc_channel_args* a,
|
265
|
+
int** states_arg) {
|
266
|
+
if (a != nullptr) {
|
267
267
|
size_t i;
|
268
268
|
for (i = 0; i < a->num_args; ++i) {
|
269
269
|
if (a->args[i].type == GRPC_ARG_INTEGER &&
|
@@ -282,8 +282,8 @@ static int find_compression_algorithm_states_bitset(const grpc_channel_args *a,
|
|
282
282
|
* was found in \a a, returning the arg's value in \a states. Otherwise, returns
|
283
283
|
* 0. */
|
284
284
|
static int find_stream_compression_algorithm_states_bitset(
|
285
|
-
const grpc_channel_args
|
286
|
-
if (a !=
|
285
|
+
const grpc_channel_args* a, int** states_arg) {
|
286
|
+
if (a != nullptr) {
|
287
287
|
size_t i;
|
288
288
|
for (i = 0; i < a->num_args; ++i) {
|
289
289
|
if (a->args[i].type == GRPC_ARG_INTEGER &&
|
@@ -298,17 +298,17 @@ static int find_stream_compression_algorithm_states_bitset(
|
|
298
298
|
return 0; /* GPR_FALSE */
|
299
299
|
}
|
300
300
|
|
301
|
-
grpc_channel_args
|
302
|
-
grpc_exec_ctx
|
301
|
+
grpc_channel_args* grpc_channel_args_compression_algorithm_set_state(
|
302
|
+
grpc_exec_ctx* exec_ctx, grpc_channel_args** a,
|
303
303
|
grpc_compression_algorithm algorithm, int state) {
|
304
|
-
int
|
305
|
-
grpc_channel_args
|
304
|
+
int* states_arg = nullptr;
|
305
|
+
grpc_channel_args* result = *a;
|
306
306
|
const int states_arg_found =
|
307
307
|
find_compression_algorithm_states_bitset(*a, &states_arg);
|
308
308
|
|
309
309
|
if (grpc_channel_args_get_compression_algorithm(*a) == algorithm &&
|
310
310
|
state == 0) {
|
311
|
-
const char
|
311
|
+
const char* algo_name = nullptr;
|
312
312
|
GPR_ASSERT(grpc_compression_algorithm_name(algorithm, &algo_name) != 0);
|
313
313
|
gpr_log(GPR_ERROR,
|
314
314
|
"Tried to disable default compression algorithm '%s'. The "
|
@@ -316,21 +316,21 @@ grpc_channel_args *grpc_channel_args_compression_algorithm_set_state(
|
|
316
316
|
algo_name);
|
317
317
|
} else if (states_arg_found) {
|
318
318
|
if (state != 0) {
|
319
|
-
GPR_BITSET((unsigned
|
319
|
+
GPR_BITSET((unsigned*)states_arg, algorithm);
|
320
320
|
} else if (algorithm != GRPC_COMPRESS_NONE) {
|
321
|
-
GPR_BITCLEAR((unsigned
|
321
|
+
GPR_BITCLEAR((unsigned*)states_arg, algorithm);
|
322
322
|
}
|
323
323
|
} else {
|
324
324
|
/* create a new arg */
|
325
325
|
grpc_arg tmp;
|
326
326
|
tmp.type = GRPC_ARG_INTEGER;
|
327
|
-
tmp.key = (char
|
327
|
+
tmp.key = (char*)GRPC_COMPRESSION_CHANNEL_ENABLED_ALGORITHMS_BITSET;
|
328
328
|
/* all enabled by default */
|
329
329
|
tmp.value.integer = (1u << GRPC_COMPRESS_ALGORITHMS_COUNT) - 1;
|
330
330
|
if (state != 0) {
|
331
|
-
GPR_BITSET((unsigned
|
331
|
+
GPR_BITSET((unsigned*)&tmp.value.integer, algorithm);
|
332
332
|
} else if (algorithm != GRPC_COMPRESS_NONE) {
|
333
|
-
GPR_BITCLEAR((unsigned
|
333
|
+
GPR_BITCLEAR((unsigned*)&tmp.value.integer, algorithm);
|
334
334
|
}
|
335
335
|
result = grpc_channel_args_copy_and_add(*a, &tmp, 1);
|
336
336
|
grpc_channel_args_destroy(exec_ctx, *a);
|
@@ -339,17 +339,17 @@ grpc_channel_args *grpc_channel_args_compression_algorithm_set_state(
|
|
339
339
|
return result;
|
340
340
|
}
|
341
341
|
|
342
|
-
grpc_channel_args
|
343
|
-
grpc_exec_ctx
|
342
|
+
grpc_channel_args* grpc_channel_args_stream_compression_algorithm_set_state(
|
343
|
+
grpc_exec_ctx* exec_ctx, grpc_channel_args** a,
|
344
344
|
grpc_stream_compression_algorithm algorithm, int state) {
|
345
|
-
int
|
346
|
-
grpc_channel_args
|
345
|
+
int* states_arg = nullptr;
|
346
|
+
grpc_channel_args* result = *a;
|
347
347
|
const int states_arg_found =
|
348
348
|
find_stream_compression_algorithm_states_bitset(*a, &states_arg);
|
349
349
|
|
350
350
|
if (grpc_channel_args_get_stream_compression_algorithm(*a) == algorithm &&
|
351
351
|
state == 0) {
|
352
|
-
const char
|
352
|
+
const char* algo_name = nullptr;
|
353
353
|
GPR_ASSERT(grpc_stream_compression_algorithm_name(algorithm, &algo_name) !=
|
354
354
|
0);
|
355
355
|
gpr_log(GPR_ERROR,
|
@@ -358,21 +358,21 @@ grpc_channel_args *grpc_channel_args_stream_compression_algorithm_set_state(
|
|
358
358
|
algo_name);
|
359
359
|
} else if (states_arg_found) {
|
360
360
|
if (state != 0) {
|
361
|
-
GPR_BITSET((unsigned
|
361
|
+
GPR_BITSET((unsigned*)states_arg, algorithm);
|
362
362
|
} else if (algorithm != GRPC_STREAM_COMPRESS_NONE) {
|
363
|
-
GPR_BITCLEAR((unsigned
|
363
|
+
GPR_BITCLEAR((unsigned*)states_arg, algorithm);
|
364
364
|
}
|
365
365
|
} else {
|
366
366
|
/* create a new arg */
|
367
367
|
grpc_arg tmp;
|
368
368
|
tmp.type = GRPC_ARG_INTEGER;
|
369
|
-
tmp.key = (char
|
369
|
+
tmp.key = (char*)GRPC_STREAM_COMPRESSION_CHANNEL_ENABLED_ALGORITHMS_BITSET;
|
370
370
|
/* all enabled by default */
|
371
371
|
tmp.value.integer = (1u << GRPC_STREAM_COMPRESS_ALGORITHMS_COUNT) - 1;
|
372
372
|
if (state != 0) {
|
373
|
-
GPR_BITSET((unsigned
|
373
|
+
GPR_BITSET((unsigned*)&tmp.value.integer, algorithm);
|
374
374
|
} else if (algorithm != GRPC_STREAM_COMPRESS_NONE) {
|
375
|
-
GPR_BITCLEAR((unsigned
|
375
|
+
GPR_BITCLEAR((unsigned*)&tmp.value.integer, algorithm);
|
376
376
|
}
|
377
377
|
result = grpc_channel_args_copy_and_add(*a, &tmp, 1);
|
378
378
|
grpc_channel_args_destroy(exec_ctx, *a);
|
@@ -382,8 +382,8 @@ grpc_channel_args *grpc_channel_args_stream_compression_algorithm_set_state(
|
|
382
382
|
}
|
383
383
|
|
384
384
|
uint32_t grpc_channel_args_compression_algorithm_get_states(
|
385
|
-
const grpc_channel_args
|
386
|
-
int
|
385
|
+
const grpc_channel_args* a) {
|
386
|
+
int* states_arg;
|
387
387
|
if (find_compression_algorithm_states_bitset(a, &states_arg)) {
|
388
388
|
return (uint32_t)*states_arg;
|
389
389
|
} else {
|
@@ -392,8 +392,8 @@ uint32_t grpc_channel_args_compression_algorithm_get_states(
|
|
392
392
|
}
|
393
393
|
|
394
394
|
uint32_t grpc_channel_args_stream_compression_algorithm_get_states(
|
395
|
-
const grpc_channel_args
|
396
|
-
int
|
395
|
+
const grpc_channel_args* a) {
|
396
|
+
int* states_arg;
|
397
397
|
if (find_stream_compression_algorithm_states_bitset(a, &states_arg)) {
|
398
398
|
return (uint32_t)*states_arg;
|
399
399
|
} else {
|
@@ -402,14 +402,14 @@ uint32_t grpc_channel_args_stream_compression_algorithm_get_states(
|
|
402
402
|
}
|
403
403
|
}
|
404
404
|
|
405
|
-
grpc_channel_args
|
406
|
-
grpc_channel_args
|
405
|
+
grpc_channel_args* grpc_channel_args_set_socket_mutator(
|
406
|
+
grpc_channel_args* a, grpc_socket_mutator* mutator) {
|
407
407
|
grpc_arg tmp = grpc_socket_mutator_to_arg(mutator);
|
408
408
|
return grpc_channel_args_copy_and_add(a, &tmp, 1);
|
409
409
|
}
|
410
410
|
|
411
|
-
int grpc_channel_args_compare(const grpc_channel_args
|
412
|
-
const grpc_channel_args
|
411
|
+
int grpc_channel_args_compare(const grpc_channel_args* a,
|
412
|
+
const grpc_channel_args* b) {
|
413
413
|
int c = GPR_ICMP(a->num_args, b->num_args);
|
414
414
|
if (c != 0) return c;
|
415
415
|
for (size_t i = 0; i < a->num_args; i++) {
|
@@ -419,21 +419,21 @@ int grpc_channel_args_compare(const grpc_channel_args *a,
|
|
419
419
|
return 0;
|
420
420
|
}
|
421
421
|
|
422
|
-
const grpc_arg
|
423
|
-
const char
|
424
|
-
if (args !=
|
422
|
+
const grpc_arg* grpc_channel_args_find(const grpc_channel_args* args,
|
423
|
+
const char* name) {
|
424
|
+
if (args != nullptr) {
|
425
425
|
for (size_t i = 0; i < args->num_args; ++i) {
|
426
426
|
if (strcmp(args->args[i].key, name) == 0) {
|
427
427
|
return &args->args[i];
|
428
428
|
}
|
429
429
|
}
|
430
430
|
}
|
431
|
-
return
|
431
|
+
return nullptr;
|
432
432
|
}
|
433
433
|
|
434
|
-
int grpc_channel_arg_get_integer(const grpc_arg
|
434
|
+
int grpc_channel_arg_get_integer(const grpc_arg* arg,
|
435
435
|
const grpc_integer_options options) {
|
436
|
-
if (arg ==
|
436
|
+
if (arg == nullptr) return options.default_value;
|
437
437
|
if (arg->type != GRPC_ARG_INTEGER) {
|
438
438
|
gpr_log(GPR_ERROR, "%s ignored: it must be an integer", arg->key);
|
439
439
|
return options.default_value;
|
@@ -451,8 +451,8 @@ int grpc_channel_arg_get_integer(const grpc_arg *arg,
|
|
451
451
|
return arg->value.integer;
|
452
452
|
}
|
453
453
|
|
454
|
-
bool grpc_channel_arg_get_bool(const grpc_arg
|
455
|
-
if (arg ==
|
454
|
+
bool grpc_channel_arg_get_bool(const grpc_arg* arg, bool default_value) {
|
455
|
+
if (arg == nullptr) return default_value;
|
456
456
|
if (arg->type != GRPC_ARG_INTEGER) {
|
457
457
|
gpr_log(GPR_ERROR, "%s ignored: it must be an integer", arg->key);
|
458
458
|
return default_value;
|
@@ -469,12 +469,12 @@ bool grpc_channel_arg_get_bool(const grpc_arg *arg, bool default_value) {
|
|
469
469
|
}
|
470
470
|
}
|
471
471
|
|
472
|
-
bool grpc_channel_args_want_minimal_stack(const grpc_channel_args
|
472
|
+
bool grpc_channel_args_want_minimal_stack(const grpc_channel_args* args) {
|
473
473
|
return grpc_channel_arg_get_bool(
|
474
474
|
grpc_channel_args_find(args, GRPC_ARG_MINIMAL_STACK), false);
|
475
475
|
}
|
476
476
|
|
477
|
-
grpc_arg grpc_channel_arg_string_create(char
|
477
|
+
grpc_arg grpc_channel_arg_string_create(char* name, char* value) {
|
478
478
|
grpc_arg arg;
|
479
479
|
arg.type = GRPC_ARG_STRING;
|
480
480
|
arg.key = name;
|
@@ -482,7 +482,7 @@ grpc_arg grpc_channel_arg_string_create(char *name, char *value) {
|
|
482
482
|
return arg;
|
483
483
|
}
|
484
484
|
|
485
|
-
grpc_arg grpc_channel_arg_integer_create(char
|
485
|
+
grpc_arg grpc_channel_arg_integer_create(char* name, int value) {
|
486
486
|
grpc_arg arg;
|
487
487
|
arg.type = GRPC_ARG_INTEGER;
|
488
488
|
arg.key = name;
|
@@ -491,7 +491,7 @@ grpc_arg grpc_channel_arg_integer_create(char *name, int value) {
|
|
491
491
|
}
|
492
492
|
|
493
493
|
grpc_arg grpc_channel_arg_pointer_create(
|
494
|
-
char
|
494
|
+
char* name, void* value, const grpc_arg_pointer_vtable* vtable) {
|
495
495
|
grpc_arg arg;
|
496
496
|
arg.type = GRPC_ARG_POINTER;
|
497
497
|
arg.key = name;
|