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
@@ -20,22 +20,34 @@
20
20
  #define GRPC_CORE_LIB_TRANSPORT_ERROR_UTILS_H
21
21
 
22
22
  #include "src/core/lib/iomgr/error.h"
23
+ #include "src/core/lib/iomgr/exec_ctx.h"
23
24
  #include "src/core/lib/transport/http2_errors.h"
24
25
 
26
+ #ifdef __cplusplus
27
+ extern "C" {
28
+ #endif
29
+
25
30
  /// A utility function to get the status code and message to be returned
26
31
  /// to the application. If not set in the top-level message, looks
27
32
  /// through child errors until it finds the first one with these attributes.
28
- /// All attributes are pulled from the same child error. If any of the
29
- /// attributes (code, msg, http_status) are unneeded, they can be passed as
33
+ /// All attributes are pulled from the same child error. error_string will
34
+ /// be populated with the entire error string. If any of the attributes (code,
35
+ /// msg, http_status, error_string) are unneeded, they can be passed as
30
36
  /// NULL.
31
- void grpc_error_get_status(grpc_error *error, gpr_timespec deadline,
32
- grpc_status_code *code, grpc_slice *slice,
33
- grpc_http2_error_code *http_status);
37
+ void grpc_error_get_status(grpc_exec_ctx* exec_ctx, grpc_error* error,
38
+ grpc_millis deadline, grpc_status_code* code,
39
+ grpc_slice* slice,
40
+ grpc_http2_error_code* http_status,
41
+ const char** error_string);
34
42
 
35
43
  /// A utility function to check whether there is a clear status code that
36
44
  /// doesn't need to be guessed in \a error. This means that \a error or some
37
45
  /// child has GRPC_ERROR_INT_GRPC_STATUS set, or that it is GRPC_ERROR_NONE or
38
46
  /// GRPC_ERROR_CANCELLED
39
- bool grpc_error_has_clear_grpc_status(grpc_error *error);
47
+ bool grpc_error_has_clear_grpc_status(grpc_error* error);
48
+
49
+ #ifdef __cplusplus
50
+ }
51
+ #endif
40
52
 
41
53
  #endif /* GRPC_CORE_LIB_TRANSPORT_ERROR_UTILS_H */
@@ -19,6 +19,7 @@
19
19
  #include "src/core/lib/transport/metadata.h"
20
20
 
21
21
  #include <assert.h>
22
+ #include <inttypes.h>
22
23
  #include <stddef.h>
23
24
  #include <string.h>
24
25
 
@@ -47,9 +48,9 @@
47
48
  * used to determine which kind of element a pointer refers to.
48
49
  */
49
50
 
51
+ grpc_core::DebugOnlyTraceFlag grpc_trace_metadata(false, "metadata");
52
+
50
53
  #ifndef NDEBUG
51
- grpc_tracer_flag grpc_trace_metadata =
52
- GRPC_TRACER_INITIALIZER(false, "metadata");
53
54
  #define DEBUG_ARGS , const char *file, int line
54
55
  #define FWD_DEBUG_ARGS , file, line
55
56
  #define REF_MD_LOCKED(shard, s) ref_md_locked((shard), (s), __FILE__, __LINE__)
@@ -66,7 +67,7 @@ grpc_tracer_flag grpc_trace_metadata =
66
67
  #define TABLE_IDX(hash, capacity) (((hash) >> (LOG2_SHARD_COUNT)) % (capacity))
67
68
  #define SHARD_IDX(hash) ((hash) & ((1 << (LOG2_SHARD_COUNT)) - 1))
68
69
 
69
- typedef void (*destroy_user_data_func)(void *user_data);
70
+ typedef void (*destroy_user_data_func)(void* user_data);
70
71
 
71
72
  /* Shadow structure for grpc_mdelem_data for interned elements */
72
73
  typedef struct interned_metadata {
@@ -81,7 +82,7 @@ typedef struct interned_metadata {
81
82
  gpr_atm destroy_user_data;
82
83
  gpr_atm user_data;
83
84
 
84
- struct interned_metadata *bucket_next;
85
+ struct interned_metadata* bucket_next;
85
86
  } interned_metadata;
86
87
 
87
88
  /* Shadow structure for grpc_mdelem_data for allocated elements */
@@ -96,7 +97,7 @@ typedef struct allocated_metadata {
96
97
 
97
98
  typedef struct mdtab_shard {
98
99
  gpr_mu mu;
99
- interned_metadata **elems;
100
+ interned_metadata** elems;
100
101
  size_t count;
101
102
  size_t capacity;
102
103
  /** Estimate of the number of unreferenced mdelems in the hash table.
@@ -107,24 +108,24 @@ typedef struct mdtab_shard {
107
108
 
108
109
  static mdtab_shard g_shards[SHARD_COUNT];
109
110
 
110
- static void gc_mdtab(grpc_exec_ctx *exec_ctx, mdtab_shard *shard);
111
+ static void gc_mdtab(grpc_exec_ctx* exec_ctx, mdtab_shard* shard);
111
112
 
112
113
  void grpc_mdctx_global_init(void) {
113
114
  /* initialize shards */
114
115
  for (size_t i = 0; i < SHARD_COUNT; i++) {
115
- mdtab_shard *shard = &g_shards[i];
116
+ mdtab_shard* shard = &g_shards[i];
116
117
  gpr_mu_init(&shard->mu);
117
118
  shard->count = 0;
118
119
  gpr_atm_no_barrier_store(&shard->free_estimate, 0);
119
120
  shard->capacity = INITIAL_SHARD_CAPACITY;
120
- shard->elems = (interned_metadata **)gpr_zalloc(sizeof(*shard->elems) *
121
- shard->capacity);
121
+ shard->elems = (interned_metadata**)gpr_zalloc(sizeof(*shard->elems) *
122
+ shard->capacity);
122
123
  }
123
124
  }
124
125
 
125
- void grpc_mdctx_global_shutdown(grpc_exec_ctx *exec_ctx) {
126
+ void grpc_mdctx_global_shutdown(grpc_exec_ctx* exec_ctx) {
126
127
  for (size_t i = 0; i < SHARD_COUNT; i++) {
127
- mdtab_shard *shard = &g_shards[i];
128
+ mdtab_shard* shard = &g_shards[i];
128
129
  gpr_mu_destroy(&shard->mu);
129
130
  gc_mdtab(exec_ctx, shard);
130
131
  /* TODO(ctiller): GPR_ASSERT(shard->count == 0); */
@@ -145,14 +146,14 @@ static int is_mdelem_static(grpc_mdelem e) {
145
146
  &grpc_static_mdelem_table[GRPC_STATIC_MDELEM_COUNT];
146
147
  }
147
148
 
148
- static void ref_md_locked(mdtab_shard *shard,
149
- interned_metadata *md DEBUG_ARGS) {
149
+ static void ref_md_locked(mdtab_shard* shard,
150
+ interned_metadata* md DEBUG_ARGS) {
150
151
  #ifndef NDEBUG
151
- if (GRPC_TRACER_ON(grpc_trace_metadata)) {
152
- char *key_str = grpc_slice_to_c_string(md->key);
153
- char *value_str = grpc_slice_to_c_string(md->value);
152
+ if (grpc_trace_metadata.enabled()) {
153
+ char* key_str = grpc_slice_to_c_string(md->key);
154
+ char* value_str = grpc_slice_to_c_string(md->value);
154
155
  gpr_log(file, line, GPR_LOG_SEVERITY_DEBUG,
155
- "ELM REF:%p:%" PRIdPTR "->%" PRIdPTR ": '%s' = '%s'", (void *)md,
156
+ "ELM REF:%p:%" PRIdPTR "->%" PRIdPTR ": '%s' = '%s'", (void*)md,
156
157
  gpr_atm_no_barrier_load(&md->refcnt),
157
158
  gpr_atm_no_barrier_load(&md->refcnt) + 1, key_str, value_str);
158
159
  gpr_free(key_str);
@@ -164,9 +165,9 @@ static void ref_md_locked(mdtab_shard *shard,
164
165
  }
165
166
  }
166
167
 
167
- static void gc_mdtab(grpc_exec_ctx *exec_ctx, mdtab_shard *shard) {
168
+ static void gc_mdtab(grpc_exec_ctx* exec_ctx, mdtab_shard* shard) {
168
169
  size_t i;
169
- interned_metadata **prev_next;
170
+ interned_metadata** prev_next;
170
171
  interned_metadata *md, *next;
171
172
  gpr_atm num_freed = 0;
172
173
 
@@ -174,7 +175,7 @@ static void gc_mdtab(grpc_exec_ctx *exec_ctx, mdtab_shard *shard) {
174
175
  for (i = 0; i < shard->capacity; i++) {
175
176
  prev_next = &shard->elems[i];
176
177
  for (md = shard->elems[i]; md; md = next) {
177
- void *user_data = (void *)gpr_atm_no_barrier_load(&md->user_data);
178
+ void* user_data = (void*)gpr_atm_no_barrier_load(&md->user_data);
178
179
  next = md->bucket_next;
179
180
  if (gpr_atm_acq_load(&md->refcnt) == 0) {
180
181
  grpc_slice_unref_internal(exec_ctx, md->key);
@@ -196,17 +197,17 @@ static void gc_mdtab(grpc_exec_ctx *exec_ctx, mdtab_shard *shard) {
196
197
  GPR_TIMER_END("gc_mdtab", 0);
197
198
  }
198
199
 
199
- static void grow_mdtab(mdtab_shard *shard) {
200
+ static void grow_mdtab(mdtab_shard* shard) {
200
201
  size_t capacity = shard->capacity * 2;
201
202
  size_t i;
202
- interned_metadata **mdtab;
203
+ interned_metadata** mdtab;
203
204
  interned_metadata *md, *next;
204
205
  uint32_t hash;
205
206
 
206
207
  GPR_TIMER_BEGIN("grow_mdtab", 0);
207
208
 
208
209
  mdtab =
209
- (interned_metadata **)gpr_zalloc(sizeof(interned_metadata *) * capacity);
210
+ (interned_metadata**)gpr_zalloc(sizeof(interned_metadata*) * capacity);
210
211
 
211
212
  for (i = 0; i < shard->capacity; i++) {
212
213
  for (md = shard->elems[i]; md; md = next) {
@@ -227,7 +228,7 @@ static void grow_mdtab(mdtab_shard *shard) {
227
228
  GPR_TIMER_END("grow_mdtab", 0);
228
229
  }
229
230
 
230
- static void rehash_mdtab(grpc_exec_ctx *exec_ctx, mdtab_shard *shard) {
231
+ static void rehash_mdtab(grpc_exec_ctx* exec_ctx, mdtab_shard* shard) {
231
232
  if (gpr_atm_no_barrier_load(&shard->free_estimate) >
232
233
  (gpr_atm)(shard->capacity / 4)) {
233
234
  gc_mdtab(exec_ctx, shard);
@@ -237,25 +238,25 @@ static void rehash_mdtab(grpc_exec_ctx *exec_ctx, mdtab_shard *shard) {
237
238
  }
238
239
 
239
240
  grpc_mdelem grpc_mdelem_create(
240
- grpc_exec_ctx *exec_ctx, grpc_slice key, grpc_slice value,
241
- grpc_mdelem_data *compatible_external_backing_store) {
241
+ grpc_exec_ctx* exec_ctx, grpc_slice key, grpc_slice value,
242
+ grpc_mdelem_data* compatible_external_backing_store) {
242
243
  if (!grpc_slice_is_interned(key) || !grpc_slice_is_interned(value)) {
243
- if (compatible_external_backing_store != NULL) {
244
+ if (compatible_external_backing_store != nullptr) {
244
245
  return GRPC_MAKE_MDELEM(compatible_external_backing_store,
245
246
  GRPC_MDELEM_STORAGE_EXTERNAL);
246
247
  }
247
248
 
248
- allocated_metadata *allocated =
249
- (allocated_metadata *)gpr_malloc(sizeof(*allocated));
249
+ allocated_metadata* allocated =
250
+ (allocated_metadata*)gpr_malloc(sizeof(*allocated));
250
251
  allocated->key = grpc_slice_ref_internal(key);
251
252
  allocated->value = grpc_slice_ref_internal(value);
252
253
  gpr_atm_rel_store(&allocated->refcnt, 1);
253
254
  #ifndef NDEBUG
254
- if (GRPC_TRACER_ON(grpc_trace_metadata)) {
255
- char *key_str = grpc_slice_to_c_string(allocated->key);
256
- char *value_str = grpc_slice_to_c_string(allocated->value);
255
+ if (grpc_trace_metadata.enabled()) {
256
+ char* key_str = grpc_slice_to_c_string(allocated->key);
257
+ char* value_str = grpc_slice_to_c_string(allocated->value);
257
258
  gpr_log(GPR_DEBUG, "ELM ALLOC:%p:%" PRIdPTR ": '%s' = '%s'",
258
- (void *)allocated, gpr_atm_no_barrier_load(&allocated->refcnt),
259
+ (void*)allocated, gpr_atm_no_barrier_load(&allocated->refcnt),
259
260
  key_str, value_str);
260
261
  gpr_free(key_str);
261
262
  gpr_free(value_str);
@@ -275,8 +276,8 @@ grpc_mdelem grpc_mdelem_create(
275
276
 
276
277
  uint32_t hash =
277
278
  GRPC_MDSTR_KV_HASH(grpc_slice_hash(key), grpc_slice_hash(value));
278
- interned_metadata *md;
279
- mdtab_shard *shard = &g_shards[SHARD_IDX(hash)];
279
+ interned_metadata* md;
280
+ mdtab_shard* shard = &g_shards[SHARD_IDX(hash)];
280
281
  size_t idx;
281
282
 
282
283
  GPR_TIMER_BEGIN("grpc_mdelem_from_metadata_strings", 0);
@@ -295,7 +296,7 @@ grpc_mdelem grpc_mdelem_create(
295
296
  }
296
297
 
297
298
  /* not found: create a new pair */
298
- md = (interned_metadata *)gpr_malloc(sizeof(interned_metadata));
299
+ md = (interned_metadata*)gpr_malloc(sizeof(interned_metadata));
299
300
  gpr_atm_rel_store(&md->refcnt, 1);
300
301
  md->key = grpc_slice_ref_internal(key);
301
302
  md->value = grpc_slice_ref_internal(value);
@@ -305,10 +306,10 @@ grpc_mdelem grpc_mdelem_create(
305
306
  shard->elems[idx] = md;
306
307
  gpr_mu_init(&md->mu_user_data);
307
308
  #ifndef NDEBUG
308
- if (GRPC_TRACER_ON(grpc_trace_metadata)) {
309
- char *key_str = grpc_slice_to_c_string(md->key);
310
- char *value_str = grpc_slice_to_c_string(md->value);
311
- gpr_log(GPR_DEBUG, "ELM NEW:%p:%" PRIdPTR ": '%s' = '%s'", (void *)md,
309
+ if (grpc_trace_metadata.enabled()) {
310
+ char* key_str = grpc_slice_to_c_string(md->key);
311
+ char* value_str = grpc_slice_to_c_string(md->value);
312
+ gpr_log(GPR_DEBUG, "ELM NEW:%p:%" PRIdPTR ": '%s' = '%s'", (void*)md,
312
313
  gpr_atm_no_barrier_load(&md->refcnt), key_str, value_str);
313
314
  gpr_free(key_str);
314
315
  gpr_free(value_str);
@@ -327,23 +328,23 @@ grpc_mdelem grpc_mdelem_create(
327
328
  return GRPC_MAKE_MDELEM(md, GRPC_MDELEM_STORAGE_INTERNED);
328
329
  }
329
330
 
330
- grpc_mdelem grpc_mdelem_from_slices(grpc_exec_ctx *exec_ctx, grpc_slice key,
331
+ grpc_mdelem grpc_mdelem_from_slices(grpc_exec_ctx* exec_ctx, grpc_slice key,
331
332
  grpc_slice value) {
332
- grpc_mdelem out = grpc_mdelem_create(exec_ctx, key, value, NULL);
333
+ grpc_mdelem out = grpc_mdelem_create(exec_ctx, key, value, nullptr);
333
334
  grpc_slice_unref_internal(exec_ctx, key);
334
335
  grpc_slice_unref_internal(exec_ctx, value);
335
336
  return out;
336
337
  }
337
338
 
338
- grpc_mdelem grpc_mdelem_from_grpc_metadata(grpc_exec_ctx *exec_ctx,
339
- grpc_metadata *metadata) {
339
+ grpc_mdelem grpc_mdelem_from_grpc_metadata(grpc_exec_ctx* exec_ctx,
340
+ grpc_metadata* metadata) {
340
341
  bool changed = false;
341
342
  grpc_slice key_slice =
342
343
  grpc_slice_maybe_static_intern(metadata->key, &changed);
343
344
  grpc_slice value_slice =
344
345
  grpc_slice_maybe_static_intern(metadata->value, &changed);
345
346
  return grpc_mdelem_create(exec_ctx, key_slice, value_slice,
346
- changed ? NULL : (grpc_mdelem_data *)metadata);
347
+ changed ? nullptr : (grpc_mdelem_data*)metadata);
347
348
  }
348
349
 
349
350
  static size_t get_base64_encoded_size(size_t raw_length) {
@@ -351,11 +352,14 @@ static size_t get_base64_encoded_size(size_t raw_length) {
351
352
  return raw_length / 3 * 4 + tail_xtra[raw_length % 3];
352
353
  }
353
354
 
354
- size_t grpc_mdelem_get_size_in_hpack_table(grpc_mdelem elem) {
355
+ size_t grpc_mdelem_get_size_in_hpack_table(grpc_mdelem elem,
356
+ bool use_true_binary_metadata) {
355
357
  size_t overhead_and_key = 32 + GRPC_SLICE_LENGTH(GRPC_MDKEY(elem));
356
358
  size_t value_len = GRPC_SLICE_LENGTH(GRPC_MDVALUE(elem));
357
359
  if (grpc_is_binary_header(GRPC_MDKEY(elem))) {
358
- return overhead_and_key + get_base64_encoded_size(value_len);
360
+ return overhead_and_key + (use_true_binary_metadata
361
+ ? value_len + 1
362
+ : get_base64_encoded_size(value_len));
359
363
  } else {
360
364
  return overhead_and_key + value_len;
361
365
  }
@@ -367,14 +371,14 @@ grpc_mdelem grpc_mdelem_ref(grpc_mdelem gmd DEBUG_ARGS) {
367
371
  case GRPC_MDELEM_STORAGE_STATIC:
368
372
  break;
369
373
  case GRPC_MDELEM_STORAGE_INTERNED: {
370
- interned_metadata *md = (interned_metadata *)GRPC_MDELEM_DATA(gmd);
374
+ interned_metadata* md = (interned_metadata*)GRPC_MDELEM_DATA(gmd);
371
375
  #ifndef NDEBUG
372
- if (GRPC_TRACER_ON(grpc_trace_metadata)) {
373
- char *key_str = grpc_slice_to_c_string(md->key);
374
- char *value_str = grpc_slice_to_c_string(md->value);
376
+ if (grpc_trace_metadata.enabled()) {
377
+ char* key_str = grpc_slice_to_c_string(md->key);
378
+ char* value_str = grpc_slice_to_c_string(md->value);
375
379
  gpr_log(file, line, GPR_LOG_SEVERITY_DEBUG,
376
380
  "ELM REF:%p:%" PRIdPTR "->%" PRIdPTR ": '%s' = '%s'",
377
- (void *)md, gpr_atm_no_barrier_load(&md->refcnt),
381
+ (void*)md, gpr_atm_no_barrier_load(&md->refcnt),
378
382
  gpr_atm_no_barrier_load(&md->refcnt) + 1, key_str, value_str);
379
383
  gpr_free(key_str);
380
384
  gpr_free(value_str);
@@ -389,14 +393,14 @@ grpc_mdelem grpc_mdelem_ref(grpc_mdelem gmd DEBUG_ARGS) {
389
393
  break;
390
394
  }
391
395
  case GRPC_MDELEM_STORAGE_ALLOCATED: {
392
- allocated_metadata *md = (allocated_metadata *)GRPC_MDELEM_DATA(gmd);
396
+ allocated_metadata* md = (allocated_metadata*)GRPC_MDELEM_DATA(gmd);
393
397
  #ifndef NDEBUG
394
- if (GRPC_TRACER_ON(grpc_trace_metadata)) {
395
- char *key_str = grpc_slice_to_c_string(md->key);
396
- char *value_str = grpc_slice_to_c_string(md->value);
398
+ if (grpc_trace_metadata.enabled()) {
399
+ char* key_str = grpc_slice_to_c_string(md->key);
400
+ char* value_str = grpc_slice_to_c_string(md->value);
397
401
  gpr_log(file, line, GPR_LOG_SEVERITY_DEBUG,
398
402
  "ELM REF:%p:%" PRIdPTR "->%" PRIdPTR ": '%s' = '%s'",
399
- (void *)md, gpr_atm_no_barrier_load(&md->refcnt),
403
+ (void*)md, gpr_atm_no_barrier_load(&md->refcnt),
400
404
  gpr_atm_no_barrier_load(&md->refcnt) + 1, key_str, value_str);
401
405
  gpr_free(key_str);
402
406
  gpr_free(value_str);
@@ -413,20 +417,20 @@ grpc_mdelem grpc_mdelem_ref(grpc_mdelem gmd DEBUG_ARGS) {
413
417
  return gmd;
414
418
  }
415
419
 
416
- void grpc_mdelem_unref(grpc_exec_ctx *exec_ctx, grpc_mdelem gmd DEBUG_ARGS) {
420
+ void grpc_mdelem_unref(grpc_exec_ctx* exec_ctx, grpc_mdelem gmd DEBUG_ARGS) {
417
421
  switch (GRPC_MDELEM_STORAGE(gmd)) {
418
422
  case GRPC_MDELEM_STORAGE_EXTERNAL:
419
423
  case GRPC_MDELEM_STORAGE_STATIC:
420
424
  break;
421
425
  case GRPC_MDELEM_STORAGE_INTERNED: {
422
- interned_metadata *md = (interned_metadata *)GRPC_MDELEM_DATA(gmd);
426
+ interned_metadata* md = (interned_metadata*)GRPC_MDELEM_DATA(gmd);
423
427
  #ifndef NDEBUG
424
- if (GRPC_TRACER_ON(grpc_trace_metadata)) {
425
- char *key_str = grpc_slice_to_c_string(md->key);
426
- char *value_str = grpc_slice_to_c_string(md->value);
428
+ if (grpc_trace_metadata.enabled()) {
429
+ char* key_str = grpc_slice_to_c_string(md->key);
430
+ char* value_str = grpc_slice_to_c_string(md->value);
427
431
  gpr_log(file, line, GPR_LOG_SEVERITY_DEBUG,
428
432
  "ELM UNREF:%p:%" PRIdPTR "->%" PRIdPTR ": '%s' = '%s'",
429
- (void *)md, gpr_atm_no_barrier_load(&md->refcnt),
433
+ (void*)md, gpr_atm_no_barrier_load(&md->refcnt),
430
434
  gpr_atm_no_barrier_load(&md->refcnt) - 1, key_str, value_str);
431
435
  gpr_free(key_str);
432
436
  gpr_free(value_str);
@@ -439,20 +443,20 @@ void grpc_mdelem_unref(grpc_exec_ctx *exec_ctx, grpc_mdelem gmd DEBUG_ARGS) {
439
443
  if (1 == prev_refcount) {
440
444
  /* once the refcount hits zero, some other thread can come along and
441
445
  free md at any time: it's unsafe from this point on to access it */
442
- mdtab_shard *shard = &g_shards[SHARD_IDX(hash)];
446
+ mdtab_shard* shard = &g_shards[SHARD_IDX(hash)];
443
447
  gpr_atm_no_barrier_fetch_add(&shard->free_estimate, 1);
444
448
  }
445
449
  break;
446
450
  }
447
451
  case GRPC_MDELEM_STORAGE_ALLOCATED: {
448
- allocated_metadata *md = (allocated_metadata *)GRPC_MDELEM_DATA(gmd);
452
+ allocated_metadata* md = (allocated_metadata*)GRPC_MDELEM_DATA(gmd);
449
453
  #ifndef NDEBUG
450
- if (GRPC_TRACER_ON(grpc_trace_metadata)) {
451
- char *key_str = grpc_slice_to_c_string(md->key);
452
- char *value_str = grpc_slice_to_c_string(md->value);
454
+ if (grpc_trace_metadata.enabled()) {
455
+ char* key_str = grpc_slice_to_c_string(md->key);
456
+ char* value_str = grpc_slice_to_c_string(md->value);
453
457
  gpr_log(file, line, GPR_LOG_SEVERITY_DEBUG,
454
458
  "ELM UNREF:%p:%" PRIdPTR "->%" PRIdPTR ": '%s' = '%s'",
455
- (void *)md, gpr_atm_no_barrier_load(&md->refcnt),
459
+ (void*)md, gpr_atm_no_barrier_load(&md->refcnt),
456
460
  gpr_atm_no_barrier_load(&md->refcnt) - 1, key_str, value_str);
457
461
  gpr_free(key_str);
458
462
  gpr_free(value_str);
@@ -470,51 +474,51 @@ void grpc_mdelem_unref(grpc_exec_ctx *exec_ctx, grpc_mdelem gmd DEBUG_ARGS) {
470
474
  }
471
475
  }
472
476
 
473
- void *grpc_mdelem_get_user_data(grpc_mdelem md, void (*destroy_func)(void *)) {
477
+ void* grpc_mdelem_get_user_data(grpc_mdelem md, void (*destroy_func)(void*)) {
474
478
  switch (GRPC_MDELEM_STORAGE(md)) {
475
479
  case GRPC_MDELEM_STORAGE_EXTERNAL:
476
480
  case GRPC_MDELEM_STORAGE_ALLOCATED:
477
- return NULL;
481
+ return nullptr;
478
482
  case GRPC_MDELEM_STORAGE_STATIC:
479
- return (void *)grpc_static_mdelem_user_data[GRPC_MDELEM_DATA(md) -
480
- grpc_static_mdelem_table];
483
+ return (void*)grpc_static_mdelem_user_data[GRPC_MDELEM_DATA(md) -
484
+ grpc_static_mdelem_table];
481
485
  case GRPC_MDELEM_STORAGE_INTERNED: {
482
- interned_metadata *im = (interned_metadata *)GRPC_MDELEM_DATA(md);
483
- void *result;
486
+ interned_metadata* im = (interned_metadata*)GRPC_MDELEM_DATA(md);
487
+ void* result;
484
488
  if (gpr_atm_acq_load(&im->destroy_user_data) == (gpr_atm)destroy_func) {
485
- return (void *)gpr_atm_no_barrier_load(&im->user_data);
489
+ return (void*)gpr_atm_no_barrier_load(&im->user_data);
486
490
  } else {
487
- return NULL;
491
+ return nullptr;
488
492
  }
489
493
  return result;
490
494
  }
491
495
  }
492
- GPR_UNREACHABLE_CODE(return NULL);
496
+ GPR_UNREACHABLE_CODE(return nullptr);
493
497
  }
494
498
 
495
- void *grpc_mdelem_set_user_data(grpc_mdelem md, void (*destroy_func)(void *),
496
- void *user_data) {
499
+ void* grpc_mdelem_set_user_data(grpc_mdelem md, void (*destroy_func)(void*),
500
+ void* user_data) {
497
501
  switch (GRPC_MDELEM_STORAGE(md)) {
498
502
  case GRPC_MDELEM_STORAGE_EXTERNAL:
499
503
  case GRPC_MDELEM_STORAGE_ALLOCATED:
500
504
  destroy_func(user_data);
501
- return NULL;
505
+ return nullptr;
502
506
  case GRPC_MDELEM_STORAGE_STATIC:
503
507
  destroy_func(user_data);
504
- return (void *)grpc_static_mdelem_user_data[GRPC_MDELEM_DATA(md) -
505
- grpc_static_mdelem_table];
508
+ return (void*)grpc_static_mdelem_user_data[GRPC_MDELEM_DATA(md) -
509
+ grpc_static_mdelem_table];
506
510
  case GRPC_MDELEM_STORAGE_INTERNED: {
507
- interned_metadata *im = (interned_metadata *)GRPC_MDELEM_DATA(md);
511
+ interned_metadata* im = (interned_metadata*)GRPC_MDELEM_DATA(md);
508
512
  GPR_ASSERT(!is_mdelem_static(md));
509
- GPR_ASSERT((user_data == NULL) == (destroy_func == NULL));
513
+ GPR_ASSERT((user_data == nullptr) == (destroy_func == nullptr));
510
514
  gpr_mu_lock(&im->mu_user_data);
511
515
  if (gpr_atm_no_barrier_load(&im->destroy_user_data)) {
512
516
  /* user data can only be set once */
513
517
  gpr_mu_unlock(&im->mu_user_data);
514
- if (destroy_func != NULL) {
518
+ if (destroy_func != nullptr) {
515
519
  destroy_func(user_data);
516
520
  }
517
- return (void *)gpr_atm_no_barrier_load(&im->user_data);
521
+ return (void*)gpr_atm_no_barrier_load(&im->user_data);
518
522
  }
519
523
  gpr_atm_no_barrier_store(&im->user_data, (gpr_atm)user_data);
520
524
  gpr_atm_rel_store(&im->destroy_user_data, (gpr_atm)destroy_func);
@@ -522,7 +526,7 @@ void *grpc_mdelem_set_user_data(grpc_mdelem md, void (*destroy_func)(void *),
522
526
  return user_data;
523
527
  }
524
528
  }
525
- GPR_UNREACHABLE_CODE(return NULL);
529
+ GPR_UNREACHABLE_CODE(return nullptr);
526
530
  }
527
531
 
528
532
  bool grpc_mdelem_eq(grpc_mdelem a, grpc_mdelem b) {