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.

Files changed (616) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +2106 -2116
  3. data/include/grpc/census.h +1 -432
  4. data/include/grpc/compression.h +9 -9
  5. data/include/grpc/grpc.h +115 -98
  6. data/include/grpc/grpc_cronet.h +3 -3
  7. data/include/grpc/grpc_posix.h +4 -4
  8. data/include/grpc/grpc_security.h +160 -88
  9. data/include/grpc/grpc_security_constants.h +7 -0
  10. data/include/grpc/impl/codegen/atm.h +9 -1
  11. data/include/grpc/impl/codegen/atm_gcc_atomic.h +13 -4
  12. data/include/grpc/impl/codegen/atm_gcc_sync.h +6 -5
  13. data/include/grpc/impl/codegen/atm_windows.h +23 -22
  14. data/include/grpc/impl/codegen/byte_buffer.h +14 -14
  15. data/include/grpc/impl/codegen/byte_buffer_reader.h +2 -2
  16. data/include/grpc/impl/codegen/connectivity_state.h +0 -2
  17. data/include/grpc/impl/codegen/grpc_types.h +32 -28
  18. data/include/grpc/impl/codegen/port_platform.h +48 -0
  19. data/include/grpc/impl/codegen/slice.h +10 -10
  20. data/include/grpc/impl/codegen/sync_generic.h +9 -3
  21. data/include/grpc/slice.h +16 -17
  22. data/include/grpc/slice_buffer.h +22 -22
  23. data/include/grpc/support/alloc.h +11 -11
  24. data/include/grpc/support/avl.h +28 -20
  25. data/include/grpc/support/cmdline.h +13 -13
  26. data/include/grpc/support/histogram.h +17 -17
  27. data/include/grpc/support/host_port.h +2 -2
  28. data/include/grpc/support/log.h +9 -9
  29. data/include/grpc/support/log_windows.h +1 -1
  30. data/include/grpc/support/string_util.h +2 -2
  31. data/include/grpc/support/subprocess.h +5 -5
  32. data/include/grpc/support/sync.h +43 -27
  33. data/include/grpc/support/thd.h +6 -6
  34. data/include/grpc/support/tls_gcc.h +1 -1
  35. data/include/grpc/support/tls_pthread.h +1 -1
  36. data/src/core/ext/census/{grpc_context.c → grpc_context.cc} +5 -8
  37. data/src/core/ext/filters/client_channel/backup_poller.cc +165 -0
  38. data/src/core/ext/{census/grpc_filter.h → filters/client_channel/backup_poller.h} +12 -7
  39. data/src/core/ext/filters/client_channel/{channel_connectivity.c → channel_connectivity.cc} +45 -42
  40. data/src/core/ext/filters/client_channel/{client_channel.c → client_channel.cc} +452 -417
  41. data/src/core/ext/filters/client_channel/client_channel.h +16 -8
  42. data/src/core/ext/filters/client_channel/{client_channel_factory.c → client_channel_factory.cc} +0 -0
  43. data/src/core/ext/filters/client_channel/client_channel_factory.h +29 -21
  44. data/src/core/ext/filters/client_channel/{client_channel_plugin.c → client_channel_plugin.cc} +15 -19
  45. data/src/core/ext/filters/client_channel/{connector.c → connector.cc} +0 -0
  46. data/src/core/ext/filters/client_channel/connector.h +29 -21
  47. data/src/core/ext/filters/client_channel/{http_connect_handshaker.c → http_connect_handshaker.cc} +10 -10
  48. data/src/core/ext/filters/client_channel/http_connect_handshaker.h +8 -0
  49. data/src/core/ext/filters/client_channel/{http_proxy.c → http_proxy.cc} +14 -14
  50. data/src/core/ext/filters/client_channel/http_proxy.h +8 -0
  51. data/src/core/ext/filters/client_channel/{lb_policy.c → lb_policy.cc} +47 -48
  52. data/src/core/ext/filters/client_channel/lb_policy.h +76 -70
  53. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{client_load_reporting_filter.c → client_load_reporting_filter.cc} +28 -29
  54. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +9 -1
  55. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb.c → grpclb.cc} +554 -563
  56. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +9 -1
  57. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +17 -9
  58. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb_channel_secure.c → grpclb_channel_secure.cc} +17 -17
  59. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{grpclb_client_stats.c → grpclb_client_stats.cc} +3 -3
  60. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +9 -1
  61. data/src/core/ext/filters/client_channel/lb_policy/grpclb/{load_balancer_api.c → load_balancer_api.cc} +64 -67
  62. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +20 -21
  63. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +599 -0
  64. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +695 -0
  65. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.cc +270 -0
  66. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +153 -0
  67. data/src/core/ext/filters/client_channel/{lb_policy_factory.c → lb_policy_factory.cc} +10 -10
  68. data/src/core/ext/filters/client_channel/lb_policy_factory.h +48 -40
  69. data/src/core/ext/filters/client_channel/{lb_policy_registry.c → lb_policy_registry.cc} +9 -9
  70. data/src/core/ext/filters/client_channel/lb_policy_registry.h +11 -3
  71. data/src/core/ext/filters/client_channel/{parse_address.c → parse_address.cc} +24 -24
  72. data/src/core/ext/filters/client_channel/parse_address.h +14 -6
  73. data/src/core/ext/filters/client_channel/{proxy_mapper.c → proxy_mapper.cc} +0 -0
  74. data/src/core/ext/filters/client_channel/proxy_mapper.h +8 -0
  75. data/src/core/ext/filters/client_channel/{proxy_mapper_registry.c → proxy_mapper_registry.cc} +0 -0
  76. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +8 -0
  77. data/src/core/ext/filters/client_channel/{resolver.c → resolver.cc} +21 -23
  78. data/src/core/ext/filters/client_channel/resolver.h +33 -27
  79. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/{dns_resolver_ares.c → dns_resolver_ares.cc} +133 -133
  80. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +18 -9
  81. 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
  82. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/{grpc_ares_wrapper.c → grpc_ares_wrapper.cc} +118 -115
  83. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +23 -15
  84. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc +60 -0
  85. data/src/core/ext/filters/client_channel/resolver/dns/native/{dns_resolver.c → dns_resolver.cc} +100 -94
  86. data/src/core/ext/filters/client_channel/resolver/fake/{fake_resolver.c → fake_resolver.cc} +14 -14
  87. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +9 -1
  88. data/src/core/ext/filters/client_channel/resolver/sockaddr/{sockaddr_resolver.c → sockaddr_resolver.cc} +60 -60
  89. data/src/core/ext/filters/client_channel/{resolver_factory.c → resolver_factory.cc} +2 -2
  90. data/src/core/ext/filters/client_channel/resolver_factory.h +27 -19
  91. data/src/core/ext/filters/client_channel/{resolver_registry.c → resolver_registry.cc} +35 -35
  92. data/src/core/ext/filters/client_channel/resolver_registry.h +18 -10
  93. data/src/core/ext/filters/client_channel/{retry_throttle.c → retry_throttle.cc} +10 -10
  94. data/src/core/ext/filters/client_channel/retry_throttle.h +8 -0
  95. data/src/core/ext/filters/client_channel/{subchannel.c → subchannel.cc} +210 -213
  96. data/src/core/ext/filters/client_channel/subchannel.h +68 -60
  97. data/src/core/ext/filters/client_channel/{subchannel_index.c → subchannel_index.cc} +52 -52
  98. data/src/core/ext/filters/client_channel/subchannel_index.h +22 -14
  99. data/src/core/ext/filters/client_channel/{uri_parser.c → uri_parser.cc} +29 -27
  100. data/src/core/ext/filters/client_channel/uri_parser.h +18 -10
  101. data/src/core/ext/filters/deadline/{deadline_filter.c → deadline_filter.cc} +12 -15
  102. data/src/core/ext/filters/deadline/deadline_filter.h +11 -2
  103. data/src/core/ext/filters/http/client/{http_client_filter.c → http_client_filter.cc} +83 -83
  104. data/src/core/ext/filters/http/client/http_client_filter.h +8 -0
  105. data/src/core/ext/filters/http/{http_filters_plugin.c → http_filters_plugin.cc} +20 -21
  106. data/src/core/ext/filters/http/message_compress/{message_compress_filter.c → message_compress_filter.cc} +84 -83
  107. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +9 -1
  108. data/src/core/ext/filters/http/server/{http_server_filter.c → http_server_filter.cc} +80 -78
  109. data/src/core/ext/filters/http/server/http_server_filter.h +8 -0
  110. data/src/core/ext/filters/load_reporting/{server_load_reporting_filter.c → server_load_reporting_filter.cc} +29 -29
  111. data/src/core/ext/filters/load_reporting/server_load_reporting_filter.h +9 -1
  112. data/src/core/ext/filters/load_reporting/{server_load_reporting_plugin.c → server_load_reporting_plugin.cc} +11 -11
  113. data/src/core/ext/filters/load_reporting/server_load_reporting_plugin.h +13 -5
  114. data/src/core/ext/filters/max_age/{max_age_filter.c → max_age_filter.cc} +46 -56
  115. data/src/core/ext/filters/max_age/max_age_filter.h +8 -0
  116. data/src/core/ext/filters/message_size/{message_size_filter.c → message_size_filter.cc} +62 -40
  117. data/src/core/ext/filters/message_size/message_size_filter.h +8 -0
  118. data/src/core/ext/filters/workarounds/{workaround_cronet_compression_filter.c → workaround_cronet_compression_filter.cc} +11 -11
  119. data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h +8 -0
  120. data/src/core/ext/filters/workarounds/{workaround_utils.c → workaround_utils.cc} +7 -7
  121. data/src/core/ext/filters/workarounds/workaround_utils.h +9 -1
  122. data/src/core/ext/transport/chttp2/alpn/{alpn.c → alpn.cc} +3 -3
  123. data/src/core/ext/transport/chttp2/alpn/alpn.h +10 -2
  124. data/src/core/ext/transport/chttp2/client/{chttp2_connector.c → chttp2_connector.cc} +49 -45
  125. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +8 -0
  126. data/src/core/ext/transport/chttp2/client/insecure/{channel_create.c → channel_create.cc} +28 -27
  127. data/src/core/ext/transport/chttp2/client/insecure/{channel_create_posix.c → channel_create_posix.cc} +14 -13
  128. data/src/core/ext/transport/chttp2/client/secure/{secure_channel_create.c → secure_channel_create.cc} +68 -66
  129. data/src/core/ext/transport/chttp2/server/{chttp2_server.c → chttp2_server.cc} +76 -77
  130. data/src/core/ext/transport/chttp2/server/chttp2_server.h +11 -3
  131. data/src/core/ext/transport/chttp2/server/insecure/{server_chttp2.c → server_chttp2.cc} +3 -3
  132. data/src/core/ext/transport/chttp2/server/insecure/{server_chttp2_posix.c → server_chttp2_posix.cc} +13 -12
  133. data/src/core/ext/transport/chttp2/server/secure/{server_secure_chttp2.c → server_secure_chttp2.cc} +12 -10
  134. data/src/core/ext/transport/chttp2/transport/{bin_decoder.c → bin_decoder.cc} +7 -7
  135. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +15 -7
  136. data/src/core/ext/transport/chttp2/transport/{bin_encoder.c → bin_encoder.cc} +11 -11
  137. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +8 -0
  138. data/src/core/ext/transport/chttp2/transport/{chttp2_plugin.c → chttp2_plugin.cc} +2 -9
  139. data/src/core/ext/transport/chttp2/transport/{chttp2_transport.c → chttp2_transport.cc} +778 -778
  140. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +14 -10
  141. data/src/core/ext/transport/chttp2/transport/flow_control.cc +385 -0
  142. data/src/core/ext/transport/chttp2/transport/flow_control.h +337 -0
  143. data/src/core/ext/transport/chttp2/transport/frame.h +8 -0
  144. data/src/core/ext/transport/chttp2/transport/{frame_data.c → frame_data.cc} +34 -34
  145. data/src/core/ext/transport/chttp2/transport/frame_data.h +25 -17
  146. data/src/core/ext/transport/chttp2/transport/{frame_goaway.c → frame_goaway.cc} +18 -18
  147. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +18 -10
  148. data/src/core/ext/transport/chttp2/transport/{frame_ping.c → frame_ping.cc} +18 -19
  149. data/src/core/ext/transport/chttp2/transport/frame_ping.h +12 -4
  150. data/src/core/ext/transport/chttp2/transport/{frame_rst_stream.c → frame_rst_stream.cc} +16 -16
  151. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +16 -8
  152. data/src/core/ext/transport/chttp2/transport/{frame_settings.c → frame_settings.cc} +23 -24
  153. data/src/core/ext/transport/chttp2/transport/frame_settings.h +17 -9
  154. data/src/core/ext/transport/chttp2/transport/{frame_window_update.c → frame_window_update.cc} +22 -24
  155. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +14 -6
  156. data/src/core/ext/transport/chttp2/transport/{hpack_encoder.c → hpack_encoder.cc} +206 -161
  157. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +23 -13
  158. data/src/core/ext/transport/chttp2/transport/{hpack_parser.c → hpack_parser.cc} +340 -334
  159. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +30 -22
  160. data/src/core/ext/transport/chttp2/transport/{hpack_table.c → hpack_table.cc} +25 -25
  161. data/src/core/ext/transport/chttp2/transport/hpack_table.h +19 -11
  162. data/src/core/ext/transport/chttp2/transport/{http2_settings.c → http2_settings.cc} +1 -1
  163. data/src/core/ext/transport/chttp2/transport/http2_settings.h +10 -2
  164. data/src/core/ext/transport/chttp2/transport/{huffsyms.c → huffsyms.cc} +0 -0
  165. data/src/core/ext/transport/chttp2/transport/huffsyms.h +8 -0
  166. data/src/core/ext/transport/chttp2/transport/{incoming_metadata.c → incoming_metadata.cc} +14 -13
  167. data/src/core/ext/transport/chttp2/transport/incoming_metadata.h +18 -10
  168. data/src/core/ext/transport/chttp2/transport/internal.h +214 -340
  169. data/src/core/ext/transport/chttp2/transport/{parsing.c → parsing.cc} +152 -141
  170. data/src/core/ext/transport/chttp2/transport/{stream_lists.c → stream_lists.cc} +53 -53
  171. data/src/core/ext/transport/chttp2/transport/{stream_map.c → stream_map.cc} +35 -34
  172. data/src/core/ext/transport/chttp2/transport/stream_map.h +22 -14
  173. data/src/core/ext/transport/chttp2/transport/{varint.c → varint.cc} +0 -0
  174. data/src/core/ext/transport/chttp2/transport/varint.h +8 -0
  175. data/src/core/ext/transport/chttp2/transport/writing.cc +636 -0
  176. data/src/core/ext/transport/inproc/{inproc_plugin.c → inproc_plugin.cc} +5 -6
  177. data/src/core/ext/transport/inproc/{inproc_transport.c → inproc_transport.cc} +479 -544
  178. data/src/core/ext/transport/inproc/inproc_transport.h +4 -4
  179. data/src/core/lib/backoff/backoff.cc +80 -0
  180. data/src/core/lib/backoff/backoff.h +83 -0
  181. data/src/core/lib/channel/{channel_args.c → channel_args.cc} +92 -92
  182. data/src/core/lib/channel/channel_args.h +45 -37
  183. data/src/core/lib/channel/{channel_stack.c → channel_stack.cc} +67 -68
  184. data/src/core/lib/channel/channel_stack.h +76 -75
  185. data/src/core/lib/channel/{channel_stack_builder.c → channel_stack_builder.cc} +91 -91
  186. data/src/core/lib/channel/channel_stack_builder.h +45 -45
  187. data/src/core/lib/channel/{connected_channel.c → connected_channel.cc} +70 -70
  188. data/src/core/lib/channel/connected_channel.h +12 -4
  189. data/src/core/lib/channel/context.h +2 -2
  190. data/src/core/lib/channel/{handshaker.c → handshaker.cc} +7 -9
  191. data/src/core/lib/channel/handshaker.h +9 -1
  192. data/src/core/lib/channel/{handshaker_factory.c → handshaker_factory.cc} +7 -7
  193. data/src/core/lib/channel/handshaker_factory.h +18 -10
  194. data/src/core/lib/channel/{handshaker_registry.c → handshaker_registry.cc} +0 -0
  195. data/src/core/lib/channel/handshaker_registry.h +8 -0
  196. data/src/core/lib/compression/algorithm_metadata.h +8 -0
  197. data/src/core/lib/compression/{compression.c → compression.cc} +9 -9
  198. data/src/core/lib/compression/{message_compress.c → message_compress.cc} +0 -0
  199. data/src/core/lib/compression/message_compress.h +8 -0
  200. data/src/core/lib/compression/{stream_compression.c → stream_compression.cc} +12 -12
  201. data/src/core/lib/compression/stream_compression.h +27 -19
  202. data/src/core/lib/compression/{stream_compression_gzip.c → stream_compression_gzip.cc} +35 -36
  203. data/src/core/lib/compression/stream_compression_gzip.h +8 -0
  204. data/src/core/lib/compression/{stream_compression_identity.c → stream_compression_identity.cc} +19 -20
  205. data/src/core/lib/compression/stream_compression_identity.h +8 -0
  206. data/src/core/lib/debug/{stats.c → stats.cc} +19 -19
  207. data/src/core/lib/debug/stats.h +17 -9
  208. data/src/core/lib/debug/{stats_data.c → stats_data.cc} +45 -22
  209. data/src/core/lib/debug/stats_data.h +58 -19
  210. data/src/core/lib/debug/trace.cc +142 -0
  211. data/src/core/lib/debug/trace.h +74 -14
  212. data/src/core/lib/http/{format_request.c → format_request.cc} +10 -10
  213. data/src/core/lib/http/format_request.h +12 -4
  214. data/src/core/lib/http/{httpcli.c → httpcli.cc} +80 -80
  215. data/src/core/lib/http/httpcli.h +41 -33
  216. data/src/core/lib/http/{httpcli_security_connector.c → httpcli_security_connector.cc} +69 -55
  217. data/src/core/lib/http/{parser.c → parser.cc} +42 -42
  218. data/src/core/lib/http/parser.h +28 -20
  219. data/src/core/lib/{support → iomgr}/block_annotate.h +17 -8
  220. data/src/core/lib/iomgr/{call_combiner.c → call_combiner.cc} +29 -17
  221. data/src/core/lib/iomgr/call_combiner.h +9 -1
  222. data/src/core/lib/iomgr/closure.h +220 -62
  223. data/src/core/lib/iomgr/{combiner.c → combiner.cc} +63 -62
  224. data/src/core/lib/iomgr/combiner.h +16 -8
  225. data/src/core/lib/iomgr/{endpoint.c → endpoint.cc} +6 -0
  226. data/src/core/lib/iomgr/endpoint.h +47 -32
  227. data/src/core/lib/iomgr/endpoint_pair.h +12 -4
  228. data/src/core/lib/iomgr/{endpoint_pair_posix.c → endpoint_pair_posix.cc} +3 -3
  229. data/src/core/lib/iomgr/{endpoint_pair_uv.c → endpoint_pair_uv.cc} +2 -2
  230. data/src/core/lib/iomgr/{endpoint_pair_windows.c → endpoint_pair_windows.cc} +6 -6
  231. data/src/core/lib/iomgr/{error.c → error.cc} +125 -124
  232. data/src/core/lib/iomgr/error.h +32 -27
  233. data/src/core/lib/iomgr/error_internal.h +11 -2
  234. data/src/core/lib/iomgr/{ev_epoll1_linux.c → ev_epoll1_linux.cc} +214 -215
  235. data/src/core/lib/iomgr/ev_epoll1_linux.h +9 -1
  236. data/src/core/lib/iomgr/ev_epollex_linux.cc +1488 -0
  237. data/src/core/lib/iomgr/ev_epollex_linux.h +9 -1
  238. data/src/core/lib/iomgr/{ev_epollsig_linux.c → ev_epollsig_linux.cc} +304 -305
  239. data/src/core/lib/iomgr/ev_epollsig_linux.h +12 -4
  240. data/src/core/lib/iomgr/{ev_poll_posix.c → ev_poll_posix.cc} +272 -283
  241. data/src/core/lib/iomgr/ev_poll_posix.h +10 -2
  242. data/src/core/lib/iomgr/ev_posix.cc +288 -0
  243. data/src/core/lib/iomgr/ev_posix.h +75 -67
  244. data/src/core/lib/iomgr/{ev_windows.c → ev_windows.cc} +2 -2
  245. data/src/core/lib/iomgr/exec_ctx.cc +177 -0
  246. data/src/core/lib/iomgr/exec_ctx.h +35 -13
  247. data/src/core/lib/iomgr/{executor.c → executor.cc} +34 -35
  248. data/src/core/lib/iomgr/executor.h +12 -4
  249. data/src/core/lib/iomgr/{fork_posix.c → fork_posix.cc} +0 -0
  250. data/src/core/lib/iomgr/{fork_windows.c → fork_windows.cc} +0 -0
  251. data/src/core/lib/iomgr/gethostname.h +9 -1
  252. data/src/core/lib/iomgr/{gethostname_fallback.c → gethostname_fallback.cc} +2 -1
  253. data/src/core/lib/iomgr/{gethostname_host_name_max.c → gethostname_host_name_max.cc} +4 -3
  254. data/src/core/lib/iomgr/{gethostname_sysconf.c → gethostname_sysconf.cc} +3 -2
  255. data/src/core/lib/iomgr/{iocp_windows.c → iocp_windows.cc} +23 -25
  256. data/src/core/lib/iomgr/iocp_windows.h +17 -3
  257. data/src/core/lib/iomgr/{iomgr.c → iomgr.cc} +25 -19
  258. data/src/core/lib/iomgr/iomgr.h +11 -3
  259. data/src/core/lib/iomgr/iomgr_internal.h +13 -5
  260. data/src/core/lib/iomgr/{iomgr_posix.c → iomgr_posix.cc} +0 -1
  261. data/src/core/lib/iomgr/{iomgr_uv.c → iomgr_uv.cc} +1 -1
  262. data/src/core/lib/iomgr/iomgr_uv.h +8 -0
  263. data/src/core/lib/iomgr/{iomgr_windows.c → iomgr_windows.cc} +0 -0
  264. data/src/core/lib/iomgr/{is_epollexclusive_available.c → is_epollexclusive_available.cc} +1 -1
  265. data/src/core/lib/iomgr/is_epollexclusive_available.h +8 -0
  266. data/src/core/lib/iomgr/{load_file.c → load_file.cc} +12 -12
  267. data/src/core/lib/iomgr/load_file.h +2 -2
  268. data/src/core/lib/iomgr/{lockfree_event.c → lockfree_event.cc} +76 -68
  269. data/src/core/lib/iomgr/lockfree_event.h +30 -11
  270. data/src/core/lib/iomgr/{network_status_tracker.c → network_status_tracker.cc} +3 -2
  271. data/src/core/lib/iomgr/network_status_tracker.h +2 -2
  272. data/src/core/lib/iomgr/{polling_entity.c → polling_entity.cc} +18 -18
  273. data/src/core/lib/iomgr/polling_entity.h +21 -13
  274. data/src/core/lib/iomgr/pollset.h +17 -11
  275. data/src/core/lib/iomgr/pollset_set.h +23 -15
  276. data/src/core/lib/iomgr/{pollset_set_uv.c → pollset_set_uv.cc} +0 -0
  277. data/src/core/lib/iomgr/{pollset_set_windows.c → pollset_set_windows.cc} +0 -0
  278. data/src/core/lib/iomgr/{pollset_uv.c → pollset_uv.cc} +31 -29
  279. data/src/core/lib/iomgr/pollset_uv.h +8 -0
  280. data/src/core/lib/iomgr/{pollset_windows.c → pollset_windows.cc} +24 -24
  281. data/src/core/lib/iomgr/pollset_windows.h +17 -4
  282. data/src/core/lib/iomgr/port.h +10 -0
  283. data/src/core/lib/iomgr/resolve_address.h +18 -10
  284. data/src/core/lib/iomgr/{resolve_address_posix.c → resolve_address_posix.cc} +40 -40
  285. data/src/core/lib/iomgr/{resolve_address_uv.c → resolve_address_uv.cc} +61 -56
  286. data/src/core/lib/iomgr/{resolve_address_windows.c → resolve_address_windows.cc} +36 -34
  287. data/src/core/lib/iomgr/{resource_quota.c → resource_quota.cc} +209 -180
  288. data/src/core/lib/iomgr/resource_quota.h +45 -37
  289. data/src/core/lib/iomgr/{sockaddr_utils.c → sockaddr_utils.cc} +61 -61
  290. data/src/core/lib/iomgr/sockaddr_utils.h +23 -15
  291. data/src/core/lib/iomgr/sockaddr_windows.h +6 -0
  292. data/src/core/lib/iomgr/{socket_factory_posix.c → socket_factory_posix.cc} +20 -20
  293. data/src/core/lib/iomgr/socket_factory_posix.h +15 -15
  294. data/src/core/lib/iomgr/{socket_mutator.c → socket_mutator.cc} +18 -18
  295. data/src/core/lib/iomgr/socket_mutator.h +11 -11
  296. data/src/core/lib/iomgr/socket_utils.h +9 -1
  297. data/src/core/lib/iomgr/{socket_utils_common_posix.c → socket_utils_common_posix.cc} +28 -28
  298. data/src/core/lib/iomgr/{socket_utils_linux.c → socket_utils_linux.cc} +3 -3
  299. data/src/core/lib/iomgr/{socket_utils_posix.c → socket_utils_posix.cc} +3 -3
  300. data/src/core/lib/iomgr/socket_utils_posix.h +26 -18
  301. data/src/core/lib/iomgr/{socket_utils_uv.c → socket_utils_uv.cc} +1 -1
  302. data/src/core/lib/iomgr/{socket_utils_windows.c → socket_utils_windows.cc} +2 -2
  303. data/src/core/lib/iomgr/{socket_windows.c → socket_windows.cc} +18 -18
  304. data/src/core/lib/iomgr/socket_windows.h +26 -13
  305. data/src/core/lib/iomgr/tcp_client.h +14 -6
  306. data/src/core/lib/iomgr/{tcp_client_posix.c → tcp_client_posix.cc} +69 -70
  307. data/src/core/lib/iomgr/tcp_client_posix.h +11 -3
  308. data/src/core/lib/iomgr/{tcp_client_uv.c → tcp_client_uv.cc} +47 -48
  309. data/src/core/lib/iomgr/{tcp_client_windows.c → tcp_client_windows.cc} +46 -44
  310. data/src/core/lib/iomgr/{tcp_posix.c → tcp_posix.cc} +198 -175
  311. data/src/core/lib/iomgr/tcp_posix.h +15 -7
  312. data/src/core/lib/iomgr/tcp_server.h +31 -23
  313. data/src/core/lib/iomgr/{tcp_server_posix.c → tcp_server_posix.cc} +78 -77
  314. data/src/core/lib/iomgr/tcp_server_utils_posix.h +27 -19
  315. data/src/core/lib/iomgr/{tcp_server_utils_posix_common.c → tcp_server_utils_posix_common.cc} +27 -27
  316. data/src/core/lib/iomgr/{tcp_server_utils_posix_ifaddrs.c → tcp_server_utils_posix_ifaddrs.cc} +25 -25
  317. data/src/core/lib/iomgr/{tcp_server_utils_posix_noifaddrs.c → tcp_server_utils_posix_noifaddrs.cc} +2 -2
  318. data/src/core/lib/iomgr/{tcp_server_uv.c → tcp_server_uv.cc} +133 -105
  319. data/src/core/lib/iomgr/{tcp_server_windows.c → tcp_server_windows.cc} +81 -77
  320. data/src/core/lib/iomgr/tcp_uv.cc +420 -0
  321. data/src/core/lib/iomgr/tcp_uv.h +18 -4
  322. data/src/core/lib/iomgr/{tcp_windows.c → tcp_windows.cc} +90 -79
  323. data/src/core/lib/iomgr/tcp_windows.h +17 -4
  324. data/src/core/lib/iomgr/{time_averaged_stats.c → time_averaged_stats.cc} +0 -0
  325. data/src/core/lib/iomgr/time_averaged_stats.h +8 -0
  326. data/src/core/lib/iomgr/timer.h +16 -9
  327. data/src/core/lib/iomgr/{timer_generic.c → timer_generic.cc} +130 -171
  328. data/src/core/lib/iomgr/timer_generic.h +4 -4
  329. data/src/core/lib/iomgr/{timer_heap.c → timer_heap.cc} +20 -21
  330. data/src/core/lib/iomgr/timer_heap.h +16 -8
  331. data/src/core/lib/iomgr/{timer_manager.c → timer_manager.cc} +54 -52
  332. data/src/core/lib/iomgr/timer_manager.h +8 -0
  333. data/src/core/lib/iomgr/{timer_uv.c → timer_uv.cc} +22 -24
  334. data/src/core/lib/iomgr/timer_uv.h +2 -2
  335. data/src/core/lib/iomgr/{udp_server.c → udp_server.cc} +75 -75
  336. data/src/core/lib/iomgr/udp_server.h +25 -17
  337. data/src/core/lib/iomgr/{unix_sockets_posix.c → unix_sockets_posix.cc} +22 -21
  338. data/src/core/lib/iomgr/unix_sockets_posix.h +14 -6
  339. data/src/core/lib/iomgr/{unix_sockets_posix_noop.c → unix_sockets_posix_noop.cc} +5 -5
  340. data/src/core/lib/iomgr/{wakeup_fd_cv.c → wakeup_fd_cv.cc} +2 -2
  341. data/src/core/lib/iomgr/wakeup_fd_cv.h +10 -0
  342. data/src/core/lib/iomgr/{wakeup_fd_eventfd.c → wakeup_fd_eventfd.cc} +0 -0
  343. data/src/core/lib/iomgr/{wakeup_fd_nospecial.c → wakeup_fd_nospecial.cc} +0 -0
  344. data/src/core/lib/iomgr/{wakeup_fd_pipe.c → wakeup_fd_pipe.cc} +1 -0
  345. data/src/core/lib/iomgr/wakeup_fd_pipe.h +9 -1
  346. data/src/core/lib/iomgr/{wakeup_fd_posix.c → wakeup_fd_posix.cc} +6 -7
  347. data/src/core/lib/iomgr/wakeup_fd_posix.h +8 -0
  348. data/src/core/lib/json/{json.c → json.cc} +0 -0
  349. data/src/core/lib/json/json.h +8 -0
  350. data/src/core/lib/json/{json_reader.c → json_reader.cc} +18 -18
  351. data/src/core/lib/json/json_reader.h +26 -18
  352. data/src/core/lib/json/{json_string.c → json_string.cc} +57 -57
  353. data/src/core/lib/json/{json_writer.c → json_writer.cc} +20 -20
  354. data/src/core/lib/json/json_writer.h +23 -15
  355. data/src/core/lib/profiling/{basic_timers.c → basic_timers.cc} +34 -34
  356. data/src/core/lib/profiling/{stap_timers.c → stap_timers.cc} +5 -5
  357. data/src/core/lib/profiling/timers.h +6 -6
  358. data/src/core/lib/security/context/{security_context.c → security_context.cc} +98 -95
  359. data/src/core/lib/security/context/security_context.h +27 -29
  360. data/src/core/lib/security/credentials/composite/{composite_credentials.c → composite_credentials.cc} +79 -73
  361. data/src/core/lib/security/credentials/composite/composite_credentials.h +17 -9
  362. data/src/core/lib/security/credentials/{credentials.c → credentials.cc} +97 -92
  363. data/src/core/lib/security/credentials/credentials.h +83 -75
  364. data/src/core/lib/security/credentials/{credentials_metadata.c → credentials_metadata.cc} +7 -6
  365. data/src/core/lib/security/credentials/fake/{fake_credentials.c → fake_credentials.cc} +39 -36
  366. data/src/core/lib/security/credentials/fake/fake_credentials.h +13 -5
  367. data/src/core/lib/security/credentials/google_default/{credentials_generic.c → credentials_generic.cc} +5 -5
  368. data/src/core/lib/security/credentials/google_default/{google_default_credentials.c → google_default_credentials.cc} +55 -55
  369. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +9 -1
  370. data/src/core/lib/security/credentials/iam/{iam_credentials.c → iam_credentials.cc} +19 -18
  371. data/src/core/lib/security/credentials/jwt/{json_token.c → json_token.cc} +80 -75
  372. data/src/core/lib/security/credentials/jwt/json_token.h +23 -15
  373. data/src/core/lib/security/credentials/jwt/{jwt_credentials.c → jwt_credentials.cc} +45 -41
  374. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +11 -3
  375. data/src/core/lib/security/credentials/jwt/{jwt_verifier.c → jwt_verifier.cc} +262 -252
  376. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +38 -30
  377. data/src/core/lib/security/credentials/oauth2/{oauth2_credentials.c → oauth2_credentials.cc} +138 -141
  378. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +30 -22
  379. data/src/core/lib/security/credentials/plugin/{plugin_credentials.c → plugin_credentials.cc} +52 -53
  380. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +7 -7
  381. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +344 -0
  382. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +27 -0
  383. data/src/core/lib/security/transport/auth_filters.h +16 -0
  384. data/src/core/lib/security/transport/{client_auth_filter.c → client_auth_filter.cc} +127 -115
  385. data/src/core/lib/security/transport/{lb_targets_info.c → lb_targets_info.cc} +16 -13
  386. data/src/core/lib/security/transport/lb_targets_info.h +11 -3
  387. data/src/core/lib/security/transport/{secure_endpoint.c → secure_endpoint.cc} +84 -76
  388. data/src/core/lib/security/transport/secure_endpoint.h +13 -5
  389. data/src/core/lib/security/transport/security_connector.cc +1121 -0
  390. data/src/core/lib/security/transport/security_connector.h +97 -79
  391. data/src/core/lib/security/transport/{security_handshaker.c → security_handshaker.cc} +139 -132
  392. data/src/core/lib/security/transport/security_handshaker.h +11 -3
  393. data/src/core/lib/security/transport/{server_auth_filter.c → server_auth_filter.cc} +68 -68
  394. data/src/core/lib/security/transport/{tsi_error.c → tsi_error.cc} +1 -1
  395. data/src/core/lib/security/transport/tsi_error.h +9 -1
  396. data/src/core/lib/security/util/{json_util.c → json_util.cc} +11 -11
  397. data/src/core/lib/security/util/json_util.h +12 -4
  398. data/src/core/lib/slice/{b64.c → b64.cc} +15 -15
  399. data/src/core/lib/slice/b64.h +12 -4
  400. data/src/core/lib/slice/{percent_encoding.c → percent_encoding.cc} +15 -15
  401. data/src/core/lib/slice/percent_encoding.h +11 -3
  402. data/src/core/lib/slice/{slice.c → slice.cc} +64 -64
  403. data/src/core/lib/slice/{slice_buffer.c → slice_buffer.cc} +38 -38
  404. data/src/core/lib/slice/{slice_hash_table.c → slice_hash_table.cc} +7 -7
  405. data/src/core/lib/slice/slice_hash_table.h +19 -11
  406. data/src/core/lib/slice/{slice_intern.c → slice_intern.cc} +35 -34
  407. data/src/core/lib/slice/slice_internal.h +17 -6
  408. data/src/core/lib/slice/{slice_string_helpers.c → slice_string_helpers.cc} +9 -9
  409. data/src/core/lib/slice/slice_string_helpers.h +3 -3
  410. data/src/core/lib/support/abstract.h +29 -0
  411. data/src/core/lib/support/{alloc.c → alloc.cc} +22 -22
  412. data/src/core/lib/support/{arena.c → arena.cc} +12 -12
  413. data/src/core/lib/support/arena.h +11 -3
  414. data/src/core/lib/support/{atm.c → atm.cc} +1 -1
  415. data/src/core/lib/support/{avl.c → avl.cc} +71 -70
  416. data/src/core/lib/support/{cmdline.c → cmdline.cc} +62 -62
  417. data/src/core/lib/support/{cpu_iphone.c → cpu_iphone.cc} +2 -0
  418. data/src/core/lib/support/{cpu_linux.c → cpu_linux.cc} +10 -0
  419. data/src/core/lib/support/{cpu_posix.c → cpu_posix.cc} +27 -4
  420. data/src/core/lib/support/{cpu_windows.c → cpu_windows.cc} +1 -0
  421. data/src/core/lib/support/env.h +3 -3
  422. data/src/core/lib/support/{env_linux.c → env_linux.cc} +11 -11
  423. data/src/core/lib/support/{env_posix.c → env_posix.cc} +4 -4
  424. data/src/core/lib/support/{env_windows.c → env_windows.cc} +5 -5
  425. data/src/core/lib/support/{fork.c → fork.cc} +2 -2
  426. data/src/core/lib/support/{histogram.c → histogram.cc} +25 -26
  427. data/src/core/lib/support/{host_port.c → host_port.cc} +16 -16
  428. data/src/core/lib/support/{log.c → log.cc} +8 -8
  429. data/src/core/lib/support/{log_android.c → log_android.cc} +7 -7
  430. data/src/core/lib/support/{log_linux.c → log_linux.cc} +8 -8
  431. data/src/core/lib/support/{log_posix.c → log_posix.cc} +9 -10
  432. data/src/core/lib/support/{log_windows.c → log_windows.cc} +7 -7
  433. data/src/core/lib/support/manual_constructor.h +211 -0
  434. data/src/core/lib/support/memory.h +41 -0
  435. data/src/core/lib/support/mpscq.cc +114 -0
  436. data/src/core/lib/support/mpscq.h +45 -7
  437. data/src/core/lib/support/{murmur_hash.c → murmur_hash.cc} +9 -12
  438. data/src/core/lib/support/murmur_hash.h +9 -1
  439. data/src/core/lib/support/spinlock.h +8 -1
  440. data/src/core/lib/support/{string.c → string.cc} +56 -55
  441. data/src/core/lib/support/string.h +21 -21
  442. data/src/core/lib/support/{string_posix.c → string_posix.cc} +5 -4
  443. data/src/core/lib/support/{string_util_windows.c → string_util_windows.cc} +9 -6
  444. data/src/core/lib/support/{string_windows.c → string_windows.cc} +3 -2
  445. data/src/core/lib/support/string_windows.h +8 -0
  446. data/src/core/lib/support/{subprocess_posix.c → subprocess_posix.cc} +13 -13
  447. data/src/core/lib/support/{subprocess_windows.c → subprocess_windows.cc} +9 -9
  448. data/src/core/lib/support/{sync.c → sync.cc} +22 -22
  449. data/src/core/lib/support/{sync_posix.c → sync_posix.cc} +6 -2
  450. data/src/core/lib/support/{sync_windows.c → sync_windows.cc} +14 -14
  451. data/src/core/lib/support/{thd.c → thd.cc} +0 -0
  452. data/src/core/lib/support/{thd_posix.c → thd_posix.cc} +10 -10
  453. data/src/core/lib/support/{thd_windows.c → thd_windows.cc} +10 -10
  454. data/src/core/lib/support/{time.c → time.cc} +0 -0
  455. data/src/core/lib/support/{time_posix.c → time_posix.cc} +5 -6
  456. data/src/core/lib/support/{time_precise.c → time_precise.cc} +6 -4
  457. data/src/core/lib/support/time_precise.h +9 -1
  458. data/src/core/lib/support/{time_windows.c → time_windows.cc} +2 -3
  459. data/src/core/lib/support/{tls_pthread.c → tls_pthread.cc} +2 -2
  460. data/src/core/lib/support/tmpfile.h +1 -1
  461. data/src/core/lib/support/{tmpfile_msys.c → tmpfile_msys.cc} +2 -2
  462. data/src/core/lib/support/{tmpfile_posix.c → tmpfile_posix.cc} +7 -7
  463. data/src/core/lib/support/{tmpfile_windows.c → tmpfile_windows.cc} +2 -2
  464. data/src/core/lib/support/{wrap_memcpy.c → wrap_memcpy.cc} +4 -2
  465. data/src/core/lib/surface/{alarm.c → alarm.cc} +32 -31
  466. data/src/core/lib/surface/alarm_internal.h +10 -2
  467. data/src/core/lib/surface/{api_trace.c → api_trace.cc} +1 -1
  468. data/src/core/lib/surface/api_trace.h +2 -2
  469. data/src/core/lib/surface/{byte_buffer.c → byte_buffer.cc} +13 -13
  470. data/src/core/lib/surface/{byte_buffer_reader.c → byte_buffer_reader.cc} +9 -9
  471. data/src/core/lib/surface/{call.c → call.cc} +379 -372
  472. data/src/core/lib/surface/call.h +37 -38
  473. data/src/core/lib/surface/{call_details.c → call_details.cc} +0 -0
  474. data/src/core/lib/surface/{call_log_batch.c → call_log_batch.cc} +13 -11
  475. data/src/core/lib/surface/call_test_only.h +5 -5
  476. data/src/core/lib/surface/{channel.c → channel.cc} +94 -95
  477. data/src/core/lib/surface/channel.h +29 -21
  478. data/src/core/lib/surface/{channel_init.c → channel_init.cc} +13 -13
  479. data/src/core/lib/surface/channel_init.h +6 -6
  480. data/src/core/lib/surface/{channel_ping.c → channel_ping.cc} +12 -12
  481. data/src/core/lib/surface/{channel_stack_type.c → channel_stack_type.cc} +1 -1
  482. data/src/core/lib/surface/channel_stack_type.h +9 -1
  483. data/src/core/lib/surface/{completion_queue.c → completion_queue.cc} +416 -379
  484. data/src/core/lib/surface/completion_queue.h +29 -29
  485. data/src/core/lib/surface/{completion_queue_factory.c → completion_queue_factory.cc} +1 -1
  486. data/src/core/lib/surface/completion_queue_factory.h +8 -0
  487. data/src/core/lib/surface/{event_string.c → event_string.cc} +9 -9
  488. data/src/core/lib/surface/event_string.h +9 -1
  489. data/src/core/lib/surface/{init.c → init.cc} +16 -39
  490. data/src/core/lib/surface/init.h +8 -0
  491. data/src/core/lib/surface/{init_secure.c → init_secure.cc} +12 -25
  492. data/src/core/lib/surface/lame_client.cc +38 -40
  493. data/src/core/lib/surface/lame_client.h +8 -0
  494. data/src/core/lib/surface/{metadata_array.c → metadata_array.cc} +0 -0
  495. data/src/core/lib/surface/{server.c → server.cc} +340 -404
  496. data/src/core/lib/surface/server.h +22 -14
  497. data/src/core/lib/surface/{validate_metadata.c → validate_metadata.cc} +10 -9
  498. data/src/core/lib/surface/validate_metadata.h +10 -2
  499. data/src/core/lib/surface/{version.c → version.cc} +2 -2
  500. data/src/core/lib/transport/bdp_estimator.cc +84 -0
  501. data/src/core/lib/transport/bdp_estimator.h +67 -42
  502. data/src/core/lib/transport/{byte_stream.c → byte_stream.cc} +51 -51
  503. data/src/core/lib/transport/byte_stream.h +41 -33
  504. data/src/core/lib/transport/{connectivity_state.c → connectivity_state.cc} +36 -40
  505. data/src/core/lib/transport/connectivity_state.h +29 -21
  506. data/src/core/lib/transport/{error_utils.c → error_utils.cc} +26 -22
  507. data/src/core/lib/transport/error_utils.h +18 -6
  508. data/src/core/lib/transport/{metadata.c → metadata.cc} +92 -88
  509. data/src/core/lib/transport/metadata.h +22 -20
  510. data/src/core/lib/transport/{metadata_batch.c → metadata_batch.cc} +78 -79
  511. data/src/core/lib/transport/metadata_batch.h +46 -45
  512. data/src/core/lib/transport/pid_controller.cc +48 -0
  513. data/src/core/lib/transport/pid_controller.h +84 -32
  514. data/src/core/lib/transport/{service_config.c → service_config.cc} +66 -48
  515. data/src/core/lib/transport/service_config.h +11 -2
  516. data/src/core/lib/transport/{static_metadata.c → static_metadata.cc} +2 -2
  517. data/src/core/lib/transport/static_metadata.h +30 -23
  518. data/src/core/lib/transport/{status_conversion.c → status_conversion.cc} +4 -3
  519. data/src/core/lib/transport/status_conversion.h +12 -2
  520. data/src/core/lib/transport/{timeout_encoding.c → timeout_encoding.cc} +28 -61
  521. data/src/core/lib/transport/timeout_encoding.h +11 -2
  522. data/src/core/lib/transport/{transport.c → transport.cc} +79 -79
  523. data/src/core/lib/transport/transport.h +78 -80
  524. data/src/core/lib/transport/transport_impl.h +27 -19
  525. data/src/core/lib/transport/{transport_op_string.c → transport_op_string.cc} +32 -30
  526. data/src/core/plugin_registry/{grpc_plugin_registry.c → grpc_plugin_registry.cc} +34 -38
  527. data/src/core/tsi/{fake_transport_security.c → fake_transport_security.cc} +141 -132
  528. data/src/core/tsi/fake_transport_security.h +5 -5
  529. data/src/core/tsi/{gts_transport_security.c → gts_transport_security.cc} +4 -4
  530. data/src/core/tsi/gts_transport_security.h +11 -3
  531. data/src/core/tsi/{ssl_transport_security.c → ssl_transport_security.cc} +309 -300
  532. data/src/core/tsi/ssl_transport_security.h +25 -25
  533. data/src/core/tsi/ssl_types.h +8 -0
  534. data/src/core/tsi/{transport_security.c → transport_security.cc} +94 -87
  535. data/src/core/tsi/transport_security.h +55 -55
  536. data/src/core/tsi/{transport_security_adapter.c → transport_security_adapter.cc} +58 -55
  537. data/src/core/tsi/transport_security_adapter.h +2 -2
  538. data/src/core/tsi/{transport_security_grpc.c → transport_security_grpc.cc} +21 -21
  539. data/src/core/tsi/transport_security_grpc.h +19 -19
  540. data/src/core/tsi/transport_security_interface.h +41 -41
  541. data/src/ruby/ext/grpc/extconf.rb +4 -2
  542. data/src/ruby/ext/grpc/rb_byte_buffer.c +5 -5
  543. data/src/ruby/ext/grpc/rb_byte_buffer.h +2 -2
  544. data/src/ruby/ext/grpc/rb_call.c +41 -42
  545. data/src/ruby/ext/grpc/rb_call.h +6 -6
  546. data/src/ruby/ext/grpc/rb_call_credentials.c +30 -30
  547. data/src/ruby/ext/grpc/rb_channel.c +87 -87
  548. data/src/ruby/ext/grpc/rb_channel_credentials.c +23 -23
  549. data/src/ruby/ext/grpc/rb_completion_queue.c +11 -11
  550. data/src/ruby/ext/grpc/rb_completion_queue.h +3 -3
  551. data/src/ruby/ext/grpc/rb_compression_options.c +20 -20
  552. data/src/ruby/ext/grpc/rb_event_thread.c +14 -14
  553. data/src/ruby/ext/grpc/rb_event_thread.h +1 -1
  554. data/src/ruby/ext/grpc/rb_grpc.c +8 -8
  555. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +16 -58
  556. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +242 -306
  557. data/src/ruby/ext/grpc/rb_server.c +23 -23
  558. data/src/ruby/ext/grpc/rb_server_credentials.c +13 -13
  559. data/src/ruby/lib/grpc/generic/rpc_server.rb +25 -12
  560. data/src/ruby/lib/grpc/version.rb +1 -1
  561. data/src/ruby/pb/grpc/health/checker.rb +14 -0
  562. data/src/ruby/spec/pb/health/checker_spec.rb +29 -0
  563. data/third_party/cares/config_freebsd/ares_config.h +502 -0
  564. data/third_party/cares/config_openbsd/ares_config.h +502 -0
  565. metadata +302 -328
  566. data/src/core/ext/census/aggregation.h +0 -51
  567. data/src/core/ext/census/base_resources.c +0 -56
  568. data/src/core/ext/census/base_resources.h +0 -24
  569. data/src/core/ext/census/census_interface.h +0 -61
  570. data/src/core/ext/census/census_rpc_stats.h +0 -86
  571. data/src/core/ext/census/context.c +0 -496
  572. data/src/core/ext/census/gen/census.pb.c +0 -161
  573. data/src/core/ext/census/gen/census.pb.h +0 -280
  574. data/src/core/ext/census/gen/trace_context.pb.c +0 -39
  575. data/src/core/ext/census/gen/trace_context.pb.h +0 -78
  576. data/src/core/ext/census/grpc_filter.c +0 -196
  577. data/src/core/ext/census/grpc_plugin.c +0 -70
  578. data/src/core/ext/census/initialize.c +0 -51
  579. data/src/core/ext/census/intrusive_hash_map.c +0 -305
  580. data/src/core/ext/census/intrusive_hash_map.h +0 -152
  581. data/src/core/ext/census/intrusive_hash_map_internal.h +0 -48
  582. data/src/core/ext/census/mlog.c +0 -586
  583. data/src/core/ext/census/mlog.h +0 -80
  584. data/src/core/ext/census/operation.c +0 -48
  585. data/src/core/ext/census/placeholders.c +0 -49
  586. data/src/core/ext/census/resource.c +0 -303
  587. data/src/core/ext/census/resource.h +0 -48
  588. data/src/core/ext/census/rpc_metric_id.h +0 -36
  589. data/src/core/ext/census/trace_context.c +0 -71
  590. data/src/core/ext/census/trace_context.h +0 -56
  591. data/src/core/ext/census/trace_label.h +0 -46
  592. data/src/core/ext/census/trace_propagation.h +0 -48
  593. data/src/core/ext/census/trace_status.h +0 -30
  594. data/src/core/ext/census/trace_string.h +0 -35
  595. data/src/core/ext/census/tracing.c +0 -55
  596. data/src/core/ext/census/tracing.h +0 -109
  597. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.c +0 -714
  598. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.c +0 -924
  599. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.c +0 -60
  600. data/src/core/ext/transport/chttp2/transport/flow_control.c +0 -502
  601. data/src/core/ext/transport/chttp2/transport/writing.c +0 -534
  602. data/src/core/lib/debug/trace.c +0 -146
  603. data/src/core/lib/iomgr/closure.c +0 -219
  604. data/src/core/lib/iomgr/ev_epollex_linux.c +0 -1461
  605. data/src/core/lib/iomgr/ev_posix.c +0 -266
  606. data/src/core/lib/iomgr/exec_ctx.c +0 -113
  607. data/src/core/lib/iomgr/tcp_uv.c +0 -381
  608. data/src/core/lib/security/credentials/ssl/ssl_credentials.c +0 -194
  609. data/src/core/lib/security/transport/security_connector.c +0 -914
  610. data/src/core/lib/support/backoff.c +0 -72
  611. data/src/core/lib/support/backoff.h +0 -56
  612. data/src/core/lib/support/mpscq.c +0 -79
  613. data/src/core/lib/support/stack_lockfree.c +0 -137
  614. data/src/core/lib/support/stack_lockfree.h +0 -38
  615. data/src/core/lib/transport/bdp_estimator.c +0 -110
  616. data/src/core/lib/transport/pid_controller.c +0 -63
@@ -19,35 +19,44 @@
19
19
  #ifndef GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_DNS_C_ARES_GRPC_ARES_EV_DRIVER_H
20
20
  #define GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_DNS_C_ARES_GRPC_ARES_EV_DRIVER_H
21
21
 
22
+ #include <ares.h>
22
23
  #include "src/core/lib/iomgr/exec_ctx.h"
23
24
  #include "src/core/lib/iomgr/pollset_set.h"
24
25
 
26
+ #ifdef __cplusplus
27
+ extern "C" {
28
+ #endif
29
+
25
30
  typedef struct grpc_ares_ev_driver grpc_ares_ev_driver;
26
31
 
27
32
  /* Start \a ev_driver. It will keep working until all IO on its ares_channel is
28
33
  done, or grpc_ares_ev_driver_destroy() is called. It may notify the callbacks
29
34
  bound to its ares_channel when necessary. */
30
- void grpc_ares_ev_driver_start(grpc_exec_ctx *exec_ctx,
31
- grpc_ares_ev_driver *ev_driver);
35
+ void grpc_ares_ev_driver_start(grpc_exec_ctx* exec_ctx,
36
+ grpc_ares_ev_driver* ev_driver);
32
37
 
33
38
  /* Returns the ares_channel owned by \a ev_driver. To bind a c-ares query to
34
39
  \a ev_driver, use the ares_channel owned by \a ev_driver as the arg of the
35
40
  query. */
36
- ares_channel *grpc_ares_ev_driver_get_channel(grpc_ares_ev_driver *ev_driver);
41
+ ares_channel* grpc_ares_ev_driver_get_channel(grpc_ares_ev_driver* ev_driver);
37
42
 
38
43
  /* Creates a new grpc_ares_ev_driver. Returns GRPC_ERROR_NONE if \a ev_driver is
39
44
  created successfully. */
40
- grpc_error *grpc_ares_ev_driver_create(grpc_ares_ev_driver **ev_driver,
41
- grpc_pollset_set *pollset_set);
45
+ grpc_error* grpc_ares_ev_driver_create(grpc_ares_ev_driver** ev_driver,
46
+ grpc_pollset_set* pollset_set);
42
47
 
43
48
  /* Destroys \a ev_driver asynchronously. Pending lookups made on \a ev_driver
44
49
  will be cancelled and their on_done callbacks will be invoked with a status
45
50
  of ARES_ECANCELLED. */
46
- void grpc_ares_ev_driver_destroy(grpc_ares_ev_driver *ev_driver);
51
+ void grpc_ares_ev_driver_destroy(grpc_ares_ev_driver* ev_driver);
47
52
 
48
53
  /* Shutdown all the grpc_fds used by \a ev_driver */
49
- void grpc_ares_ev_driver_shutdown(grpc_exec_ctx *exec_ctx,
50
- grpc_ares_ev_driver *ev_driver);
54
+ void grpc_ares_ev_driver_shutdown(grpc_exec_ctx* exec_ctx,
55
+ grpc_ares_ev_driver* ev_driver);
56
+
57
+ #ifdef __cplusplus
58
+ }
59
+ #endif
51
60
 
52
61
  #endif /* GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_RESOLVER_DNS_C_ARES_GRPC_ARES_EV_DRIVER_H \
53
- */
62
+ */
@@ -37,7 +37,7 @@
37
37
 
38
38
  typedef struct fd_node {
39
39
  /** the owner of this fd node */
40
- grpc_ares_ev_driver *ev_driver;
40
+ grpc_ares_ev_driver* ev_driver;
41
41
  /** a closure wrapping on_readable_cb, which should be invoked when the
42
42
  grpc_fd in this node becomes readable. */
43
43
  grpc_closure read_closure;
@@ -45,12 +45,12 @@ typedef struct fd_node {
45
45
  grpc_fd in this node becomes writable. */
46
46
  grpc_closure write_closure;
47
47
  /** next fd node in the list */
48
- struct fd_node *next;
48
+ struct fd_node* next;
49
49
 
50
50
  /** mutex guarding the rest of the state */
51
51
  gpr_mu mu;
52
52
  /** the grpc_fd owned by this fd node */
53
- grpc_fd *fd;
53
+ grpc_fd* fd;
54
54
  /** if the readable closure has been registered */
55
55
  bool readable_registered;
56
56
  /** if the writable closure has been registered */
@@ -63,42 +63,42 @@ struct grpc_ares_ev_driver {
63
63
  /** the ares_channel owned by this event driver */
64
64
  ares_channel channel;
65
65
  /** pollset set for driving the IO events of the channel */
66
- grpc_pollset_set *pollset_set;
66
+ grpc_pollset_set* pollset_set;
67
67
  /** refcount of the event driver */
68
68
  gpr_refcount refs;
69
69
 
70
70
  /** mutex guarding the rest of the state */
71
71
  gpr_mu mu;
72
72
  /** a list of grpc_fd that this event driver is currently using. */
73
- fd_node *fds;
73
+ fd_node* fds;
74
74
  /** is this event driver currently working? */
75
75
  bool working;
76
76
  /** is this event driver being shut down */
77
77
  bool shutting_down;
78
78
  };
79
79
 
80
- static void grpc_ares_notify_on_event_locked(grpc_exec_ctx *exec_ctx,
81
- grpc_ares_ev_driver *ev_driver);
80
+ static void grpc_ares_notify_on_event_locked(grpc_exec_ctx* exec_ctx,
81
+ grpc_ares_ev_driver* ev_driver);
82
82
 
83
- static grpc_ares_ev_driver *grpc_ares_ev_driver_ref(
84
- grpc_ares_ev_driver *ev_driver) {
83
+ static grpc_ares_ev_driver* grpc_ares_ev_driver_ref(
84
+ grpc_ares_ev_driver* ev_driver) {
85
85
  gpr_log(GPR_DEBUG, "Ref ev_driver %" PRIuPTR, (uintptr_t)ev_driver);
86
86
  gpr_ref(&ev_driver->refs);
87
87
  return ev_driver;
88
88
  }
89
89
 
90
- static void grpc_ares_ev_driver_unref(grpc_ares_ev_driver *ev_driver) {
90
+ static void grpc_ares_ev_driver_unref(grpc_ares_ev_driver* ev_driver) {
91
91
  gpr_log(GPR_DEBUG, "Unref ev_driver %" PRIuPTR, (uintptr_t)ev_driver);
92
92
  if (gpr_unref(&ev_driver->refs)) {
93
93
  gpr_log(GPR_DEBUG, "destroy ev_driver %" PRIuPTR, (uintptr_t)ev_driver);
94
- GPR_ASSERT(ev_driver->fds == NULL);
94
+ GPR_ASSERT(ev_driver->fds == nullptr);
95
95
  gpr_mu_destroy(&ev_driver->mu);
96
96
  ares_destroy(ev_driver->channel);
97
97
  gpr_free(ev_driver);
98
98
  }
99
99
  }
100
100
 
101
- static void fd_node_destroy(grpc_exec_ctx *exec_ctx, fd_node *fdn) {
101
+ static void fd_node_destroy(grpc_exec_ctx* exec_ctx, fd_node* fdn) {
102
102
  gpr_log(GPR_DEBUG, "delete fd: %d", grpc_fd_wrapped_fd(fdn->fd));
103
103
  GPR_ASSERT(!fdn->readable_registered);
104
104
  GPR_ASSERT(!fdn->writable_registered);
@@ -106,34 +106,35 @@ static void fd_node_destroy(grpc_exec_ctx *exec_ctx, fd_node *fdn) {
106
106
  /* c-ares library has closed the fd inside grpc_fd. This fd may be picked up
107
107
  immediately by another thread, and should not be closed by the following
108
108
  grpc_fd_orphan. */
109
- grpc_fd_orphan(exec_ctx, fdn->fd, NULL, NULL, true /* already_closed */,
109
+ grpc_fd_orphan(exec_ctx, fdn->fd, nullptr, nullptr, true /* already_closed */,
110
110
  "c-ares query finished");
111
111
  gpr_free(fdn);
112
112
  }
113
113
 
114
- static void fd_node_shutdown(grpc_exec_ctx *exec_ctx, fd_node *fdn) {
114
+ static void fd_node_shutdown(grpc_exec_ctx* exec_ctx, fd_node* fdn) {
115
115
  gpr_mu_lock(&fdn->mu);
116
116
  fdn->shutting_down = true;
117
117
  if (!fdn->readable_registered && !fdn->writable_registered) {
118
118
  gpr_mu_unlock(&fdn->mu);
119
119
  fd_node_destroy(exec_ctx, fdn);
120
120
  } else {
121
- grpc_fd_shutdown(exec_ctx, fdn->fd, GRPC_ERROR_CREATE_FROM_STATIC_STRING(
122
- "c-ares fd shutdown"));
121
+ grpc_fd_shutdown(
122
+ exec_ctx, fdn->fd,
123
+ GRPC_ERROR_CREATE_FROM_STATIC_STRING("c-ares fd shutdown"));
123
124
  gpr_mu_unlock(&fdn->mu);
124
125
  }
125
126
  }
126
127
 
127
- grpc_error *grpc_ares_ev_driver_create(grpc_ares_ev_driver **ev_driver,
128
- grpc_pollset_set *pollset_set) {
129
- *ev_driver = (grpc_ares_ev_driver *)gpr_malloc(sizeof(grpc_ares_ev_driver));
128
+ grpc_error* grpc_ares_ev_driver_create(grpc_ares_ev_driver** ev_driver,
129
+ grpc_pollset_set* pollset_set) {
130
+ *ev_driver = (grpc_ares_ev_driver*)gpr_malloc(sizeof(grpc_ares_ev_driver));
130
131
  int status = ares_init(&(*ev_driver)->channel);
131
132
  gpr_log(GPR_DEBUG, "grpc_ares_ev_driver_create");
132
133
  if (status != ARES_SUCCESS) {
133
- char *err_msg;
134
+ char* err_msg;
134
135
  gpr_asprintf(&err_msg, "Failed to init ares channel. C-ares error: %s",
135
136
  ares_strerror(status));
136
- grpc_error *err = GRPC_ERROR_CREATE_FROM_COPIED_STRING(err_msg);
137
+ grpc_error* err = GRPC_ERROR_CREATE_FROM_COPIED_STRING(err_msg);
137
138
  gpr_free(err_msg);
138
139
  gpr_free(*ev_driver);
139
140
  return err;
@@ -141,13 +142,13 @@ grpc_error *grpc_ares_ev_driver_create(grpc_ares_ev_driver **ev_driver,
141
142
  gpr_mu_init(&(*ev_driver)->mu);
142
143
  gpr_ref_init(&(*ev_driver)->refs, 1);
143
144
  (*ev_driver)->pollset_set = pollset_set;
144
- (*ev_driver)->fds = NULL;
145
+ (*ev_driver)->fds = nullptr;
145
146
  (*ev_driver)->working = false;
146
147
  (*ev_driver)->shutting_down = false;
147
148
  return GRPC_ERROR_NONE;
148
149
  }
149
150
 
150
- void grpc_ares_ev_driver_destroy(grpc_ares_ev_driver *ev_driver) {
151
+ void grpc_ares_ev_driver_destroy(grpc_ares_ev_driver* ev_driver) {
151
152
  // It's not safe to shut down remaining fds here directly, becauses
152
153
  // ares_host_callback does not provide an exec_ctx. We mark the event driver
153
154
  // as being shut down. If the event driver is working,
@@ -159,14 +160,15 @@ void grpc_ares_ev_driver_destroy(grpc_ares_ev_driver *ev_driver) {
159
160
  grpc_ares_ev_driver_unref(ev_driver);
160
161
  }
161
162
 
162
- void grpc_ares_ev_driver_shutdown(grpc_exec_ctx *exec_ctx,
163
- grpc_ares_ev_driver *ev_driver) {
163
+ void grpc_ares_ev_driver_shutdown(grpc_exec_ctx* exec_ctx,
164
+ grpc_ares_ev_driver* ev_driver) {
164
165
  gpr_mu_lock(&ev_driver->mu);
165
166
  ev_driver->shutting_down = true;
166
- fd_node *fn = ev_driver->fds;
167
- while (fn != NULL) {
168
- grpc_fd_shutdown(exec_ctx, fn->fd, GRPC_ERROR_CREATE_FROM_STATIC_STRING(
169
- "grpc_ares_ev_driver_shutdown"));
167
+ fd_node* fn = ev_driver->fds;
168
+ while (fn != nullptr) {
169
+ grpc_fd_shutdown(
170
+ exec_ctx, fn->fd,
171
+ GRPC_ERROR_CREATE_FROM_STATIC_STRING("grpc_ares_ev_driver_shutdown"));
170
172
  fn = fn->next;
171
173
  }
172
174
  gpr_mu_unlock(&ev_driver->mu);
@@ -174,33 +176,33 @@ void grpc_ares_ev_driver_shutdown(grpc_exec_ctx *exec_ctx,
174
176
 
175
177
  // Search fd in the fd_node list head. This is an O(n) search, the max possible
176
178
  // value of n is ARES_GETSOCK_MAXNUM (16). n is typically 1 - 2 in our tests.
177
- static fd_node *pop_fd_node(fd_node **head, int fd) {
179
+ static fd_node* pop_fd_node(fd_node** head, int fd) {
178
180
  fd_node dummy_head;
179
181
  dummy_head.next = *head;
180
- fd_node *node = &dummy_head;
181
- while (node->next != NULL) {
182
+ fd_node* node = &dummy_head;
183
+ while (node->next != nullptr) {
182
184
  if (grpc_fd_wrapped_fd(node->next->fd) == fd) {
183
- fd_node *ret = node->next;
185
+ fd_node* ret = node->next;
184
186
  node->next = node->next->next;
185
187
  *head = dummy_head.next;
186
188
  return ret;
187
189
  }
188
190
  node = node->next;
189
191
  }
190
- return NULL;
192
+ return nullptr;
191
193
  }
192
194
 
193
195
  /* Check if \a fd is still readable */
194
- static bool grpc_ares_is_fd_still_readable(grpc_ares_ev_driver *ev_driver,
196
+ static bool grpc_ares_is_fd_still_readable(grpc_ares_ev_driver* ev_driver,
195
197
  int fd) {
196
198
  size_t bytes_available = 0;
197
199
  return ioctl(fd, FIONREAD, &bytes_available) == 0 && bytes_available > 0;
198
200
  }
199
201
 
200
- static void on_readable_cb(grpc_exec_ctx *exec_ctx, void *arg,
201
- grpc_error *error) {
202
- fd_node *fdn = (fd_node *)arg;
203
- grpc_ares_ev_driver *ev_driver = fdn->ev_driver;
202
+ static void on_readable_cb(grpc_exec_ctx* exec_ctx, void* arg,
203
+ grpc_error* error) {
204
+ fd_node* fdn = (fd_node*)arg;
205
+ grpc_ares_ev_driver* ev_driver = fdn->ev_driver;
204
206
  gpr_mu_lock(&fdn->mu);
205
207
  const int fd = grpc_fd_wrapped_fd(fdn->fd);
206
208
  fdn->readable_registered = false;
@@ -232,10 +234,10 @@ static void on_readable_cb(grpc_exec_ctx *exec_ctx, void *arg,
232
234
  grpc_ares_ev_driver_unref(ev_driver);
233
235
  }
234
236
 
235
- static void on_writable_cb(grpc_exec_ctx *exec_ctx, void *arg,
236
- grpc_error *error) {
237
- fd_node *fdn = (fd_node *)arg;
238
- grpc_ares_ev_driver *ev_driver = fdn->ev_driver;
237
+ static void on_writable_cb(grpc_exec_ctx* exec_ctx, void* arg,
238
+ grpc_error* error) {
239
+ fd_node* fdn = (fd_node*)arg;
240
+ grpc_ares_ev_driver* ev_driver = fdn->ev_driver;
239
241
  gpr_mu_lock(&fdn->mu);
240
242
  const int fd = grpc_fd_wrapped_fd(fdn->fd);
241
243
  fdn->writable_registered = false;
@@ -265,15 +267,15 @@ static void on_writable_cb(grpc_exec_ctx *exec_ctx, void *arg,
265
267
  grpc_ares_ev_driver_unref(ev_driver);
266
268
  }
267
269
 
268
- ares_channel *grpc_ares_ev_driver_get_channel(grpc_ares_ev_driver *ev_driver) {
270
+ ares_channel* grpc_ares_ev_driver_get_channel(grpc_ares_ev_driver* ev_driver) {
269
271
  return &ev_driver->channel;
270
272
  }
271
273
 
272
274
  // Get the file descriptors used by the ev_driver's ares channel, register
273
275
  // driver_closure with these filedescriptors.
274
- static void grpc_ares_notify_on_event_locked(grpc_exec_ctx *exec_ctx,
275
- grpc_ares_ev_driver *ev_driver) {
276
- fd_node *new_list = NULL;
276
+ static void grpc_ares_notify_on_event_locked(grpc_exec_ctx* exec_ctx,
277
+ grpc_ares_ev_driver* ev_driver) {
278
+ fd_node* new_list = nullptr;
277
279
  if (!ev_driver->shutting_down) {
278
280
  ares_socket_t socks[ARES_GETSOCK_MAXNUM];
279
281
  int socks_bitmask =
@@ -281,12 +283,12 @@ static void grpc_ares_notify_on_event_locked(grpc_exec_ctx *exec_ctx,
281
283
  for (size_t i = 0; i < ARES_GETSOCK_MAXNUM; i++) {
282
284
  if (ARES_GETSOCK_READABLE(socks_bitmask, i) ||
283
285
  ARES_GETSOCK_WRITABLE(socks_bitmask, i)) {
284
- fd_node *fdn = pop_fd_node(&ev_driver->fds, socks[i]);
286
+ fd_node* fdn = pop_fd_node(&ev_driver->fds, socks[i]);
285
287
  // Create a new fd_node if sock[i] is not in the fd_node list.
286
- if (fdn == NULL) {
287
- char *fd_name;
288
+ if (fdn == nullptr) {
289
+ char* fd_name;
288
290
  gpr_asprintf(&fd_name, "ares_ev_driver-%" PRIuPTR, i);
289
- fdn = (fd_node *)gpr_malloc(sizeof(fd_node));
291
+ fdn = (fd_node*)gpr_malloc(sizeof(fd_node));
290
292
  gpr_log(GPR_DEBUG, "new fd: %d", socks[i]);
291
293
  fdn->fd = grpc_fd_create(socks[i], fd_name);
292
294
  fdn->ev_driver = ev_driver;
@@ -330,21 +332,21 @@ static void grpc_ares_notify_on_event_locked(grpc_exec_ctx *exec_ctx,
330
332
  // Any remaining fds in ev_driver->fds were not returned by ares_getsock() and
331
333
  // are therefore no longer in use, so they can be shut down and removed from
332
334
  // the list.
333
- while (ev_driver->fds != NULL) {
334
- fd_node *cur = ev_driver->fds;
335
+ while (ev_driver->fds != nullptr) {
336
+ fd_node* cur = ev_driver->fds;
335
337
  ev_driver->fds = ev_driver->fds->next;
336
338
  fd_node_shutdown(exec_ctx, cur);
337
339
  }
338
340
  ev_driver->fds = new_list;
339
341
  // If the ev driver has no working fd, all the tasks are done.
340
- if (new_list == NULL) {
342
+ if (new_list == nullptr) {
341
343
  ev_driver->working = false;
342
344
  gpr_log(GPR_DEBUG, "ev driver stop working");
343
345
  }
344
346
  }
345
347
 
346
- void grpc_ares_ev_driver_start(grpc_exec_ctx *exec_ctx,
347
- grpc_ares_ev_driver *ev_driver) {
348
+ void grpc_ares_ev_driver_start(grpc_exec_ctx* exec_ctx,
349
+ grpc_ares_ev_driver* ev_driver) {
348
350
  gpr_mu_lock(&ev_driver->mu);
349
351
  if (!ev_driver->working) {
350
352
  ev_driver->working = true;
@@ -51,13 +51,13 @@ struct grpc_ares_request {
51
51
  struct ares_addr_port_node dns_server_addr;
52
52
  /** following members are set in grpc_resolve_address_ares_impl */
53
53
  /** closure to call when the request completes */
54
- grpc_closure *on_done;
54
+ grpc_closure* on_done;
55
55
  /** the pointer to receive the resolved addresses */
56
- grpc_lb_addresses **lb_addrs_out;
56
+ grpc_lb_addresses** lb_addrs_out;
57
57
  /** the pointer to receive the service config in JSON */
58
- char **service_config_json_out;
58
+ char** service_config_json_out;
59
59
  /** the evernt driver used by this request */
60
- grpc_ares_ev_driver *ev_driver;
60
+ grpc_ares_ev_driver* ev_driver;
61
61
  /** number of ongoing queries */
62
62
  gpr_refcount pending_queries;
63
63
 
@@ -66,15 +66,15 @@ struct grpc_ares_request {
66
66
  /** is there at least one successful query, set in on_done_cb */
67
67
  bool success;
68
68
  /** the errors explaining the request failure, set in on_done_cb */
69
- grpc_error *error;
69
+ grpc_error* error;
70
70
  };
71
71
 
72
72
  typedef struct grpc_ares_hostbyname_request {
73
73
  /** following members are set in create_hostbyname_request */
74
74
  /** the top-level request instance */
75
- grpc_ares_request *parent_request;
75
+ grpc_ares_request* parent_request;
76
76
  /** host to resolve, parsed from the name to resolve */
77
- char *host;
77
+ char* host;
78
78
  /** port to fill in sockaddr_in, parsed from the name to resolve */
79
79
  uint16_t port;
80
80
  /** is it a grpclb address */
@@ -83,7 +83,7 @@ typedef struct grpc_ares_hostbyname_request {
83
83
 
84
84
  static void do_basic_init(void) { gpr_mu_init(&g_init_mu); }
85
85
 
86
- static uint16_t strhtons(const char *port) {
86
+ static uint16_t strhtons(const char* port) {
87
87
  if (strcmp(port, "http") == 0) {
88
88
  return htons(80);
89
89
  } else if (strcmp(port, "https") == 0) {
@@ -92,17 +92,17 @@ static uint16_t strhtons(const char *port) {
92
92
  return htons((unsigned short)atoi(port));
93
93
  }
94
94
 
95
- static void grpc_ares_request_ref(grpc_ares_request *r) {
95
+ static void grpc_ares_request_ref(grpc_ares_request* r) {
96
96
  gpr_ref(&r->pending_queries);
97
97
  }
98
98
 
99
- static void grpc_ares_request_unref(grpc_exec_ctx *exec_ctx,
100
- grpc_ares_request *r) {
99
+ static void grpc_ares_request_unref(grpc_exec_ctx* exec_ctx,
100
+ grpc_ares_request* r) {
101
101
  /* If there are no pending queries, invoke on_done callback and destroy the
102
102
  request */
103
103
  if (gpr_unref(&r->pending_queries)) {
104
104
  /* TODO(zyc): Sort results with RFC6724 before invoking on_done. */
105
- if (exec_ctx == NULL) {
105
+ if (exec_ctx == nullptr) {
106
106
  /* A new exec_ctx is created here, as the c-ares interface does not
107
107
  provide one in ares_host_callback. It's safe to schedule on_done with
108
108
  the newly created exec_ctx, since the caller has been warned not to
@@ -120,10 +120,10 @@ static void grpc_ares_request_unref(grpc_exec_ctx *exec_ctx,
120
120
  }
121
121
  }
122
122
 
123
- static grpc_ares_hostbyname_request *create_hostbyname_request(
124
- grpc_ares_request *parent_request, char *host, uint16_t port,
123
+ static grpc_ares_hostbyname_request* create_hostbyname_request(
124
+ grpc_ares_request* parent_request, char* host, uint16_t port,
125
125
  bool is_balancer) {
126
- grpc_ares_hostbyname_request *hr = (grpc_ares_hostbyname_request *)gpr_zalloc(
126
+ grpc_ares_hostbyname_request* hr = (grpc_ares_hostbyname_request*)gpr_zalloc(
127
127
  sizeof(grpc_ares_hostbyname_request));
128
128
  hr->parent_request = parent_request;
129
129
  hr->host = gpr_strdup(host);
@@ -133,32 +133,32 @@ static grpc_ares_hostbyname_request *create_hostbyname_request(
133
133
  return hr;
134
134
  }
135
135
 
136
- static void destroy_hostbyname_request(grpc_exec_ctx *exec_ctx,
137
- grpc_ares_hostbyname_request *hr) {
136
+ static void destroy_hostbyname_request(grpc_exec_ctx* exec_ctx,
137
+ grpc_ares_hostbyname_request* hr) {
138
138
  grpc_ares_request_unref(exec_ctx, hr->parent_request);
139
139
  gpr_free(hr->host);
140
140
  gpr_free(hr);
141
141
  }
142
142
 
143
- static void on_hostbyname_done_cb(void *arg, int status, int timeouts,
144
- struct hostent *hostent) {
145
- grpc_ares_hostbyname_request *hr = (grpc_ares_hostbyname_request *)arg;
146
- grpc_ares_request *r = hr->parent_request;
143
+ static void on_hostbyname_done_cb(void* arg, int status, int timeouts,
144
+ struct hostent* hostent) {
145
+ grpc_ares_hostbyname_request* hr = (grpc_ares_hostbyname_request*)arg;
146
+ grpc_ares_request* r = hr->parent_request;
147
147
  gpr_mu_lock(&r->mu);
148
148
  if (status == ARES_SUCCESS) {
149
149
  GRPC_ERROR_UNREF(r->error);
150
150
  r->error = GRPC_ERROR_NONE;
151
151
  r->success = true;
152
- grpc_lb_addresses **lb_addresses = r->lb_addrs_out;
153
- if (*lb_addresses == NULL) {
154
- *lb_addresses = grpc_lb_addresses_create(0, NULL);
152
+ grpc_lb_addresses** lb_addresses = r->lb_addrs_out;
153
+ if (*lb_addresses == nullptr) {
154
+ *lb_addresses = grpc_lb_addresses_create(0, nullptr);
155
155
  }
156
156
  size_t prev_naddr = (*lb_addresses)->num_addresses;
157
157
  size_t i;
158
- for (i = 0; hostent->h_addr_list[i] != NULL; i++) {
158
+ for (i = 0; hostent->h_addr_list[i] != nullptr; i++) {
159
159
  }
160
160
  (*lb_addresses)->num_addresses += i;
161
- (*lb_addresses)->addresses = (grpc_lb_address *)gpr_realloc(
161
+ (*lb_addresses)->addresses = (grpc_lb_address*)gpr_realloc(
162
162
  (*lb_addresses)->addresses,
163
163
  sizeof(grpc_lb_address) * (*lb_addresses)->num_addresses);
164
164
  for (i = prev_naddr; i < (*lb_addresses)->num_addresses; i++) {
@@ -174,8 +174,8 @@ static void on_hostbyname_done_cb(void *arg, int status, int timeouts,
174
174
  grpc_lb_addresses_set_address(
175
175
  *lb_addresses, i, &addr, addr_len,
176
176
  hr->is_balancer /* is_balancer */,
177
- hr->is_balancer ? hr->host : NULL /* balancer_name */,
178
- NULL /* user_data */);
177
+ hr->is_balancer ? hr->host : nullptr /* balancer_name */,
178
+ nullptr /* user_data */);
179
179
  char output[INET6_ADDRSTRLEN];
180
180
  ares_inet_ntop(AF_INET6, &addr.sin6_addr, output, INET6_ADDRSTRLEN);
181
181
  gpr_log(GPR_DEBUG,
@@ -195,8 +195,8 @@ static void on_hostbyname_done_cb(void *arg, int status, int timeouts,
195
195
  grpc_lb_addresses_set_address(
196
196
  *lb_addresses, i, &addr, addr_len,
197
197
  hr->is_balancer /* is_balancer */,
198
- hr->is_balancer ? hr->host : NULL /* balancer_name */,
199
- NULL /* user_data */);
198
+ hr->is_balancer ? hr->host : nullptr /* balancer_name */,
199
+ nullptr /* user_data */);
200
200
  char output[INET_ADDRSTRLEN];
201
201
  ares_inet_ntop(AF_INET, &addr.sin_addr, output, INET_ADDRSTRLEN);
202
202
  gpr_log(GPR_DEBUG,
@@ -208,10 +208,10 @@ static void on_hostbyname_done_cb(void *arg, int status, int timeouts,
208
208
  }
209
209
  }
210
210
  } else if (!r->success) {
211
- char *error_msg;
211
+ char* error_msg;
212
212
  gpr_asprintf(&error_msg, "C-ares status is not ARES_SUCCESS: %s",
213
213
  ares_strerror(status));
214
- grpc_error *error = GRPC_ERROR_CREATE_FROM_COPIED_STRING(error_msg);
214
+ grpc_error* error = GRPC_ERROR_CREATE_FROM_COPIED_STRING(error_msg);
215
215
  gpr_free(error_msg);
216
216
  if (r->error == GRPC_ERROR_NONE) {
217
217
  r->error = error;
@@ -220,43 +220,43 @@ static void on_hostbyname_done_cb(void *arg, int status, int timeouts,
220
220
  }
221
221
  }
222
222
  gpr_mu_unlock(&r->mu);
223
- destroy_hostbyname_request(NULL, hr);
223
+ destroy_hostbyname_request(nullptr, hr);
224
224
  }
225
225
 
226
- static void on_srv_query_done_cb(void *arg, int status, int timeouts,
227
- unsigned char *abuf, int alen) {
228
- grpc_ares_request *r = (grpc_ares_request *)arg;
226
+ static void on_srv_query_done_cb(void* arg, int status, int timeouts,
227
+ unsigned char* abuf, int alen) {
228
+ grpc_ares_request* r = (grpc_ares_request*)arg;
229
229
  grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
230
230
  gpr_log(GPR_DEBUG, "on_query_srv_done_cb");
231
231
  if (status == ARES_SUCCESS) {
232
232
  gpr_log(GPR_DEBUG, "on_query_srv_done_cb ARES_SUCCESS");
233
- struct ares_srv_reply *reply;
233
+ struct ares_srv_reply* reply;
234
234
  const int parse_status = ares_parse_srv_reply(abuf, alen, &reply);
235
235
  if (parse_status == ARES_SUCCESS) {
236
- ares_channel *channel = grpc_ares_ev_driver_get_channel(r->ev_driver);
237
- for (struct ares_srv_reply *srv_it = reply; srv_it != NULL;
236
+ ares_channel* channel = grpc_ares_ev_driver_get_channel(r->ev_driver);
237
+ for (struct ares_srv_reply* srv_it = reply; srv_it != nullptr;
238
238
  srv_it = srv_it->next) {
239
239
  if (grpc_ipv6_loopback_available()) {
240
- grpc_ares_hostbyname_request *hr = create_hostbyname_request(
240
+ grpc_ares_hostbyname_request* hr = create_hostbyname_request(
241
241
  r, srv_it->host, htons(srv_it->port), true /* is_balancer */);
242
242
  ares_gethostbyname(*channel, hr->host, AF_INET6,
243
243
  on_hostbyname_done_cb, hr);
244
244
  }
245
- grpc_ares_hostbyname_request *hr = create_hostbyname_request(
245
+ grpc_ares_hostbyname_request* hr = create_hostbyname_request(
246
246
  r, srv_it->host, htons(srv_it->port), true /* is_balancer */);
247
247
  ares_gethostbyname(*channel, hr->host, AF_INET, on_hostbyname_done_cb,
248
248
  hr);
249
249
  grpc_ares_ev_driver_start(&exec_ctx, r->ev_driver);
250
250
  }
251
251
  }
252
- if (reply != NULL) {
252
+ if (reply != nullptr) {
253
253
  ares_free_data(reply);
254
254
  }
255
255
  } else if (!r->success) {
256
- char *error_msg;
256
+ char* error_msg;
257
257
  gpr_asprintf(&error_msg, "C-ares status is not ARES_SUCCESS: %s",
258
258
  ares_strerror(status));
259
- grpc_error *error = GRPC_ERROR_CREATE_FROM_COPIED_STRING(error_msg);
259
+ grpc_error* error = GRPC_ERROR_CREATE_FROM_COPIED_STRING(error_msg);
260
260
  gpr_free(error_msg);
261
261
  if (r->error == GRPC_ERROR_NONE) {
262
262
  r->error = error;
@@ -270,21 +270,21 @@ static void on_srv_query_done_cb(void *arg, int status, int timeouts,
270
270
 
271
271
  static const char g_service_config_attribute_prefix[] = "grpc_config=";
272
272
 
273
- static void on_txt_done_cb(void *arg, int status, int timeouts,
274
- unsigned char *buf, int len) {
273
+ static void on_txt_done_cb(void* arg, int status, int timeouts,
274
+ unsigned char* buf, int len) {
275
275
  gpr_log(GPR_DEBUG, "on_txt_done_cb");
276
- char *error_msg;
277
- grpc_ares_request *r = (grpc_ares_request *)arg;
276
+ char* error_msg;
277
+ grpc_ares_request* r = (grpc_ares_request*)arg;
278
278
  const size_t prefix_len = sizeof(g_service_config_attribute_prefix) - 1;
279
- struct ares_txt_ext *result = NULL;
280
- struct ares_txt_ext *reply = NULL;
281
- grpc_error *error = GRPC_ERROR_NONE;
279
+ struct ares_txt_ext* result = nullptr;
280
+ struct ares_txt_ext* reply = nullptr;
281
+ grpc_error* error = GRPC_ERROR_NONE;
282
282
  gpr_mu_lock(&r->mu);
283
283
  if (status != ARES_SUCCESS) goto fail;
284
284
  status = ares_parse_txt_reply_ext(buf, len, &reply);
285
285
  if (status != ARES_SUCCESS) goto fail;
286
286
  // Find service config in TXT record.
287
- for (result = reply; result != NULL; result = result->next) {
287
+ for (result = reply; result != nullptr; result = result->next) {
288
288
  if (result->record_start &&
289
289
  memcmp(result->txt, g_service_config_attribute_prefix, prefix_len) ==
290
290
  0) {
@@ -292,14 +292,14 @@ static void on_txt_done_cb(void *arg, int status, int timeouts,
292
292
  }
293
293
  }
294
294
  // Found a service config record.
295
- if (result != NULL) {
295
+ if (result != nullptr) {
296
296
  size_t service_config_len = result->length - prefix_len;
297
- *r->service_config_json_out = (char *)gpr_malloc(service_config_len + 1);
297
+ *r->service_config_json_out = (char*)gpr_malloc(service_config_len + 1);
298
298
  memcpy(*r->service_config_json_out, result->txt + prefix_len,
299
299
  service_config_len);
300
- for (result = result->next; result != NULL && !result->record_start;
300
+ for (result = result->next; result != nullptr && !result->record_start;
301
301
  result = result->next) {
302
- *r->service_config_json_out = (char *)gpr_realloc(
302
+ *r->service_config_json_out = (char*)gpr_realloc(
303
303
  *r->service_config_json_out, service_config_len + result->length + 1);
304
304
  memcpy(*r->service_config_json_out + service_config_len, result->txt,
305
305
  result->length);
@@ -323,18 +323,18 @@ fail:
323
323
  }
324
324
  done:
325
325
  gpr_mu_unlock(&r->mu);
326
- grpc_ares_request_unref(NULL, r);
326
+ grpc_ares_request_unref(nullptr, r);
327
327
  }
328
328
 
329
- static grpc_ares_request *grpc_dns_lookup_ares_impl(
330
- grpc_exec_ctx *exec_ctx, const char *dns_server, const char *name,
331
- const char *default_port, grpc_pollset_set *interested_parties,
332
- grpc_closure *on_done, grpc_lb_addresses **addrs, bool check_grpclb,
333
- char **service_config_json) {
334
- grpc_error *error = GRPC_ERROR_NONE;
335
- grpc_ares_hostbyname_request *hr = NULL;
336
- grpc_ares_request *r = NULL;
337
- ares_channel *channel = NULL;
329
+ static grpc_ares_request* grpc_dns_lookup_ares_impl(
330
+ grpc_exec_ctx* exec_ctx, const char* dns_server, const char* name,
331
+ const char* default_port, grpc_pollset_set* interested_parties,
332
+ grpc_closure* on_done, grpc_lb_addresses** addrs, bool check_grpclb,
333
+ char** service_config_json) {
334
+ grpc_error* error = GRPC_ERROR_NONE;
335
+ grpc_ares_hostbyname_request* hr = nullptr;
336
+ grpc_ares_request* r = nullptr;
337
+ ares_channel* channel = nullptr;
338
338
  /* TODO(zyc): Enable tracing after #9603 is checked in */
339
339
  /* if (grpc_dns_trace) {
340
340
  gpr_log(GPR_DEBUG, "resolve_address (blocking): name=%s, default_port=%s",
@@ -342,16 +342,16 @@ static grpc_ares_request *grpc_dns_lookup_ares_impl(
342
342
  } */
343
343
 
344
344
  /* parse name, splitting it into host and port parts */
345
- char *host;
346
- char *port;
345
+ char* host;
346
+ char* port;
347
347
  gpr_split_host_port(name, &host, &port);
348
- if (host == NULL) {
348
+ if (host == nullptr) {
349
349
  error = grpc_error_set_str(
350
350
  GRPC_ERROR_CREATE_FROM_STATIC_STRING("unparseable host:port"),
351
351
  GRPC_ERROR_STR_TARGET_ADDRESS, grpc_slice_from_copied_string(name));
352
352
  goto error_cleanup;
353
- } else if (port == NULL) {
354
- if (default_port == NULL) {
353
+ } else if (port == nullptr) {
354
+ if (default_port == nullptr) {
355
355
  error = grpc_error_set_str(
356
356
  GRPC_ERROR_CREATE_FROM_STATIC_STRING("no port in name"),
357
357
  GRPC_ERROR_STR_TARGET_ADDRESS, grpc_slice_from_copied_string(name));
@@ -360,11 +360,11 @@ static grpc_ares_request *grpc_dns_lookup_ares_impl(
360
360
  port = gpr_strdup(default_port);
361
361
  }
362
362
 
363
- grpc_ares_ev_driver *ev_driver;
363
+ grpc_ares_ev_driver* ev_driver;
364
364
  error = grpc_ares_ev_driver_create(&ev_driver, interested_parties);
365
365
  if (error != GRPC_ERROR_NONE) goto error_cleanup;
366
366
 
367
- r = (grpc_ares_request *)gpr_zalloc(sizeof(grpc_ares_request));
367
+ r = (grpc_ares_request*)gpr_zalloc(sizeof(grpc_ares_request));
368
368
  gpr_mu_init(&r->mu);
369
369
  r->ev_driver = ev_driver;
370
370
  r->on_done = on_done;
@@ -375,12 +375,12 @@ static grpc_ares_request *grpc_dns_lookup_ares_impl(
375
375
  channel = grpc_ares_ev_driver_get_channel(r->ev_driver);
376
376
 
377
377
  // If dns_server is specified, use it.
378
- if (dns_server != NULL) {
378
+ if (dns_server != nullptr) {
379
379
  gpr_log(GPR_INFO, "Using DNS server %s", dns_server);
380
380
  grpc_resolved_address addr;
381
381
  if (grpc_parse_ipv4_hostport(dns_server, &addr, false /* log_errors */)) {
382
382
  r->dns_server_addr.family = AF_INET;
383
- struct sockaddr_in *in = (struct sockaddr_in *)addr.addr;
383
+ struct sockaddr_in* in = (struct sockaddr_in*)addr.addr;
384
384
  memcpy(&r->dns_server_addr.addr.addr4, &in->sin_addr,
385
385
  sizeof(struct in_addr));
386
386
  r->dns_server_addr.tcp_port = grpc_sockaddr_get_port(&addr);
@@ -388,7 +388,7 @@ static grpc_ares_request *grpc_dns_lookup_ares_impl(
388
388
  } else if (grpc_parse_ipv6_hostport(dns_server, &addr,
389
389
  false /* log_errors */)) {
390
390
  r->dns_server_addr.family = AF_INET6;
391
- struct sockaddr_in6 *in6 = (struct sockaddr_in6 *)addr.addr;
391
+ struct sockaddr_in6* in6 = (struct sockaddr_in6*)addr.addr;
392
392
  memcpy(&r->dns_server_addr.addr.addr6, &in6->sin6_addr,
393
393
  sizeof(struct in6_addr));
394
394
  r->dns_server_addr.tcp_port = grpc_sockaddr_get_port(&addr);
@@ -402,7 +402,7 @@ static grpc_ares_request *grpc_dns_lookup_ares_impl(
402
402
  }
403
403
  int status = ares_set_servers_ports(*channel, &r->dns_server_addr);
404
404
  if (status != ARES_SUCCESS) {
405
- char *error_msg;
405
+ char* error_msg;
406
406
  gpr_asprintf(&error_msg, "C-ares status is not ARES_SUCCESS: %s",
407
407
  ares_strerror(status));
408
408
  error = GRPC_ERROR_CREATE_FROM_COPIED_STRING(error_msg);
@@ -423,15 +423,18 @@ static grpc_ares_request *grpc_dns_lookup_ares_impl(
423
423
  if (check_grpclb) {
424
424
  /* Query the SRV record */
425
425
  grpc_ares_request_ref(r);
426
- char *service_name;
426
+ char* service_name;
427
427
  gpr_asprintf(&service_name, "_grpclb._tcp.%s", host);
428
428
  ares_query(*channel, service_name, ns_c_in, ns_t_srv, on_srv_query_done_cb,
429
429
  r);
430
430
  gpr_free(service_name);
431
431
  }
432
- if (service_config_json != NULL) {
432
+ if (service_config_json != nullptr) {
433
433
  grpc_ares_request_ref(r);
434
- ares_search(*channel, hr->host, ns_c_in, ns_t_txt, on_txt_done_cb, r);
434
+ char* config_name;
435
+ gpr_asprintf(&config_name, "_grpc_config.%s", host);
436
+ ares_search(*channel, config_name, ns_c_in, ns_t_txt, on_txt_done_cb, r);
437
+ gpr_free(config_name);
435
438
  }
436
439
  /* TODO(zyc): Handle CNAME records here. */
437
440
  grpc_ares_ev_driver_start(exec_ctx, r->ev_driver);
@@ -444,32 +447,32 @@ error_cleanup:
444
447
  GRPC_CLOSURE_SCHED(exec_ctx, on_done, error);
445
448
  gpr_free(host);
446
449
  gpr_free(port);
447
- return NULL;
450
+ return nullptr;
448
451
  }
449
452
 
450
- grpc_ares_request *(*grpc_dns_lookup_ares)(
451
- grpc_exec_ctx *exec_ctx, const char *dns_server, const char *name,
452
- const char *default_port, grpc_pollset_set *interested_parties,
453
- grpc_closure *on_done, grpc_lb_addresses **addrs, bool check_grpclb,
454
- char **service_config_json) = grpc_dns_lookup_ares_impl;
453
+ grpc_ares_request* (*grpc_dns_lookup_ares)(
454
+ grpc_exec_ctx* exec_ctx, const char* dns_server, const char* name,
455
+ const char* default_port, grpc_pollset_set* interested_parties,
456
+ grpc_closure* on_done, grpc_lb_addresses** addrs, bool check_grpclb,
457
+ char** service_config_json) = grpc_dns_lookup_ares_impl;
455
458
 
456
- void grpc_cancel_ares_request(grpc_exec_ctx *exec_ctx, grpc_ares_request *r) {
459
+ void grpc_cancel_ares_request(grpc_exec_ctx* exec_ctx, grpc_ares_request* r) {
457
460
  if (grpc_dns_lookup_ares == grpc_dns_lookup_ares_impl) {
458
461
  grpc_ares_ev_driver_shutdown(exec_ctx, r->ev_driver);
459
462
  }
460
463
  }
461
464
 
462
- grpc_error *grpc_ares_init(void) {
465
+ grpc_error* grpc_ares_init(void) {
463
466
  gpr_once_init(&g_basic_init, do_basic_init);
464
467
  gpr_mu_lock(&g_init_mu);
465
468
  int status = ares_library_init(ARES_LIB_INIT_ALL);
466
469
  gpr_mu_unlock(&g_init_mu);
467
470
 
468
471
  if (status != ARES_SUCCESS) {
469
- char *error_msg;
472
+ char* error_msg;
470
473
  gpr_asprintf(&error_msg, "ares_library_init failed: %s",
471
474
  ares_strerror(status));
472
- grpc_error *error = GRPC_ERROR_CREATE_FROM_COPIED_STRING(error_msg);
475
+ grpc_error* error = GRPC_ERROR_CREATE_FROM_COPIED_STRING(error_msg);
473
476
  gpr_free(error_msg);
474
477
  return error;
475
478
  }
@@ -488,28 +491,28 @@ void grpc_ares_cleanup(void) {
488
491
 
489
492
  typedef struct grpc_resolve_address_ares_request {
490
493
  /** the pointer to receive the resolved addresses */
491
- grpc_resolved_addresses **addrs_out;
494
+ grpc_resolved_addresses** addrs_out;
492
495
  /** currently resolving lb addresses */
493
- grpc_lb_addresses *lb_addrs;
496
+ grpc_lb_addresses* lb_addrs;
494
497
  /** closure to call when the resolve_address_ares request completes */
495
- grpc_closure *on_resolve_address_done;
498
+ grpc_closure* on_resolve_address_done;
496
499
  /** a closure wrapping on_dns_lookup_done_cb, which should be invoked when the
497
500
  grpc_dns_lookup_ares operation is done. */
498
501
  grpc_closure on_dns_lookup_done;
499
502
  } grpc_resolve_address_ares_request;
500
503
 
501
- static void on_dns_lookup_done_cb(grpc_exec_ctx *exec_ctx, void *arg,
502
- grpc_error *error) {
503
- grpc_resolve_address_ares_request *r =
504
- (grpc_resolve_address_ares_request *)arg;
505
- grpc_resolved_addresses **resolved_addresses = r->addrs_out;
506
- if (r->lb_addrs == NULL || r->lb_addrs->num_addresses == 0) {
507
- *resolved_addresses = NULL;
504
+ static void on_dns_lookup_done_cb(grpc_exec_ctx* exec_ctx, void* arg,
505
+ grpc_error* error) {
506
+ grpc_resolve_address_ares_request* r =
507
+ (grpc_resolve_address_ares_request*)arg;
508
+ grpc_resolved_addresses** resolved_addresses = r->addrs_out;
509
+ if (r->lb_addrs == nullptr || r->lb_addrs->num_addresses == 0) {
510
+ *resolved_addresses = nullptr;
508
511
  } else {
509
512
  *resolved_addresses =
510
- (grpc_resolved_addresses *)gpr_zalloc(sizeof(grpc_resolved_addresses));
513
+ (grpc_resolved_addresses*)gpr_zalloc(sizeof(grpc_resolved_addresses));
511
514
  (*resolved_addresses)->naddrs = r->lb_addrs->num_addresses;
512
- (*resolved_addresses)->addrs = (grpc_resolved_address *)gpr_zalloc(
515
+ (*resolved_addresses)->addrs = (grpc_resolved_address*)gpr_zalloc(
513
516
  sizeof(grpc_resolved_address) * (*resolved_addresses)->naddrs);
514
517
  for (size_t i = 0; i < (*resolved_addresses)->naddrs; i++) {
515
518
  GPR_ASSERT(!r->lb_addrs->addresses[i].is_balancer);
@@ -523,28 +526,28 @@ static void on_dns_lookup_done_cb(grpc_exec_ctx *exec_ctx, void *arg,
523
526
  gpr_free(r);
524
527
  }
525
528
 
526
- static void grpc_resolve_address_ares_impl(grpc_exec_ctx *exec_ctx,
527
- const char *name,
528
- const char *default_port,
529
- grpc_pollset_set *interested_parties,
530
- grpc_closure *on_done,
531
- grpc_resolved_addresses **addrs) {
532
- grpc_resolve_address_ares_request *r =
533
- (grpc_resolve_address_ares_request *)gpr_zalloc(
529
+ static void grpc_resolve_address_ares_impl(grpc_exec_ctx* exec_ctx,
530
+ const char* name,
531
+ const char* default_port,
532
+ grpc_pollset_set* interested_parties,
533
+ grpc_closure* on_done,
534
+ grpc_resolved_addresses** addrs) {
535
+ grpc_resolve_address_ares_request* r =
536
+ (grpc_resolve_address_ares_request*)gpr_zalloc(
534
537
  sizeof(grpc_resolve_address_ares_request));
535
538
  r->addrs_out = addrs;
536
539
  r->on_resolve_address_done = on_done;
537
540
  GRPC_CLOSURE_INIT(&r->on_dns_lookup_done, on_dns_lookup_done_cb, r,
538
541
  grpc_schedule_on_exec_ctx);
539
- grpc_dns_lookup_ares(exec_ctx, NULL /* dns_server */, name, default_port,
542
+ grpc_dns_lookup_ares(exec_ctx, nullptr /* dns_server */, name, default_port,
540
543
  interested_parties, &r->on_dns_lookup_done, &r->lb_addrs,
541
544
  false /* check_grpclb */,
542
- NULL /* service_config_json */);
545
+ nullptr /* service_config_json */);
543
546
  }
544
547
 
545
548
  void (*grpc_resolve_address_ares)(
546
- grpc_exec_ctx *exec_ctx, const char *name, const char *default_port,
547
- grpc_pollset_set *interested_parties, grpc_closure *on_done,
548
- grpc_resolved_addresses **addrs) = grpc_resolve_address_ares_impl;
549
+ grpc_exec_ctx* exec_ctx, const char* name, const char* default_port,
550
+ grpc_pollset_set* interested_parties, grpc_closure* on_done,
551
+ grpc_resolved_addresses** addrs) = grpc_resolve_address_ares_impl;
549
552
 
550
553
  #endif /* GRPC_ARES == 1 && !defined(GRPC_UV) */