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
@@ -25,9 +25,7 @@
25
25
 
26
26
  #include "src/core/lib/iomgr/exec_ctx.h"
27
27
 
28
- #ifndef NDEBUG
29
- extern grpc_tracer_flag grpc_trace_metadata;
30
- #endif
28
+ extern grpc_core::DebugOnlyTraceFlag grpc_trace_metadata;
31
29
 
32
30
  #ifdef __cplusplus
33
31
  extern "C" {
@@ -98,56 +96,60 @@ struct grpc_mdelem {
98
96
  uintptr_t payload;
99
97
  };
100
98
 
101
- #define GRPC_MDELEM_DATA(md) \
102
- ((grpc_mdelem_data *)((md).payload & ~(uintptr_t)3))
99
+ #define GRPC_MDELEM_DATA(md) ((grpc_mdelem_data*)((md).payload & ~(uintptr_t)3))
103
100
  #define GRPC_MDELEM_STORAGE(md) \
104
101
  ((grpc_mdelem_data_storage)((md).payload & (uintptr_t)3))
102
+ #ifdef __cplusplus
103
+ #define GRPC_MAKE_MDELEM(data, storage) \
104
+ (grpc_mdelem{((uintptr_t)(data)) | ((uintptr_t)storage)})
105
+ #else
105
106
  #define GRPC_MAKE_MDELEM(data, storage) \
106
107
  ((grpc_mdelem){((uintptr_t)(data)) | ((uintptr_t)storage)})
108
+ #endif
107
109
  #define GRPC_MDELEM_IS_INTERNED(md) \
108
110
  ((grpc_mdelem_data_storage)((md).payload & \
109
111
  (uintptr_t)GRPC_MDELEM_STORAGE_INTERNED_BIT))
110
112
 
111
113
  /* Unrefs the slices. */
112
- grpc_mdelem grpc_mdelem_from_slices(grpc_exec_ctx *exec_ctx, grpc_slice key,
114
+ grpc_mdelem grpc_mdelem_from_slices(grpc_exec_ctx* exec_ctx, grpc_slice key,
113
115
  grpc_slice value);
114
116
 
115
117
  /* Cheaply convert a grpc_metadata to a grpc_mdelem; may use the grpc_metadata
116
118
  object as backing storage (so lifetimes should align) */
117
- grpc_mdelem grpc_mdelem_from_grpc_metadata(grpc_exec_ctx *exec_ctx,
118
- grpc_metadata *metadata);
119
+ grpc_mdelem grpc_mdelem_from_grpc_metadata(grpc_exec_ctx* exec_ctx,
120
+ grpc_metadata* metadata);
119
121
 
120
122
  /* Does not unref the slices; if a new non-interned mdelem is needed, allocates
121
123
  one if compatible_external_backing_store is NULL, or uses
122
124
  compatible_external_backing_store if it is non-NULL (in which case it's the
123
125
  users responsibility to ensure that it outlives usage) */
124
126
  grpc_mdelem grpc_mdelem_create(
125
- grpc_exec_ctx *exec_ctx, grpc_slice key, grpc_slice value,
126
- grpc_mdelem_data *compatible_external_backing_store);
127
+ grpc_exec_ctx* exec_ctx, grpc_slice key, grpc_slice value,
128
+ grpc_mdelem_data* compatible_external_backing_store);
127
129
 
128
130
  bool grpc_mdelem_eq(grpc_mdelem a, grpc_mdelem b);
129
131
 
130
- size_t grpc_mdelem_get_size_in_hpack_table(grpc_mdelem elem);
132
+ size_t grpc_mdelem_get_size_in_hpack_table(grpc_mdelem elem,
133
+ bool use_true_binary_metadata);
131
134
 
132
135
  /* Mutator and accessor for grpc_mdelem user data. The destructor function
133
136
  is used as a type tag and is checked during user_data fetch. */
134
- void *grpc_mdelem_get_user_data(grpc_mdelem md,
135
- void (*if_destroy_func)(void *));
136
- void *grpc_mdelem_set_user_data(grpc_mdelem md, void (*destroy_func)(void *),
137
- void *user_data);
137
+ void* grpc_mdelem_get_user_data(grpc_mdelem md, void (*if_destroy_func)(void*));
138
+ void* grpc_mdelem_set_user_data(grpc_mdelem md, void (*destroy_func)(void*),
139
+ void* user_data);
138
140
 
139
141
  #ifndef NDEBUG
140
142
  #define GRPC_MDELEM_REF(s) grpc_mdelem_ref((s), __FILE__, __LINE__)
141
143
  #define GRPC_MDELEM_UNREF(exec_ctx, s) \
142
144
  grpc_mdelem_unref((exec_ctx), (s), __FILE__, __LINE__)
143
- grpc_mdelem grpc_mdelem_ref(grpc_mdelem md, const char *file, int line);
144
- void grpc_mdelem_unref(grpc_exec_ctx *exec_ctx, grpc_mdelem md,
145
- const char *file, int line);
145
+ grpc_mdelem grpc_mdelem_ref(grpc_mdelem md, const char* file, int line);
146
+ void grpc_mdelem_unref(grpc_exec_ctx* exec_ctx, grpc_mdelem md,
147
+ const char* file, int line);
146
148
  #else
147
149
  #define GRPC_MDELEM_REF(s) grpc_mdelem_ref((s))
148
150
  #define GRPC_MDELEM_UNREF(exec_ctx, s) grpc_mdelem_unref((exec_ctx), (s))
149
151
  grpc_mdelem grpc_mdelem_ref(grpc_mdelem md);
150
- void grpc_mdelem_unref(grpc_exec_ctx *exec_ctx, grpc_mdelem md);
152
+ void grpc_mdelem_unref(grpc_exec_ctx* exec_ctx, grpc_mdelem md);
151
153
  #endif
152
154
 
153
155
  #define GRPC_MDKEY(md) (GRPC_MDELEM_DATA(md)->key)
@@ -164,7 +166,7 @@ void grpc_mdelem_unref(grpc_exec_ctx *exec_ctx, grpc_mdelem md);
164
166
  #define GRPC_MDSTR_KV_HASH(k_hash, v_hash) (GPR_ROTL((k_hash), 2) ^ (v_hash))
165
167
 
166
168
  void grpc_mdctx_global_init(void);
167
- void grpc_mdctx_global_shutdown(grpc_exec_ctx *exec_ctx);
169
+ void grpc_mdctx_global_shutdown(grpc_exec_ctx* exec_ctx);
168
170
 
169
171
  #ifdef __cplusplus
170
172
  }
@@ -28,21 +28,21 @@
28
28
  #include "src/core/lib/slice/slice_internal.h"
29
29
  #include "src/core/lib/slice/slice_string_helpers.h"
30
30
 
31
- static void assert_valid_list(grpc_mdelem_list *list) {
31
+ static void assert_valid_list(grpc_mdelem_list* list) {
32
32
  #ifndef NDEBUG
33
- grpc_linked_mdelem *l;
33
+ grpc_linked_mdelem* l;
34
34
 
35
- GPR_ASSERT((list->head == NULL) == (list->tail == NULL));
35
+ GPR_ASSERT((list->head == nullptr) == (list->tail == nullptr));
36
36
  if (!list->head) return;
37
- GPR_ASSERT(list->head->prev == NULL);
38
- GPR_ASSERT(list->tail->next == NULL);
39
- GPR_ASSERT((list->head == list->tail) == (list->head->next == NULL));
37
+ GPR_ASSERT(list->head->prev == nullptr);
38
+ GPR_ASSERT(list->tail->next == nullptr);
39
+ GPR_ASSERT((list->head == list->tail) == (list->head->next == nullptr));
40
40
 
41
41
  size_t verified_count = 0;
42
42
  for (l = list->head; l; l = l->next) {
43
43
  GPR_ASSERT(!GRPC_MDISNULL(l->md));
44
- GPR_ASSERT((l->prev == NULL) == (l == list->head));
45
- GPR_ASSERT((l->next == NULL) == (l == list->tail));
44
+ GPR_ASSERT((l->prev == nullptr) == (l == list->head));
45
+ GPR_ASSERT((l->next == nullptr) == (l == list->tail));
46
46
  if (l->next) GPR_ASSERT(l->next->prev == l);
47
47
  if (l->prev) GPR_ASSERT(l->prev->next == l);
48
48
  verified_count++;
@@ -51,10 +51,10 @@ static void assert_valid_list(grpc_mdelem_list *list) {
51
51
  #endif /* NDEBUG */
52
52
  }
53
53
 
54
- static void assert_valid_callouts(grpc_exec_ctx *exec_ctx,
55
- grpc_metadata_batch *batch) {
54
+ static void assert_valid_callouts(grpc_exec_ctx* exec_ctx,
55
+ grpc_metadata_batch* batch) {
56
56
  #ifndef NDEBUG
57
- for (grpc_linked_mdelem *l = batch->list.head; l != NULL; l = l->next) {
57
+ for (grpc_linked_mdelem* l = batch->list.head; l != nullptr; l = l->next) {
58
58
  grpc_slice key_interned = grpc_slice_intern(GRPC_MDKEY(l->md));
59
59
  grpc_metadata_batch_callouts_index callout_idx =
60
60
  GRPC_BATCH_INDEX_OF(key_interned);
@@ -67,44 +67,44 @@ static void assert_valid_callouts(grpc_exec_ctx *exec_ctx,
67
67
  }
68
68
 
69
69
  #ifndef NDEBUG
70
- void grpc_metadata_batch_assert_ok(grpc_metadata_batch *batch) {
70
+ void grpc_metadata_batch_assert_ok(grpc_metadata_batch* batch) {
71
71
  assert_valid_list(&batch->list);
72
72
  }
73
73
  #endif /* NDEBUG */
74
74
 
75
- void grpc_metadata_batch_init(grpc_metadata_batch *batch) {
75
+ void grpc_metadata_batch_init(grpc_metadata_batch* batch) {
76
76
  memset(batch, 0, sizeof(*batch));
77
- batch->deadline = gpr_inf_future(GPR_CLOCK_REALTIME);
77
+ batch->deadline = GRPC_MILLIS_INF_FUTURE;
78
78
  }
79
79
 
80
- void grpc_metadata_batch_destroy(grpc_exec_ctx *exec_ctx,
81
- grpc_metadata_batch *batch) {
82
- grpc_linked_mdelem *l;
80
+ void grpc_metadata_batch_destroy(grpc_exec_ctx* exec_ctx,
81
+ grpc_metadata_batch* batch) {
82
+ grpc_linked_mdelem* l;
83
83
  for (l = batch->list.head; l; l = l->next) {
84
84
  GRPC_MDELEM_UNREF(exec_ctx, l->md);
85
85
  }
86
86
  }
87
87
 
88
- grpc_error *grpc_attach_md_to_error(grpc_error *src, grpc_mdelem md) {
89
- grpc_error *out = grpc_error_set_str(
88
+ grpc_error* grpc_attach_md_to_error(grpc_error* src, grpc_mdelem md) {
89
+ grpc_error* out = grpc_error_set_str(
90
90
  grpc_error_set_str(src, GRPC_ERROR_STR_KEY,
91
91
  grpc_slice_ref_internal(GRPC_MDKEY(md))),
92
92
  GRPC_ERROR_STR_VALUE, grpc_slice_ref_internal(GRPC_MDVALUE(md)));
93
93
  return out;
94
94
  }
95
95
 
96
- static grpc_error *maybe_link_callout(grpc_metadata_batch *batch,
97
- grpc_linked_mdelem *storage)
96
+ static grpc_error* maybe_link_callout(grpc_metadata_batch* batch,
97
+ grpc_linked_mdelem* storage)
98
98
  GRPC_MUST_USE_RESULT;
99
99
 
100
- static grpc_error *maybe_link_callout(grpc_metadata_batch *batch,
101
- grpc_linked_mdelem *storage) {
100
+ static grpc_error* maybe_link_callout(grpc_metadata_batch* batch,
101
+ grpc_linked_mdelem* storage) {
102
102
  grpc_metadata_batch_callouts_index idx =
103
103
  GRPC_BATCH_INDEX_OF(GRPC_MDKEY(storage->md));
104
104
  if (idx == GRPC_BATCH_CALLOUTS_COUNT) {
105
105
  return GRPC_ERROR_NONE;
106
106
  }
107
- if (batch->idx.array[idx] == NULL) {
107
+ if (batch->idx.array[idx] == nullptr) {
108
108
  if (grpc_static_callout_is_default[idx]) ++batch->list.default_count;
109
109
  batch->idx.array[idx] = storage;
110
110
  return GRPC_ERROR_NONE;
@@ -114,33 +114,33 @@ static grpc_error *maybe_link_callout(grpc_metadata_batch *batch,
114
114
  storage->md);
115
115
  }
116
116
 
117
- static void maybe_unlink_callout(grpc_metadata_batch *batch,
118
- grpc_linked_mdelem *storage) {
117
+ static void maybe_unlink_callout(grpc_metadata_batch* batch,
118
+ grpc_linked_mdelem* storage) {
119
119
  grpc_metadata_batch_callouts_index idx =
120
120
  GRPC_BATCH_INDEX_OF(GRPC_MDKEY(storage->md));
121
121
  if (idx == GRPC_BATCH_CALLOUTS_COUNT) {
122
122
  return;
123
123
  }
124
124
  if (grpc_static_callout_is_default[idx]) --batch->list.default_count;
125
- GPR_ASSERT(batch->idx.array[idx] != NULL);
126
- batch->idx.array[idx] = NULL;
125
+ GPR_ASSERT(batch->idx.array[idx] != nullptr);
126
+ batch->idx.array[idx] = nullptr;
127
127
  }
128
128
 
129
- grpc_error *grpc_metadata_batch_add_head(grpc_exec_ctx *exec_ctx,
130
- grpc_metadata_batch *batch,
131
- grpc_linked_mdelem *storage,
129
+ grpc_error* grpc_metadata_batch_add_head(grpc_exec_ctx* exec_ctx,
130
+ grpc_metadata_batch* batch,
131
+ grpc_linked_mdelem* storage,
132
132
  grpc_mdelem elem_to_add) {
133
133
  GPR_ASSERT(!GRPC_MDISNULL(elem_to_add));
134
134
  storage->md = elem_to_add;
135
135
  return grpc_metadata_batch_link_head(exec_ctx, batch, storage);
136
136
  }
137
137
 
138
- static void link_head(grpc_mdelem_list *list, grpc_linked_mdelem *storage) {
138
+ static void link_head(grpc_mdelem_list* list, grpc_linked_mdelem* storage) {
139
139
  assert_valid_list(list);
140
140
  GPR_ASSERT(!GRPC_MDISNULL(storage->md));
141
- storage->prev = NULL;
141
+ storage->prev = nullptr;
142
142
  storage->next = list->head;
143
- if (list->head != NULL) {
143
+ if (list->head != nullptr) {
144
144
  list->head->prev = storage;
145
145
  } else {
146
146
  list->tail = storage;
@@ -150,11 +150,11 @@ static void link_head(grpc_mdelem_list *list, grpc_linked_mdelem *storage) {
150
150
  assert_valid_list(list);
151
151
  }
152
152
 
153
- grpc_error *grpc_metadata_batch_link_head(grpc_exec_ctx *exec_ctx,
154
- grpc_metadata_batch *batch,
155
- grpc_linked_mdelem *storage) {
153
+ grpc_error* grpc_metadata_batch_link_head(grpc_exec_ctx* exec_ctx,
154
+ grpc_metadata_batch* batch,
155
+ grpc_linked_mdelem* storage) {
156
156
  assert_valid_callouts(exec_ctx, batch);
157
- grpc_error *err = maybe_link_callout(batch, storage);
157
+ grpc_error* err = maybe_link_callout(batch, storage);
158
158
  if (err != GRPC_ERROR_NONE) {
159
159
  assert_valid_callouts(exec_ctx, batch);
160
160
  return err;
@@ -164,22 +164,22 @@ grpc_error *grpc_metadata_batch_link_head(grpc_exec_ctx *exec_ctx,
164
164
  return GRPC_ERROR_NONE;
165
165
  }
166
166
 
167
- grpc_error *grpc_metadata_batch_add_tail(grpc_exec_ctx *exec_ctx,
168
- grpc_metadata_batch *batch,
169
- grpc_linked_mdelem *storage,
167
+ grpc_error* grpc_metadata_batch_add_tail(grpc_exec_ctx* exec_ctx,
168
+ grpc_metadata_batch* batch,
169
+ grpc_linked_mdelem* storage,
170
170
  grpc_mdelem elem_to_add) {
171
171
  GPR_ASSERT(!GRPC_MDISNULL(elem_to_add));
172
172
  storage->md = elem_to_add;
173
173
  return grpc_metadata_batch_link_tail(exec_ctx, batch, storage);
174
174
  }
175
175
 
176
- static void link_tail(grpc_mdelem_list *list, grpc_linked_mdelem *storage) {
176
+ static void link_tail(grpc_mdelem_list* list, grpc_linked_mdelem* storage) {
177
177
  assert_valid_list(list);
178
178
  GPR_ASSERT(!GRPC_MDISNULL(storage->md));
179
179
  storage->prev = list->tail;
180
- storage->next = NULL;
181
- storage->reserved = NULL;
182
- if (list->tail != NULL) {
180
+ storage->next = nullptr;
181
+ storage->reserved = nullptr;
182
+ if (list->tail != nullptr) {
183
183
  list->tail->next = storage;
184
184
  } else {
185
185
  list->head = storage;
@@ -189,11 +189,11 @@ static void link_tail(grpc_mdelem_list *list, grpc_linked_mdelem *storage) {
189
189
  assert_valid_list(list);
190
190
  }
191
191
 
192
- grpc_error *grpc_metadata_batch_link_tail(grpc_exec_ctx *exec_ctx,
193
- grpc_metadata_batch *batch,
194
- grpc_linked_mdelem *storage) {
192
+ grpc_error* grpc_metadata_batch_link_tail(grpc_exec_ctx* exec_ctx,
193
+ grpc_metadata_batch* batch,
194
+ grpc_linked_mdelem* storage) {
195
195
  assert_valid_callouts(exec_ctx, batch);
196
- grpc_error *err = maybe_link_callout(batch, storage);
196
+ grpc_error* err = maybe_link_callout(batch, storage);
197
197
  if (err != GRPC_ERROR_NONE) {
198
198
  assert_valid_callouts(exec_ctx, batch);
199
199
  return err;
@@ -203,15 +203,15 @@ grpc_error *grpc_metadata_batch_link_tail(grpc_exec_ctx *exec_ctx,
203
203
  return GRPC_ERROR_NONE;
204
204
  }
205
205
 
206
- static void unlink_storage(grpc_mdelem_list *list,
207
- grpc_linked_mdelem *storage) {
206
+ static void unlink_storage(grpc_mdelem_list* list,
207
+ grpc_linked_mdelem* storage) {
208
208
  assert_valid_list(list);
209
- if (storage->prev != NULL) {
209
+ if (storage->prev != nullptr) {
210
210
  storage->prev->next = storage->next;
211
211
  } else {
212
212
  list->head = storage->next;
213
213
  }
214
- if (storage->next != NULL) {
214
+ if (storage->next != nullptr) {
215
215
  storage->next->prev = storage->prev;
216
216
  } else {
217
217
  list->tail = storage->prev;
@@ -220,9 +220,9 @@ static void unlink_storage(grpc_mdelem_list *list,
220
220
  assert_valid_list(list);
221
221
  }
222
222
 
223
- void grpc_metadata_batch_remove(grpc_exec_ctx *exec_ctx,
224
- grpc_metadata_batch *batch,
225
- grpc_linked_mdelem *storage) {
223
+ void grpc_metadata_batch_remove(grpc_exec_ctx* exec_ctx,
224
+ grpc_metadata_batch* batch,
225
+ grpc_linked_mdelem* storage) {
226
226
  assert_valid_callouts(exec_ctx, batch);
227
227
  maybe_unlink_callout(batch, storage);
228
228
  unlink_storage(&batch->list, storage);
@@ -230,8 +230,8 @@ void grpc_metadata_batch_remove(grpc_exec_ctx *exec_ctx,
230
230
  assert_valid_callouts(exec_ctx, batch);
231
231
  }
232
232
 
233
- void grpc_metadata_batch_set_value(grpc_exec_ctx *exec_ctx,
234
- grpc_linked_mdelem *storage,
233
+ void grpc_metadata_batch_set_value(grpc_exec_ctx* exec_ctx,
234
+ grpc_linked_mdelem* storage,
235
235
  grpc_slice value) {
236
236
  grpc_mdelem old_mdelem = storage->md;
237
237
  grpc_mdelem new_mdelem = grpc_mdelem_from_slices(
@@ -240,12 +240,12 @@ void grpc_metadata_batch_set_value(grpc_exec_ctx *exec_ctx,
240
240
  GRPC_MDELEM_UNREF(exec_ctx, old_mdelem);
241
241
  }
242
242
 
243
- grpc_error *grpc_metadata_batch_substitute(grpc_exec_ctx *exec_ctx,
244
- grpc_metadata_batch *batch,
245
- grpc_linked_mdelem *storage,
243
+ grpc_error* grpc_metadata_batch_substitute(grpc_exec_ctx* exec_ctx,
244
+ grpc_metadata_batch* batch,
245
+ grpc_linked_mdelem* storage,
246
246
  grpc_mdelem new_mdelem) {
247
247
  assert_valid_callouts(exec_ctx, batch);
248
- grpc_error *error = GRPC_ERROR_NONE;
248
+ grpc_error* error = GRPC_ERROR_NONE;
249
249
  grpc_mdelem old_mdelem = storage->md;
250
250
  if (!grpc_slice_eq(GRPC_MDKEY(new_mdelem), GRPC_MDKEY(old_mdelem))) {
251
251
  maybe_unlink_callout(batch, storage);
@@ -263,29 +263,28 @@ grpc_error *grpc_metadata_batch_substitute(grpc_exec_ctx *exec_ctx,
263
263
  return error;
264
264
  }
265
265
 
266
- void grpc_metadata_batch_clear(grpc_exec_ctx *exec_ctx,
267
- grpc_metadata_batch *batch) {
266
+ void grpc_metadata_batch_clear(grpc_exec_ctx* exec_ctx,
267
+ grpc_metadata_batch* batch) {
268
268
  grpc_metadata_batch_destroy(exec_ctx, batch);
269
269
  grpc_metadata_batch_init(batch);
270
270
  }
271
271
 
272
- bool grpc_metadata_batch_is_empty(grpc_metadata_batch *batch) {
273
- return batch->list.head == NULL &&
274
- gpr_time_cmp(gpr_inf_future(batch->deadline.clock_type),
275
- batch->deadline) == 0;
272
+ bool grpc_metadata_batch_is_empty(grpc_metadata_batch* batch) {
273
+ return batch->list.head == nullptr &&
274
+ batch->deadline == GRPC_MILLIS_INF_FUTURE;
276
275
  }
277
276
 
278
- size_t grpc_metadata_batch_size(grpc_metadata_batch *batch) {
277
+ size_t grpc_metadata_batch_size(grpc_metadata_batch* batch) {
279
278
  size_t size = 0;
280
- for (grpc_linked_mdelem *elem = batch->list.head; elem != NULL;
279
+ for (grpc_linked_mdelem* elem = batch->list.head; elem != nullptr;
281
280
  elem = elem->next) {
282
281
  size += GRPC_MDELEM_LENGTH(elem->md);
283
282
  }
284
283
  return size;
285
284
  }
286
285
 
287
- static void add_error(grpc_error **composite, grpc_error *error,
288
- const char *composite_error_string) {
286
+ static void add_error(grpc_error** composite, grpc_error* error,
287
+ const char* composite_error_string) {
289
288
  if (error == GRPC_ERROR_NONE) return;
290
289
  if (*composite == GRPC_ERROR_NONE) {
291
290
  *composite = GRPC_ERROR_CREATE_FROM_COPIED_STRING(composite_error_string);
@@ -293,15 +292,15 @@ static void add_error(grpc_error **composite, grpc_error *error,
293
292
  *composite = grpc_error_add_child(*composite, error);
294
293
  }
295
294
 
296
- grpc_error *grpc_metadata_batch_filter(grpc_exec_ctx *exec_ctx,
297
- grpc_metadata_batch *batch,
295
+ grpc_error* grpc_metadata_batch_filter(grpc_exec_ctx* exec_ctx,
296
+ grpc_metadata_batch* batch,
298
297
  grpc_metadata_batch_filter_func func,
299
- void *user_data,
300
- const char *composite_error_string) {
301
- grpc_linked_mdelem *l = batch->list.head;
302
- grpc_error *error = GRPC_ERROR_NONE;
298
+ void* user_data,
299
+ const char* composite_error_string) {
300
+ grpc_linked_mdelem* l = batch->list.head;
301
+ grpc_error* error = GRPC_ERROR_NONE;
303
302
  while (l) {
304
- grpc_linked_mdelem *next = l->next;
303
+ grpc_linked_mdelem* next = l->next;
305
304
  grpc_filtered_mdelem new_mdelem = func(exec_ctx, user_data, l->md);
306
305
  add_error(&error, new_mdelem.error, composite_error_string);
307
306
  if (GRPC_MDISNULL(new_mdelem.md)) {
@@ -34,16 +34,16 @@ extern "C" {
34
34
 
35
35
  typedef struct grpc_linked_mdelem {
36
36
  grpc_mdelem md;
37
- struct grpc_linked_mdelem *next;
38
- struct grpc_linked_mdelem *prev;
39
- void *reserved;
37
+ struct grpc_linked_mdelem* next;
38
+ struct grpc_linked_mdelem* prev;
39
+ void* reserved;
40
40
  } grpc_linked_mdelem;
41
41
 
42
42
  typedef struct grpc_mdelem_list {
43
43
  size_t count;
44
44
  size_t default_count; // Number of default keys.
45
- grpc_linked_mdelem *head;
46
- grpc_linked_mdelem *tail;
45
+ grpc_linked_mdelem* head;
46
+ grpc_linked_mdelem* tail;
47
47
  } grpc_mdelem_list;
48
48
 
49
49
  typedef struct grpc_metadata_batch {
@@ -51,34 +51,34 @@ typedef struct grpc_metadata_batch {
51
51
  grpc_mdelem_list list;
52
52
  grpc_metadata_batch_callouts idx;
53
53
  /** Used to calculate grpc-timeout at the point of sending,
54
- or gpr_inf_future if this batch does not need to send a
54
+ or GRPC_MILLIS_INF_FUTURE if this batch does not need to send a
55
55
  grpc-timeout */
56
- gpr_timespec deadline;
56
+ grpc_millis deadline;
57
57
  } grpc_metadata_batch;
58
58
 
59
- void grpc_metadata_batch_init(grpc_metadata_batch *batch);
60
- void grpc_metadata_batch_destroy(grpc_exec_ctx *exec_ctx,
61
- grpc_metadata_batch *batch);
62
- void grpc_metadata_batch_clear(grpc_exec_ctx *exec_ctx,
63
- grpc_metadata_batch *batch);
64
- bool grpc_metadata_batch_is_empty(grpc_metadata_batch *batch);
59
+ void grpc_metadata_batch_init(grpc_metadata_batch* batch);
60
+ void grpc_metadata_batch_destroy(grpc_exec_ctx* exec_ctx,
61
+ grpc_metadata_batch* batch);
62
+ void grpc_metadata_batch_clear(grpc_exec_ctx* exec_ctx,
63
+ grpc_metadata_batch* batch);
64
+ bool grpc_metadata_batch_is_empty(grpc_metadata_batch* batch);
65
65
 
66
66
  /* Returns the transport size of the batch. */
67
- size_t grpc_metadata_batch_size(grpc_metadata_batch *batch);
67
+ size_t grpc_metadata_batch_size(grpc_metadata_batch* batch);
68
68
 
69
69
  /** Remove \a storage from the batch, unreffing the mdelem contained */
70
- void grpc_metadata_batch_remove(grpc_exec_ctx *exec_ctx,
71
- grpc_metadata_batch *batch,
72
- grpc_linked_mdelem *storage);
70
+ void grpc_metadata_batch_remove(grpc_exec_ctx* exec_ctx,
71
+ grpc_metadata_batch* batch,
72
+ grpc_linked_mdelem* storage);
73
73
 
74
74
  /** Substitute a new mdelem for an old value */
75
- grpc_error *grpc_metadata_batch_substitute(grpc_exec_ctx *exec_ctx,
76
- grpc_metadata_batch *batch,
77
- grpc_linked_mdelem *storage,
75
+ grpc_error* grpc_metadata_batch_substitute(grpc_exec_ctx* exec_ctx,
76
+ grpc_metadata_batch* batch,
77
+ grpc_linked_mdelem* storage,
78
78
  grpc_mdelem new_value);
79
79
 
80
- void grpc_metadata_batch_set_value(grpc_exec_ctx *exec_ctx,
81
- grpc_linked_mdelem *storage,
80
+ void grpc_metadata_batch_set_value(grpc_exec_ctx* exec_ctx,
81
+ grpc_linked_mdelem* storage,
82
82
  grpc_slice value);
83
83
 
84
84
  /** Add \a storage to the beginning of \a batch. storage->md is
@@ -86,17 +86,17 @@ void grpc_metadata_batch_set_value(grpc_exec_ctx *exec_ctx,
86
86
  \a storage is owned by the caller and must survive for the
87
87
  lifetime of batch. This usually means it should be around
88
88
  for the lifetime of the call. */
89
- grpc_error *grpc_metadata_batch_link_head(
90
- grpc_exec_ctx *exec_ctx, grpc_metadata_batch *batch,
91
- grpc_linked_mdelem *storage) GRPC_MUST_USE_RESULT;
89
+ grpc_error* grpc_metadata_batch_link_head(
90
+ grpc_exec_ctx* exec_ctx, grpc_metadata_batch* batch,
91
+ grpc_linked_mdelem* storage) GRPC_MUST_USE_RESULT;
92
92
  /** Add \a storage to the end of \a batch. storage->md is
93
93
  assumed to be valid.
94
94
  \a storage is owned by the caller and must survive for the
95
95
  lifetime of batch. This usually means it should be around
96
96
  for the lifetime of the call. */
97
- grpc_error *grpc_metadata_batch_link_tail(
98
- grpc_exec_ctx *exec_ctx, grpc_metadata_batch *batch,
99
- grpc_linked_mdelem *storage) GRPC_MUST_USE_RESULT;
97
+ grpc_error* grpc_metadata_batch_link_tail(
98
+ grpc_exec_ctx* exec_ctx, grpc_metadata_batch* batch,
99
+ grpc_linked_mdelem* storage) GRPC_MUST_USE_RESULT;
100
100
 
101
101
  /** Add \a elem_to_add as the first element in \a batch, using
102
102
  \a storage as backing storage for the linked list element.
@@ -104,41 +104,42 @@ grpc_error *grpc_metadata_batch_link_tail(
104
104
  lifetime of batch. This usually means it should be around
105
105
  for the lifetime of the call.
106
106
  Takes ownership of \a elem_to_add */
107
- grpc_error *grpc_metadata_batch_add_head(
108
- grpc_exec_ctx *exec_ctx, grpc_metadata_batch *batch,
109
- grpc_linked_mdelem *storage, grpc_mdelem elem_to_add) GRPC_MUST_USE_RESULT;
107
+ grpc_error* grpc_metadata_batch_add_head(
108
+ grpc_exec_ctx* exec_ctx, grpc_metadata_batch* batch,
109
+ grpc_linked_mdelem* storage, grpc_mdelem elem_to_add) GRPC_MUST_USE_RESULT;
110
110
  /** Add \a elem_to_add as the last element in \a batch, using
111
111
  \a storage as backing storage for the linked list element.
112
112
  \a storage is owned by the caller and must survive for the
113
113
  lifetime of batch. This usually means it should be around
114
114
  for the lifetime of the call.
115
115
  Takes ownership of \a elem_to_add */
116
- grpc_error *grpc_metadata_batch_add_tail(
117
- grpc_exec_ctx *exec_ctx, grpc_metadata_batch *batch,
118
- grpc_linked_mdelem *storage, grpc_mdelem elem_to_add) GRPC_MUST_USE_RESULT;
116
+ grpc_error* grpc_metadata_batch_add_tail(
117
+ grpc_exec_ctx* exec_ctx, grpc_metadata_batch* batch,
118
+ grpc_linked_mdelem* storage, grpc_mdelem elem_to_add) GRPC_MUST_USE_RESULT;
119
119
 
120
- grpc_error *grpc_attach_md_to_error(grpc_error *src, grpc_mdelem md);
120
+ grpc_error* grpc_attach_md_to_error(grpc_error* src, grpc_mdelem md);
121
121
 
122
122
  typedef struct {
123
- grpc_error *error;
123
+ grpc_error* error;
124
124
  grpc_mdelem md;
125
125
  } grpc_filtered_mdelem;
126
126
 
127
127
  #define GRPC_FILTERED_ERROR(error) \
128
- ((grpc_filtered_mdelem){(error), GRPC_MDNULL})
129
- #define GRPC_FILTERED_MDELEM(md) ((grpc_filtered_mdelem){GRPC_ERROR_NONE, (md)})
128
+ { (error), GRPC_MDNULL }
129
+ #define GRPC_FILTERED_MDELEM(md) \
130
+ { GRPC_ERROR_NONE, (md) }
130
131
  #define GRPC_FILTERED_REMOVE() \
131
- ((grpc_filtered_mdelem){GRPC_ERROR_NONE, GRPC_MDNULL})
132
+ { GRPC_ERROR_NONE, GRPC_MDNULL }
132
133
 
133
134
  typedef grpc_filtered_mdelem (*grpc_metadata_batch_filter_func)(
134
- grpc_exec_ctx *exec_ctx, void *user_data, grpc_mdelem elem);
135
- grpc_error *grpc_metadata_batch_filter(
136
- grpc_exec_ctx *exec_ctx, grpc_metadata_batch *batch,
137
- grpc_metadata_batch_filter_func func, void *user_data,
138
- const char *composite_error_string) GRPC_MUST_USE_RESULT;
135
+ grpc_exec_ctx* exec_ctx, void* user_data, grpc_mdelem elem);
136
+ grpc_error* grpc_metadata_batch_filter(
137
+ grpc_exec_ctx* exec_ctx, grpc_metadata_batch* batch,
138
+ grpc_metadata_batch_filter_func func, void* user_data,
139
+ const char* composite_error_string) GRPC_MUST_USE_RESULT;
139
140
 
140
141
  #ifndef NDEBUG
141
- void grpc_metadata_batch_assert_ok(grpc_metadata_batch *comd);
142
+ void grpc_metadata_batch_assert_ok(grpc_metadata_batch* comd);
142
143
  #else
143
144
  #define grpc_metadata_batch_assert_ok(comd) \
144
145
  do { \