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
@@ -26,10 +26,6 @@
26
26
  #include "src/core/lib/iomgr/exec_ctx.h"
27
27
  #include "src/core/lib/iomgr/tcp_server.h"
28
28
 
29
- #ifdef __cplusplus
30
- extern "C" {
31
- #endif
32
-
33
29
  /// Handshakers are used to perform initial handshakes on a connection
34
30
  /// before the client sends the initial request. Some examples of what
35
31
  /// a handshaker can be used for includes support for HTTP CONNECT on
@@ -58,6 +54,7 @@ typedef struct grpc_handshaker grpc_handshaker;
58
54
  /// For the on_handshake_done callback, all members are input arguments,
59
55
  /// which the callback takes ownership of.
60
56
  typedef struct {
57
+ grpc_pollset_set* interested_parties;
61
58
  grpc_endpoint* endpoint;
62
59
  grpc_channel_args* args;
63
60
  grpc_slice_buffer* read_buffer;
@@ -71,18 +68,17 @@ typedef struct {
71
68
 
72
69
  typedef struct {
73
70
  /// Destroys the handshaker.
74
- void (*destroy)(grpc_exec_ctx* exec_ctx, grpc_handshaker* handshaker);
71
+ void (*destroy)(grpc_handshaker* handshaker);
75
72
 
76
73
  /// Shuts down the handshaker (e.g., to clean up when the operation is
77
74
  /// aborted in the middle).
78
- void (*shutdown)(grpc_exec_ctx* exec_ctx, grpc_handshaker* handshaker,
79
- grpc_error* why);
75
+ void (*shutdown)(grpc_handshaker* handshaker, grpc_error* why);
80
76
 
81
77
  /// Performs handshaking, modifying \a args as needed (e.g., to
82
78
  /// replace \a endpoint with a wrapped endpoint).
83
79
  /// When finished, invokes \a on_handshake_done.
84
80
  /// \a acceptor will be NULL for client-side handshakers.
85
- void (*do_handshake)(grpc_exec_ctx* exec_ctx, grpc_handshaker* handshaker,
81
+ void (*do_handshake)(grpc_handshaker* handshaker,
86
82
  grpc_tcp_server_acceptor* acceptor,
87
83
  grpc_closure* on_handshake_done,
88
84
  grpc_handshaker_args* args);
@@ -98,12 +94,9 @@ struct grpc_handshaker {
98
94
  void grpc_handshaker_init(const grpc_handshaker_vtable* vtable,
99
95
  grpc_handshaker* handshaker);
100
96
 
101
- void grpc_handshaker_destroy(grpc_exec_ctx* exec_ctx,
102
- grpc_handshaker* handshaker);
103
- void grpc_handshaker_shutdown(grpc_exec_ctx* exec_ctx,
104
- grpc_handshaker* handshaker, grpc_error* why);
105
- void grpc_handshaker_do_handshake(grpc_exec_ctx* exec_ctx,
106
- grpc_handshaker* handshaker,
97
+ void grpc_handshaker_destroy(grpc_handshaker* handshaker);
98
+ void grpc_handshaker_shutdown(grpc_handshaker* handshaker, grpc_error* why);
99
+ void grpc_handshaker_do_handshake(grpc_handshaker* handshaker,
107
100
  grpc_tcp_server_acceptor* acceptor,
108
101
  grpc_closure* on_handshake_done,
109
102
  grpc_handshaker_args* args);
@@ -123,23 +116,23 @@ void grpc_handshake_manager_add(grpc_handshake_manager* mgr,
123
116
  grpc_handshaker* handshaker);
124
117
 
125
118
  /// Destroys the handshake manager.
126
- void grpc_handshake_manager_destroy(grpc_exec_ctx* exec_ctx,
127
- grpc_handshake_manager* mgr);
119
+ void grpc_handshake_manager_destroy(grpc_handshake_manager* mgr);
128
120
 
129
121
  /// Shuts down the handshake manager (e.g., to clean up when the operation is
130
122
  /// aborted in the middle).
131
123
  /// The caller must still call grpc_handshake_manager_destroy() after
132
124
  /// calling this function.
133
- void grpc_handshake_manager_shutdown(grpc_exec_ctx* exec_ctx,
134
- grpc_handshake_manager* mgr,
125
+ void grpc_handshake_manager_shutdown(grpc_handshake_manager* mgr,
135
126
  grpc_error* why);
136
127
 
137
128
  /// Invokes handshakers in the order they were added.
129
+ /// \a interested_parties may be non-nullptr to provide a pollset_set that
130
+ /// may be used during handshaking. Ownership is not taken.
138
131
  /// Takes ownership of \a endpoint, and then passes that ownership to
139
132
  /// the \a on_handshake_done callback.
140
133
  /// Does NOT take ownership of \a channel_args. Instead, makes a copy before
141
134
  /// invoking the first handshaker.
142
- /// \a acceptor will be NULL for client-side handshakers.
135
+ /// \a acceptor will be nullptr for client-side handshakers.
143
136
  ///
144
137
  /// When done, invokes \a on_handshake_done with a grpc_handshaker_args
145
138
  /// object as its argument. If the callback is invoked with error !=
@@ -147,7 +140,7 @@ void grpc_handshake_manager_shutdown(grpc_exec_ctx* exec_ctx,
147
140
  /// the necessary clean-up. Otherwise, the callback takes ownership of
148
141
  /// the arguments.
149
142
  void grpc_handshake_manager_do_handshake(
150
- grpc_exec_ctx* exec_ctx, grpc_handshake_manager* mgr,
143
+ grpc_handshake_manager* mgr, grpc_pollset_set* interested_parties,
151
144
  grpc_endpoint* endpoint, const grpc_channel_args* channel_args,
152
145
  grpc_millis deadline, grpc_tcp_server_acceptor* acceptor,
153
146
  grpc_iomgr_cb_func on_handshake_done, void* user_data);
@@ -166,10 +159,6 @@ void grpc_handshake_manager_pending_list_remove(grpc_handshake_manager** head,
166
159
  /// Shutdown all pending handshake managers on the server side.
167
160
  // Not thread-safe. Caller needs to synchronize.
168
161
  void grpc_handshake_manager_pending_list_shutdown_all(
169
- grpc_exec_ctx* exec_ctx, grpc_handshake_manager* head, grpc_error* why);
170
-
171
- #ifdef __cplusplus
172
- }
173
- #endif
162
+ grpc_handshake_manager* head, grpc_error* why);
174
163
 
175
164
  #endif /* GRPC_CORE_LIB_CHANNEL_HANDSHAKER_H */
@@ -21,19 +21,19 @@
21
21
  #include <grpc/support/log.h>
22
22
 
23
23
  void grpc_handshaker_factory_add_handshakers(
24
- grpc_exec_ctx* exec_ctx, grpc_handshaker_factory* handshaker_factory,
25
- const grpc_channel_args* args, grpc_handshake_manager* handshake_mgr) {
24
+ grpc_handshaker_factory* handshaker_factory, const grpc_channel_args* args,
25
+ grpc_handshake_manager* handshake_mgr) {
26
26
  if (handshaker_factory != nullptr) {
27
27
  GPR_ASSERT(handshaker_factory->vtable != nullptr);
28
- handshaker_factory->vtable->add_handshakers(exec_ctx, handshaker_factory,
29
- args, handshake_mgr);
28
+ handshaker_factory->vtable->add_handshakers(handshaker_factory, args,
29
+ handshake_mgr);
30
30
  }
31
31
  }
32
32
 
33
33
  void grpc_handshaker_factory_destroy(
34
- grpc_exec_ctx* exec_ctx, grpc_handshaker_factory* handshaker_factory) {
34
+ grpc_handshaker_factory* handshaker_factory) {
35
35
  if (handshaker_factory != nullptr) {
36
36
  GPR_ASSERT(handshaker_factory->vtable != nullptr);
37
- handshaker_factory->vtable->destroy(exec_ctx, handshaker_factory);
37
+ handshaker_factory->vtable->destroy(handshaker_factory);
38
38
  }
39
39
  }
@@ -24,21 +24,15 @@
24
24
  #include "src/core/lib/channel/handshaker.h"
25
25
  #include "src/core/lib/iomgr/exec_ctx.h"
26
26
 
27
- #ifdef __cplusplus
28
- extern "C" {
29
- #endif
30
-
31
27
  // A handshaker factory is used to create handshakers.
32
28
 
33
29
  typedef struct grpc_handshaker_factory grpc_handshaker_factory;
34
30
 
35
31
  typedef struct {
36
- void (*add_handshakers)(grpc_exec_ctx* exec_ctx,
37
- grpc_handshaker_factory* handshaker_factory,
32
+ void (*add_handshakers)(grpc_handshaker_factory* handshaker_factory,
38
33
  const grpc_channel_args* args,
39
34
  grpc_handshake_manager* handshake_mgr);
40
- void (*destroy)(grpc_exec_ctx* exec_ctx,
41
- grpc_handshaker_factory* handshaker_factory);
35
+ void (*destroy)(grpc_handshaker_factory* handshaker_factory);
42
36
  } grpc_handshaker_factory_vtable;
43
37
 
44
38
  struct grpc_handshaker_factory {
@@ -46,14 +40,10 @@ struct grpc_handshaker_factory {
46
40
  };
47
41
 
48
42
  void grpc_handshaker_factory_add_handshakers(
49
- grpc_exec_ctx* exec_ctx, grpc_handshaker_factory* handshaker_factory,
50
- const grpc_channel_args* args, grpc_handshake_manager* handshake_mgr);
43
+ grpc_handshaker_factory* handshaker_factory, const grpc_channel_args* args,
44
+ grpc_handshake_manager* handshake_mgr);
51
45
 
52
46
  void grpc_handshaker_factory_destroy(
53
- grpc_exec_ctx* exec_ctx, grpc_handshaker_factory* handshaker_factory);
54
-
55
- #ifdef __cplusplus
56
- }
57
- #endif
47
+ grpc_handshaker_factory* handshaker_factory);
58
48
 
59
49
  #endif /* GRPC_CORE_LIB_CHANNEL_HANDSHAKER_FACTORY_H */
@@ -47,18 +47,17 @@ static void grpc_handshaker_factory_list_register(
47
47
  }
48
48
 
49
49
  static void grpc_handshaker_factory_list_add_handshakers(
50
- grpc_exec_ctx* exec_ctx, grpc_handshaker_factory_list* list,
51
- const grpc_channel_args* args, grpc_handshake_manager* handshake_mgr) {
50
+ grpc_handshaker_factory_list* list, const grpc_channel_args* args,
51
+ grpc_handshake_manager* handshake_mgr) {
52
52
  for (size_t i = 0; i < list->num_factories; ++i) {
53
- grpc_handshaker_factory_add_handshakers(exec_ctx, list->list[i], args,
54
- handshake_mgr);
53
+ grpc_handshaker_factory_add_handshakers(list->list[i], args, handshake_mgr);
55
54
  }
56
55
  }
57
56
 
58
57
  static void grpc_handshaker_factory_list_destroy(
59
- grpc_exec_ctx* exec_ctx, grpc_handshaker_factory_list* list) {
58
+ grpc_handshaker_factory_list* list) {
60
59
  for (size_t i = 0; i < list->num_factories; ++i) {
61
- grpc_handshaker_factory_destroy(exec_ctx, list->list[i]);
60
+ grpc_handshaker_factory_destroy(list->list[i]);
62
61
  }
63
62
  gpr_free(list->list);
64
63
  }
@@ -74,10 +73,9 @@ void grpc_handshaker_factory_registry_init() {
74
73
  memset(g_handshaker_factory_lists, 0, sizeof(g_handshaker_factory_lists));
75
74
  }
76
75
 
77
- void grpc_handshaker_factory_registry_shutdown(grpc_exec_ctx* exec_ctx) {
76
+ void grpc_handshaker_factory_registry_shutdown() {
78
77
  for (size_t i = 0; i < NUM_HANDSHAKER_TYPES; ++i) {
79
- grpc_handshaker_factory_list_destroy(exec_ctx,
80
- &g_handshaker_factory_lists[i]);
78
+ grpc_handshaker_factory_list_destroy(&g_handshaker_factory_lists[i]);
81
79
  }
82
80
  }
83
81
 
@@ -88,11 +86,9 @@ void grpc_handshaker_factory_register(bool at_start,
88
86
  &g_handshaker_factory_lists[handshaker_type], at_start, factory);
89
87
  }
90
88
 
91
- void grpc_handshakers_add(grpc_exec_ctx* exec_ctx,
92
- grpc_handshaker_type handshaker_type,
89
+ void grpc_handshakers_add(grpc_handshaker_type handshaker_type,
93
90
  const grpc_channel_args* args,
94
91
  grpc_handshake_manager* handshake_mgr) {
95
92
  grpc_handshaker_factory_list_add_handshakers(
96
- exec_ctx, &g_handshaker_factory_lists[handshaker_type], args,
97
- handshake_mgr);
93
+ &g_handshaker_factory_lists[handshaker_type], args, handshake_mgr);
98
94
  }
@@ -24,10 +24,6 @@
24
24
  #include "src/core/lib/channel/handshaker_factory.h"
25
25
  #include "src/core/lib/iomgr/exec_ctx.h"
26
26
 
27
- #ifdef __cplusplus
28
- extern "C" {
29
- #endif
30
-
31
27
  typedef enum {
32
28
  HANDSHAKER_CLIENT = 0,
33
29
  HANDSHAKER_SERVER,
@@ -35,7 +31,7 @@ typedef enum {
35
31
  } grpc_handshaker_type;
36
32
 
37
33
  void grpc_handshaker_factory_registry_init();
38
- void grpc_handshaker_factory_registry_shutdown(grpc_exec_ctx* exec_ctx);
34
+ void grpc_handshaker_factory_registry_shutdown();
39
35
 
40
36
  /// Registers a new handshaker factory. Takes ownership.
41
37
  /// If \a at_start is true, the new handshaker will be at the beginning of
@@ -44,13 +40,8 @@ void grpc_handshaker_factory_register(bool at_start,
44
40
  grpc_handshaker_type handshaker_type,
45
41
  grpc_handshaker_factory* factory);
46
42
 
47
- void grpc_handshakers_add(grpc_exec_ctx* exec_ctx,
48
- grpc_handshaker_type handshaker_type,
43
+ void grpc_handshakers_add(grpc_handshaker_type handshaker_type,
49
44
  const grpc_channel_args* args,
50
45
  grpc_handshake_manager* handshake_mgr);
51
46
 
52
- #ifdef __cplusplus
53
- }
54
- #endif
55
-
56
47
  #endif /* GRPC_CORE_LIB_CHANNEL_HANDSHAKER_REGISTRY_H */
@@ -22,10 +22,6 @@
22
22
  #include <grpc/compression.h>
23
23
  #include "src/core/lib/transport/metadata.h"
24
24
 
25
- #ifdef __cplusplus
26
- extern "C" {
27
- #endif
28
-
29
25
  /** Return compression algorithm based metadata value */
30
26
  grpc_slice grpc_compression_algorithm_slice(
31
27
  grpc_compression_algorithm algorithm);
@@ -53,8 +49,4 @@ grpc_compression_algorithm grpc_compression_algorithm_from_slice(
53
49
  grpc_stream_compression_algorithm grpc_stream_compression_algorithm_from_slice(
54
50
  grpc_slice str);
55
51
 
56
- #ifdef __cplusplus
57
- }
58
- #endif
59
-
60
52
  #endif /* GRPC_CORE_LIB_COMPRESSION_ALGORITHM_METADATA_H */
@@ -29,8 +29,8 @@
29
29
 
30
30
  #define OUTPUT_BLOCK_SIZE 1024
31
31
 
32
- static int zlib_body(grpc_exec_ctx* exec_ctx, z_stream* zs,
33
- grpc_slice_buffer* input, grpc_slice_buffer* output,
32
+ static int zlib_body(z_stream* zs, grpc_slice_buffer* input,
33
+ grpc_slice_buffer* output,
34
34
  int (*flate)(z_stream* zs, int flush)) {
35
35
  int r;
36
36
  int flush;
@@ -74,7 +74,7 @@ static int zlib_body(grpc_exec_ctx* exec_ctx, z_stream* zs,
74
74
  return 1;
75
75
 
76
76
  error:
77
- grpc_slice_unref_internal(exec_ctx, outbuf);
77
+ grpc_slice_unref_internal(outbuf);
78
78
  return 0;
79
79
  }
80
80
 
@@ -84,8 +84,8 @@ static void* zalloc_gpr(void* opaque, unsigned int items, unsigned int size) {
84
84
 
85
85
  static void zfree_gpr(void* opaque, void* address) { gpr_free(address); }
86
86
 
87
- static int zlib_compress(grpc_exec_ctx* exec_ctx, grpc_slice_buffer* input,
88
- grpc_slice_buffer* output, int gzip) {
87
+ static int zlib_compress(grpc_slice_buffer* input, grpc_slice_buffer* output,
88
+ int gzip) {
89
89
  z_stream zs;
90
90
  int r;
91
91
  size_t i;
@@ -97,11 +97,10 @@ static int zlib_compress(grpc_exec_ctx* exec_ctx, grpc_slice_buffer* input,
97
97
  r = deflateInit2(&zs, Z_DEFAULT_COMPRESSION, Z_DEFLATED, 15 | (gzip ? 16 : 0),
98
98
  8, Z_DEFAULT_STRATEGY);
99
99
  GPR_ASSERT(r == Z_OK);
100
- r = zlib_body(exec_ctx, &zs, input, output, deflate) &&
101
- output->length < input->length;
100
+ r = zlib_body(&zs, input, output, deflate) && output->length < input->length;
102
101
  if (!r) {
103
102
  for (i = count_before; i < output->count; i++) {
104
- grpc_slice_unref_internal(exec_ctx, output->slices[i]);
103
+ grpc_slice_unref_internal(output->slices[i]);
105
104
  }
106
105
  output->count = count_before;
107
106
  output->length = length_before;
@@ -110,8 +109,8 @@ static int zlib_compress(grpc_exec_ctx* exec_ctx, grpc_slice_buffer* input,
110
109
  return r;
111
110
  }
112
111
 
113
- static int zlib_decompress(grpc_exec_ctx* exec_ctx, grpc_slice_buffer* input,
114
- grpc_slice_buffer* output, int gzip) {
112
+ static int zlib_decompress(grpc_slice_buffer* input, grpc_slice_buffer* output,
113
+ int gzip) {
115
114
  z_stream zs;
116
115
  int r;
117
116
  size_t i;
@@ -122,10 +121,10 @@ static int zlib_decompress(grpc_exec_ctx* exec_ctx, grpc_slice_buffer* input,
122
121
  zs.zfree = zfree_gpr;
123
122
  r = inflateInit2(&zs, 15 | (gzip ? 16 : 0));
124
123
  GPR_ASSERT(r == Z_OK);
125
- r = zlib_body(exec_ctx, &zs, input, output, inflate);
124
+ r = zlib_body(&zs, input, output, inflate);
126
125
  if (!r) {
127
126
  for (i = count_before; i < output->count; i++) {
128
- grpc_slice_unref_internal(exec_ctx, output->slices[i]);
127
+ grpc_slice_unref_internal(output->slices[i]);
129
128
  }
130
129
  output->count = count_before;
131
130
  output->length = length_before;
@@ -142,8 +141,7 @@ static int copy(grpc_slice_buffer* input, grpc_slice_buffer* output) {
142
141
  return 1;
143
142
  }
144
143
 
145
- static int compress_inner(grpc_exec_ctx* exec_ctx,
146
- grpc_compression_algorithm algorithm,
144
+ static int compress_inner(grpc_compression_algorithm algorithm,
147
145
  grpc_slice_buffer* input, grpc_slice_buffer* output) {
148
146
  switch (algorithm) {
149
147
  case GRPC_COMPRESS_NONE:
@@ -151,9 +149,9 @@ static int compress_inner(grpc_exec_ctx* exec_ctx,
151
149
  rely on that here */
152
150
  return 0;
153
151
  case GRPC_COMPRESS_DEFLATE:
154
- return zlib_compress(exec_ctx, input, output, 0);
152
+ return zlib_compress(input, output, 0);
155
153
  case GRPC_COMPRESS_GZIP:
156
- return zlib_compress(exec_ctx, input, output, 1);
154
+ return zlib_compress(input, output, 1);
157
155
  case GRPC_COMPRESS_ALGORITHMS_COUNT:
158
156
  break;
159
157
  }
@@ -161,26 +159,24 @@ static int compress_inner(grpc_exec_ctx* exec_ctx,
161
159
  return 0;
162
160
  }
163
161
 
164
- int grpc_msg_compress(grpc_exec_ctx* exec_ctx,
165
- grpc_compression_algorithm algorithm,
162
+ int grpc_msg_compress(grpc_compression_algorithm algorithm,
166
163
  grpc_slice_buffer* input, grpc_slice_buffer* output) {
167
- if (!compress_inner(exec_ctx, algorithm, input, output)) {
164
+ if (!compress_inner(algorithm, input, output)) {
168
165
  copy(input, output);
169
166
  return 0;
170
167
  }
171
168
  return 1;
172
169
  }
173
170
 
174
- int grpc_msg_decompress(grpc_exec_ctx* exec_ctx,
175
- grpc_compression_algorithm algorithm,
171
+ int grpc_msg_decompress(grpc_compression_algorithm algorithm,
176
172
  grpc_slice_buffer* input, grpc_slice_buffer* output) {
177
173
  switch (algorithm) {
178
174
  case GRPC_COMPRESS_NONE:
179
175
  return copy(input, output);
180
176
  case GRPC_COMPRESS_DEFLATE:
181
- return zlib_decompress(exec_ctx, input, output, 0);
177
+ return zlib_decompress(input, output, 0);
182
178
  case GRPC_COMPRESS_GZIP:
183
- return zlib_decompress(exec_ctx, input, output, 1);
179
+ return zlib_decompress(input, output, 1);
184
180
  case GRPC_COMPRESS_ALGORITHMS_COUNT:
185
181
  break;
186
182
  }
@@ -22,26 +22,16 @@
22
22
  #include <grpc/compression.h>
23
23
  #include <grpc/slice_buffer.h>
24
24
 
25
- #ifdef __cplusplus
26
- extern "C" {
27
- #endif
28
-
29
25
  /* compress 'input' to 'output' using 'algorithm'.
30
26
  On success, appends compressed slices to output and returns 1.
31
27
  On failure, appends uncompressed slices to output and returns 0. */
32
- int grpc_msg_compress(grpc_exec_ctx* exec_ctx,
33
- grpc_compression_algorithm algorithm,
28
+ int grpc_msg_compress(grpc_compression_algorithm algorithm,
34
29
  grpc_slice_buffer* input, grpc_slice_buffer* output);
35
30
 
36
31
  /* decompress 'input' to 'output' using 'algorithm'.
37
32
  On success, appends slices to output and returns 1.
38
33
  On failure, output is unchanged, and returns 0. */
39
- int grpc_msg_decompress(grpc_exec_ctx* exec_ctx,
40
- grpc_compression_algorithm algorithm,
34
+ int grpc_msg_decompress(grpc_compression_algorithm algorithm,
41
35
  grpc_slice_buffer* input, grpc_slice_buffer* output);
42
36
 
43
- #ifdef __cplusplus
44
- }
45
- #endif
46
-
47
37
  #endif /* GRPC_CORE_LIB_COMPRESSION_MESSAGE_COMPRESS_H */
@@ -21,7 +21,7 @@
21
21
  #include "src/core/lib/compression/stream_compression.h"
22
22
  #include "src/core/lib/compression/stream_compression_gzip.h"
23
23
 
24
- extern "C" const grpc_stream_compression_vtable
24
+ extern const grpc_stream_compression_vtable
25
25
  grpc_stream_compression_identity_vtable;
26
26
 
27
27
  bool grpc_stream_compress(grpc_stream_compression_context* ctx,
@@ -26,10 +26,6 @@
26
26
 
27
27
  #include "src/core/lib/transport/static_metadata.h"
28
28
 
29
- #ifdef __cplusplus
30
- extern "C" {
31
- #endif
32
-
33
29
  typedef struct grpc_stream_compression_vtable grpc_stream_compression_vtable;
34
30
 
35
31
  /* Stream compression/decompression context */
@@ -115,8 +111,4 @@ void grpc_stream_compression_context_destroy(
115
111
  int grpc_stream_compression_method_parse(
116
112
  grpc_slice value, bool is_compress, grpc_stream_compression_method* method);
117
113
 
118
- #ifdef __cplusplus
119
- }
120
- #endif
121
-
122
114
  #endif