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
@@ -21,12 +21,20 @@
21
21
 
22
22
  #include "src/core/lib/iomgr/endpoint.h"
23
23
 
24
+ #ifdef __cplusplus
25
+ extern "C" {
26
+ #endif
27
+
24
28
  typedef struct {
25
- grpc_endpoint *client;
26
- grpc_endpoint *server;
29
+ grpc_endpoint* client;
30
+ grpc_endpoint* server;
27
31
  } grpc_endpoint_pair;
28
32
 
29
- grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(const char *name,
30
- grpc_channel_args *args);
33
+ grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(const char* name,
34
+ grpc_channel_args* args);
35
+
36
+ #ifdef __cplusplus
37
+ }
38
+ #endif
31
39
 
32
40
  #endif /* GRPC_CORE_LIB_IOMGR_ENDPOINT_PAIR_H */
@@ -47,11 +47,11 @@ static void create_sockets(int sv[2]) {
47
47
  GPR_ASSERT(grpc_set_socket_no_sigpipe_if_possible(sv[1]) == GRPC_ERROR_NONE);
48
48
  }
49
49
 
50
- grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(const char *name,
51
- grpc_channel_args *args) {
50
+ grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(const char* name,
51
+ grpc_channel_args* args) {
52
52
  int sv[2];
53
53
  grpc_endpoint_pair p;
54
- char *final_name;
54
+ char* final_name;
55
55
  create_sockets(sv);
56
56
 
57
57
  grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
@@ -26,8 +26,8 @@
26
26
 
27
27
  #include "src/core/lib/iomgr/endpoint_pair.h"
28
28
 
29
- grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(const char *name,
30
- grpc_channel_args *args) {
29
+ grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(const char* name,
30
+ grpc_channel_args* args) {
31
31
  grpc_endpoint_pair endpoint_pair;
32
32
  // TODO(mlumish): implement this properly under libuv
33
33
  GPR_ASSERT(false &&
@@ -44,19 +44,19 @@ static void create_sockets(SOCKET sv[2]) {
44
44
  memset(&addr, 0, sizeof(addr));
45
45
  addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
46
46
  addr.sin_family = AF_INET;
47
- GPR_ASSERT(bind(lst_sock, (struct sockaddr *)&addr, sizeof(addr)) !=
47
+ GPR_ASSERT(bind(lst_sock, (struct sockaddr*)&addr, sizeof(addr)) !=
48
48
  SOCKET_ERROR);
49
49
  GPR_ASSERT(listen(lst_sock, SOMAXCONN) != SOCKET_ERROR);
50
- GPR_ASSERT(getsockname(lst_sock, (struct sockaddr *)&addr, &addr_len) !=
50
+ GPR_ASSERT(getsockname(lst_sock, (struct sockaddr*)&addr, &addr_len) !=
51
51
  SOCKET_ERROR);
52
52
 
53
53
  cli_sock = WSASocket(AF_INET, SOCK_STREAM, IPPROTO_TCP, NULL, 0,
54
54
  WSA_FLAG_OVERLAPPED);
55
55
  GPR_ASSERT(cli_sock != INVALID_SOCKET);
56
56
 
57
- GPR_ASSERT(WSAConnect(cli_sock, (struct sockaddr *)&addr, addr_len, NULL,
58
- NULL, NULL, NULL) == 0);
59
- svr_sock = accept(lst_sock, (struct sockaddr *)&addr, &addr_len);
57
+ GPR_ASSERT(WSAConnect(cli_sock, (struct sockaddr*)&addr, addr_len, NULL, NULL,
58
+ NULL, NULL) == 0);
59
+ svr_sock = accept(lst_sock, (struct sockaddr*)&addr, &addr_len);
60
60
  GPR_ASSERT(svr_sock != INVALID_SOCKET);
61
61
 
62
62
  closesocket(lst_sock);
@@ -68,7 +68,7 @@ static void create_sockets(SOCKET sv[2]) {
68
68
  }
69
69
 
70
70
  grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(
71
- const char *name, grpc_channel_args *channel_args) {
71
+ const char* name, grpc_channel_args* channel_args) {
72
72
  SOCKET sv[2];
73
73
  grpc_endpoint_pair p;
74
74
  create_sockets(sv);
@@ -15,9 +15,11 @@
15
15
  * limitations under the License.
16
16
  *
17
17
  */
18
+ #include <grpc/support/port_platform.h>
18
19
 
19
20
  #include "src/core/lib/iomgr/error.h"
20
21
 
22
+ #include <inttypes.h>
21
23
  #include <string.h>
22
24
 
23
25
  #include <grpc/status.h>
@@ -35,12 +37,11 @@
35
37
  #include "src/core/lib/profiling/timers.h"
36
38
  #include "src/core/lib/slice/slice_internal.h"
37
39
 
38
- #ifndef NDEBUG
39
- grpc_tracer_flag grpc_trace_error_refcount =
40
- GRPC_TRACER_INITIALIZER(false, "error_refcount");
41
- #endif
40
+ grpc_core::DebugOnlyTraceFlag grpc_trace_error_refcount(false,
41
+ "error_refcount");
42
+ grpc_core::DebugOnlyTraceFlag grpc_trace_closure(false, "closure");
42
43
 
43
- static const char *error_int_name(grpc_error_ints key) {
44
+ static const char* error_int_name(grpc_error_ints key) {
44
45
  switch (key) {
45
46
  case GRPC_ERROR_INT_ERRNO:
46
47
  return "errno";
@@ -78,7 +79,7 @@ static const char *error_int_name(grpc_error_ints key) {
78
79
  GPR_UNREACHABLE_CODE(return "unknown");
79
80
  }
80
81
 
81
- static const char *error_str_name(grpc_error_strs key) {
82
+ static const char* error_str_name(grpc_error_strs key) {
82
83
  switch (key) {
83
84
  case GRPC_ERROR_STR_KEY:
84
85
  return "key";
@@ -110,7 +111,7 @@ static const char *error_str_name(grpc_error_strs key) {
110
111
  GPR_UNREACHABLE_CODE(return "unknown");
111
112
  }
112
113
 
113
- static const char *error_time_name(grpc_error_times key) {
114
+ static const char* error_time_name(grpc_error_times key) {
114
115
  switch (key) {
115
116
  case GRPC_ERROR_TIME_CREATED:
116
117
  return "created";
@@ -120,15 +121,15 @@ static const char *error_time_name(grpc_error_times key) {
120
121
  GPR_UNREACHABLE_CODE(return "unknown");
121
122
  }
122
123
 
123
- bool grpc_error_is_special(grpc_error *err) {
124
+ bool grpc_error_is_special(grpc_error* err) {
124
125
  return err == GRPC_ERROR_NONE || err == GRPC_ERROR_OOM ||
125
126
  err == GRPC_ERROR_CANCELLED;
126
127
  }
127
128
 
128
129
  #ifndef NDEBUG
129
- grpc_error *grpc_error_ref(grpc_error *err, const char *file, int line) {
130
+ grpc_error* grpc_error_ref(grpc_error* err, const char* file, int line) {
130
131
  if (grpc_error_is_special(err)) return err;
131
- if (GRPC_TRACER_ON(grpc_trace_error_refcount)) {
132
+ if (grpc_trace_error_refcount.enabled()) {
132
133
  gpr_log(GPR_DEBUG, "%p: %" PRIdPTR " -> %" PRIdPTR " [%s:%d]", err,
133
134
  gpr_atm_no_barrier_load(&err->atomics.refs.count),
134
135
  gpr_atm_no_barrier_load(&err->atomics.refs.count) + 1, file, line);
@@ -137,17 +138,17 @@ grpc_error *grpc_error_ref(grpc_error *err, const char *file, int line) {
137
138
  return err;
138
139
  }
139
140
  #else
140
- grpc_error *grpc_error_ref(grpc_error *err) {
141
+ grpc_error* grpc_error_ref(grpc_error* err) {
141
142
  if (grpc_error_is_special(err)) return err;
142
143
  gpr_ref(&err->atomics.refs);
143
144
  return err;
144
145
  }
145
146
  #endif
146
147
 
147
- static void unref_errs(grpc_error *err) {
148
+ static void unref_errs(grpc_error* err) {
148
149
  uint8_t slot = err->first_err;
149
150
  while (slot != UINT8_MAX) {
150
- grpc_linked_error *lerr = (grpc_linked_error *)(err->arena + slot);
151
+ grpc_linked_error* lerr = (grpc_linked_error*)(err->arena + slot);
151
152
  GRPC_ERROR_UNREF(lerr->err);
152
153
  GPR_ASSERT(err->last_err == slot ? lerr->next == UINT8_MAX
153
154
  : lerr->next != UINT8_MAX);
@@ -161,27 +162,27 @@ static void unref_slice(grpc_slice slice) {
161
162
  grpc_exec_ctx_finish(&exec_ctx);
162
163
  }
163
164
 
164
- static void unref_strs(grpc_error *err) {
165
+ static void unref_strs(grpc_error* err) {
165
166
  for (size_t which = 0; which < GRPC_ERROR_STR_MAX; ++which) {
166
167
  uint8_t slot = err->strs[which];
167
168
  if (slot != UINT8_MAX) {
168
- unref_slice(*(grpc_slice *)(err->arena + slot));
169
+ unref_slice(*(grpc_slice*)(err->arena + slot));
169
170
  }
170
171
  }
171
172
  }
172
173
 
173
- static void error_destroy(grpc_error *err) {
174
+ static void error_destroy(grpc_error* err) {
174
175
  GPR_ASSERT(!grpc_error_is_special(err));
175
176
  unref_errs(err);
176
177
  unref_strs(err);
177
- gpr_free((void *)gpr_atm_acq_load(&err->atomics.error_string));
178
+ gpr_free((void*)gpr_atm_acq_load(&err->atomics.error_string));
178
179
  gpr_free(err);
179
180
  }
180
181
 
181
182
  #ifndef NDEBUG
182
- void grpc_error_unref(grpc_error *err, const char *file, int line) {
183
+ void grpc_error_unref(grpc_error* err, const char* file, int line) {
183
184
  if (grpc_error_is_special(err)) return;
184
- if (GRPC_TRACER_ON(grpc_trace_error_refcount)) {
185
+ if (grpc_trace_error_refcount.enabled()) {
185
186
  gpr_log(GPR_DEBUG, "%p: %" PRIdPTR " -> %" PRIdPTR " [%s:%d]", err,
186
187
  gpr_atm_no_barrier_load(&err->atomics.refs.count),
187
188
  gpr_atm_no_barrier_load(&err->atomics.refs.count) - 1, file, line);
@@ -191,7 +192,7 @@ void grpc_error_unref(grpc_error *err, const char *file, int line) {
191
192
  }
192
193
  }
193
194
  #else
194
- void grpc_error_unref(grpc_error *err) {
195
+ void grpc_error_unref(grpc_error* err) {
195
196
  if (grpc_error_is_special(err)) return;
196
197
  if (gpr_unref(&err->atomics.refs)) {
197
198
  error_destroy(err);
@@ -199,7 +200,7 @@ void grpc_error_unref(grpc_error *err) {
199
200
  }
200
201
  #endif
201
202
 
202
- static uint8_t get_placement(grpc_error **err, size_t size) {
203
+ static uint8_t get_placement(grpc_error** err, size_t size) {
203
204
  GPR_ASSERT(*err);
204
205
  uint8_t slots = (uint8_t)(size / sizeof(intptr_t));
205
206
  if ((*err)->arena_size + slots > (*err)->arena_capacity) {
@@ -209,12 +210,12 @@ static uint8_t get_placement(grpc_error **err, size_t size) {
209
210
  return UINT8_MAX;
210
211
  }
211
212
  #ifndef NDEBUG
212
- grpc_error *orig = *err;
213
+ grpc_error* orig = *err;
213
214
  #endif
214
- *err = (grpc_error *)gpr_realloc(
215
+ *err = (grpc_error*)gpr_realloc(
215
216
  *err, sizeof(grpc_error) + (*err)->arena_capacity * sizeof(intptr_t));
216
217
  #ifndef NDEBUG
217
- if (GRPC_TRACER_ON(grpc_trace_error_refcount)) {
218
+ if (grpc_trace_error_refcount.enabled()) {
218
219
  if (*err != orig) {
219
220
  gpr_log(GPR_DEBUG, "realloc %p -> %p", orig, *err);
220
221
  }
@@ -226,7 +227,7 @@ static uint8_t get_placement(grpc_error **err, size_t size) {
226
227
  return placement;
227
228
  }
228
229
 
229
- static void internal_set_int(grpc_error **err, grpc_error_ints which,
230
+ static void internal_set_int(grpc_error** err, grpc_error_ints which,
230
231
  intptr_t value) {
231
232
  uint8_t slot = (*err)->ints[which];
232
233
  if (slot == UINT8_MAX) {
@@ -241,36 +242,36 @@ static void internal_set_int(grpc_error **err, grpc_error_ints which,
241
242
  (*err)->arena[slot] = value;
242
243
  }
243
244
 
244
- static void internal_set_str(grpc_error **err, grpc_error_strs which,
245
+ static void internal_set_str(grpc_error** err, grpc_error_strs which,
245
246
  grpc_slice value) {
246
247
  uint8_t slot = (*err)->strs[which];
247
248
  if (slot == UINT8_MAX) {
248
249
  slot = get_placement(err, sizeof(value));
249
250
  if (slot == UINT8_MAX) {
250
- const char *str = grpc_slice_to_c_string(value);
251
+ const char* str = grpc_slice_to_c_string(value);
251
252
  gpr_log(GPR_ERROR, "Error %p is full, dropping string {\"%s\":\"%s\"}",
252
253
  *err, error_str_name(which), str);
253
- gpr_free((void *)str);
254
+ gpr_free((void*)str);
254
255
  return;
255
256
  }
256
257
  } else {
257
- unref_slice(*(grpc_slice *)((*err)->arena + slot));
258
+ unref_slice(*(grpc_slice*)((*err)->arena + slot));
258
259
  }
259
260
  (*err)->strs[which] = slot;
260
261
  memcpy((*err)->arena + slot, &value, sizeof(value));
261
262
  }
262
263
 
263
- static char *fmt_time(gpr_timespec tm);
264
- static void internal_set_time(grpc_error **err, grpc_error_times which,
264
+ static char* fmt_time(gpr_timespec tm);
265
+ static void internal_set_time(grpc_error** err, grpc_error_times which,
265
266
  gpr_timespec value) {
266
267
  uint8_t slot = (*err)->times[which];
267
268
  if (slot == UINT8_MAX) {
268
269
  slot = get_placement(err, sizeof(value));
269
270
  if (slot == UINT8_MAX) {
270
- const char *time_str = fmt_time(value);
271
+ const char* time_str = fmt_time(value);
271
272
  gpr_log(GPR_ERROR, "Error %p is full, dropping \"%s\":\"%s\"}", *err,
272
273
  error_time_name(which), time_str);
273
- gpr_free((void *)time_str);
274
+ gpr_free((void*)time_str);
274
275
  return;
275
276
  }
276
277
  }
@@ -278,7 +279,7 @@ static void internal_set_time(grpc_error **err, grpc_error_times which,
278
279
  memcpy((*err)->arena + slot, &value, sizeof(value));
279
280
  }
280
281
 
281
- static void internal_add_error(grpc_error **err, grpc_error *new_err) {
282
+ static void internal_add_error(grpc_error** err, grpc_error* new_err) {
282
283
  grpc_linked_error new_last = {new_err, UINT8_MAX};
283
284
  uint8_t slot = get_placement(err, sizeof(grpc_linked_error));
284
285
  if (slot == UINT8_MAX) {
@@ -293,8 +294,8 @@ static void internal_add_error(grpc_error **err, grpc_error *new_err) {
293
294
  (*err)->first_err = slot;
294
295
  } else {
295
296
  GPR_ASSERT((*err)->last_err != UINT8_MAX);
296
- grpc_linked_error *old_last =
297
- (grpc_linked_error *)((*err)->arena + (*err)->last_err);
297
+ grpc_linked_error* old_last =
298
+ (grpc_linked_error*)((*err)->arena + (*err)->last_err);
298
299
  old_last->next = slot;
299
300
  (*err)->last_err = slot;
300
301
  }
@@ -314,20 +315,20 @@ static void internal_add_error(grpc_error **err, grpc_error *new_err) {
314
315
  // It is very common to include and extra int and string in an error
315
316
  #define SURPLUS_CAPACITY (2 * SLOTS_PER_INT + SLOTS_PER_TIME)
316
317
 
317
- grpc_error *grpc_error_create(const char *file, int line, grpc_slice desc,
318
- grpc_error **referencing,
318
+ grpc_error* grpc_error_create(const char* file, int line, grpc_slice desc,
319
+ grpc_error** referencing,
319
320
  size_t num_referencing) {
320
321
  GPR_TIMER_BEGIN("grpc_error_create", 0);
321
322
  uint8_t initial_arena_capacity = (uint8_t)(
322
323
  DEFAULT_ERROR_CAPACITY +
323
324
  (uint8_t)(num_referencing * SLOTS_PER_LINKED_ERROR) + SURPLUS_CAPACITY);
324
- grpc_error *err = (grpc_error *)gpr_malloc(
325
+ grpc_error* err = (grpc_error*)gpr_malloc(
325
326
  sizeof(*err) + initial_arena_capacity * sizeof(intptr_t));
326
- if (err == NULL) { // TODO(ctiller): make gpr_malloc return NULL
327
+ if (err == nullptr) { // TODO(ctiller): make gpr_malloc return NULL
327
328
  return GRPC_ERROR_OOM;
328
329
  }
329
330
  #ifndef NDEBUG
330
- if (GRPC_TRACER_ON(grpc_trace_error_refcount)) {
331
+ if (grpc_trace_error_refcount.enabled()) {
331
332
  gpr_log(GPR_DEBUG, "%p create [%s:%d]", err, file, line);
332
333
  }
333
334
  #endif
@@ -362,27 +363,27 @@ grpc_error *grpc_error_create(const char *file, int line, grpc_slice desc,
362
363
  return err;
363
364
  }
364
365
 
365
- static void ref_strs(grpc_error *err) {
366
+ static void ref_strs(grpc_error* err) {
366
367
  for (size_t i = 0; i < GRPC_ERROR_STR_MAX; ++i) {
367
368
  uint8_t slot = err->strs[i];
368
369
  if (slot != UINT8_MAX) {
369
- grpc_slice_ref_internal(*(grpc_slice *)(err->arena + slot));
370
+ grpc_slice_ref_internal(*(grpc_slice*)(err->arena + slot));
370
371
  }
371
372
  }
372
373
  }
373
374
 
374
- static void ref_errs(grpc_error *err) {
375
+ static void ref_errs(grpc_error* err) {
375
376
  uint8_t slot = err->first_err;
376
377
  while (slot != UINT8_MAX) {
377
- grpc_linked_error *lerr = (grpc_linked_error *)(err->arena + slot);
378
+ grpc_linked_error* lerr = (grpc_linked_error*)(err->arena + slot);
378
379
  GRPC_ERROR_REF(lerr->err);
379
380
  slot = lerr->next;
380
381
  }
381
382
  }
382
383
 
383
- static grpc_error *copy_error_and_unref(grpc_error *in) {
384
+ static grpc_error* copy_error_and_unref(grpc_error* in) {
384
385
  GPR_TIMER_BEGIN("copy_error_and_unref", 0);
385
- grpc_error *out;
386
+ grpc_error* out;
386
387
  if (grpc_error_is_special(in)) {
387
388
  out = GRPC_ERROR_CREATE_FROM_STATIC_STRING("unknown");
388
389
  if (in == GRPC_ERROR_NONE) {
@@ -406,16 +407,16 @@ static grpc_error *copy_error_and_unref(grpc_error *in) {
406
407
  if (in->arena_capacity - in->arena_size < (uint8_t)SLOTS_PER_STR) {
407
408
  new_arena_capacity = (uint8_t)(3 * new_arena_capacity / 2);
408
409
  }
409
- out = (grpc_error *)gpr_malloc(sizeof(*in) +
410
- new_arena_capacity * sizeof(intptr_t));
410
+ out = (grpc_error*)gpr_malloc(sizeof(*in) +
411
+ new_arena_capacity * sizeof(intptr_t));
411
412
  #ifndef NDEBUG
412
- if (GRPC_TRACER_ON(grpc_trace_error_refcount)) {
413
+ if (grpc_trace_error_refcount.enabled()) {
413
414
  gpr_log(GPR_DEBUG, "%p create copying %p", out, in);
414
415
  }
415
416
  #endif
416
417
  // bulk memcpy of the rest of the struct.
417
418
  size_t skip = sizeof(&out->atomics);
418
- memcpy((void *)((uintptr_t)out + skip), (void *)((uintptr_t)in + skip),
419
+ memcpy((void*)((uintptr_t)out + skip), (void*)((uintptr_t)in + skip),
419
420
  sizeof(*in) + (in->arena_size * sizeof(intptr_t)) - skip);
420
421
  // manually set the atomics and the new capacity
421
422
  gpr_atm_no_barrier_store(&out->atomics.error_string, 0);
@@ -429,19 +430,19 @@ static grpc_error *copy_error_and_unref(grpc_error *in) {
429
430
  return out;
430
431
  }
431
432
 
432
- grpc_error *grpc_error_set_int(grpc_error *src, grpc_error_ints which,
433
+ grpc_error* grpc_error_set_int(grpc_error* src, grpc_error_ints which,
433
434
  intptr_t value) {
434
435
  GPR_TIMER_BEGIN("grpc_error_set_int", 0);
435
- grpc_error *new_err = copy_error_and_unref(src);
436
+ grpc_error* new_err = copy_error_and_unref(src);
436
437
  internal_set_int(&new_err, which, value);
437
438
  GPR_TIMER_END("grpc_error_set_int", 0);
438
439
  return new_err;
439
440
  }
440
441
 
441
442
  typedef struct {
442
- grpc_error *error;
443
+ grpc_error* error;
443
444
  grpc_status_code code;
444
- const char *msg;
445
+ const char* msg;
445
446
  } special_error_status_map;
446
447
  static special_error_status_map error_status_map[] = {
447
448
  {GRPC_ERROR_NONE, GRPC_STATUS_OK, ""},
@@ -449,13 +450,13 @@ static special_error_status_map error_status_map[] = {
449
450
  {GRPC_ERROR_OOM, GRPC_STATUS_RESOURCE_EXHAUSTED, "Out of memory"},
450
451
  };
451
452
 
452
- bool grpc_error_get_int(grpc_error *err, grpc_error_ints which, intptr_t *p) {
453
+ bool grpc_error_get_int(grpc_error* err, grpc_error_ints which, intptr_t* p) {
453
454
  GPR_TIMER_BEGIN("grpc_error_get_int", 0);
454
455
  if (grpc_error_is_special(err)) {
455
456
  if (which == GRPC_ERROR_INT_GRPC_STATUS) {
456
457
  for (size_t i = 0; i < GPR_ARRAY_SIZE(error_status_map); i++) {
457
458
  if (error_status_map[i].error == err) {
458
- if (p != NULL) *p = error_status_map[i].code;
459
+ if (p != nullptr) *p = error_status_map[i].code;
459
460
  GPR_TIMER_END("grpc_error_get_int", 0);
460
461
  return true;
461
462
  }
@@ -466,7 +467,7 @@ bool grpc_error_get_int(grpc_error *err, grpc_error_ints which, intptr_t *p) {
466
467
  }
467
468
  uint8_t slot = err->ints[which];
468
469
  if (slot != UINT8_MAX) {
469
- if (p != NULL) *p = err->arena[slot];
470
+ if (p != nullptr) *p = err->arena[slot];
470
471
  GPR_TIMER_END("grpc_error_get_int", 0);
471
472
  return true;
472
473
  }
@@ -474,17 +475,17 @@ bool grpc_error_get_int(grpc_error *err, grpc_error_ints which, intptr_t *p) {
474
475
  return false;
475
476
  }
476
477
 
477
- grpc_error *grpc_error_set_str(grpc_error *src, grpc_error_strs which,
478
+ grpc_error* grpc_error_set_str(grpc_error* src, grpc_error_strs which,
478
479
  grpc_slice str) {
479
480
  GPR_TIMER_BEGIN("grpc_error_set_str", 0);
480
- grpc_error *new_err = copy_error_and_unref(src);
481
+ grpc_error* new_err = copy_error_and_unref(src);
481
482
  internal_set_str(&new_err, which, str);
482
483
  GPR_TIMER_END("grpc_error_set_str", 0);
483
484
  return new_err;
484
485
  }
485
486
 
486
- bool grpc_error_get_str(grpc_error *err, grpc_error_strs which,
487
- grpc_slice *str) {
487
+ bool grpc_error_get_str(grpc_error* err, grpc_error_strs which,
488
+ grpc_slice* str) {
488
489
  if (grpc_error_is_special(err)) {
489
490
  if (which == GRPC_ERROR_STR_GRPC_MESSAGE) {
490
491
  for (size_t i = 0; i < GPR_ARRAY_SIZE(error_status_map); i++) {
@@ -498,53 +499,53 @@ bool grpc_error_get_str(grpc_error *err, grpc_error_strs which,
498
499
  }
499
500
  uint8_t slot = err->strs[which];
500
501
  if (slot != UINT8_MAX) {
501
- *str = *(grpc_slice *)(err->arena + slot);
502
+ *str = *(grpc_slice*)(err->arena + slot);
502
503
  return true;
503
504
  } else {
504
505
  return false;
505
506
  }
506
507
  }
507
508
 
508
- grpc_error *grpc_error_add_child(grpc_error *src, grpc_error *child) {
509
+ grpc_error* grpc_error_add_child(grpc_error* src, grpc_error* child) {
509
510
  GPR_TIMER_BEGIN("grpc_error_add_child", 0);
510
- grpc_error *new_err = copy_error_and_unref(src);
511
+ grpc_error* new_err = copy_error_and_unref(src);
511
512
  internal_add_error(&new_err, child);
512
513
  GPR_TIMER_END("grpc_error_add_child", 0);
513
514
  return new_err;
514
515
  }
515
516
 
516
- static const char *no_error_string = "\"No Error\"";
517
- static const char *oom_error_string = "\"Out of memory\"";
518
- static const char *cancelled_error_string = "\"Cancelled\"";
517
+ static const char* no_error_string = "\"No Error\"";
518
+ static const char* oom_error_string = "\"Out of memory\"";
519
+ static const char* cancelled_error_string = "\"Cancelled\"";
519
520
 
520
521
  typedef struct {
521
- char *key;
522
- char *value;
522
+ char* key;
523
+ char* value;
523
524
  } kv_pair;
524
525
 
525
526
  typedef struct {
526
- kv_pair *kvs;
527
+ kv_pair* kvs;
527
528
  size_t num_kvs;
528
529
  size_t cap_kvs;
529
530
  } kv_pairs;
530
531
 
531
- static void append_chr(char c, char **s, size_t *sz, size_t *cap) {
532
+ static void append_chr(char c, char** s, size_t* sz, size_t* cap) {
532
533
  if (*sz == *cap) {
533
534
  *cap = GPR_MAX(8, 3 * *cap / 2);
534
- *s = (char *)gpr_realloc(*s, *cap);
535
+ *s = (char*)gpr_realloc(*s, *cap);
535
536
  }
536
537
  (*s)[(*sz)++] = c;
537
538
  }
538
539
 
539
- static void append_str(const char *str, char **s, size_t *sz, size_t *cap) {
540
- for (const char *c = str; *c; c++) {
540
+ static void append_str(const char* str, char** s, size_t* sz, size_t* cap) {
541
+ for (const char* c = str; *c; c++) {
541
542
  append_chr(*c, s, sz, cap);
542
543
  }
543
544
  }
544
545
 
545
- static void append_esc_str(const uint8_t *str, size_t len, char **s, size_t *sz,
546
- size_t *cap) {
547
- static const char *hex = "0123456789abcdef";
546
+ static void append_esc_str(const uint8_t* str, size_t len, char** s, size_t* sz,
547
+ size_t* cap) {
548
+ static const char* hex = "0123456789abcdef";
548
549
  append_chr('"', s, sz, cap);
549
550
  for (size_t i = 0; i < len; i++, str++) {
550
551
  if (*str < 32 || *str >= 127) {
@@ -580,28 +581,28 @@ static void append_esc_str(const uint8_t *str, size_t len, char **s, size_t *sz,
580
581
  append_chr('"', s, sz, cap);
581
582
  }
582
583
 
583
- static void append_kv(kv_pairs *kvs, char *key, char *value) {
584
+ static void append_kv(kv_pairs* kvs, char* key, char* value) {
584
585
  if (kvs->num_kvs == kvs->cap_kvs) {
585
586
  kvs->cap_kvs = GPR_MAX(3 * kvs->cap_kvs / 2, 4);
586
587
  kvs->kvs =
587
- (kv_pair *)gpr_realloc(kvs->kvs, sizeof(*kvs->kvs) * kvs->cap_kvs);
588
+ (kv_pair*)gpr_realloc(kvs->kvs, sizeof(*kvs->kvs) * kvs->cap_kvs);
588
589
  }
589
590
  kvs->kvs[kvs->num_kvs].key = key;
590
591
  kvs->kvs[kvs->num_kvs].value = value;
591
592
  kvs->num_kvs++;
592
593
  }
593
594
 
594
- static char *key_int(grpc_error_ints which) {
595
+ static char* key_int(grpc_error_ints which) {
595
596
  return gpr_strdup(error_int_name(which));
596
597
  }
597
598
 
598
- static char *fmt_int(intptr_t p) {
599
- char *s;
599
+ static char* fmt_int(intptr_t p) {
600
+ char* s;
600
601
  gpr_asprintf(&s, "%" PRIdPTR, p);
601
602
  return s;
602
603
  }
603
604
 
604
- static void collect_ints_kvs(grpc_error *err, kv_pairs *kvs) {
605
+ static void collect_ints_kvs(grpc_error* err, kv_pairs* kvs) {
605
606
  for (size_t which = 0; which < GRPC_ERROR_INT_MAX; ++which) {
606
607
  uint8_t slot = err->ints[which];
607
608
  if (slot != UINT8_MAX) {
@@ -611,37 +612,37 @@ static void collect_ints_kvs(grpc_error *err, kv_pairs *kvs) {
611
612
  }
612
613
  }
613
614
 
614
- static char *key_str(grpc_error_strs which) {
615
+ static char* key_str(grpc_error_strs which) {
615
616
  return gpr_strdup(error_str_name(which));
616
617
  }
617
618
 
618
- static char *fmt_str(grpc_slice slice) {
619
- char *s = NULL;
619
+ static char* fmt_str(grpc_slice slice) {
620
+ char* s = nullptr;
620
621
  size_t sz = 0;
621
622
  size_t cap = 0;
622
- append_esc_str((const uint8_t *)GRPC_SLICE_START_PTR(slice),
623
+ append_esc_str((const uint8_t*)GRPC_SLICE_START_PTR(slice),
623
624
  GRPC_SLICE_LENGTH(slice), &s, &sz, &cap);
624
625
  append_chr(0, &s, &sz, &cap);
625
626
  return s;
626
627
  }
627
628
 
628
- static void collect_strs_kvs(grpc_error *err, kv_pairs *kvs) {
629
+ static void collect_strs_kvs(grpc_error* err, kv_pairs* kvs) {
629
630
  for (size_t which = 0; which < GRPC_ERROR_STR_MAX; ++which) {
630
631
  uint8_t slot = err->strs[which];
631
632
  if (slot != UINT8_MAX) {
632
633
  append_kv(kvs, key_str((grpc_error_strs)which),
633
- fmt_str(*(grpc_slice *)(err->arena + slot)));
634
+ fmt_str(*(grpc_slice*)(err->arena + slot)));
634
635
  }
635
636
  }
636
637
  }
637
638
 
638
- static char *key_time(grpc_error_times which) {
639
+ static char* key_time(grpc_error_times which) {
639
640
  return gpr_strdup(error_time_name(which));
640
641
  }
641
642
 
642
- static char *fmt_time(gpr_timespec tm) {
643
- char *out;
644
- const char *pfx = "!!";
643
+ static char* fmt_time(gpr_timespec tm) {
644
+ char* out;
645
+ const char* pfx = "!!";
645
646
  switch (tm.clock_type) {
646
647
  case GPR_CLOCK_MONOTONIC:
647
648
  pfx = "@monotonic:";
@@ -660,24 +661,24 @@ static char *fmt_time(gpr_timespec tm) {
660
661
  return out;
661
662
  }
662
663
 
663
- static void collect_times_kvs(grpc_error *err, kv_pairs *kvs) {
664
+ static void collect_times_kvs(grpc_error* err, kv_pairs* kvs) {
664
665
  for (size_t which = 0; which < GRPC_ERROR_TIME_MAX; ++which) {
665
666
  uint8_t slot = err->times[which];
666
667
  if (slot != UINT8_MAX) {
667
668
  append_kv(kvs, key_time((grpc_error_times)which),
668
- fmt_time(*(gpr_timespec *)(err->arena + slot)));
669
+ fmt_time(*(gpr_timespec*)(err->arena + slot)));
669
670
  }
670
671
  }
671
672
  }
672
673
 
673
- static void add_errs(grpc_error *err, char **s, size_t *sz, size_t *cap) {
674
+ static void add_errs(grpc_error* err, char** s, size_t* sz, size_t* cap) {
674
675
  uint8_t slot = err->first_err;
675
676
  bool first = true;
676
677
  while (slot != UINT8_MAX) {
677
- grpc_linked_error *lerr = (grpc_linked_error *)(err->arena + slot);
678
+ grpc_linked_error* lerr = (grpc_linked_error*)(err->arena + slot);
678
679
  if (!first) append_chr(',', s, sz, cap);
679
680
  first = false;
680
- const char *e = grpc_error_string(lerr->err);
681
+ const char* e = grpc_error_string(lerr->err);
681
682
  append_str(e, s, sz, cap);
682
683
  GPR_ASSERT(err->last_err == slot ? lerr->next == UINT8_MAX
683
684
  : lerr->next != UINT8_MAX);
@@ -685,8 +686,8 @@ static void add_errs(grpc_error *err, char **s, size_t *sz, size_t *cap) {
685
686
  }
686
687
  }
687
688
 
688
- static char *errs_string(grpc_error *err) {
689
- char *s = NULL;
689
+ static char* errs_string(grpc_error* err) {
690
+ char* s = nullptr;
690
691
  size_t sz = 0;
691
692
  size_t cap = 0;
692
693
  append_chr('[', &s, &sz, &cap);
@@ -696,22 +697,22 @@ static char *errs_string(grpc_error *err) {
696
697
  return s;
697
698
  }
698
699
 
699
- static int cmp_kvs(const void *a, const void *b) {
700
- const kv_pair *ka = (const kv_pair *)a;
701
- const kv_pair *kb = (const kv_pair *)b;
700
+ static int cmp_kvs(const void* a, const void* b) {
701
+ const kv_pair* ka = (const kv_pair*)a;
702
+ const kv_pair* kb = (const kv_pair*)b;
702
703
  return strcmp(ka->key, kb->key);
703
704
  }
704
705
 
705
- static char *finish_kvs(kv_pairs *kvs) {
706
- char *s = NULL;
706
+ static char* finish_kvs(kv_pairs* kvs) {
707
+ char* s = nullptr;
707
708
  size_t sz = 0;
708
709
  size_t cap = 0;
709
710
 
710
711
  append_chr('{', &s, &sz, &cap);
711
712
  for (size_t i = 0; i < kvs->num_kvs; i++) {
712
713
  if (i != 0) append_chr(',', &s, &sz, &cap);
713
- append_esc_str((const uint8_t *)kvs->kvs[i].key, strlen(kvs->kvs[i].key),
714
- &s, &sz, &cap);
714
+ append_esc_str((const uint8_t*)kvs->kvs[i].key, strlen(kvs->kvs[i].key), &s,
715
+ &sz, &cap);
715
716
  gpr_free(kvs->kvs[i].key);
716
717
  append_chr(':', &s, &sz, &cap);
717
718
  append_str(kvs->kvs[i].value, &s, &sz, &cap);
@@ -724,16 +725,16 @@ static char *finish_kvs(kv_pairs *kvs) {
724
725
  return s;
725
726
  }
726
727
 
727
- const char *grpc_error_string(grpc_error *err) {
728
+ const char* grpc_error_string(grpc_error* err) {
728
729
  GPR_TIMER_BEGIN("grpc_error_string", 0);
729
730
  if (err == GRPC_ERROR_NONE) return no_error_string;
730
731
  if (err == GRPC_ERROR_OOM) return oom_error_string;
731
732
  if (err == GRPC_ERROR_CANCELLED) return cancelled_error_string;
732
733
 
733
- void *p = (void *)gpr_atm_acq_load(&err->atomics.error_string);
734
- if (p != NULL) {
734
+ void* p = (void*)gpr_atm_acq_load(&err->atomics.error_string);
735
+ if (p != nullptr) {
735
736
  GPR_TIMER_END("grpc_error_string", 0);
736
- return (const char *)p;
737
+ return (const char*)p;
737
738
  }
738
739
 
739
740
  kv_pairs kvs;
@@ -748,25 +749,25 @@ const char *grpc_error_string(grpc_error *err) {
748
749
 
749
750
  qsort(kvs.kvs, kvs.num_kvs, sizeof(kv_pair), cmp_kvs);
750
751
 
751
- char *out = finish_kvs(&kvs);
752
+ char* out = finish_kvs(&kvs);
752
753
 
753
754
  if (!gpr_atm_rel_cas(&err->atomics.error_string, 0, (gpr_atm)out)) {
754
755
  gpr_free(out);
755
- out = (char *)gpr_atm_no_barrier_load(&err->atomics.error_string);
756
+ out = (char*)gpr_atm_no_barrier_load(&err->atomics.error_string);
756
757
  }
757
758
 
758
759
  GPR_TIMER_END("grpc_error_string", 0);
759
760
  return out;
760
761
  }
761
762
 
762
- grpc_error *grpc_os_error(const char *file, int line, int err,
763
- const char *call_name) {
763
+ grpc_error* grpc_os_error(const char* file, int line, int err,
764
+ const char* call_name) {
764
765
  return grpc_error_set_str(
765
766
  grpc_error_set_str(
766
767
  grpc_error_set_int(
767
768
  grpc_error_create(file, line,
768
- grpc_slice_from_static_string("OS Error"), NULL,
769
- 0),
769
+ grpc_slice_from_static_string("OS Error"),
770
+ nullptr, 0),
770
771
  GRPC_ERROR_INT_ERRNO, err),
771
772
  GRPC_ERROR_STR_OS_ERROR,
772
773
  grpc_slice_from_static_string(strerror(err))),
@@ -774,10 +775,10 @@ grpc_error *grpc_os_error(const char *file, int line, int err,
774
775
  }
775
776
 
776
777
  #ifdef GPR_WINDOWS
777
- grpc_error *grpc_wsa_error(const char *file, int line, int err,
778
- const char *call_name) {
779
- char *utf8_message = gpr_format_message(err);
780
- grpc_error *error = grpc_error_set_str(
778
+ grpc_error* grpc_wsa_error(const char* file, int line, int err,
779
+ const char* call_name) {
780
+ char* utf8_message = gpr_format_message(err);
781
+ grpc_error* error = grpc_error_set_str(
781
782
  grpc_error_set_str(
782
783
  grpc_error_set_int(
783
784
  grpc_error_create(file, line,
@@ -791,10 +792,10 @@ grpc_error *grpc_wsa_error(const char *file, int line, int err,
791
792
  }
792
793
  #endif
793
794
 
794
- bool grpc_log_if_error(const char *what, grpc_error *error, const char *file,
795
+ bool grpc_log_if_error(const char* what, grpc_error* error, const char* file,
795
796
  int line) {
796
797
  if (error == GRPC_ERROR_NONE) return true;
797
- const char *msg = grpc_error_string(error);
798
+ const char* msg = grpc_error_string(error);
798
799
  gpr_log(file, line, GPR_LOG_SEVERITY_ERROR, "%s: %s", what, msg);
799
800
  GRPC_ERROR_UNREF(error);
800
801
  return false;