grpc 1.8.7 → 1.9.0.pre1

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 (488) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +549 -325
  3. data/include/grpc/impl/codegen/grpc_types.h +1 -2
  4. data/include/grpc/impl/codegen/port_platform.h +46 -5
  5. data/include/grpc/impl/codegen/slice.h +1 -2
  6. data/include/grpc/module.modulemap +0 -2
  7. data/include/grpc/slice_buffer.h +1 -2
  8. data/include/grpc/support/log.h +4 -2
  9. data/include/grpc/support/thd.h +4 -1
  10. data/include/grpc/support/tls.h +6 -0
  11. data/include/grpc/support/tls_gcc.h +5 -40
  12. data/include/grpc/support/tls_msvc.h +9 -0
  13. data/include/grpc/support/tls_pthread.h +9 -0
  14. data/src/core/ext/filters/client_channel/backup_poller.cc +32 -29
  15. data/src/core/ext/filters/client_channel/backup_poller.h +2 -2
  16. data/src/core/ext/filters/client_channel/channel_connectivity.cc +26 -32
  17. data/src/core/ext/filters/client_channel/client_channel.cc +325 -356
  18. data/src/core/ext/filters/client_channel/client_channel.h +4 -12
  19. data/src/core/ext/filters/client_channel/client_channel_factory.cc +9 -14
  20. data/src/core/ext/filters/client_channel/client_channel_factory.h +7 -20
  21. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +7 -10
  22. data/src/core/ext/filters/client_channel/connector.cc +6 -7
  23. data/src/core/ext/filters/client_channel/connector.h +6 -16
  24. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +38 -50
  25. data/src/core/ext/filters/client_channel/http_connect_handshaker.h +0 -8
  26. data/src/core/ext/filters/client_channel/http_proxy.cc +9 -13
  27. data/src/core/ext/filters/client_channel/http_proxy.h +0 -8
  28. data/src/core/ext/filters/client_channel/lb_policy.cc +72 -94
  29. data/src/core/ext/filters/client_channel/lb_policy.h +83 -92
  30. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +14 -19
  31. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +0 -8
  32. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +474 -591
  33. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +0 -8
  34. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +2 -10
  35. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +6 -6
  36. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +0 -8
  37. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +0 -9
  38. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +0 -9
  39. data/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c +3 -4
  40. data/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.h +9 -12
  41. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +160 -182
  42. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +182 -221
  43. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.cc +24 -35
  44. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +9 -20
  45. data/src/core/ext/filters/client_channel/lb_policy_factory.cc +6 -9
  46. data/src/core/ext/filters/client_channel/lb_policy_factory.h +4 -15
  47. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +3 -3
  48. data/src/core/ext/filters/client_channel/lb_policy_registry.h +1 -9
  49. data/src/core/ext/filters/client_channel/parse_address.cc +1 -1
  50. data/src/core/ext/filters/client_channel/parse_address.h +0 -8
  51. data/src/core/ext/filters/client_channel/proxy_mapper.cc +6 -8
  52. data/src/core/ext/filters/client_channel/proxy_mapper.h +6 -16
  53. data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +13 -17
  54. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +2 -12
  55. data/src/core/ext/filters/client_channel/resolver.cc +11 -13
  56. data/src/core/ext/filters/client_channel/resolver.h +14 -25
  57. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +57 -70
  58. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +2 -12
  59. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +23 -31
  60. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +27 -45
  61. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +5 -15
  62. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc +9 -11
  63. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +53 -66
  64. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +25 -33
  65. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +1 -9
  66. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +26 -35
  67. data/src/core/ext/filters/client_channel/resolver_factory.cc +2 -3
  68. data/src/core/ext/filters/client_channel/resolver_factory.h +2 -12
  69. data/src/core/ext/filters/client_channel/resolver_registry.cc +12 -15
  70. data/src/core/ext/filters/client_channel/resolver_registry.h +3 -12
  71. data/src/core/ext/filters/client_channel/retry_throttle.h +0 -8
  72. data/src/core/ext/filters/client_channel/subchannel.cc +289 -301
  73. data/src/core/ext/filters/client_channel/subchannel.h +57 -84
  74. data/src/core/ext/filters/client_channel/subchannel_index.cc +30 -33
  75. data/src/core/ext/filters/client_channel/subchannel_index.h +4 -16
  76. data/src/core/ext/filters/client_channel/uri_parser.cc +13 -17
  77. data/src/core/ext/filters/client_channel/uri_parser.h +1 -10
  78. data/src/core/ext/filters/deadline/deadline_filter.cc +49 -67
  79. data/src/core/ext/filters/deadline/deadline_filter.h +4 -14
  80. data/src/core/ext/filters/http/client/http_client_filter.cc +60 -77
  81. data/src/core/ext/filters/http/client/http_client_filter.h +0 -8
  82. data/src/core/ext/filters/http/http_filters_plugin.cc +4 -6
  83. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +63 -79
  84. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +0 -8
  85. data/src/core/ext/filters/http/server/http_server_filter.cc +57 -71
  86. data/src/core/ext/filters/http/server/http_server_filter.h +0 -8
  87. data/src/core/ext/filters/load_reporting/server_load_reporting_filter.cc +19 -24
  88. data/src/core/ext/filters/load_reporting/server_load_reporting_filter.h +0 -8
  89. data/src/core/ext/filters/load_reporting/server_load_reporting_plugin.cc +3 -3
  90. data/src/core/ext/filters/load_reporting/server_load_reporting_plugin.h +0 -8
  91. data/src/core/ext/filters/max_age/max_age_filter.cc +49 -62
  92. data/src/core/ext/filters/max_age/max_age_filter.h +0 -8
  93. data/src/core/ext/filters/message_size/message_size_filter.cc +23 -29
  94. data/src/core/ext/filters/message_size/message_size_filter.h +0 -8
  95. data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc +15 -18
  96. data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h +0 -8
  97. data/src/core/ext/filters/workarounds/workaround_utils.h +0 -8
  98. data/src/core/ext/transport/chttp2/alpn/alpn.h +0 -8
  99. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +33 -40
  100. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -8
  101. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +15 -17
  102. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +8 -8
  103. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +23 -28
  104. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +50 -57
  105. data/src/core/ext/transport/chttp2/server/chttp2_server.h +1 -10
  106. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +3 -3
  107. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +7 -10
  108. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +5 -6
  109. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +7 -9
  110. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +2 -11
  111. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +1 -9
  112. data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +10 -2
  113. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +516 -636
  114. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +4 -11
  115. data/src/core/ext/transport/chttp2/transport/flow_control.cc +29 -13
  116. data/src/core/ext/transport/chttp2/transport/flow_control.h +196 -53
  117. data/src/core/ext/transport/chttp2/transport/frame.h +0 -8
  118. data/src/core/ext/transport/chttp2/transport/frame_data.cc +31 -33
  119. data/src/core/ext/transport/chttp2/transport/frame_data.h +3 -12
  120. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +2 -3
  121. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -10
  122. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +5 -6
  123. data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -9
  124. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +2 -3
  125. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -10
  126. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +8 -3
  127. data/src/core/ext/transport/chttp2/transport/frame_settings.h +1 -10
  128. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +8 -8
  129. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +5 -11
  130. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +63 -81
  131. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +2 -12
  132. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +230 -318
  133. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +6 -19
  134. data/src/core/ext/transport/chttp2/transport/hpack_table.cc +14 -20
  135. data/src/core/ext/transport/chttp2/transport/hpack_table.h +5 -16
  136. data/src/core/ext/transport/chttp2/transport/http2_settings.h +0 -7
  137. data/src/core/ext/transport/chttp2/transport/huffsyms.h +0 -8
  138. data/src/core/ext/transport/chttp2/transport/incoming_metadata.cc +8 -11
  139. data/src/core/ext/transport/chttp2/transport/incoming_metadata.h +4 -13
  140. data/src/core/ext/transport/chttp2/transport/internal.h +51 -75
  141. data/src/core/ext/transport/chttp2/transport/parsing.cc +83 -109
  142. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +2 -0
  143. data/src/core/ext/transport/chttp2/transport/stream_map.h +0 -8
  144. data/src/core/ext/transport/chttp2/transport/varint.h +0 -8
  145. data/src/core/ext/transport/chttp2/transport/writing.cc +61 -65
  146. data/src/core/ext/transport/inproc/inproc_plugin.cc +2 -4
  147. data/src/core/ext/transport/inproc/inproc_transport.cc +177 -188
  148. data/src/core/ext/transport/inproc/inproc_transport.h +0 -8
  149. data/src/core/lib/backoff/backoff.cc +39 -44
  150. data/src/core/lib/backoff/backoff.h +61 -57
  151. data/src/core/lib/channel/channel_args.cc +8 -10
  152. data/src/core/lib/channel/channel_args.h +4 -13
  153. data/src/core/lib/channel/channel_stack.cc +19 -27
  154. data/src/core/lib/channel/channel_stack.h +27 -47
  155. data/src/core/lib/channel/channel_stack_builder.cc +11 -14
  156. data/src/core/lib/channel/channel_stack_builder.h +4 -15
  157. data/src/core/lib/channel/connected_channel.cc +23 -36
  158. data/src/core/lib/channel/connected_channel.h +1 -10
  159. data/src/core/lib/channel/handshaker.cc +31 -40
  160. data/src/core/lib/channel/handshaker.h +14 -25
  161. data/src/core/lib/channel/handshaker_factory.cc +6 -6
  162. data/src/core/lib/channel/handshaker_factory.h +5 -15
  163. data/src/core/lib/channel/handshaker_registry.cc +9 -13
  164. data/src/core/lib/channel/handshaker_registry.h +2 -11
  165. data/src/core/lib/compression/algorithm_metadata.h +0 -8
  166. data/src/core/lib/compression/message_compress.cc +19 -23
  167. data/src/core/lib/compression/message_compress.h +2 -12
  168. data/src/core/lib/compression/stream_compression.cc +1 -1
  169. data/src/core/lib/compression/stream_compression.h +0 -8
  170. data/src/core/lib/compression/stream_compression_gzip.cc +12 -11
  171. data/src/core/lib/compression/stream_compression_gzip.h +0 -8
  172. data/src/core/lib/compression/stream_compression_identity.h +0 -8
  173. data/src/core/lib/debug/stats.cc +4 -4
  174. data/src/core/lib/debug/stats.h +9 -19
  175. data/src/core/lib/debug/stats_data.cc +85 -116
  176. data/src/core/lib/debug/stats_data.h +236 -312
  177. data/src/core/lib/debug/trace.cc +1 -1
  178. data/src/core/lib/debug/trace.h +0 -12
  179. data/src/core/lib/{support → gpr++}/abstract.h +8 -3
  180. data/src/core/lib/{support → gpr++}/atomic.h +5 -5
  181. data/src/core/lib/{support → gpr++}/atomic_with_atm.h +3 -3
  182. data/src/core/lib/{support → gpr++}/atomic_with_std.h +3 -3
  183. data/src/core/lib/gpr++/debug_location.h +52 -0
  184. data/src/core/lib/gpr++/inlined_vector.h +112 -0
  185. data/src/core/lib/{support → gpr++}/manual_constructor.h +2 -2
  186. data/src/core/lib/{support → gpr++}/memory.h +3 -3
  187. data/src/core/lib/gpr++/orphanable.h +171 -0
  188. data/src/core/lib/gpr++/ref_counted.h +133 -0
  189. data/src/core/lib/gpr++/ref_counted_ptr.h +99 -0
  190. data/src/core/lib/{support → gpr}/alloc.cc +0 -0
  191. data/src/core/lib/{support → gpr}/arena.cc +1 -1
  192. data/src/core/lib/{support → gpr}/arena.h +3 -11
  193. data/src/core/lib/{support → gpr}/atm.cc +0 -0
  194. data/src/core/lib/{support → gpr}/avl.cc +0 -0
  195. data/src/core/lib/{support → gpr}/cmdline.cc +1 -1
  196. data/src/core/lib/{support → gpr}/cpu_iphone.cc +0 -0
  197. data/src/core/lib/{support → gpr}/cpu_linux.cc +0 -0
  198. data/src/core/lib/{support → gpr}/cpu_posix.cc +0 -0
  199. data/src/core/lib/{support → gpr}/cpu_windows.cc +0 -0
  200. data/src/core/lib/{support → gpr}/env.h +3 -11
  201. data/src/core/lib/{support → gpr}/env_linux.cc +2 -2
  202. data/src/core/lib/{support → gpr}/env_posix.cc +4 -4
  203. data/src/core/lib/{support → gpr}/env_windows.cc +3 -3
  204. data/src/core/lib/{support → gpr}/fork.cc +3 -3
  205. data/src/core/lib/{support → gpr}/fork.h +3 -3
  206. data/src/core/lib/{support → gpr}/host_port.cc +1 -1
  207. data/src/core/lib/{support → gpr}/log.cc +3 -3
  208. data/src/core/lib/{support → gpr}/log_android.cc +3 -3
  209. data/src/core/lib/{support → gpr}/log_linux.cc +1 -1
  210. data/src/core/lib/{support → gpr}/log_posix.cc +5 -5
  211. data/src/core/lib/{support → gpr}/log_windows.cc +3 -3
  212. data/src/core/lib/{support → gpr}/mpscq.cc +1 -1
  213. data/src/core/lib/{support → gpr}/mpscq.h +3 -10
  214. data/src/core/lib/{support → gpr}/murmur_hash.cc +1 -1
  215. data/src/core/lib/{support → gpr}/murmur_hash.h +3 -11
  216. data/src/core/lib/{support → gpr}/spinlock.h +3 -3
  217. data/src/core/lib/{support → gpr}/string.cc +1 -1
  218. data/src/core/lib/{support → gpr}/string.h +3 -10
  219. data/src/core/lib/{support → gpr}/string_posix.cc +0 -0
  220. data/src/core/lib/{support → gpr}/string_util_windows.cc +2 -2
  221. data/src/core/lib/{support → gpr}/string_windows.cc +1 -1
  222. data/src/core/lib/{support → gpr}/string_windows.h +3 -11
  223. data/src/core/lib/{support → gpr}/subprocess_posix.cc +0 -0
  224. data/src/core/lib/{support → gpr}/subprocess_windows.cc +2 -2
  225. data/src/core/lib/{support → gpr}/sync.cc +0 -0
  226. data/src/core/lib/{support → gpr}/sync_posix.cc +10 -1
  227. data/src/core/lib/{support → gpr}/sync_windows.cc +0 -0
  228. data/src/core/lib/{support → gpr}/thd.cc +0 -0
  229. data/src/core/lib/{support → gpr}/thd_internal.h +3 -3
  230. data/src/core/lib/{support → gpr}/thd_posix.cc +18 -2
  231. data/src/core/lib/{support → gpr}/thd_windows.cc +2 -1
  232. data/src/core/lib/{support → gpr}/time.cc +0 -0
  233. data/src/core/lib/{support → gpr}/time_posix.cc +2 -4
  234. data/src/core/lib/{support → gpr}/time_precise.cc +1 -1
  235. data/src/core/lib/{support → gpr}/time_precise.h +3 -11
  236. data/src/core/lib/{support → gpr}/time_windows.cc +1 -3
  237. data/src/core/lib/{support → gpr}/tls_pthread.cc +0 -0
  238. data/src/core/lib/{support → gpr}/tmpfile.h +3 -11
  239. data/src/core/lib/{support → gpr}/tmpfile_msys.cc +2 -2
  240. data/src/core/lib/{support → gpr}/tmpfile_posix.cc +2 -2
  241. data/src/core/lib/{support → gpr}/tmpfile_windows.cc +2 -2
  242. data/src/core/lib/{support → gpr}/wrap_memcpy.cc +0 -0
  243. data/src/core/lib/http/format_request.cc +1 -1
  244. data/src/core/lib/http/format_request.h +0 -8
  245. data/src/core/lib/http/httpcli.cc +55 -74
  246. data/src/core/lib/http/httpcli.h +13 -22
  247. data/src/core/lib/http/httpcli_security_connector.cc +27 -33
  248. data/src/core/lib/http/parser.h +0 -8
  249. data/src/core/lib/iomgr/block_annotate.h +10 -17
  250. data/src/core/lib/iomgr/call_combiner.cc +14 -17
  251. data/src/core/lib/iomgr/call_combiner.h +16 -34
  252. data/src/core/lib/iomgr/closure.h +24 -37
  253. data/src/core/lib/iomgr/combiner.cc +62 -66
  254. data/src/core/lib/iomgr/combiner.h +6 -16
  255. data/src/core/lib/iomgr/endpoint.cc +15 -21
  256. data/src/core/lib/iomgr/endpoint.h +16 -33
  257. data/src/core/lib/iomgr/endpoint_pair.h +0 -8
  258. data/src/core/lib/iomgr/endpoint_pair_posix.cc +4 -5
  259. data/src/core/lib/iomgr/endpoint_pair_windows.cc +4 -6
  260. data/src/core/lib/iomgr/error.cc +2 -6
  261. data/src/core/lib/iomgr/error.h +4 -9
  262. data/src/core/lib/iomgr/error_internal.h +0 -8
  263. data/src/core/lib/iomgr/ev_epoll1_linux.cc +110 -117
  264. data/src/core/lib/iomgr/ev_epoll1_linux.h +0 -8
  265. data/src/core/lib/iomgr/ev_epollex_linux.cc +111 -141
  266. data/src/core/lib/iomgr/ev_epollex_linux.h +0 -8
  267. data/src/core/lib/iomgr/ev_epollsig_linux.cc +83 -109
  268. data/src/core/lib/iomgr/ev_epollsig_linux.h +2 -10
  269. data/src/core/lib/iomgr/ev_poll_posix.cc +103 -125
  270. data/src/core/lib/iomgr/ev_poll_posix.h +0 -8
  271. data/src/core/lib/iomgr/ev_posix.cc +35 -50
  272. data/src/core/lib/iomgr/ev_posix.h +27 -53
  273. data/src/core/lib/iomgr/exec_ctx.cc +46 -78
  274. data/src/core/lib/iomgr/exec_ctx.h +127 -60
  275. data/src/core/lib/iomgr/executor.cc +34 -38
  276. data/src/core/lib/iomgr/executor.h +3 -11
  277. data/src/core/lib/iomgr/fork_posix.cc +13 -12
  278. data/src/core/lib/iomgr/gethostname.h +0 -8
  279. data/src/core/lib/iomgr/gethostname_sysconf.cc +1 -1
  280. data/src/core/lib/iomgr/iocp_windows.cc +14 -16
  281. data/src/core/lib/iomgr/iocp_windows.h +1 -10
  282. data/src/core/lib/iomgr/iomgr.cc +60 -59
  283. data/src/core/lib/iomgr/iomgr.h +3 -12
  284. data/src/core/lib/iomgr/iomgr_internal.h +0 -8
  285. data/src/core/lib/iomgr/iomgr_uv.cc +2 -3
  286. data/src/core/lib/iomgr/iomgr_uv.h +0 -8
  287. data/src/core/lib/iomgr/is_epollexclusive_available.cc +1 -1
  288. data/src/core/lib/iomgr/load_file.cc +1 -1
  289. data/src/core/lib/iomgr/load_file.h +0 -8
  290. data/src/core/lib/iomgr/lockfree_event.cc +7 -8
  291. data/src/core/lib/iomgr/lockfree_event.h +3 -3
  292. data/src/core/lib/iomgr/polling_entity.cc +6 -10
  293. data/src/core/lib/iomgr/polling_entity.h +2 -11
  294. data/src/core/lib/iomgr/pollset.h +4 -13
  295. data/src/core/lib/iomgr/pollset_set.h +5 -18
  296. data/src/core/lib/iomgr/pollset_set_uv.cc +5 -10
  297. data/src/core/lib/iomgr/pollset_set_windows.cc +5 -10
  298. data/src/core/lib/iomgr/pollset_uv.cc +8 -9
  299. data/src/core/lib/iomgr/pollset_uv.h +0 -8
  300. data/src/core/lib/iomgr/pollset_windows.cc +14 -15
  301. data/src/core/lib/iomgr/pollset_windows.h +0 -8
  302. data/src/core/lib/iomgr/port.h +6 -1
  303. data/src/core/lib/iomgr/resolve_address.h +1 -10
  304. data/src/core/lib/iomgr/resolve_address_posix.cc +10 -12
  305. data/src/core/lib/iomgr/resolve_address_uv.cc +7 -8
  306. data/src/core/lib/iomgr/resolve_address_windows.cc +8 -9
  307. data/src/core/lib/iomgr/resource_quota.cc +77 -107
  308. data/src/core/lib/iomgr/resource_quota.h +8 -25
  309. data/src/core/lib/iomgr/sockaddr_utils.cc +1 -1
  310. data/src/core/lib/iomgr/sockaddr_utils.h +0 -8
  311. data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
  312. data/src/core/lib/iomgr/socket_factory_posix.h +0 -8
  313. data/src/core/lib/iomgr/socket_mutator.cc +1 -1
  314. data/src/core/lib/iomgr/socket_mutator.h +1 -9
  315. data/src/core/lib/iomgr/socket_utils.h +0 -8
  316. data/src/core/lib/iomgr/socket_utils_common_posix.cc +1 -1
  317. data/src/core/lib/iomgr/socket_utils_posix.h +0 -8
  318. data/src/core/lib/iomgr/socket_windows.cc +8 -11
  319. data/src/core/lib/iomgr/socket_windows.h +3 -14
  320. data/src/core/lib/iomgr/tcp_client.h +1 -10
  321. data/src/core/lib/iomgr/tcp_client_posix.cc +94 -78
  322. data/src/core/lib/iomgr/tcp_client_posix.h +36 -8
  323. data/src/core/lib/iomgr/tcp_client_uv.cc +16 -23
  324. data/src/core/lib/iomgr/tcp_client_windows.cc +22 -25
  325. data/src/core/lib/iomgr/tcp_posix.cc +131 -153
  326. data/src/core/lib/iomgr/tcp_posix.h +3 -12
  327. data/src/core/lib/iomgr/tcp_server.h +6 -17
  328. data/src/core/lib/iomgr/tcp_server_posix.cc +31 -35
  329. data/src/core/lib/iomgr/tcp_server_utils_posix.h +0 -8
  330. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +1 -1
  331. data/src/core/lib/iomgr/tcp_server_uv.cc +23 -34
  332. data/src/core/lib/iomgr/tcp_server_windows.cc +24 -34
  333. data/src/core/lib/iomgr/tcp_uv.cc +42 -56
  334. data/src/core/lib/iomgr/tcp_uv.h +0 -8
  335. data/src/core/lib/iomgr/tcp_windows.cc +43 -50
  336. data/src/core/lib/iomgr/tcp_windows.h +1 -9
  337. data/src/core/lib/iomgr/time_averaged_stats.h +0 -8
  338. data/src/core/lib/iomgr/timer.h +6 -15
  339. data/src/core/lib/iomgr/timer_generic.cc +22 -27
  340. data/src/core/lib/iomgr/timer_heap.h +0 -8
  341. data/src/core/lib/iomgr/timer_manager.cc +17 -19
  342. data/src/core/lib/iomgr/timer_manager.h +0 -8
  343. data/src/core/lib/iomgr/timer_uv.cc +12 -14
  344. data/src/core/lib/iomgr/udp_server.cc +148 -54
  345. data/src/core/lib/iomgr/udp_server.h +16 -21
  346. data/src/core/lib/iomgr/unix_sockets_posix.h +0 -8
  347. data/src/core/lib/iomgr/wakeup_fd_cv.cc +4 -4
  348. data/src/core/lib/iomgr/wakeup_fd_cv.h +12 -20
  349. data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +1 -1
  350. data/src/core/lib/iomgr/wakeup_fd_pipe.h +0 -8
  351. data/src/core/lib/iomgr/wakeup_fd_posix.h +0 -8
  352. data/src/core/lib/json/json.h +0 -8
  353. data/src/core/lib/json/json_reader.h +0 -8
  354. data/src/core/lib/json/json_writer.h +0 -8
  355. data/src/core/lib/profiling/basic_timers.cc +3 -2
  356. data/src/core/lib/profiling/timers.h +0 -8
  357. data/src/core/lib/security/context/security_context.cc +9 -10
  358. data/src/core/lib/security/context/security_context.h +0 -8
  359. data/src/core/lib/security/credentials/composite/composite_credentials.cc +23 -28
  360. data/src/core/lib/security/credentials/composite/composite_credentials.h +0 -8
  361. data/src/core/lib/security/credentials/credentials.cc +33 -42
  362. data/src/core/lib/security/credentials/credentials.h +24 -43
  363. data/src/core/lib/security/credentials/credentials_metadata.cc +2 -2
  364. data/src/core/lib/security/credentials/fake/fake_credentials.cc +16 -22
  365. data/src/core/lib/security/credentials/fake/fake_credentials.h +0 -8
  366. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +3 -3
  367. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +28 -34
  368. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +0 -8
  369. data/src/core/lib/security/credentials/iam/iam_credentials.cc +9 -13
  370. data/src/core/lib/security/credentials/jwt/json_token.cc +1 -1
  371. data/src/core/lib/security/credentials/jwt/json_token.h +0 -8
  372. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +14 -20
  373. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +1 -10
  374. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +56 -72
  375. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +5 -17
  376. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +47 -55
  377. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +3 -12
  378. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +23 -28
  379. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +8 -13
  380. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +0 -8
  381. data/src/core/lib/security/transport/auth_filters.h +0 -8
  382. data/src/core/lib/security/transport/client_auth_filter.cc +45 -54
  383. data/src/core/lib/security/transport/lb_targets_info.cc +2 -2
  384. data/src/core/lib/security/transport/lb_targets_info.h +0 -8
  385. data/src/core/lib/security/transport/secure_endpoint.cc +54 -68
  386. data/src/core/lib/security/transport/secure_endpoint.h +0 -8
  387. data/src/core/lib/security/transport/security_connector.cc +62 -86
  388. data/src/core/lib/security/transport/security_connector.h +22 -39
  389. data/src/core/lib/security/transport/security_handshaker.cc +83 -106
  390. data/src/core/lib/security/transport/security_handshaker.h +1 -10
  391. data/src/core/lib/security/transport/server_auth_filter.cc +31 -38
  392. data/src/core/lib/security/transport/tsi_error.h +0 -8
  393. data/src/core/lib/security/util/json_util.h +0 -8
  394. data/src/core/lib/slice/b64.cc +5 -6
  395. data/src/core/lib/slice/b64.h +3 -12
  396. data/src/core/lib/slice/percent_encoding.h +0 -8
  397. data/src/core/lib/slice/slice.cc +8 -9
  398. data/src/core/lib/slice/slice_buffer.cc +11 -16
  399. data/src/core/lib/slice/slice_hash_table.cc +5 -7
  400. data/src/core/lib/slice/slice_hash_table.h +2 -12
  401. data/src/core/lib/slice/slice_intern.cc +4 -5
  402. data/src/core/lib/slice/slice_internal.h +4 -15
  403. data/src/core/lib/slice/slice_string_helpers.cc +1 -1
  404. data/src/core/lib/slice/slice_string_helpers.h +1 -9
  405. data/src/core/lib/surface/alarm.cc +11 -14
  406. data/src/core/lib/surface/alarm_internal.h +0 -8
  407. data/src/core/lib/surface/byte_buffer.cc +2 -3
  408. data/src/core/lib/surface/byte_buffer_reader.cc +7 -9
  409. data/src/core/lib/surface/call.cc +198 -241
  410. data/src/core/lib/surface/call.h +9 -23
  411. data/src/core/lib/surface/call_details.cc +3 -4
  412. data/src/core/lib/surface/call_log_batch.cc +1 -1
  413. data/src/core/lib/surface/call_test_only.h +0 -8
  414. data/src/core/lib/surface/channel.cc +53 -64
  415. data/src/core/lib/surface/channel.h +12 -23
  416. data/src/core/lib/surface/channel_init.cc +2 -3
  417. data/src/core/lib/surface/channel_init.h +2 -12
  418. data/src/core/lib/surface/channel_ping.cc +7 -9
  419. data/src/core/lib/surface/channel_stack_type.h +0 -8
  420. data/src/core/lib/surface/completion_queue.cc +158 -176
  421. data/src/core/lib/surface/completion_queue.h +9 -20
  422. data/src/core/lib/surface/completion_queue_factory.h +0 -8
  423. data/src/core/lib/surface/event_string.cc +1 -1
  424. data/src/core/lib/surface/event_string.h +0 -8
  425. data/src/core/lib/surface/init.cc +27 -25
  426. data/src/core/lib/surface/init.h +0 -8
  427. data/src/core/lib/surface/init_secure.cc +2 -2
  428. data/src/core/lib/surface/lame_client.cc +30 -33
  429. data/src/core/lib/surface/lame_client.h +0 -8
  430. data/src/core/lib/surface/server.cc +151 -203
  431. data/src/core/lib/surface/server.h +7 -16
  432. data/src/core/lib/surface/validate_metadata.h +0 -8
  433. data/src/core/lib/surface/version.cc +2 -2
  434. data/src/core/lib/transport/bdp_estimator.cc +2 -2
  435. data/src/core/lib/transport/bdp_estimator.h +1 -1
  436. data/src/core/lib/transport/byte_stream.cc +24 -38
  437. data/src/core/lib/transport/byte_stream.h +10 -25
  438. data/src/core/lib/transport/connectivity_state.cc +9 -13
  439. data/src/core/lib/transport/connectivity_state.h +4 -14
  440. data/src/core/lib/transport/error_utils.cc +6 -6
  441. data/src/core/lib/transport/error_utils.h +2 -11
  442. data/src/core/lib/transport/metadata.cc +21 -23
  443. data/src/core/lib/transport/metadata.h +8 -20
  444. data/src/core/lib/transport/metadata_batch.cc +34 -45
  445. data/src/core/lib/transport/metadata_batch.h +18 -32
  446. data/src/core/lib/transport/service_config.cc +11 -15
  447. data/src/core/lib/transport/service_config.h +3 -13
  448. data/src/core/lib/transport/static_metadata.cc +1 -1
  449. data/src/core/lib/transport/static_metadata.h +1 -7
  450. data/src/core/lib/transport/status_conversion.cc +2 -3
  451. data/src/core/lib/transport/status_conversion.h +1 -10
  452. data/src/core/lib/transport/timeout_encoding.cc +1 -1
  453. data/src/core/lib/transport/timeout_encoding.h +1 -9
  454. data/src/core/lib/transport/transport.cc +36 -50
  455. data/src/core/lib/transport/transport.h +28 -30
  456. data/src/core/lib/transport/transport_impl.h +12 -23
  457. data/src/core/lib/transport/transport_op_string.cc +2 -2
  458. data/src/core/plugin_registry/grpc_plugin_registry.cc +34 -34
  459. data/src/core/tsi/fake_transport_security.cc +7 -10
  460. data/src/core/tsi/fake_transport_security.h +0 -8
  461. data/src/core/tsi/gts_transport_security.cc +2 -2
  462. data/src/core/tsi/gts_transport_security.h +0 -8
  463. data/src/core/tsi/ssl_transport_security.cc +3 -0
  464. data/src/core/tsi/ssl_transport_security.h +0 -8
  465. data/src/core/tsi/ssl_types.h +0 -8
  466. data/src/core/tsi/transport_security.h +1 -9
  467. data/src/core/tsi/transport_security_adapter.h +0 -8
  468. data/src/core/tsi/transport_security_grpc.cc +11 -18
  469. data/src/core/tsi/transport_security_grpc.h +9 -21
  470. data/src/core/tsi/transport_security_interface.h +0 -8
  471. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +0 -30
  472. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +2 -48
  473. data/src/ruby/lib/grpc/version.rb +1 -1
  474. data/src/ruby/spec/channel_connection_spec.rb +2 -1
  475. data/src/ruby/spec/client_auth_spec.rb +1 -1
  476. data/src/ruby/spec/client_server_spec.rb +2 -2
  477. data/src/ruby/spec/generic/active_call_spec.rb +1 -1
  478. data/src/ruby/spec/generic/client_stub_spec.rb +4 -4
  479. data/src/ruby/spec/generic/interceptor_registry_spec.rb +1 -1
  480. data/src/ruby/spec/generic/rpc_server_spec.rb +12 -12
  481. data/src/ruby/spec/google_rpc_status_utils_spec.rb +3 -2
  482. data/src/ruby/spec/pb/health/checker_spec.rb +1 -1
  483. data/src/ruby/spec/server_spec.rb +9 -9
  484. data/src/ruby/spec/support/helpers.rb +35 -1
  485. metadata +68 -66
  486. data/include/grpc/impl/codegen/exec_ctx_fwd.h +0 -26
  487. data/include/grpc/support/histogram.h +0 -64
  488. data/src/core/lib/support/histogram.cc +0 -227
@@ -27,15 +27,10 @@
27
27
  #include "src/core/lib/iomgr/exec_ctx.h"
28
28
  #include "src/core/lib/transport/metadata.h"
29
29
 
30
- #ifdef __cplusplus
31
- extern "C" {
32
- #endif
33
-
34
30
  typedef struct grpc_chttp2_hpack_parser grpc_chttp2_hpack_parser;
35
31
 
36
32
  typedef grpc_error* (*grpc_chttp2_hpack_parser_state)(
37
- grpc_exec_ctx* exec_ctx, grpc_chttp2_hpack_parser* p, const uint8_t* beg,
38
- const uint8_t* end);
33
+ grpc_chttp2_hpack_parser* p, const uint8_t* beg, const uint8_t* end);
39
34
 
40
35
  typedef struct {
41
36
  bool copied;
@@ -51,7 +46,7 @@ typedef struct {
51
46
 
52
47
  struct grpc_chttp2_hpack_parser {
53
48
  /* user specified callback for each header output */
54
- void (*on_header)(grpc_exec_ctx* exec_ctx, void* user_data, grpc_mdelem md);
49
+ void (*on_header)(void* user_data, grpc_mdelem md);
55
50
  void* on_header_user_data;
56
51
 
57
52
  grpc_error* last_error;
@@ -96,27 +91,19 @@ struct grpc_chttp2_hpack_parser {
96
91
  grpc_chttp2_hptbl table;
97
92
  };
98
93
 
99
- void grpc_chttp2_hpack_parser_init(grpc_exec_ctx* exec_ctx,
100
- grpc_chttp2_hpack_parser* p);
101
- void grpc_chttp2_hpack_parser_destroy(grpc_exec_ctx* exec_ctx,
102
- grpc_chttp2_hpack_parser* p);
94
+ void grpc_chttp2_hpack_parser_init(grpc_chttp2_hpack_parser* p);
95
+ void grpc_chttp2_hpack_parser_destroy(grpc_chttp2_hpack_parser* p);
103
96
 
104
97
  void grpc_chttp2_hpack_parser_set_has_priority(grpc_chttp2_hpack_parser* p);
105
98
 
106
- grpc_error* grpc_chttp2_hpack_parser_parse(grpc_exec_ctx* exec_ctx,
107
- grpc_chttp2_hpack_parser* p,
99
+ grpc_error* grpc_chttp2_hpack_parser_parse(grpc_chttp2_hpack_parser* p,
108
100
  grpc_slice slice);
109
101
 
110
102
  /* wraps grpc_chttp2_hpack_parser_parse to provide a frame level parser for
111
103
  the transport */
112
- grpc_error* grpc_chttp2_header_parser_parse(grpc_exec_ctx* exec_ctx,
113
- void* hpack_parser,
104
+ grpc_error* grpc_chttp2_header_parser_parse(void* hpack_parser,
114
105
  grpc_chttp2_transport* t,
115
106
  grpc_chttp2_stream* s,
116
107
  grpc_slice slice, int is_last);
117
108
 
118
- #ifdef __cplusplus
119
- }
120
- #endif
121
-
122
109
  #endif /* GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_HPACK_PARSER_H */
@@ -26,7 +26,7 @@
26
26
  #include <grpc/support/string_util.h>
27
27
 
28
28
  #include "src/core/lib/debug/trace.h"
29
- #include "src/core/lib/support/murmur_hash.h"
29
+ #include "src/core/lib/gpr/murmur_hash.h"
30
30
 
31
31
  extern grpc_core::TraceFlag grpc_http_trace;
32
32
 
@@ -165,7 +165,7 @@ static uint32_t entries_for_bytes(uint32_t bytes) {
165
165
  GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD;
166
166
  }
167
167
 
168
- void grpc_chttp2_hptbl_init(grpc_exec_ctx* exec_ctx, grpc_chttp2_hptbl* tbl) {
168
+ void grpc_chttp2_hptbl_init(grpc_chttp2_hptbl* tbl) {
169
169
  size_t i;
170
170
 
171
171
  memset(tbl, 0, sizeof(*tbl));
@@ -177,22 +177,19 @@ void grpc_chttp2_hptbl_init(grpc_exec_ctx* exec_ctx, grpc_chttp2_hptbl* tbl) {
177
177
  memset(tbl->ents, 0, sizeof(*tbl->ents) * tbl->cap_entries);
178
178
  for (i = 1; i <= GRPC_CHTTP2_LAST_STATIC_ENTRY; i++) {
179
179
  tbl->static_ents[i - 1] = grpc_mdelem_from_slices(
180
- exec_ctx,
181
180
  grpc_slice_intern(grpc_slice_from_static_string(static_table[i].key)),
182
181
  grpc_slice_intern(
183
182
  grpc_slice_from_static_string(static_table[i].value)));
184
183
  }
185
184
  }
186
185
 
187
- void grpc_chttp2_hptbl_destroy(grpc_exec_ctx* exec_ctx,
188
- grpc_chttp2_hptbl* tbl) {
186
+ void grpc_chttp2_hptbl_destroy(grpc_chttp2_hptbl* tbl) {
189
187
  size_t i;
190
188
  for (i = 0; i < GRPC_CHTTP2_LAST_STATIC_ENTRY; i++) {
191
- GRPC_MDELEM_UNREF(exec_ctx, tbl->static_ents[i]);
189
+ GRPC_MDELEM_UNREF(tbl->static_ents[i]);
192
190
  }
193
191
  for (i = 0; i < tbl->num_ents; i++) {
194
- GRPC_MDELEM_UNREF(exec_ctx,
195
- tbl->ents[(tbl->first_ent + i) % tbl->cap_entries]);
192
+ GRPC_MDELEM_UNREF(tbl->ents[(tbl->first_ent + i) % tbl->cap_entries]);
196
193
  }
197
194
  gpr_free(tbl->ents);
198
195
  }
@@ -215,7 +212,7 @@ grpc_mdelem grpc_chttp2_hptbl_lookup(const grpc_chttp2_hptbl* tbl,
215
212
  }
216
213
 
217
214
  /* Evict one element from the table */
218
- static void evict1(grpc_exec_ctx* exec_ctx, grpc_chttp2_hptbl* tbl) {
215
+ static void evict1(grpc_chttp2_hptbl* tbl) {
219
216
  grpc_mdelem first_ent = tbl->ents[tbl->first_ent];
220
217
  size_t elem_bytes = GRPC_SLICE_LENGTH(GRPC_MDKEY(first_ent)) +
221
218
  GRPC_SLICE_LENGTH(GRPC_MDVALUE(first_ent)) +
@@ -224,7 +221,7 @@ static void evict1(grpc_exec_ctx* exec_ctx, grpc_chttp2_hptbl* tbl) {
224
221
  tbl->mem_used -= (uint32_t)elem_bytes;
225
222
  tbl->first_ent = ((tbl->first_ent + 1) % tbl->cap_entries);
226
223
  tbl->num_ents--;
227
- GRPC_MDELEM_UNREF(exec_ctx, first_ent);
224
+ GRPC_MDELEM_UNREF(first_ent);
228
225
  }
229
226
 
230
227
  static void rebuild_ents(grpc_chttp2_hptbl* tbl, uint32_t new_cap) {
@@ -240,8 +237,7 @@ static void rebuild_ents(grpc_chttp2_hptbl* tbl, uint32_t new_cap) {
240
237
  tbl->first_ent = 0;
241
238
  }
242
239
 
243
- void grpc_chttp2_hptbl_set_max_bytes(grpc_exec_ctx* exec_ctx,
244
- grpc_chttp2_hptbl* tbl,
240
+ void grpc_chttp2_hptbl_set_max_bytes(grpc_chttp2_hptbl* tbl,
245
241
  uint32_t max_bytes) {
246
242
  if (tbl->max_bytes == max_bytes) {
247
243
  return;
@@ -250,13 +246,12 @@ void grpc_chttp2_hptbl_set_max_bytes(grpc_exec_ctx* exec_ctx,
250
246
  gpr_log(GPR_DEBUG, "Update hpack parser max size to %d", max_bytes);
251
247
  }
252
248
  while (tbl->mem_used > max_bytes) {
253
- evict1(exec_ctx, tbl);
249
+ evict1(tbl);
254
250
  }
255
251
  tbl->max_bytes = max_bytes;
256
252
  }
257
253
 
258
- grpc_error* grpc_chttp2_hptbl_set_current_table_size(grpc_exec_ctx* exec_ctx,
259
- grpc_chttp2_hptbl* tbl,
254
+ grpc_error* grpc_chttp2_hptbl_set_current_table_size(grpc_chttp2_hptbl* tbl,
260
255
  uint32_t bytes) {
261
256
  if (tbl->current_table_bytes == bytes) {
262
257
  return GRPC_ERROR_NONE;
@@ -274,7 +269,7 @@ grpc_error* grpc_chttp2_hptbl_set_current_table_size(grpc_exec_ctx* exec_ctx,
274
269
  gpr_log(GPR_DEBUG, "Update hpack parser table size to %d", bytes);
275
270
  }
276
271
  while (tbl->mem_used > bytes) {
277
- evict1(exec_ctx, tbl);
272
+ evict1(tbl);
278
273
  }
279
274
  tbl->current_table_bytes = bytes;
280
275
  tbl->max_entries = entries_for_bytes(bytes);
@@ -289,8 +284,7 @@ grpc_error* grpc_chttp2_hptbl_set_current_table_size(grpc_exec_ctx* exec_ctx,
289
284
  return GRPC_ERROR_NONE;
290
285
  }
291
286
 
292
- grpc_error* grpc_chttp2_hptbl_add(grpc_exec_ctx* exec_ctx,
293
- grpc_chttp2_hptbl* tbl, grpc_mdelem md) {
287
+ grpc_error* grpc_chttp2_hptbl_add(grpc_chttp2_hptbl* tbl, grpc_mdelem md) {
294
288
  /* determine how many bytes of buffer this entry represents */
295
289
  size_t elem_bytes = GRPC_SLICE_LENGTH(GRPC_MDKEY(md)) +
296
290
  GRPC_SLICE_LENGTH(GRPC_MDVALUE(md)) +
@@ -320,14 +314,14 @@ grpc_error* grpc_chttp2_hptbl_add(grpc_exec_ctx* exec_ctx,
320
314
  * empty table.
321
315
  */
322
316
  while (tbl->num_ents) {
323
- evict1(exec_ctx, tbl);
317
+ evict1(tbl);
324
318
  }
325
319
  return GRPC_ERROR_NONE;
326
320
  }
327
321
 
328
322
  /* evict entries to ensure no overflow */
329
323
  while (elem_bytes > (size_t)tbl->current_table_bytes - tbl->mem_used) {
330
- evict1(exec_ctx, tbl);
324
+ evict1(tbl);
331
325
  }
332
326
 
333
327
  /* copy the finalized entry in */
@@ -24,10 +24,6 @@
24
24
  #include "src/core/lib/iomgr/error.h"
25
25
  #include "src/core/lib/transport/metadata.h"
26
26
 
27
- #ifdef __cplusplus
28
- extern "C" {
29
- #endif
30
-
31
27
  /* HPACK header table */
32
28
 
33
29
  /* last index in the static table */
@@ -73,21 +69,18 @@ typedef struct {
73
69
  } grpc_chttp2_hptbl;
74
70
 
75
71
  /* initialize a hpack table */
76
- void grpc_chttp2_hptbl_init(grpc_exec_ctx* exec_ctx, grpc_chttp2_hptbl* tbl);
77
- void grpc_chttp2_hptbl_destroy(grpc_exec_ctx* exec_ctx, grpc_chttp2_hptbl* tbl);
78
- void grpc_chttp2_hptbl_set_max_bytes(grpc_exec_ctx* exec_ctx,
79
- grpc_chttp2_hptbl* tbl,
72
+ void grpc_chttp2_hptbl_init(grpc_chttp2_hptbl* tbl);
73
+ void grpc_chttp2_hptbl_destroy(grpc_chttp2_hptbl* tbl);
74
+ void grpc_chttp2_hptbl_set_max_bytes(grpc_chttp2_hptbl* tbl,
80
75
  uint32_t max_bytes);
81
- grpc_error* grpc_chttp2_hptbl_set_current_table_size(grpc_exec_ctx* exec_ctx,
82
- grpc_chttp2_hptbl* tbl,
76
+ grpc_error* grpc_chttp2_hptbl_set_current_table_size(grpc_chttp2_hptbl* tbl,
83
77
  uint32_t bytes);
84
78
 
85
79
  /* lookup a table entry based on its hpack index */
86
80
  grpc_mdelem grpc_chttp2_hptbl_lookup(const grpc_chttp2_hptbl* tbl,
87
81
  uint32_t index);
88
82
  /* add a table entry to the index */
89
- grpc_error* grpc_chttp2_hptbl_add(grpc_exec_ctx* exec_ctx,
90
- grpc_chttp2_hptbl* tbl,
83
+ grpc_error* grpc_chttp2_hptbl_add(grpc_chttp2_hptbl* tbl,
91
84
  grpc_mdelem md) GRPC_MUST_USE_RESULT;
92
85
  /* Find a key/value pair in the table... returns the index in the table of the
93
86
  most similar entry, or 0 if the value was not found */
@@ -98,8 +91,4 @@ typedef struct {
98
91
  grpc_chttp2_hptbl_find_result grpc_chttp2_hptbl_find(
99
92
  const grpc_chttp2_hptbl* tbl, grpc_mdelem md);
100
93
 
101
- #ifdef __cplusplus
102
- }
103
- #endif
104
-
105
94
  #endif /* GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_HPACK_TABLE_H */
@@ -36,9 +36,6 @@ typedef enum {
36
36
 
37
37
  #define GRPC_CHTTP2_NUM_SETTINGS 7
38
38
 
39
- #ifdef __cplusplus
40
- extern "C" {
41
- #endif
42
39
  extern const uint16_t grpc_setting_id_to_wire_id[];
43
40
 
44
41
  bool grpc_wire_id_to_setting_id(uint32_t wire_id, grpc_chttp2_setting_id* out);
@@ -60,8 +57,4 @@ typedef struct {
60
57
  extern const grpc_chttp2_setting_parameters
61
58
  grpc_chttp2_settings_parameters[GRPC_CHTTP2_NUM_SETTINGS];
62
59
 
63
- #ifdef __cplusplus
64
- }
65
- #endif
66
-
67
60
  #endif /* GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_HTTP2_SETTINGS_H */
@@ -19,10 +19,6 @@
19
19
  #ifndef GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_HUFFSYMS_H
20
20
  #define GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_HUFFSYMS_H
21
21
 
22
- #ifdef __cplusplus
23
- extern "C" {
24
- #endif
25
-
26
22
  /* HPACK static huffman table */
27
23
 
28
24
  #define GRPC_CHTTP2_NUM_HUFFSYMS 257
@@ -34,8 +30,4 @@ typedef struct {
34
30
 
35
31
  extern const grpc_chttp2_huffsym grpc_chttp2_huffsyms[GRPC_CHTTP2_NUM_HUFFSYMS];
36
32
 
37
- #ifdef __cplusplus
38
- }
39
- #endif
40
-
41
33
  #endif /* GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_HUFFSYMS_H */
@@ -33,33 +33,31 @@ void grpc_chttp2_incoming_metadata_buffer_init(
33
33
  }
34
34
 
35
35
  void grpc_chttp2_incoming_metadata_buffer_destroy(
36
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_metadata_buffer* buffer) {
37
- grpc_metadata_batch_destroy(exec_ctx, &buffer->batch);
36
+ grpc_chttp2_incoming_metadata_buffer* buffer) {
37
+ grpc_metadata_batch_destroy(&buffer->batch);
38
38
  }
39
39
 
40
40
  grpc_error* grpc_chttp2_incoming_metadata_buffer_add(
41
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_metadata_buffer* buffer,
42
- grpc_mdelem elem) {
41
+ grpc_chttp2_incoming_metadata_buffer* buffer, grpc_mdelem elem) {
43
42
  buffer->size += GRPC_MDELEM_LENGTH(elem);
44
43
  return grpc_metadata_batch_add_tail(
45
- exec_ctx, &buffer->batch,
44
+ &buffer->batch,
46
45
  (grpc_linked_mdelem*)gpr_arena_alloc(buffer->arena,
47
46
  sizeof(grpc_linked_mdelem)),
48
47
  elem);
49
48
  }
50
49
 
51
50
  grpc_error* grpc_chttp2_incoming_metadata_buffer_replace_or_add(
52
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_metadata_buffer* buffer,
53
- grpc_mdelem elem) {
51
+ grpc_chttp2_incoming_metadata_buffer* buffer, grpc_mdelem elem) {
54
52
  for (grpc_linked_mdelem* l = buffer->batch.list.head; l != nullptr;
55
53
  l = l->next) {
56
54
  if (grpc_slice_eq(GRPC_MDKEY(l->md), GRPC_MDKEY(elem))) {
57
- GRPC_MDELEM_UNREF(exec_ctx, l->md);
55
+ GRPC_MDELEM_UNREF(l->md);
58
56
  l->md = elem;
59
57
  return GRPC_ERROR_NONE;
60
58
  }
61
59
  }
62
- return grpc_chttp2_incoming_metadata_buffer_add(exec_ctx, buffer, elem);
60
+ return grpc_chttp2_incoming_metadata_buffer_add(buffer, elem);
63
61
  }
64
62
 
65
63
  void grpc_chttp2_incoming_metadata_buffer_set_deadline(
@@ -68,8 +66,7 @@ void grpc_chttp2_incoming_metadata_buffer_set_deadline(
68
66
  }
69
67
 
70
68
  void grpc_chttp2_incoming_metadata_buffer_publish(
71
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_metadata_buffer* buffer,
72
- grpc_metadata_batch* batch) {
69
+ grpc_chttp2_incoming_metadata_buffer* buffer, grpc_metadata_batch* batch) {
73
70
  *batch = buffer->batch;
74
71
  grpc_metadata_batch_init(&buffer->batch);
75
72
  }
@@ -21,10 +21,6 @@
21
21
 
22
22
  #include "src/core/lib/transport/transport.h"
23
23
 
24
- #ifdef __cplusplus
25
- extern "C" {
26
- #endif
27
-
28
24
  typedef struct {
29
25
  gpr_arena* arena;
30
26
  grpc_metadata_batch batch;
@@ -35,22 +31,17 @@ typedef struct {
35
31
  void grpc_chttp2_incoming_metadata_buffer_init(
36
32
  grpc_chttp2_incoming_metadata_buffer* buffer, gpr_arena* arena);
37
33
  void grpc_chttp2_incoming_metadata_buffer_destroy(
38
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_metadata_buffer* buffer);
34
+ grpc_chttp2_incoming_metadata_buffer* buffer);
39
35
  void grpc_chttp2_incoming_metadata_buffer_publish(
40
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_metadata_buffer* buffer,
41
- grpc_metadata_batch* batch);
36
+ grpc_chttp2_incoming_metadata_buffer* buffer, grpc_metadata_batch* batch);
42
37
 
43
38
  grpc_error* grpc_chttp2_incoming_metadata_buffer_add(
44
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_metadata_buffer* buffer,
39
+ grpc_chttp2_incoming_metadata_buffer* buffer,
45
40
  grpc_mdelem elem) GRPC_MUST_USE_RESULT;
46
41
  grpc_error* grpc_chttp2_incoming_metadata_buffer_replace_or_add(
47
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_metadata_buffer* buffer,
42
+ grpc_chttp2_incoming_metadata_buffer* buffer,
48
43
  grpc_mdelem elem) GRPC_MUST_USE_RESULT;
49
44
  void grpc_chttp2_incoming_metadata_buffer_set_deadline(
50
45
  grpc_chttp2_incoming_metadata_buffer* buffer, grpc_millis deadline);
51
46
 
52
- #ifdef __cplusplus
53
- }
54
- #endif
55
-
56
47
  #endif /* GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_INCOMING_METADATA_H */
@@ -35,17 +35,13 @@
35
35
  #include "src/core/ext/transport/chttp2/transport/incoming_metadata.h"
36
36
  #include "src/core/ext/transport/chttp2/transport/stream_map.h"
37
37
  #include "src/core/lib/compression/stream_compression.h"
38
+ #include "src/core/lib/gpr++/manual_constructor.h"
38
39
  #include "src/core/lib/iomgr/combiner.h"
39
40
  #include "src/core/lib/iomgr/endpoint.h"
40
41
  #include "src/core/lib/iomgr/timer.h"
41
- #include "src/core/lib/support/manual_constructor.h"
42
42
  #include "src/core/lib/transport/connectivity_state.h"
43
43
  #include "src/core/lib/transport/transport_impl.h"
44
44
 
45
- #ifdef __cplusplus
46
- extern "C" {
47
- #endif
48
-
49
45
  /* streams are kept in various linked lists depending on what things need to
50
46
  happen to them... this enum labels each list */
51
47
  typedef enum {
@@ -286,8 +282,8 @@ struct grpc_chttp2_transport {
286
282
 
287
283
  struct {
288
284
  /* accept stream callback */
289
- void (*accept_stream)(grpc_exec_ctx* exec_ctx, void* user_data,
290
- grpc_transport* transport, const void* server_data);
285
+ void (*accept_stream)(void* user_data, grpc_transport* transport,
286
+ const void* server_data);
291
287
  void* accept_stream_user_data;
292
288
 
293
289
  /** connectivity tracking */
@@ -355,7 +351,10 @@ struct grpc_chttp2_transport {
355
351
  /** parser for goaway frames */
356
352
  grpc_chttp2_goaway_parser goaway_parser;
357
353
 
358
- grpc_core::ManualConstructor<grpc_core::chttp2::TransportFlowControl>
354
+ grpc_core::PolymorphicManualConstructor<
355
+ grpc_core::chttp2::TransportFlowControlBase,
356
+ grpc_core::chttp2::TransportFlowControl,
357
+ grpc_core::chttp2::TransportFlowControlDisabled>
359
358
  flow_control;
360
359
  /** initial window change. This is tracked as we parse settings frames from
361
360
  * the remote peer. If there is a positive delta, then we will make all
@@ -375,9 +374,8 @@ struct grpc_chttp2_transport {
375
374
  /* active parser */
376
375
  void* parser_data;
377
376
  grpc_chttp2_stream* incoming_stream;
378
- grpc_error* (*parser)(grpc_exec_ctx* exec_ctx, void* parser_user_data,
379
- grpc_chttp2_transport* t, grpc_chttp2_stream* s,
380
- grpc_slice slice, int is_last);
377
+ grpc_error* (*parser)(void* parser_user_data, grpc_chttp2_transport* t,
378
+ grpc_chttp2_stream* s, grpc_slice slice, int is_last);
381
379
 
382
380
  grpc_chttp2_write_cb* write_cb_pool;
383
381
 
@@ -530,7 +528,10 @@ struct grpc_chttp2_stream {
530
528
  bool sent_initial_metadata;
531
529
  bool sent_trailing_metadata;
532
530
 
533
- grpc_core::ManualConstructor<grpc_core::chttp2::StreamFlowControl>
531
+ grpc_core::PolymorphicManualConstructor<
532
+ grpc_core::chttp2::StreamFlowControlBase,
533
+ grpc_core::chttp2::StreamFlowControl,
534
+ grpc_core::chttp2::StreamFlowControlDisabled>
534
535
  flow_control;
535
536
 
536
537
  grpc_slice_buffer flow_controlled_buffer;
@@ -575,8 +576,7 @@ struct grpc_chttp2_stream {
575
576
 
576
577
  The actual call chain is documented in the implementation of this function.
577
578
  */
578
- void grpc_chttp2_initiate_write(grpc_exec_ctx* exec_ctx,
579
- grpc_chttp2_transport* t,
579
+ void grpc_chttp2_initiate_write(grpc_chttp2_transport* t,
580
580
  grpc_chttp2_initiate_write_reason reason);
581
581
 
582
582
  typedef struct {
@@ -589,14 +589,12 @@ typedef struct {
589
589
  } grpc_chttp2_begin_write_result;
590
590
 
591
591
  grpc_chttp2_begin_write_result grpc_chttp2_begin_write(
592
- grpc_exec_ctx* exec_ctx, grpc_chttp2_transport* t);
593
- void grpc_chttp2_end_write(grpc_exec_ctx* exec_ctx, grpc_chttp2_transport* t,
594
- grpc_error* error);
592
+ grpc_chttp2_transport* t);
593
+ void grpc_chttp2_end_write(grpc_chttp2_transport* t, grpc_error* error);
595
594
 
596
595
  /** Process one slice of incoming data; return 1 if the connection is still
597
596
  viable after reading, or 0 if the connection should be torn down */
598
- grpc_error* grpc_chttp2_perform_read(grpc_exec_ctx* exec_ctx,
599
- grpc_chttp2_transport* t,
597
+ grpc_error* grpc_chttp2_perform_read(grpc_chttp2_transport* t,
600
598
  grpc_slice slice);
601
599
 
602
600
  bool grpc_chttp2_list_add_writable_stream(grpc_chttp2_transport* t,
@@ -644,27 +642,23 @@ bool grpc_chttp2_list_remove_stalled_by_stream(grpc_chttp2_transport* t,
644
642
 
645
643
  // Takes in a flow control action and performs all the needed operations.
646
644
  void grpc_chttp2_act_on_flowctl_action(
647
- grpc_exec_ctx* exec_ctx, const grpc_core::chttp2::FlowControlAction& action,
645
+ const grpc_core::chttp2::FlowControlAction& action,
648
646
  grpc_chttp2_transport* t, grpc_chttp2_stream* s);
649
647
 
650
648
  /********* End of Flow Control ***************/
651
649
 
652
650
  grpc_chttp2_stream* grpc_chttp2_parsing_lookup_stream(grpc_chttp2_transport* t,
653
651
  uint32_t id);
654
- grpc_chttp2_stream* grpc_chttp2_parsing_accept_stream(grpc_exec_ctx* exec_ctx,
655
- grpc_chttp2_transport* t,
652
+ grpc_chttp2_stream* grpc_chttp2_parsing_accept_stream(grpc_chttp2_transport* t,
656
653
  uint32_t id);
657
654
 
658
- void grpc_chttp2_add_incoming_goaway(grpc_exec_ctx* exec_ctx,
659
- grpc_chttp2_transport* t,
655
+ void grpc_chttp2_add_incoming_goaway(grpc_chttp2_transport* t,
660
656
  uint32_t goaway_error,
661
657
  grpc_slice goaway_text);
662
658
 
663
- void grpc_chttp2_parsing_become_skip_parser(grpc_exec_ctx* exec_ctx,
664
- grpc_chttp2_transport* t);
659
+ void grpc_chttp2_parsing_become_skip_parser(grpc_chttp2_transport* t);
665
660
 
666
- void grpc_chttp2_complete_closure_step(grpc_exec_ctx* exec_ctx,
667
- grpc_chttp2_transport* t,
661
+ void grpc_chttp2_complete_closure_step(grpc_chttp2_transport* t,
668
662
  grpc_chttp2_stream* s,
669
663
  grpc_closure** pclosure,
670
664
  grpc_error* error, const char* desc);
@@ -685,94 +679,80 @@ void grpc_chttp2_complete_closure_step(grpc_exec_ctx* exec_ctx,
685
679
  else \
686
680
  stmt
687
681
 
688
- void grpc_chttp2_fake_status(grpc_exec_ctx* exec_ctx, grpc_chttp2_transport* t,
682
+ void grpc_chttp2_fake_status(grpc_chttp2_transport* t,
689
683
  grpc_chttp2_stream* stream, grpc_error* error);
690
- void grpc_chttp2_mark_stream_closed(grpc_exec_ctx* exec_ctx,
691
- grpc_chttp2_transport* t,
684
+ void grpc_chttp2_mark_stream_closed(grpc_chttp2_transport* t,
692
685
  grpc_chttp2_stream* s, int close_reads,
693
686
  int close_writes, grpc_error* error);
694
- void grpc_chttp2_start_writing(grpc_exec_ctx* exec_ctx,
695
- grpc_chttp2_transport* t);
687
+ void grpc_chttp2_start_writing(grpc_chttp2_transport* t);
696
688
 
697
689
  #ifndef NDEBUG
698
690
  #define GRPC_CHTTP2_STREAM_REF(stream, reason) \
699
691
  grpc_chttp2_stream_ref(stream, reason)
700
- #define GRPC_CHTTP2_STREAM_UNREF(exec_ctx, stream, reason) \
701
- grpc_chttp2_stream_unref(exec_ctx, stream, reason)
692
+ #define GRPC_CHTTP2_STREAM_UNREF(stream, reason) \
693
+ grpc_chttp2_stream_unref(stream, reason)
702
694
  void grpc_chttp2_stream_ref(grpc_chttp2_stream* s, const char* reason);
703
- void grpc_chttp2_stream_unref(grpc_exec_ctx* exec_ctx, grpc_chttp2_stream* s,
704
- const char* reason);
695
+ void grpc_chttp2_stream_unref(grpc_chttp2_stream* s, const char* reason);
705
696
  #else
706
697
  #define GRPC_CHTTP2_STREAM_REF(stream, reason) grpc_chttp2_stream_ref(stream)
707
- #define GRPC_CHTTP2_STREAM_UNREF(exec_ctx, stream, reason) \
708
- grpc_chttp2_stream_unref(exec_ctx, stream)
698
+ #define GRPC_CHTTP2_STREAM_UNREF(stream, reason) \
699
+ grpc_chttp2_stream_unref(stream)
709
700
  void grpc_chttp2_stream_ref(grpc_chttp2_stream* s);
710
- void grpc_chttp2_stream_unref(grpc_exec_ctx* exec_ctx, grpc_chttp2_stream* s);
701
+ void grpc_chttp2_stream_unref(grpc_chttp2_stream* s);
711
702
  #endif
712
703
 
713
704
  #ifndef NDEBUG
714
705
  #define GRPC_CHTTP2_REF_TRANSPORT(t, r) \
715
706
  grpc_chttp2_ref_transport(t, r, __FILE__, __LINE__)
716
- #define GRPC_CHTTP2_UNREF_TRANSPORT(cl, t, r) \
717
- grpc_chttp2_unref_transport(cl, t, r, __FILE__, __LINE__)
718
- void grpc_chttp2_unref_transport(grpc_exec_ctx* exec_ctx,
719
- grpc_chttp2_transport* t, const char* reason,
707
+ #define GRPC_CHTTP2_UNREF_TRANSPORT(t, r) \
708
+ grpc_chttp2_unref_transport(t, r, __FILE__, __LINE__)
709
+ void grpc_chttp2_unref_transport(grpc_chttp2_transport* t, const char* reason,
720
710
  const char* file, int line);
721
711
  void grpc_chttp2_ref_transport(grpc_chttp2_transport* t, const char* reason,
722
712
  const char* file, int line);
723
713
  #else
724
714
  #define GRPC_CHTTP2_REF_TRANSPORT(t, r) grpc_chttp2_ref_transport(t)
725
- #define GRPC_CHTTP2_UNREF_TRANSPORT(cl, t, r) grpc_chttp2_unref_transport(cl, t)
726
- void grpc_chttp2_unref_transport(grpc_exec_ctx* exec_ctx,
727
- grpc_chttp2_transport* t);
715
+ #define GRPC_CHTTP2_UNREF_TRANSPORT(t, r) grpc_chttp2_unref_transport(t)
716
+ void grpc_chttp2_unref_transport(grpc_chttp2_transport* t);
728
717
  void grpc_chttp2_ref_transport(grpc_chttp2_transport* t);
729
718
  #endif
730
719
 
731
720
  grpc_chttp2_incoming_byte_stream* grpc_chttp2_incoming_byte_stream_create(
732
- grpc_exec_ctx* exec_ctx, grpc_chttp2_transport* t, grpc_chttp2_stream* s,
733
- uint32_t frame_size, uint32_t flags);
721
+ grpc_chttp2_transport* t, grpc_chttp2_stream* s, uint32_t frame_size,
722
+ uint32_t flags);
734
723
  grpc_error* grpc_chttp2_incoming_byte_stream_push(
735
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_byte_stream* bs,
736
- grpc_slice slice, grpc_slice* slice_out);
724
+ grpc_chttp2_incoming_byte_stream* bs, grpc_slice slice,
725
+ grpc_slice* slice_out);
737
726
  grpc_error* grpc_chttp2_incoming_byte_stream_finished(
738
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_byte_stream* bs,
739
- grpc_error* error, bool reset_on_error);
727
+ grpc_chttp2_incoming_byte_stream* bs, grpc_error* error,
728
+ bool reset_on_error);
740
729
  void grpc_chttp2_incoming_byte_stream_notify(
741
- grpc_exec_ctx* exec_ctx, grpc_chttp2_incoming_byte_stream* bs,
742
- grpc_error* error);
730
+ grpc_chttp2_incoming_byte_stream* bs, grpc_error* error);
743
731
 
744
- void grpc_chttp2_ack_ping(grpc_exec_ctx* exec_ctx, grpc_chttp2_transport* t,
745
- uint64_t id);
732
+ void grpc_chttp2_ack_ping(grpc_chttp2_transport* t, uint64_t id);
746
733
 
747
734
  /** Add a new ping strike to ping_recv_state.ping_strikes. If
748
735
  ping_recv_state.ping_strikes > ping_policy.max_ping_strikes, it sends GOAWAY
749
736
  with error code ENHANCE_YOUR_CALM and additional debug data resembling
750
737
  "too_many_pings" followed by immediately closing the connection. */
751
- void grpc_chttp2_add_ping_strike(grpc_exec_ctx* exec_ctx,
752
- grpc_chttp2_transport* t);
738
+ void grpc_chttp2_add_ping_strike(grpc_chttp2_transport* t);
753
739
 
754
740
  /** add a ref to the stream and add it to the writable list;
755
741
  ref will be dropped in writing.c */
756
- void grpc_chttp2_mark_stream_writable(grpc_exec_ctx* exec_ctx,
757
- grpc_chttp2_transport* t,
742
+ void grpc_chttp2_mark_stream_writable(grpc_chttp2_transport* t,
758
743
  grpc_chttp2_stream* s);
759
744
 
760
- void grpc_chttp2_cancel_stream(grpc_exec_ctx* exec_ctx,
761
- grpc_chttp2_transport* t, grpc_chttp2_stream* s,
745
+ void grpc_chttp2_cancel_stream(grpc_chttp2_transport* t, grpc_chttp2_stream* s,
762
746
  grpc_error* due_to_error);
763
747
 
764
- void grpc_chttp2_maybe_complete_recv_initial_metadata(grpc_exec_ctx* exec_ctx,
765
- grpc_chttp2_transport* t,
748
+ void grpc_chttp2_maybe_complete_recv_initial_metadata(grpc_chttp2_transport* t,
766
749
  grpc_chttp2_stream* s);
767
- void grpc_chttp2_maybe_complete_recv_message(grpc_exec_ctx* exec_ctx,
768
- grpc_chttp2_transport* t,
750
+ void grpc_chttp2_maybe_complete_recv_message(grpc_chttp2_transport* t,
769
751
  grpc_chttp2_stream* s);
770
- void grpc_chttp2_maybe_complete_recv_trailing_metadata(grpc_exec_ctx* exec_ctx,
771
- grpc_chttp2_transport* t,
752
+ void grpc_chttp2_maybe_complete_recv_trailing_metadata(grpc_chttp2_transport* t,
772
753
  grpc_chttp2_stream* s);
773
754
 
774
- void grpc_chttp2_fail_pending_writes(grpc_exec_ctx* exec_ctx,
775
- grpc_chttp2_transport* t,
755
+ void grpc_chttp2_fail_pending_writes(grpc_chttp2_transport* t,
776
756
  grpc_chttp2_stream* s, grpc_error* error);
777
757
 
778
758
  /** Set the default keepalive configurations, must only be called at
@@ -780,8 +760,4 @@ void grpc_chttp2_fail_pending_writes(grpc_exec_ctx* exec_ctx,
780
760
  void grpc_chttp2_config_default_keepalive_args(grpc_channel_args* args,
781
761
  bool is_client);
782
762
 
783
- #ifdef __cplusplus
784
- }
785
- #endif
786
-
787
763
  #endif /* GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_INTERNAL_H */