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
@@ -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 grpc_transport_vtable {
29
25
  /* Memory required for a single stream element - this is allocated by upper
30
26
  layers and initialized by the transport */
@@ -34,37 +30,34 @@ typedef struct grpc_transport_vtable {
34
30
  const char* name;
35
31
 
36
32
  /* implementation of grpc_transport_init_stream */
37
- int (*init_stream)(grpc_exec_ctx* exec_ctx, grpc_transport* self,
38
- grpc_stream* stream, grpc_stream_refcount* refcount,
39
- const void* server_data, gpr_arena* arena);
33
+ int (*init_stream)(grpc_transport* self, grpc_stream* stream,
34
+ grpc_stream_refcount* refcount, const void* server_data,
35
+ gpr_arena* arena);
40
36
 
41
37
  /* implementation of grpc_transport_set_pollset */
42
- void (*set_pollset)(grpc_exec_ctx* exec_ctx, grpc_transport* self,
43
- grpc_stream* stream, grpc_pollset* pollset);
38
+ void (*set_pollset)(grpc_transport* self, grpc_stream* stream,
39
+ grpc_pollset* pollset);
44
40
 
45
41
  /* implementation of grpc_transport_set_pollset */
46
- void (*set_pollset_set)(grpc_exec_ctx* exec_ctx, grpc_transport* self,
47
- grpc_stream* stream, grpc_pollset_set* pollset_set);
42
+ void (*set_pollset_set)(grpc_transport* self, grpc_stream* stream,
43
+ grpc_pollset_set* pollset_set);
48
44
 
49
45
  /* implementation of grpc_transport_perform_stream_op */
50
- void (*perform_stream_op)(grpc_exec_ctx* exec_ctx, grpc_transport* self,
51
- grpc_stream* stream,
46
+ void (*perform_stream_op)(grpc_transport* self, grpc_stream* stream,
52
47
  grpc_transport_stream_op_batch* op);
53
48
 
54
49
  /* implementation of grpc_transport_perform_op */
55
- void (*perform_op)(grpc_exec_ctx* exec_ctx, grpc_transport* self,
56
- grpc_transport_op* op);
50
+ void (*perform_op)(grpc_transport* self, grpc_transport_op* op);
57
51
 
58
52
  /* implementation of grpc_transport_destroy_stream */
59
- void (*destroy_stream)(grpc_exec_ctx* exec_ctx, grpc_transport* self,
60
- grpc_stream* stream,
53
+ void (*destroy_stream)(grpc_transport* self, grpc_stream* stream,
61
54
  grpc_closure* then_schedule_closure);
62
55
 
63
56
  /* implementation of grpc_transport_destroy */
64
- void (*destroy)(grpc_exec_ctx* exec_ctx, grpc_transport* self);
57
+ void (*destroy)(grpc_transport* self);
65
58
 
66
59
  /* implementation of grpc_transport_get_endpoint */
67
- grpc_endpoint* (*get_endpoint)(grpc_exec_ctx* exec_ctx, grpc_transport* self);
60
+ grpc_endpoint* (*get_endpoint)(grpc_transport* self);
68
61
  } grpc_transport_vtable;
69
62
 
70
63
  /* an instance of a grpc transport */
@@ -73,8 +66,4 @@ struct grpc_transport {
73
66
  const grpc_transport_vtable* vtable;
74
67
  };
75
68
 
76
- #ifdef __cplusplus
77
- }
78
- #endif
79
-
80
69
  #endif /* GRPC_CORE_LIB_TRANSPORT_TRANSPORT_IMPL_H */
@@ -28,8 +28,8 @@
28
28
  #include <grpc/support/alloc.h>
29
29
  #include <grpc/support/string_util.h>
30
30
  #include <grpc/support/useful.h>
31
+ #include "src/core/lib/gpr/string.h"
31
32
  #include "src/core/lib/slice/slice_string_helpers.h"
32
- #include "src/core/lib/support/string.h"
33
33
  #include "src/core/lib/transport/connectivity_state.h"
34
34
 
35
35
  /* These routines are here to facilitate debugging - they produce string
@@ -187,7 +187,7 @@ char* grpc_transport_op_string(grpc_transport_op* op) {
187
187
  gpr_strvec_add(&b, gpr_strdup("BIND_POLLSET_SET"));
188
188
  }
189
189
 
190
- if (op->send_ping != nullptr) {
190
+ if (op->send_ping.on_initiate != nullptr || op->send_ping.on_ack != nullptr) {
191
191
  if (!first) gpr_strvec_add(&b, gpr_strdup(" "));
192
192
  // first = false;
193
193
  gpr_strvec_add(&b, gpr_strdup("SEND_PING"));
@@ -18,40 +18,40 @@
18
18
 
19
19
  #include <grpc/grpc.h>
20
20
 
21
- extern "C" void grpc_http_filters_init(void);
22
- extern "C" void grpc_http_filters_shutdown(void);
23
- extern "C" void grpc_chttp2_plugin_init(void);
24
- extern "C" void grpc_chttp2_plugin_shutdown(void);
25
- extern "C" void grpc_tsi_gts_init(void);
26
- extern "C" void grpc_tsi_gts_shutdown(void);
27
- extern "C" void grpc_deadline_filter_init(void);
28
- extern "C" void grpc_deadline_filter_shutdown(void);
29
- extern "C" void grpc_client_channel_init(void);
30
- extern "C" void grpc_client_channel_shutdown(void);
31
- extern "C" void grpc_inproc_plugin_init(void);
32
- extern "C" void grpc_inproc_plugin_shutdown(void);
33
- extern "C" void grpc_resolver_fake_init(void);
34
- extern "C" void grpc_resolver_fake_shutdown(void);
35
- extern "C" void grpc_lb_policy_grpclb_init(void);
36
- extern "C" void grpc_lb_policy_grpclb_shutdown(void);
37
- extern "C" void grpc_lb_policy_pick_first_init(void);
38
- extern "C" void grpc_lb_policy_pick_first_shutdown(void);
39
- extern "C" void grpc_lb_policy_round_robin_init(void);
40
- extern "C" void grpc_lb_policy_round_robin_shutdown(void);
41
- extern "C" void grpc_resolver_dns_ares_init(void);
42
- extern "C" void grpc_resolver_dns_ares_shutdown(void);
43
- extern "C" void grpc_resolver_dns_native_init(void);
44
- extern "C" void grpc_resolver_dns_native_shutdown(void);
45
- extern "C" void grpc_resolver_sockaddr_init(void);
46
- extern "C" void grpc_resolver_sockaddr_shutdown(void);
47
- extern "C" void grpc_server_load_reporting_plugin_init(void);
48
- extern "C" void grpc_server_load_reporting_plugin_shutdown(void);
49
- extern "C" void grpc_max_age_filter_init(void);
50
- extern "C" void grpc_max_age_filter_shutdown(void);
51
- extern "C" void grpc_message_size_filter_init(void);
52
- extern "C" void grpc_message_size_filter_shutdown(void);
53
- extern "C" void grpc_workaround_cronet_compression_filter_init(void);
54
- extern "C" void grpc_workaround_cronet_compression_filter_shutdown(void);
21
+ void grpc_http_filters_init(void);
22
+ void grpc_http_filters_shutdown(void);
23
+ void grpc_chttp2_plugin_init(void);
24
+ void grpc_chttp2_plugin_shutdown(void);
25
+ void grpc_tsi_gts_init(void);
26
+ void grpc_tsi_gts_shutdown(void);
27
+ void grpc_deadline_filter_init(void);
28
+ void grpc_deadline_filter_shutdown(void);
29
+ void grpc_client_channel_init(void);
30
+ void grpc_client_channel_shutdown(void);
31
+ void grpc_inproc_plugin_init(void);
32
+ void grpc_inproc_plugin_shutdown(void);
33
+ void grpc_resolver_fake_init(void);
34
+ void grpc_resolver_fake_shutdown(void);
35
+ void grpc_lb_policy_grpclb_init(void);
36
+ void grpc_lb_policy_grpclb_shutdown(void);
37
+ void grpc_lb_policy_pick_first_init(void);
38
+ void grpc_lb_policy_pick_first_shutdown(void);
39
+ void grpc_lb_policy_round_robin_init(void);
40
+ void grpc_lb_policy_round_robin_shutdown(void);
41
+ void grpc_resolver_dns_ares_init(void);
42
+ void grpc_resolver_dns_ares_shutdown(void);
43
+ void grpc_resolver_dns_native_init(void);
44
+ void grpc_resolver_dns_native_shutdown(void);
45
+ void grpc_resolver_sockaddr_init(void);
46
+ void grpc_resolver_sockaddr_shutdown(void);
47
+ void grpc_server_load_reporting_plugin_init(void);
48
+ void grpc_server_load_reporting_plugin_shutdown(void);
49
+ void grpc_max_age_filter_init(void);
50
+ void grpc_max_age_filter_shutdown(void);
51
+ void grpc_message_size_filter_init(void);
52
+ void grpc_message_size_filter_shutdown(void);
53
+ void grpc_workaround_cronet_compression_filter_init(void);
54
+ void grpc_workaround_cronet_compression_filter_shutdown(void);
55
55
 
56
56
  void grpc_register_built_in_plugins(void) {
57
57
  grpc_register_plugin(grpc_http_filters_init,
@@ -399,8 +399,7 @@ static const tsi_frame_protector_vtable frame_protector_vtable = {
399
399
  /* --- tsi_zero_copy_grpc_protector methods implementation. ---*/
400
400
 
401
401
  static tsi_result fake_zero_copy_grpc_protector_protect(
402
- grpc_exec_ctx* exec_ctx, tsi_zero_copy_grpc_protector* self,
403
- grpc_slice_buffer* unprotected_slices,
402
+ tsi_zero_copy_grpc_protector* self, grpc_slice_buffer* unprotected_slices,
404
403
  grpc_slice_buffer* protected_slices) {
405
404
  if (self == nullptr || unprotected_slices == nullptr ||
406
405
  protected_slices == nullptr) {
@@ -424,8 +423,7 @@ static tsi_result fake_zero_copy_grpc_protector_protect(
424
423
  }
425
424
 
426
425
  static tsi_result fake_zero_copy_grpc_protector_unprotect(
427
- grpc_exec_ctx* exec_ctx, tsi_zero_copy_grpc_protector* self,
428
- grpc_slice_buffer* protected_slices,
426
+ tsi_zero_copy_grpc_protector* self, grpc_slice_buffer* protected_slices,
429
427
  grpc_slice_buffer* unprotected_slices) {
430
428
  if (self == nullptr || unprotected_slices == nullptr ||
431
429
  protected_slices == nullptr) {
@@ -454,18 +452,18 @@ static tsi_result fake_zero_copy_grpc_protector_unprotect(
454
452
  impl->parsed_frame_size - TSI_FAKE_FRAME_HEADER_SIZE,
455
453
  unprotected_slices);
456
454
  impl->parsed_frame_size = 0;
457
- grpc_slice_buffer_reset_and_unref_internal(exec_ctx, &impl->header_sb);
455
+ grpc_slice_buffer_reset_and_unref_internal(&impl->header_sb);
458
456
  }
459
457
  return TSI_OK;
460
458
  }
461
459
 
462
460
  static void fake_zero_copy_grpc_protector_destroy(
463
- grpc_exec_ctx* exec_ctx, tsi_zero_copy_grpc_protector* self) {
461
+ tsi_zero_copy_grpc_protector* self) {
464
462
  if (self == nullptr) return;
465
463
  tsi_fake_zero_copy_grpc_protector* impl =
466
464
  (tsi_fake_zero_copy_grpc_protector*)self;
467
- grpc_slice_buffer_destroy_internal(exec_ctx, &impl->header_sb);
468
- grpc_slice_buffer_destroy_internal(exec_ctx, &impl->protected_sb);
465
+ grpc_slice_buffer_destroy_internal(&impl->header_sb);
466
+ grpc_slice_buffer_destroy_internal(&impl->protected_sb);
469
467
  gpr_free(impl);
470
468
  }
471
469
 
@@ -497,8 +495,7 @@ static tsi_result fake_handshaker_result_extract_peer(
497
495
  }
498
496
 
499
497
  static tsi_result fake_handshaker_result_create_zero_copy_grpc_protector(
500
- void* exec_ctx, const tsi_handshaker_result* self,
501
- size_t* max_output_protected_frame_size,
498
+ const tsi_handshaker_result* self, size_t* max_output_protected_frame_size,
502
499
  tsi_zero_copy_grpc_protector** protector) {
503
500
  *protector =
504
501
  tsi_create_fake_zero_copy_grpc_protector(max_output_protected_frame_size);
@@ -21,10 +21,6 @@
21
21
 
22
22
  #include "src/core/tsi/transport_security_interface.h"
23
23
 
24
- #ifdef __cplusplus
25
- extern "C" {
26
- #endif
27
-
28
24
  /* Value for the TSI_CERTIFICATE_TYPE_PEER_PROPERTY property for FAKE certs. */
29
25
  #define TSI_FAKE_CERTIFICATE_TYPE "FAKE"
30
26
 
@@ -44,8 +40,4 @@ tsi_frame_protector* tsi_create_fake_frame_protector(
44
40
  tsi_zero_copy_grpc_protector* tsi_create_fake_zero_copy_grpc_protector(
45
41
  size_t* max_protected_frame_size);
46
42
 
47
- #ifdef __cplusplus
48
- }
49
- #endif
50
-
51
43
  #endif /* GRPC_CORE_TSI_FAKE_TRANSPORT_SECURITY_H */
@@ -24,12 +24,12 @@ static gts_shared_resource g_gts_resource;
24
24
 
25
25
  gts_shared_resource* gts_get_shared_resource(void) { return &g_gts_resource; }
26
26
 
27
- extern "C" void grpc_tsi_gts_init() {
27
+ void grpc_tsi_gts_init() {
28
28
  memset(&g_gts_resource, 0, sizeof(gts_shared_resource));
29
29
  gpr_mu_init(&g_gts_resource.mu);
30
30
  }
31
31
 
32
- extern "C" void grpc_tsi_gts_shutdown() {
32
+ void grpc_tsi_gts_shutdown() {
33
33
  gpr_mu_destroy(&g_gts_resource.mu);
34
34
  if (g_gts_resource.cq == nullptr) {
35
35
  return;
@@ -23,10 +23,6 @@
23
23
  #include <grpc/support/sync.h>
24
24
  #include <grpc/support/thd.h>
25
25
 
26
- #ifdef __cplusplus
27
- extern "C" {
28
- #endif
29
-
30
26
  typedef struct gts_shared_resource {
31
27
  gpr_thd_id thread_id;
32
28
  grpc_channel* channel;
@@ -38,8 +34,4 @@ typedef struct gts_shared_resource {
38
34
  * TSI handshakes. */
39
35
  gts_shared_resource* gts_get_shared_resource(void);
40
36
 
41
- #ifdef __cplusplus
42
- }
43
- #endif
44
-
45
37
  #endif /* GRPC_CORE_TSI_GTS_TRANSPORT_SECURITY_H */
@@ -116,6 +116,9 @@ typedef struct {
116
116
 
117
117
  static gpr_once init_openssl_once = GPR_ONCE_INIT;
118
118
  static gpr_mu* openssl_mutexes = nullptr;
119
+ static void openssl_locking_cb(int mode, int type, const char* file,
120
+ int line) GRPC_UNUSED;
121
+ static unsigned long openssl_thread_id_cb(void) GRPC_UNUSED;
119
122
 
120
123
  static void openssl_locking_cb(int mode, int type, const char* file, int line) {
121
124
  if (mode & CRYPTO_LOCK) {
@@ -21,10 +21,6 @@
21
21
 
22
22
  #include "src/core/tsi/transport_security_interface.h"
23
23
 
24
- #ifdef __cplusplus
25
- extern "C" {
26
- #endif
27
-
28
24
  /* Value for the TSI_CERTIFICATE_TYPE_PEER_PROPERTY property for X509 certs. */
29
25
  #define TSI_X509_CERTIFICATE_TYPE "X509"
30
26
 
@@ -193,8 +189,4 @@ const tsi_ssl_handshaker_factory_vtable* tsi_ssl_handshaker_factory_swap_vtable(
193
189
  tsi_ssl_handshaker_factory* factory,
194
190
  tsi_ssl_handshaker_factory_vtable* new_vtable);
195
191
 
196
- #ifdef __cplusplus
197
- }
198
- #endif
199
-
200
192
  #endif /* GRPC_CORE_TSI_SSL_TRANSPORT_SECURITY_H */
@@ -19,10 +19,6 @@
19
19
  #ifndef GRPC_CORE_TSI_SSL_TYPES_H
20
20
  #define GRPC_CORE_TSI_SSL_TYPES_H
21
21
 
22
- #ifdef __cplusplus
23
- extern "C" {
24
- #endif
25
-
26
22
  /* A collection of macros to cast between various integer types that are
27
23
  * used differently between BoringSSL and OpenSSL:
28
24
  * TSI_INT_AS_SIZE(x): convert 'int x' to a length parameter for an OpenSSL
@@ -41,8 +37,4 @@ extern "C" {
41
37
  #define TSI_SIZE_AS_SIZE(x) ((int)(x))
42
38
  #endif
43
39
 
44
- #ifdef __cplusplus
45
- }
46
- #endif
47
-
48
40
  #endif /* GRPC_CORE_TSI_SSL_TYPES_H */
@@ -24,10 +24,6 @@
24
24
  #include "src/core/lib/debug/trace.h"
25
25
  #include "src/core/tsi/transport_security_interface.h"
26
26
 
27
- #ifdef __cplusplus
28
- extern "C" {
29
- #endif
30
-
31
27
  extern grpc_core::TraceFlag tsi_tracing_enabled;
32
28
 
33
29
  /* Base for tsi_frame_protector implementations.
@@ -94,7 +90,7 @@ struct tsi_handshaker {
94
90
  typedef struct {
95
91
  tsi_result (*extract_peer)(const tsi_handshaker_result* self, tsi_peer* peer);
96
92
  tsi_result (*create_zero_copy_grpc_protector)(
97
- void* exec_ctx, const tsi_handshaker_result* self,
93
+ const tsi_handshaker_result* self,
98
94
  size_t* max_output_protected_frame_size,
99
95
  tsi_zero_copy_grpc_protector** protector);
100
96
  tsi_result (*create_frame_protector)(const tsi_handshaker_result* self,
@@ -126,8 +122,4 @@ tsi_result tsi_construct_string_peer_property_from_cstring(
126
122
  /* Utils. */
127
123
  char* tsi_strdup(const char* src); /* Sadly, no strdup in C89. */
128
124
 
129
- #ifdef __cplusplus
130
- }
131
- #endif
132
-
133
125
  #endif /* GRPC_CORE_TSI_TRANSPORT_SECURITY_H */
@@ -21,10 +21,6 @@
21
21
 
22
22
  #include "src/core/tsi/transport_security_interface.h"
23
23
 
24
- #ifdef __cplusplus
25
- extern "C" {
26
- #endif
27
-
28
24
  /* Create a tsi handshaker that takes an implementation of old interface and
29
25
  converts into an implementation of new interface. In the old interface,
30
26
  there are get_bytes_to_send_to_peer, process_bytes_from_peer, get_result,
@@ -40,8 +36,4 @@ tsi_handshaker* tsi_create_adapter_handshaker(tsi_handshaker* wrapped);
40
36
  the caller. */
41
37
  tsi_handshaker* tsi_adapter_handshaker_get_wrapped(tsi_handshaker* adapter);
42
38
 
43
- #ifdef __cplusplus
44
- }
45
- #endif
46
-
47
39
  #endif /* GRPC_CORE_TSI_TRANSPORT_SECURITY_ADAPTER_H */
@@ -20,18 +20,16 @@
20
20
 
21
21
  /* This method creates a tsi_zero_copy_grpc_protector object. */
22
22
  tsi_result tsi_handshaker_result_create_zero_copy_grpc_protector(
23
- grpc_exec_ctx* exec_ctx, const tsi_handshaker_result* self,
24
- size_t* max_output_protected_frame_size,
23
+ const tsi_handshaker_result* self, size_t* max_output_protected_frame_size,
25
24
  tsi_zero_copy_grpc_protector** protector) {
26
- if (exec_ctx == nullptr || self == nullptr || self->vtable == nullptr ||
27
- protector == nullptr) {
25
+ if (self == nullptr || self->vtable == nullptr || protector == nullptr) {
28
26
  return TSI_INVALID_ARGUMENT;
29
27
  }
30
28
  if (self->vtable->create_zero_copy_grpc_protector == nullptr) {
31
29
  return TSI_UNIMPLEMENTED;
32
30
  }
33
31
  return self->vtable->create_zero_copy_grpc_protector(
34
- exec_ctx, self, max_output_protected_frame_size, protector);
32
+ self, max_output_protected_frame_size, protector);
35
33
  }
36
34
 
37
35
  /* --- tsi_zero_copy_grpc_protector common implementation. ---
@@ -39,33 +37,28 @@ tsi_result tsi_handshaker_result_create_zero_copy_grpc_protector(
39
37
  Calls specific implementation after state/input validation. */
40
38
 
41
39
  tsi_result tsi_zero_copy_grpc_protector_protect(
42
- grpc_exec_ctx* exec_ctx, tsi_zero_copy_grpc_protector* self,
43
- grpc_slice_buffer* unprotected_slices,
40
+ tsi_zero_copy_grpc_protector* self, grpc_slice_buffer* unprotected_slices,
44
41
  grpc_slice_buffer* protected_slices) {
45
- if (exec_ctx == nullptr || self == nullptr || self->vtable == nullptr ||
42
+ if (self == nullptr || self->vtable == nullptr ||
46
43
  unprotected_slices == nullptr || protected_slices == nullptr) {
47
44
  return TSI_INVALID_ARGUMENT;
48
45
  }
49
46
  if (self->vtable->protect == nullptr) return TSI_UNIMPLEMENTED;
50
- return self->vtable->protect(exec_ctx, self, unprotected_slices,
51
- protected_slices);
47
+ return self->vtable->protect(self, unprotected_slices, protected_slices);
52
48
  }
53
49
 
54
50
  tsi_result tsi_zero_copy_grpc_protector_unprotect(
55
- grpc_exec_ctx* exec_ctx, tsi_zero_copy_grpc_protector* self,
56
- grpc_slice_buffer* protected_slices,
51
+ tsi_zero_copy_grpc_protector* self, grpc_slice_buffer* protected_slices,
57
52
  grpc_slice_buffer* unprotected_slices) {
58
- if (exec_ctx == nullptr || self == nullptr || self->vtable == nullptr ||
53
+ if (self == nullptr || self->vtable == nullptr ||
59
54
  protected_slices == nullptr || unprotected_slices == nullptr) {
60
55
  return TSI_INVALID_ARGUMENT;
61
56
  }
62
57
  if (self->vtable->unprotect == nullptr) return TSI_UNIMPLEMENTED;
63
- return self->vtable->unprotect(exec_ctx, self, protected_slices,
64
- unprotected_slices);
58
+ return self->vtable->unprotect(self, protected_slices, unprotected_slices);
65
59
  }
66
60
 
67
- void tsi_zero_copy_grpc_protector_destroy(grpc_exec_ctx* exec_ctx,
68
- tsi_zero_copy_grpc_protector* self) {
61
+ void tsi_zero_copy_grpc_protector_destroy(tsi_zero_copy_grpc_protector* self) {
69
62
  if (self == nullptr) return;
70
- self->vtable->destroy(exec_ctx, self);
63
+ self->vtable->destroy(self);
71
64
  }
@@ -22,16 +22,11 @@
22
22
  #include <grpc/slice_buffer.h>
23
23
  #include "src/core/tsi/transport_security.h"
24
24
 
25
- #ifdef __cplusplus
26
- extern "C" {
27
- #endif
28
-
29
25
  /* This method creates a tsi_zero_copy_grpc_protector object. It return TSI_OK
30
26
  assuming there is no fatal error.
31
27
  The caller is responsible for destroying the protector. */
32
28
  tsi_result tsi_handshaker_result_create_zero_copy_grpc_protector(
33
- grpc_exec_ctx* exec_ctx, const tsi_handshaker_result* self,
34
- size_t* max_output_protected_frame_size,
29
+ const tsi_handshaker_result* self, size_t* max_output_protected_frame_size,
35
30
  tsi_zero_copy_grpc_protector** protector);
36
31
 
37
32
  /* -- tsi_zero_copy_grpc_protector object -- */
@@ -43,8 +38,8 @@ tsi_result tsi_handshaker_result_create_zero_copy_grpc_protector(
43
38
  - This method returns TSI_OK in case of success or a specific error code in
44
39
  case of failure. */
45
40
  tsi_result tsi_zero_copy_grpc_protector_protect(
46
- grpc_exec_ctx* exec_ctx, tsi_zero_copy_grpc_protector* self,
47
- grpc_slice_buffer* unprotected_slices, grpc_slice_buffer* protected_slices);
41
+ tsi_zero_copy_grpc_protector* self, grpc_slice_buffer* unprotected_slices,
42
+ grpc_slice_buffer* protected_slices);
48
43
 
49
44
  /* Outputs unprotected bytes.
50
45
  - protected_slices is the bytes of protected frames.
@@ -53,32 +48,25 @@ tsi_result tsi_zero_copy_grpc_protector_protect(
53
48
  there is not enough data to output in which case unprotected_slices has 0
54
49
  bytes. */
55
50
  tsi_result tsi_zero_copy_grpc_protector_unprotect(
56
- grpc_exec_ctx* exec_ctx, tsi_zero_copy_grpc_protector* self,
57
- grpc_slice_buffer* protected_slices, grpc_slice_buffer* unprotected_slices);
51
+ tsi_zero_copy_grpc_protector* self, grpc_slice_buffer* protected_slices,
52
+ grpc_slice_buffer* unprotected_slices);
58
53
 
59
54
  /* Destroys the tsi_zero_copy_grpc_protector object. */
60
- void tsi_zero_copy_grpc_protector_destroy(grpc_exec_ctx* exec_ctx,
61
- tsi_zero_copy_grpc_protector* self);
55
+ void tsi_zero_copy_grpc_protector_destroy(tsi_zero_copy_grpc_protector* self);
62
56
 
63
57
  /* Base for tsi_zero_copy_grpc_protector implementations. */
64
58
  typedef struct {
65
- tsi_result (*protect)(grpc_exec_ctx* exec_ctx,
66
- tsi_zero_copy_grpc_protector* self,
59
+ tsi_result (*protect)(tsi_zero_copy_grpc_protector* self,
67
60
  grpc_slice_buffer* unprotected_slices,
68
61
  grpc_slice_buffer* protected_slices);
69
- tsi_result (*unprotect)(grpc_exec_ctx* exec_ctx,
70
- tsi_zero_copy_grpc_protector* self,
62
+ tsi_result (*unprotect)(tsi_zero_copy_grpc_protector* self,
71
63
  grpc_slice_buffer* protected_slices,
72
64
  grpc_slice_buffer* unprotected_slices);
73
- void (*destroy)(grpc_exec_ctx* exec_ctx, tsi_zero_copy_grpc_protector* self);
65
+ void (*destroy)(tsi_zero_copy_grpc_protector* self);
74
66
  } tsi_zero_copy_grpc_protector_vtable;
75
67
 
76
68
  struct tsi_zero_copy_grpc_protector {
77
69
  const tsi_zero_copy_grpc_protector_vtable* vtable;
78
70
  };
79
71
 
80
- #ifdef __cplusplus
81
- }
82
- #endif
83
-
84
72
  #endif /* GRPC_CORE_TSI_TRANSPORT_SECURITY_GRPC_H */