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
@@ -19,10 +19,16 @@
|
|
19
19
|
#ifndef GRPC_CORE_LIB_IOMGR_SOCKADDR_WINDOWS_H
|
20
20
|
#define GRPC_CORE_LIB_IOMGR_SOCKADDR_WINDOWS_H
|
21
21
|
|
22
|
+
#include "src/core/lib/iomgr/port.h"
|
23
|
+
|
24
|
+
#ifdef GRPC_WINSOCK_SOCKET
|
25
|
+
|
22
26
|
#include <winsock2.h>
|
23
27
|
#include <ws2tcpip.h>
|
24
28
|
|
25
29
|
// must be included after the above
|
26
30
|
#include <mswsock.h>
|
27
31
|
|
32
|
+
#endif
|
33
|
+
|
28
34
|
#endif /* GRPC_CORE_LIB_IOMGR_SOCKADDR_WINDOWS_H */
|
@@ -27,28 +27,28 @@
|
|
27
27
|
#include <grpc/support/sync.h>
|
28
28
|
#include <grpc/support/useful.h>
|
29
29
|
|
30
|
-
void grpc_socket_factory_init(grpc_socket_factory
|
31
|
-
const grpc_socket_factory_vtable
|
30
|
+
void grpc_socket_factory_init(grpc_socket_factory* factory,
|
31
|
+
const grpc_socket_factory_vtable* vtable) {
|
32
32
|
factory->vtable = vtable;
|
33
33
|
gpr_ref_init(&factory->refcount, 1);
|
34
34
|
}
|
35
35
|
|
36
|
-
int grpc_socket_factory_socket(grpc_socket_factory
|
36
|
+
int grpc_socket_factory_socket(grpc_socket_factory* factory, int domain,
|
37
37
|
int type, int protocol) {
|
38
38
|
return factory->vtable->socket(factory, domain, type, protocol);
|
39
39
|
}
|
40
40
|
|
41
|
-
int grpc_socket_factory_bind(grpc_socket_factory
|
42
|
-
const grpc_resolved_address
|
41
|
+
int grpc_socket_factory_bind(grpc_socket_factory* factory, int sockfd,
|
42
|
+
const grpc_resolved_address* addr) {
|
43
43
|
return factory->vtable->bind(factory, sockfd, addr);
|
44
44
|
}
|
45
45
|
|
46
|
-
int grpc_socket_factory_compare(grpc_socket_factory
|
47
|
-
grpc_socket_factory
|
46
|
+
int grpc_socket_factory_compare(grpc_socket_factory* a,
|
47
|
+
grpc_socket_factory* b) {
|
48
48
|
int c = GPR_ICMP(a, b);
|
49
49
|
if (c != 0) {
|
50
|
-
grpc_socket_factory
|
51
|
-
grpc_socket_factory
|
50
|
+
grpc_socket_factory* sma = a;
|
51
|
+
grpc_socket_factory* smb = b;
|
52
52
|
c = GPR_ICMP(sma->vtable, smb->vtable);
|
53
53
|
if (c == 0) {
|
54
54
|
c = sma->vtable->compare(sma, smb);
|
@@ -57,35 +57,35 @@ int grpc_socket_factory_compare(grpc_socket_factory *a,
|
|
57
57
|
return c;
|
58
58
|
}
|
59
59
|
|
60
|
-
grpc_socket_factory
|
60
|
+
grpc_socket_factory* grpc_socket_factory_ref(grpc_socket_factory* factory) {
|
61
61
|
gpr_ref(&factory->refcount);
|
62
62
|
return factory;
|
63
63
|
}
|
64
64
|
|
65
|
-
void grpc_socket_factory_unref(grpc_socket_factory
|
65
|
+
void grpc_socket_factory_unref(grpc_socket_factory* factory) {
|
66
66
|
if (gpr_unref(&factory->refcount)) {
|
67
67
|
factory->vtable->destroy(factory);
|
68
68
|
}
|
69
69
|
}
|
70
70
|
|
71
|
-
static void
|
72
|
-
return grpc_socket_factory_ref((grpc_socket_factory
|
71
|
+
static void* socket_factory_arg_copy(void* p) {
|
72
|
+
return grpc_socket_factory_ref((grpc_socket_factory*)p);
|
73
73
|
}
|
74
74
|
|
75
|
-
static void socket_factory_arg_destroy(grpc_exec_ctx
|
76
|
-
grpc_socket_factory_unref((grpc_socket_factory
|
75
|
+
static void socket_factory_arg_destroy(grpc_exec_ctx* exec_ctx, void* p) {
|
76
|
+
grpc_socket_factory_unref((grpc_socket_factory*)p);
|
77
77
|
}
|
78
78
|
|
79
|
-
static int socket_factory_cmp(void
|
80
|
-
return grpc_socket_factory_compare((grpc_socket_factory
|
81
|
-
(grpc_socket_factory
|
79
|
+
static int socket_factory_cmp(void* a, void* b) {
|
80
|
+
return grpc_socket_factory_compare((grpc_socket_factory*)a,
|
81
|
+
(grpc_socket_factory*)b);
|
82
82
|
}
|
83
83
|
|
84
84
|
static const grpc_arg_pointer_vtable socket_factory_arg_vtable = {
|
85
85
|
socket_factory_arg_copy, socket_factory_arg_destroy, socket_factory_cmp};
|
86
86
|
|
87
|
-
grpc_arg grpc_socket_factory_to_arg(grpc_socket_factory
|
88
|
-
return grpc_channel_arg_pointer_create((char
|
87
|
+
grpc_arg grpc_socket_factory_to_arg(grpc_socket_factory* factory) {
|
88
|
+
return grpc_channel_arg_pointer_create((char*)GRPC_ARG_SOCKET_FACTORY,
|
89
89
|
factory, &socket_factory_arg_vtable);
|
90
90
|
}
|
91
91
|
|
@@ -30,43 +30,43 @@ extern "C" {
|
|
30
30
|
/** The virtual table of grpc_socket_factory */
|
31
31
|
typedef struct {
|
32
32
|
/** Replacement for socket(2) */
|
33
|
-
int (*socket)(grpc_socket_factory
|
33
|
+
int (*socket)(grpc_socket_factory* factory, int domain, int type,
|
34
34
|
int protocol);
|
35
35
|
/** Replacement for bind(2) */
|
36
|
-
int (*bind)(grpc_socket_factory
|
37
|
-
const grpc_resolved_address
|
36
|
+
int (*bind)(grpc_socket_factory* factory, int sockfd,
|
37
|
+
const grpc_resolved_address* addr);
|
38
38
|
/** Compare socket factory \a a and \a b */
|
39
|
-
int (*compare)(grpc_socket_factory
|
39
|
+
int (*compare)(grpc_socket_factory* a, grpc_socket_factory* b);
|
40
40
|
/** Destroys the socket factory instance */
|
41
|
-
void (*destroy)(grpc_socket_factory
|
41
|
+
void (*destroy)(grpc_socket_factory* factory);
|
42
42
|
} grpc_socket_factory_vtable;
|
43
43
|
|
44
44
|
/** The Socket Factory interface allows changes on socket options */
|
45
45
|
struct grpc_socket_factory {
|
46
|
-
const grpc_socket_factory_vtable
|
46
|
+
const grpc_socket_factory_vtable* vtable;
|
47
47
|
gpr_refcount refcount;
|
48
48
|
};
|
49
49
|
|
50
50
|
/** called by concrete implementations to initialize the base struct */
|
51
|
-
void grpc_socket_factory_init(grpc_socket_factory
|
52
|
-
const grpc_socket_factory_vtable
|
51
|
+
void grpc_socket_factory_init(grpc_socket_factory* factory,
|
52
|
+
const grpc_socket_factory_vtable* vtable);
|
53
53
|
|
54
54
|
/** Wrap \a factory as a grpc_arg */
|
55
|
-
grpc_arg grpc_socket_factory_to_arg(grpc_socket_factory
|
55
|
+
grpc_arg grpc_socket_factory_to_arg(grpc_socket_factory* factory);
|
56
56
|
|
57
57
|
/** Perform the equivalent of a socket(2) operation using \a factory */
|
58
|
-
int grpc_socket_factory_socket(grpc_socket_factory
|
58
|
+
int grpc_socket_factory_socket(grpc_socket_factory* factory, int domain,
|
59
59
|
int type, int protocol);
|
60
60
|
|
61
61
|
/** Perform the equivalent of a bind(2) operation using \a factory */
|
62
|
-
int grpc_socket_factory_bind(grpc_socket_factory
|
63
|
-
const grpc_resolved_address
|
62
|
+
int grpc_socket_factory_bind(grpc_socket_factory* factory, int sockfd,
|
63
|
+
const grpc_resolved_address* addr);
|
64
64
|
|
65
65
|
/** Compare if \a a and \a b are the same factory or have same settings */
|
66
|
-
int grpc_socket_factory_compare(grpc_socket_factory
|
66
|
+
int grpc_socket_factory_compare(grpc_socket_factory* a, grpc_socket_factory* b);
|
67
67
|
|
68
|
-
grpc_socket_factory
|
69
|
-
void grpc_socket_factory_unref(grpc_socket_factory
|
68
|
+
grpc_socket_factory* grpc_socket_factory_ref(grpc_socket_factory* factory);
|
69
|
+
void grpc_socket_factory_unref(grpc_socket_factory* factory);
|
70
70
|
|
71
71
|
#ifdef __cplusplus
|
72
72
|
}
|
@@ -24,27 +24,27 @@
|
|
24
24
|
#include <grpc/support/sync.h>
|
25
25
|
#include <grpc/support/useful.h>
|
26
26
|
|
27
|
-
void grpc_socket_mutator_init(grpc_socket_mutator
|
28
|
-
const grpc_socket_mutator_vtable
|
27
|
+
void grpc_socket_mutator_init(grpc_socket_mutator* mutator,
|
28
|
+
const grpc_socket_mutator_vtable* vtable) {
|
29
29
|
mutator->vtable = vtable;
|
30
30
|
gpr_ref_init(&mutator->refcount, 1);
|
31
31
|
}
|
32
32
|
|
33
|
-
grpc_socket_mutator
|
33
|
+
grpc_socket_mutator* grpc_socket_mutator_ref(grpc_socket_mutator* mutator) {
|
34
34
|
gpr_ref(&mutator->refcount);
|
35
35
|
return mutator;
|
36
36
|
}
|
37
37
|
|
38
|
-
bool grpc_socket_mutator_mutate_fd(grpc_socket_mutator
|
38
|
+
bool grpc_socket_mutator_mutate_fd(grpc_socket_mutator* mutator, int fd) {
|
39
39
|
return mutator->vtable->mutate_fd(fd, mutator);
|
40
40
|
}
|
41
41
|
|
42
|
-
int grpc_socket_mutator_compare(grpc_socket_mutator
|
43
|
-
grpc_socket_mutator
|
42
|
+
int grpc_socket_mutator_compare(grpc_socket_mutator* a,
|
43
|
+
grpc_socket_mutator* b) {
|
44
44
|
int c = GPR_ICMP(a, b);
|
45
45
|
if (c != 0) {
|
46
|
-
grpc_socket_mutator
|
47
|
-
grpc_socket_mutator
|
46
|
+
grpc_socket_mutator* sma = a;
|
47
|
+
grpc_socket_mutator* smb = b;
|
48
48
|
c = GPR_ICMP(sma->vtable, smb->vtable);
|
49
49
|
if (c == 0) {
|
50
50
|
c = sma->vtable->compare(sma, smb);
|
@@ -53,29 +53,29 @@ int grpc_socket_mutator_compare(grpc_socket_mutator *a,
|
|
53
53
|
return c;
|
54
54
|
}
|
55
55
|
|
56
|
-
void grpc_socket_mutator_unref(grpc_socket_mutator
|
56
|
+
void grpc_socket_mutator_unref(grpc_socket_mutator* mutator) {
|
57
57
|
if (gpr_unref(&mutator->refcount)) {
|
58
58
|
mutator->vtable->destory(mutator);
|
59
59
|
}
|
60
60
|
}
|
61
61
|
|
62
|
-
static void
|
63
|
-
return grpc_socket_mutator_ref((grpc_socket_mutator
|
62
|
+
static void* socket_mutator_arg_copy(void* p) {
|
63
|
+
return grpc_socket_mutator_ref((grpc_socket_mutator*)p);
|
64
64
|
}
|
65
65
|
|
66
|
-
static void socket_mutator_arg_destroy(grpc_exec_ctx
|
67
|
-
grpc_socket_mutator_unref((grpc_socket_mutator
|
66
|
+
static void socket_mutator_arg_destroy(grpc_exec_ctx* exec_ctx, void* p) {
|
67
|
+
grpc_socket_mutator_unref((grpc_socket_mutator*)p);
|
68
68
|
}
|
69
69
|
|
70
|
-
static int socket_mutator_cmp(void
|
71
|
-
return grpc_socket_mutator_compare((grpc_socket_mutator
|
72
|
-
(grpc_socket_mutator
|
70
|
+
static int socket_mutator_cmp(void* a, void* b) {
|
71
|
+
return grpc_socket_mutator_compare((grpc_socket_mutator*)a,
|
72
|
+
(grpc_socket_mutator*)b);
|
73
73
|
}
|
74
74
|
|
75
75
|
static const grpc_arg_pointer_vtable socket_mutator_arg_vtable = {
|
76
76
|
socket_mutator_arg_copy, socket_mutator_arg_destroy, socket_mutator_cmp};
|
77
77
|
|
78
|
-
grpc_arg grpc_socket_mutator_to_arg(grpc_socket_mutator
|
79
|
-
return grpc_channel_arg_pointer_create((char
|
78
|
+
grpc_arg grpc_socket_mutator_to_arg(grpc_socket_mutator* mutator) {
|
79
|
+
return grpc_channel_arg_pointer_create((char*)GRPC_ARG_SOCKET_MUTATOR,
|
80
80
|
mutator, &socket_mutator_arg_vtable);
|
81
81
|
}
|
@@ -31,34 +31,34 @@ extern "C" {
|
|
31
31
|
/** The virtual table of grpc_socket_mutator */
|
32
32
|
typedef struct {
|
33
33
|
/** Mutates the socket opitons of \a fd */
|
34
|
-
bool (*mutate_fd)(int fd, grpc_socket_mutator
|
34
|
+
bool (*mutate_fd)(int fd, grpc_socket_mutator* mutator);
|
35
35
|
/** Compare socket mutator \a a and \a b */
|
36
|
-
int (*compare)(grpc_socket_mutator
|
36
|
+
int (*compare)(grpc_socket_mutator* a, grpc_socket_mutator* b);
|
37
37
|
/** Destroys the socket mutator instance */
|
38
|
-
void (*destory)(grpc_socket_mutator
|
38
|
+
void (*destory)(grpc_socket_mutator* mutator);
|
39
39
|
} grpc_socket_mutator_vtable;
|
40
40
|
|
41
41
|
/** The Socket Mutator interface allows changes on socket options */
|
42
42
|
struct grpc_socket_mutator {
|
43
|
-
const grpc_socket_mutator_vtable
|
43
|
+
const grpc_socket_mutator_vtable* vtable;
|
44
44
|
gpr_refcount refcount;
|
45
45
|
};
|
46
46
|
|
47
47
|
/** called by concrete implementations to initialize the base struct */
|
48
|
-
void grpc_socket_mutator_init(grpc_socket_mutator
|
49
|
-
const grpc_socket_mutator_vtable
|
48
|
+
void grpc_socket_mutator_init(grpc_socket_mutator* mutator,
|
49
|
+
const grpc_socket_mutator_vtable* vtable);
|
50
50
|
|
51
51
|
/** Wrap \a mutator as a grpc_arg */
|
52
|
-
grpc_arg grpc_socket_mutator_to_arg(grpc_socket_mutator
|
52
|
+
grpc_arg grpc_socket_mutator_to_arg(grpc_socket_mutator* mutator);
|
53
53
|
|
54
54
|
/** Perform the file descriptor mutation operation of \a mutator on \a fd */
|
55
|
-
bool grpc_socket_mutator_mutate_fd(grpc_socket_mutator
|
55
|
+
bool grpc_socket_mutator_mutate_fd(grpc_socket_mutator* mutator, int fd);
|
56
56
|
|
57
57
|
/** Compare if \a a and \a b are the same mutator or have same settings */
|
58
|
-
int grpc_socket_mutator_compare(grpc_socket_mutator
|
58
|
+
int grpc_socket_mutator_compare(grpc_socket_mutator* a, grpc_socket_mutator* b);
|
59
59
|
|
60
|
-
grpc_socket_mutator
|
61
|
-
void grpc_socket_mutator_unref(grpc_socket_mutator
|
60
|
+
grpc_socket_mutator* grpc_socket_mutator_ref(grpc_socket_mutator* mutator);
|
61
|
+
void grpc_socket_mutator_unref(grpc_socket_mutator* mutator);
|
62
62
|
|
63
63
|
#ifdef __cplusplus
|
64
64
|
}
|
@@ -21,7 +21,15 @@
|
|
21
21
|
|
22
22
|
#include <stddef.h>
|
23
23
|
|
24
|
+
#ifdef __cplusplus
|
25
|
+
extern "C" {
|
26
|
+
#endif
|
27
|
+
|
24
28
|
/* A wrapper for inet_ntop on POSIX systems and InetNtop on Windows systems */
|
25
|
-
const char
|
29
|
+
const char* grpc_inet_ntop(int af, const void* src, char* dst, size_t size);
|
30
|
+
|
31
|
+
#ifdef __cplusplus
|
32
|
+
}
|
33
|
+
#endif
|
26
34
|
|
27
35
|
#endif /* GRPC_CORE_LIB_IOMGR_SOCKET_UTILS_H */
|
@@ -44,7 +44,7 @@
|
|
44
44
|
#include "src/core/lib/support/string.h"
|
45
45
|
|
46
46
|
/* set a socket to non blocking mode */
|
47
|
-
grpc_error
|
47
|
+
grpc_error* grpc_set_socket_nonblocking(int fd, int non_blocking) {
|
48
48
|
int oldflags = fcntl(fd, F_GETFL, 0);
|
49
49
|
if (oldflags < 0) {
|
50
50
|
return GRPC_OS_ERROR(errno, "fcntl");
|
@@ -63,7 +63,7 @@ grpc_error *grpc_set_socket_nonblocking(int fd, int non_blocking) {
|
|
63
63
|
return GRPC_ERROR_NONE;
|
64
64
|
}
|
65
65
|
|
66
|
-
grpc_error
|
66
|
+
grpc_error* grpc_set_socket_no_sigpipe_if_possible(int fd) {
|
67
67
|
#ifdef GRPC_HAVE_SO_NOSIGPIPE
|
68
68
|
int val = 1;
|
69
69
|
int newval;
|
@@ -81,7 +81,7 @@ grpc_error *grpc_set_socket_no_sigpipe_if_possible(int fd) {
|
|
81
81
|
return GRPC_ERROR_NONE;
|
82
82
|
}
|
83
83
|
|
84
|
-
grpc_error
|
84
|
+
grpc_error* grpc_set_socket_ip_pktinfo_if_possible(int fd) {
|
85
85
|
#ifdef GRPC_HAVE_IP_PKTINFO
|
86
86
|
int get_local_ip = 1;
|
87
87
|
if (0 != setsockopt(fd, IPPROTO_IP, IP_PKTINFO, &get_local_ip,
|
@@ -92,7 +92,7 @@ grpc_error *grpc_set_socket_ip_pktinfo_if_possible(int fd) {
|
|
92
92
|
return GRPC_ERROR_NONE;
|
93
93
|
}
|
94
94
|
|
95
|
-
grpc_error
|
95
|
+
grpc_error* grpc_set_socket_ipv6_recvpktinfo_if_possible(int fd) {
|
96
96
|
#ifdef GRPC_HAVE_IPV6_RECVPKTINFO
|
97
97
|
int get_local_ip = 1;
|
98
98
|
if (0 != setsockopt(fd, IPPROTO_IPV6, IPV6_RECVPKTINFO, &get_local_ip,
|
@@ -103,14 +103,14 @@ grpc_error *grpc_set_socket_ipv6_recvpktinfo_if_possible(int fd) {
|
|
103
103
|
return GRPC_ERROR_NONE;
|
104
104
|
}
|
105
105
|
|
106
|
-
grpc_error
|
106
|
+
grpc_error* grpc_set_socket_sndbuf(int fd, int buffer_size_bytes) {
|
107
107
|
return 0 == setsockopt(fd, SOL_SOCKET, SO_SNDBUF, &buffer_size_bytes,
|
108
108
|
sizeof(buffer_size_bytes))
|
109
109
|
? GRPC_ERROR_NONE
|
110
110
|
: GRPC_OS_ERROR(errno, "setsockopt(SO_SNDBUF)");
|
111
111
|
}
|
112
112
|
|
113
|
-
grpc_error
|
113
|
+
grpc_error* grpc_set_socket_rcvbuf(int fd, int buffer_size_bytes) {
|
114
114
|
return 0 == setsockopt(fd, SOL_SOCKET, SO_RCVBUF, &buffer_size_bytes,
|
115
115
|
sizeof(buffer_size_bytes))
|
116
116
|
? GRPC_ERROR_NONE
|
@@ -118,7 +118,7 @@ grpc_error *grpc_set_socket_rcvbuf(int fd, int buffer_size_bytes) {
|
|
118
118
|
}
|
119
119
|
|
120
120
|
/* set a socket to close on exec */
|
121
|
-
grpc_error
|
121
|
+
grpc_error* grpc_set_socket_cloexec(int fd, int close_on_exec) {
|
122
122
|
int oldflags = fcntl(fd, F_GETFD, 0);
|
123
123
|
if (oldflags < 0) {
|
124
124
|
return GRPC_OS_ERROR(errno, "fcntl");
|
@@ -138,7 +138,7 @@ grpc_error *grpc_set_socket_cloexec(int fd, int close_on_exec) {
|
|
138
138
|
}
|
139
139
|
|
140
140
|
/* set a socket to reuse old addresses */
|
141
|
-
grpc_error
|
141
|
+
grpc_error* grpc_set_socket_reuse_addr(int fd, int reuse) {
|
142
142
|
int val = (reuse != 0);
|
143
143
|
int newval;
|
144
144
|
socklen_t intlen = sizeof(newval);
|
@@ -156,7 +156,7 @@ grpc_error *grpc_set_socket_reuse_addr(int fd, int reuse) {
|
|
156
156
|
}
|
157
157
|
|
158
158
|
/* set a socket to reuse old addresses */
|
159
|
-
grpc_error
|
159
|
+
grpc_error* grpc_set_socket_reuse_port(int fd, int reuse) {
|
160
160
|
#ifndef SO_REUSEPORT
|
161
161
|
return GRPC_ERROR_CREATE_FROM_STATIC_STRING(
|
162
162
|
"SO_REUSEPORT unavailable on compiling system");
|
@@ -179,7 +179,7 @@ grpc_error *grpc_set_socket_reuse_port(int fd, int reuse) {
|
|
179
179
|
}
|
180
180
|
|
181
181
|
/* disable nagle */
|
182
|
-
grpc_error
|
182
|
+
grpc_error* grpc_set_socket_low_latency(int fd, int low_latency) {
|
183
183
|
int val = (low_latency != 0);
|
184
184
|
int newval;
|
185
185
|
socklen_t intlen = sizeof(newval);
|
@@ -196,7 +196,7 @@ grpc_error *grpc_set_socket_low_latency(int fd, int low_latency) {
|
|
196
196
|
}
|
197
197
|
|
198
198
|
/* set a socket using a grpc_socket_mutator */
|
199
|
-
grpc_error
|
199
|
+
grpc_error* grpc_set_socket_with_mutator(int fd, grpc_socket_mutator* mutator) {
|
200
200
|
GPR_ASSERT(mutator);
|
201
201
|
if (!grpc_socket_mutator_mutate_fd(mutator, fd)) {
|
202
202
|
return GRPC_ERROR_CREATE_FROM_STATIC_STRING("grpc_socket_mutator failed.");
|
@@ -217,7 +217,7 @@ static void probe_ipv6_once(void) {
|
|
217
217
|
memset(&addr, 0, sizeof(addr));
|
218
218
|
addr.sin6_family = AF_INET6;
|
219
219
|
addr.sin6_addr.s6_addr[15] = 1; /* [::1]:0 */
|
220
|
-
if (bind(fd, (struct sockaddr
|
220
|
+
if (bind(fd, (struct sockaddr*)&addr, sizeof(addr)) == 0) {
|
221
221
|
g_ipv6_loopback_available = 1;
|
222
222
|
} else {
|
223
223
|
gpr_log(GPR_INFO,
|
@@ -249,35 +249,35 @@ static int set_socket_dualstack(int fd) {
|
|
249
249
|
}
|
250
250
|
}
|
251
251
|
|
252
|
-
static grpc_error
|
252
|
+
static grpc_error* error_for_fd(int fd, const grpc_resolved_address* addr) {
|
253
253
|
if (fd >= 0) return GRPC_ERROR_NONE;
|
254
|
-
char
|
254
|
+
char* addr_str;
|
255
255
|
grpc_sockaddr_to_string(&addr_str, addr, 0);
|
256
|
-
grpc_error
|
256
|
+
grpc_error* err = grpc_error_set_str(GRPC_OS_ERROR(errno, "socket"),
|
257
257
|
GRPC_ERROR_STR_TARGET_ADDRESS,
|
258
258
|
grpc_slice_from_copied_string(addr_str));
|
259
259
|
gpr_free(addr_str);
|
260
260
|
return err;
|
261
261
|
}
|
262
262
|
|
263
|
-
grpc_error
|
264
|
-
const grpc_resolved_address
|
265
|
-
grpc_dualstack_mode
|
266
|
-
return grpc_create_dualstack_socket_using_factory(
|
267
|
-
|
263
|
+
grpc_error* grpc_create_dualstack_socket(
|
264
|
+
const grpc_resolved_address* resolved_addr, int type, int protocol,
|
265
|
+
grpc_dualstack_mode* dsmode, int* newfd) {
|
266
|
+
return grpc_create_dualstack_socket_using_factory(
|
267
|
+
nullptr, resolved_addr, type, protocol, dsmode, newfd);
|
268
268
|
}
|
269
269
|
|
270
|
-
static int create_socket(grpc_socket_factory
|
270
|
+
static int create_socket(grpc_socket_factory* factory, int domain, int type,
|
271
271
|
int protocol) {
|
272
|
-
return (factory !=
|
272
|
+
return (factory != nullptr)
|
273
273
|
? grpc_socket_factory_socket(factory, domain, type, protocol)
|
274
274
|
: socket(domain, type, protocol);
|
275
275
|
}
|
276
276
|
|
277
|
-
grpc_error
|
278
|
-
grpc_socket_factory
|
279
|
-
int type, int protocol, grpc_dualstack_mode
|
280
|
-
const struct sockaddr
|
277
|
+
grpc_error* grpc_create_dualstack_socket_using_factory(
|
278
|
+
grpc_socket_factory* factory, const grpc_resolved_address* resolved_addr,
|
279
|
+
int type, int protocol, grpc_dualstack_mode* dsmode, int* newfd) {
|
280
|
+
const struct sockaddr* addr = (const struct sockaddr*)resolved_addr->addr;
|
281
281
|
int family = addr->sa_family;
|
282
282
|
if (family == AF_INET6) {
|
283
283
|
if (grpc_ipv6_loopback_available()) {
|
@@ -292,7 +292,7 @@ grpc_error *grpc_create_dualstack_socket_using_factory(
|
|
292
292
|
return GRPC_ERROR_NONE;
|
293
293
|
}
|
294
294
|
/* If this isn't an IPv4 address, then return whatever we've got. */
|
295
|
-
if (!grpc_sockaddr_is_v4mapped(resolved_addr,
|
295
|
+
if (!grpc_sockaddr_is_v4mapped(resolved_addr, nullptr)) {
|
296
296
|
*dsmode = GRPC_DSMODE_IPV6;
|
297
297
|
return error_for_fd(*newfd, resolved_addr);
|
298
298
|
}
|
@@ -307,7 +307,7 @@ grpc_error *grpc_create_dualstack_socket_using_factory(
|
|
307
307
|
return error_for_fd(*newfd, resolved_addr);
|
308
308
|
}
|
309
309
|
|
310
|
-
const char
|
310
|
+
const char* grpc_inet_ntop(int af, const void* src, char* dst, size_t size) {
|
311
311
|
GPR_ASSERT(size <= (socklen_t)-1);
|
312
312
|
return inet_ntop(af, src, dst, (socklen_t)size);
|
313
313
|
}
|