grpc 1.51.0 → 1.52.0.pre2

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 (886) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +91 -23
  3. data/include/grpc/byte_buffer.h +76 -1
  4. data/include/grpc/byte_buffer_reader.h +19 -1
  5. data/include/grpc/compression.h +2 -2
  6. data/include/grpc/event_engine/event_engine.h +17 -3
  7. data/include/grpc/event_engine/internal/memory_allocator_impl.h +1 -1
  8. data/include/grpc/event_engine/internal/slice_cast.h +67 -0
  9. data/include/grpc/event_engine/memory_allocator.h +1 -1
  10. data/include/grpc/event_engine/slice.h +24 -4
  11. data/include/grpc/event_engine/slice_buffer.h +14 -2
  12. data/include/grpc/fork.h +25 -1
  13. data/include/grpc/grpc.h +3 -3
  14. data/include/grpc/grpc_posix.h +1 -1
  15. data/include/grpc/impl/codegen/atm.h +3 -71
  16. data/include/grpc/impl/codegen/atm_gcc_atomic.h +3 -58
  17. data/include/grpc/impl/codegen/atm_gcc_sync.h +3 -59
  18. data/include/grpc/impl/codegen/atm_windows.h +3 -106
  19. data/include/grpc/impl/codegen/byte_buffer.h +4 -78
  20. data/include/grpc/impl/codegen/byte_buffer_reader.h +4 -19
  21. data/include/grpc/impl/codegen/compression_types.h +3 -82
  22. data/include/grpc/impl/codegen/connectivity_state.h +3 -20
  23. data/include/grpc/impl/codegen/fork.h +4 -25
  24. data/include/grpc/impl/codegen/gpr_types.h +2 -34
  25. data/include/grpc/impl/codegen/grpc_types.h +3 -787
  26. data/include/grpc/impl/codegen/log.h +3 -86
  27. data/include/grpc/impl/codegen/port_platform.h +3 -755
  28. data/include/grpc/impl/codegen/propagation_bits.h +3 -28
  29. data/include/grpc/impl/codegen/slice.h +3 -106
  30. data/include/grpc/impl/codegen/status.h +4 -131
  31. data/include/grpc/impl/codegen/sync.h +3 -42
  32. data/include/grpc/impl/codegen/sync_abseil.h +3 -12
  33. data/include/grpc/impl/codegen/sync_custom.h +3 -14
  34. data/include/grpc/impl/codegen/sync_generic.h +3 -25
  35. data/include/grpc/impl/codegen/sync_posix.h +3 -28
  36. data/include/grpc/impl/codegen/sync_windows.h +3 -16
  37. data/include/grpc/impl/compression_types.h +109 -0
  38. data/include/grpc/impl/connectivity_state.h +47 -0
  39. data/include/grpc/impl/grpc_types.h +824 -0
  40. data/include/grpc/impl/propagation_bits.h +54 -0
  41. data/include/grpc/impl/slice_type.h +112 -0
  42. data/include/grpc/load_reporting.h +1 -1
  43. data/include/grpc/module.modulemap +5 -1
  44. data/include/grpc/slice.h +1 -1
  45. data/include/grpc/status.h +131 -1
  46. data/include/grpc/support/atm.h +70 -1
  47. data/include/grpc/support/atm_gcc_atomic.h +59 -1
  48. data/include/grpc/support/atm_gcc_sync.h +58 -1
  49. data/include/grpc/support/atm_windows.h +105 -1
  50. data/include/grpc/support/log.h +87 -1
  51. data/include/grpc/support/log_windows.h +1 -1
  52. data/include/grpc/support/port_platform.h +767 -1
  53. data/include/grpc/support/string_util.h +1 -1
  54. data/include/grpc/support/sync.h +35 -2
  55. data/include/grpc/support/sync_abseil.h +11 -1
  56. data/include/grpc/support/sync_custom.h +13 -1
  57. data/include/grpc/support/sync_generic.h +24 -1
  58. data/include/grpc/support/sync_posix.h +27 -1
  59. data/include/grpc/support/sync_windows.h +15 -1
  60. data/include/grpc/support/time.h +25 -2
  61. data/src/core/ext/filters/census/grpc_context.cc +17 -18
  62. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +9 -9
  63. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +1 -1
  64. data/src/core/ext/filters/channel_idle/idle_filter_state.h +1 -1
  65. data/src/core/ext/filters/client_channel/backend_metric.cc +2 -0
  66. data/src/core/ext/filters/client_channel/backup_poller.cc +21 -21
  67. data/src/core/ext/filters/client_channel/backup_poller.h +21 -21
  68. data/src/core/ext/filters/client_channel/channel_connectivity.cc +45 -24
  69. data/src/core/ext/filters/client_channel/client_channel.cc +40 -31
  70. data/src/core/ext/filters/client_channel/client_channel.h +7 -6
  71. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +17 -17
  72. data/src/core/ext/filters/client_channel/client_channel_channelz.h +19 -19
  73. data/src/core/ext/filters/client_channel/client_channel_factory.cc +17 -17
  74. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +17 -17
  75. data/src/core/ext/filters/client_channel/config_selector.h +16 -20
  76. data/src/core/ext/filters/client_channel/dynamic_filters.cc +8 -8
  77. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +18 -18
  78. data/src/core/ext/filters/client_channel/health/health_check_client.cc +1 -1
  79. data/src/core/ext/filters/client_channel/http_proxy.cc +39 -39
  80. data/src/core/ext/filters/client_channel/http_proxy.h +18 -18
  81. data/src/core/ext/filters/client_channel/lb_call_state_internal.h +39 -0
  82. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +17 -17
  83. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +2 -2
  84. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +1 -2
  85. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +58 -130
  86. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +37 -21
  87. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +102 -116
  88. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +24 -25
  89. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +2 -4
  90. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +17 -17
  91. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +18 -19
  92. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +18 -19
  93. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +18 -19
  94. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +5 -5
  95. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +173 -196
  96. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +10 -19
  97. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +66 -97
  98. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +14 -13
  99. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +1 -1
  100. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +98 -84
  101. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +10 -8
  102. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +30 -16
  103. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +21 -35
  104. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +45 -39
  105. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +11 -23
  106. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +16 -49
  107. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +31 -21
  108. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +651 -0
  109. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +60 -0
  110. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +4 -4
  111. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +18 -18
  112. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +0 -1
  113. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +3 -3
  114. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +40 -41
  115. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +21 -21
  116. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +60 -59
  117. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +67 -66
  118. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +50 -51
  119. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +18 -18
  120. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +18 -18
  121. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +18 -19
  122. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +1 -1
  123. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +1 -1
  124. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +0 -1
  125. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +44 -33
  126. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +8 -10
  127. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +59 -73
  128. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +1 -1
  129. data/src/core/ext/filters/client_channel/retry_filter.cc +1 -1
  130. data/src/core/ext/filters/client_channel/retry_service_config.cc +1 -1
  131. data/src/core/ext/filters/client_channel/retry_throttle.cc +19 -21
  132. data/src/core/ext/filters/client_channel/retry_throttle.h +18 -18
  133. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +1 -1
  134. data/src/core/ext/filters/client_channel/subchannel.cc +139 -155
  135. data/src/core/ext/filters/client_channel/subchannel.h +15 -38
  136. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +18 -18
  137. data/src/core/ext/filters/deadline/deadline_filter.cc +21 -3
  138. data/src/core/ext/filters/deadline/deadline_filter.h +1 -1
  139. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +2 -1
  140. data/src/core/ext/filters/http/client/http_client_filter.cc +20 -21
  141. data/src/core/ext/filters/http/client/http_client_filter.h +17 -17
  142. data/src/core/ext/filters/http/client_authority_filter.cc +18 -18
  143. data/src/core/ext/filters/http/client_authority_filter.h +18 -18
  144. data/src/core/ext/filters/http/http_filters_plugin.cc +35 -51
  145. data/src/core/ext/filters/http/message_compress/compression_filter.cc +315 -0
  146. data/src/core/ext/filters/http/message_compress/compression_filter.h +132 -0
  147. data/src/core/ext/filters/http/server/http_server_filter.cc +18 -18
  148. data/src/core/ext/filters/http/server/http_server_filter.h +18 -18
  149. data/src/core/ext/filters/message_size/message_size_filter.cc +6 -6
  150. data/src/core/ext/filters/message_size/message_size_filter.h +1 -1
  151. data/src/core/ext/filters/server_config_selector/server_config_selector.h +6 -8
  152. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +3 -4
  153. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +229 -0
  154. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +66 -0
  155. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +82 -0
  156. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +93 -0
  157. data/src/core/ext/transport/chttp2/alpn/alpn.cc +18 -18
  158. data/src/core/ext/transport/chttp2/alpn/alpn.h +22 -22
  159. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +54 -44
  160. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +28 -22
  161. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +24 -25
  162. data/src/core/ext/transport/chttp2/server/chttp2_server.h +18 -18
  163. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +17 -17
  164. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +30 -30
  165. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +29 -29
  166. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +27 -27
  167. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +66 -35
  168. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +18 -19
  169. data/src/core/ext/transport/chttp2/transport/context_list.cc +19 -19
  170. data/src/core/ext/transport/chttp2/transport/context_list.h +25 -25
  171. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +0 -36
  172. data/src/core/ext/transport/chttp2/transport/decode_huff.h +35 -82
  173. data/src/core/ext/transport/chttp2/transport/flow_control.cc +75 -38
  174. data/src/core/ext/transport/chttp2/transport/flow_control.h +56 -31
  175. data/src/core/ext/transport/chttp2/transport/frame.h +19 -19
  176. data/src/core/ext/transport/chttp2/transport/frame_data.cc +17 -17
  177. data/src/core/ext/transport/chttp2/transport/frame_data.h +22 -22
  178. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +23 -23
  179. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +18 -18
  180. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +21 -21
  181. data/src/core/ext/transport/chttp2/transport/frame_ping.h +19 -19
  182. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +18 -18
  183. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +18 -18
  184. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +19 -19
  185. data/src/core/ext/transport/chttp2/transport/frame_settings.h +20 -20
  186. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +17 -17
  187. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +18 -18
  188. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +129 -176
  189. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +39 -58
  190. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +69 -111
  191. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +20 -20
  192. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +19 -20
  193. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +18 -18
  194. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +21 -19
  195. data/src/core/ext/transport/chttp2/transport/http2_settings.h +36 -34
  196. data/src/core/ext/transport/chttp2/transport/http_trace.cc +19 -0
  197. data/src/core/ext/transport/chttp2/transport/http_trace.h +24 -0
  198. data/src/core/ext/transport/chttp2/transport/huffsyms.cc +20 -20
  199. data/src/core/ext/transport/chttp2/transport/huffsyms.h +19 -19
  200. data/src/core/ext/transport/chttp2/transport/internal.h +170 -163
  201. data/src/core/ext/transport/chttp2/transport/parsing.cc +96 -28
  202. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +19 -19
  203. data/src/core/ext/transport/chttp2/transport/stream_map.cc +23 -23
  204. data/src/core/ext/transport/chttp2/transport/stream_map.h +31 -31
  205. data/src/core/ext/transport/chttp2/transport/varint.cc +17 -17
  206. data/src/core/ext/transport/chttp2/transport/varint.h +24 -24
  207. data/src/core/ext/transport/chttp2/transport/writing.cc +45 -41
  208. data/src/core/ext/transport/inproc/inproc_plugin.cc +17 -17
  209. data/src/core/ext/transport/inproc/inproc_transport.cc +25 -25
  210. data/src/core/ext/transport/inproc/inproc_transport.h +19 -19
  211. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +62 -0
  212. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +179 -0
  213. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +46 -0
  214. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +98 -0
  215. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +47 -0
  216. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +107 -0
  217. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +3 -2
  218. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +9 -0
  219. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +0 -1
  220. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +46 -0
  221. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +98 -0
  222. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +62 -0
  223. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +174 -0
  224. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +36 -0
  225. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +74 -0
  226. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +65 -0
  227. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +191 -0
  228. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +127 -0
  229. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +474 -0
  230. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +67 -0
  231. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +214 -0
  232. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +64 -0
  233. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +208 -0
  234. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +0 -1
  235. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +60 -0
  236. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +40 -0
  237. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +50 -0
  238. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +35 -0
  239. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +45 -0
  240. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +35 -0
  241. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +43 -0
  242. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +35 -0
  243. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +51 -0
  244. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +40 -0
  245. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +36 -0
  246. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +35 -0
  247. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +55 -0
  248. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +40 -0
  249. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +9 -9
  250. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +71 -0
  251. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +60 -0
  252. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +60 -0
  253. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +40 -0
  254. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +36 -0
  255. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +45 -0
  256. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +4 -7
  257. data/src/core/ext/xds/xds_api.cc +5 -27
  258. data/src/core/ext/xds/xds_api.h +2 -1
  259. data/src/core/ext/xds/xds_certificate_provider.h +1 -1
  260. data/src/core/ext/xds/xds_channel_args.h +1 -1
  261. data/src/core/ext/xds/xds_channel_stack_modifier.h +2 -2
  262. data/src/core/ext/xds/xds_client.cc +14 -6
  263. data/src/core/ext/xds/xds_client.h +6 -3
  264. data/src/core/ext/xds/xds_client_grpc.cc +26 -0
  265. data/src/core/ext/xds/xds_client_grpc.h +1 -1
  266. data/src/core/ext/xds/xds_client_stats.cc +17 -17
  267. data/src/core/ext/xds/xds_client_stats.h +18 -18
  268. data/src/core/ext/xds/xds_cluster.cc +94 -46
  269. data/src/core/ext/xds/xds_cluster.h +44 -23
  270. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +30 -50
  271. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +14 -9
  272. data/src/core/ext/xds/xds_common_types.cc +4 -3
  273. data/src/core/ext/xds/xds_endpoint.cc +8 -2
  274. data/src/core/ext/xds/xds_health_status.cc +80 -0
  275. data/src/core/ext/xds/xds_health_status.h +82 -0
  276. data/src/core/ext/xds/xds_http_fault_filter.cc +7 -6
  277. data/src/core/ext/xds/xds_http_fault_filter.h +3 -3
  278. data/src/core/ext/xds/xds_http_filters.cc +11 -6
  279. data/src/core/ext/xds/xds_http_filters.h +5 -5
  280. data/src/core/ext/xds/xds_http_rbac_filter.cc +7 -6
  281. data/src/core/ext/xds/xds_http_rbac_filter.h +3 -3
  282. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +218 -0
  283. data/src/core/ext/xds/xds_http_stateful_session_filter.h +58 -0
  284. data/src/core/ext/xds/xds_lb_policy_registry.cc +0 -4
  285. data/src/core/ext/xds/xds_listener.cc +14 -28
  286. data/src/core/ext/xds/xds_listener.h +2 -0
  287. data/src/core/ext/xds/xds_resource_type_impl.h +8 -6
  288. data/src/core/ext/xds/xds_route_config.cc +501 -529
  289. data/src/core/ext/xds/xds_route_config.h +29 -18
  290. data/src/core/ext/xds/xds_server_config_fetcher.cc +12 -24
  291. data/src/core/ext/xds/xds_transport_grpc.cc +2 -2
  292. data/src/core/ext/xds/xds_transport_grpc.h +1 -1
  293. data/src/core/lib/address_utils/parse_address.cc +19 -19
  294. data/src/core/lib/address_utils/parse_address.h +32 -32
  295. data/src/core/lib/address_utils/sockaddr_utils.cc +29 -28
  296. data/src/core/lib/address_utils/sockaddr_utils.h +33 -33
  297. data/src/core/lib/avl/avl.h +4 -4
  298. data/src/core/lib/backoff/backoff.cc +17 -17
  299. data/src/core/lib/backoff/backoff.h +18 -18
  300. data/src/core/lib/channel/call_tracer.h +10 -1
  301. data/src/core/lib/channel/channel_args.cc +19 -20
  302. data/src/core/lib/channel/channel_args.h +43 -42
  303. data/src/core/lib/channel/channel_args_preconditioning.h +1 -1
  304. data/src/core/lib/channel/channel_stack.cc +39 -38
  305. data/src/core/lib/channel/channel_stack.h +127 -127
  306. data/src/core/lib/channel/channel_stack_builder.cc +17 -17
  307. data/src/core/lib/channel/channel_stack_builder_impl.cc +18 -18
  308. data/src/core/lib/channel/channel_trace.cc +17 -17
  309. data/src/core/lib/channel/channel_trace.h +19 -19
  310. data/src/core/lib/channel/channelz.cc +17 -18
  311. data/src/core/lib/channel/channelz.h +26 -26
  312. data/src/core/lib/channel/channelz_registry.cc +17 -17
  313. data/src/core/lib/channel/channelz_registry.h +18 -18
  314. data/src/core/lib/channel/connected_channel.cc +43 -34
  315. data/src/core/lib/channel/connected_channel.h +18 -18
  316. data/src/core/lib/channel/context.h +18 -18
  317. data/src/core/lib/channel/promise_based_filter.cc +191 -68
  318. data/src/core/lib/channel/promise_based_filter.h +10 -1
  319. data/src/core/lib/channel/status_util.cc +35 -17
  320. data/src/core/lib/channel/status_util.h +26 -19
  321. data/src/core/lib/compression/compression.cc +19 -19
  322. data/src/core/lib/compression/compression_internal.cc +41 -48
  323. data/src/core/lib/compression/compression_internal.h +22 -22
  324. data/src/core/lib/compression/message_compress.cc +21 -21
  325. data/src/core/lib/compression/message_compress.h +25 -25
  326. data/src/core/lib/config/core_configuration.h +1 -1
  327. data/src/core/lib/debug/stats.cc +17 -17
  328. data/src/core/lib/debug/stats.h +17 -17
  329. data/src/core/lib/debug/trace.cc +18 -18
  330. data/src/core/lib/debug/trace.h +19 -19
  331. data/src/core/lib/event_engine/executor/executor.h +1 -1
  332. data/src/core/lib/event_engine/forkable.h +1 -1
  333. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +27 -31
  334. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +2 -2
  335. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +36 -37
  336. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +3 -3
  337. data/src/core/lib/event_engine/posix_engine/event_poller.h +3 -3
  338. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +2 -2
  339. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +2 -2
  340. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +2 -2
  341. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +46 -46
  342. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +10 -12
  343. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +2 -2
  344. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +79 -41
  345. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +11 -9
  346. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +33 -40
  347. data/src/core/lib/event_engine/posix_engine/posix_engine.h +14 -14
  348. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +2 -2
  349. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +236 -0
  350. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +228 -0
  351. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +380 -0
  352. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +91 -0
  353. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +55 -283
  354. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +4 -49
  355. data/src/core/lib/event_engine/posix_engine/timer.cc +49 -49
  356. data/src/core/lib/event_engine/posix_engine/timer.h +87 -87
  357. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +27 -27
  358. data/src/core/lib/event_engine/posix_engine/timer_heap.h +21 -21
  359. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +19 -20
  360. data/src/core/lib/event_engine/posix_engine/timer_manager.h +20 -20
  361. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +39 -8
  362. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +46 -40
  363. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +8 -7
  364. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +2 -2
  365. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +6 -7
  366. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +2 -2
  367. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +28 -28
  368. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +4 -4
  369. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +3 -3
  370. data/src/core/lib/event_engine/socket_notifier.h +1 -1
  371. data/src/core/lib/event_engine/tcp_socket_utils.cc +373 -0
  372. data/src/core/lib/event_engine/tcp_socket_utils.h +85 -0
  373. data/src/core/lib/event_engine/thread_pool.cc +19 -18
  374. data/src/core/lib/event_engine/thread_pool.h +17 -17
  375. data/src/core/lib/event_engine/time_util.h +1 -1
  376. data/src/core/lib/event_engine/windows/iocp.cc +13 -12
  377. data/src/core/lib/event_engine/windows/iocp.h +1 -1
  378. data/src/core/lib/event_engine/windows/win_socket.cc +2 -2
  379. data/src/core/lib/event_engine/windows/windows_engine.cc +8 -8
  380. data/src/core/lib/event_engine/windows/windows_engine.h +1 -1
  381. data/src/core/lib/experiments/experiments.cc +5 -16
  382. data/src/core/lib/experiments/experiments.h +7 -12
  383. data/src/core/lib/gpr/alloc.cc +19 -17
  384. data/src/core/lib/gpr/alloc.h +18 -18
  385. data/src/core/lib/gpr/atm.cc +17 -17
  386. data/src/core/lib/gpr/cpu_iphone.cc +24 -24
  387. data/src/core/lib/gpr/cpu_linux.cc +22 -21
  388. data/src/core/lib/gpr/cpu_posix.cc +23 -22
  389. data/src/core/lib/gpr/cpu_windows.cc +20 -18
  390. data/src/core/lib/gpr/log.cc +27 -19
  391. data/src/core/lib/gpr/log_android.cc +22 -20
  392. data/src/core/lib/gpr/log_linux.cc +21 -20
  393. data/src/core/lib/gpr/log_posix.cc +20 -19
  394. data/src/core/lib/gpr/log_windows.cc +25 -24
  395. data/src/core/lib/gpr/spinlock.h +18 -18
  396. data/src/core/lib/gpr/string.cc +25 -24
  397. data/src/core/lib/gpr/string.h +57 -57
  398. data/src/core/lib/gpr/string_posix.cc +24 -24
  399. data/src/core/lib/gpr/string_util_windows.cc +22 -22
  400. data/src/core/lib/gpr/string_windows.cc +24 -24
  401. data/src/core/lib/gpr/sync.cc +25 -25
  402. data/src/core/lib/gpr/sync_abseil.cc +22 -20
  403. data/src/core/lib/gpr/sync_posix.cc +23 -21
  404. data/src/core/lib/gpr/sync_windows.cc +29 -27
  405. data/src/core/lib/gpr/time.cc +23 -21
  406. data/src/core/lib/gpr/time_posix.cc +35 -30
  407. data/src/core/lib/gpr/time_precise.cc +22 -22
  408. data/src/core/lib/gpr/time_precise.h +18 -19
  409. data/src/core/lib/gpr/time_windows.cc +25 -22
  410. data/src/core/lib/gpr/tmpfile.h +22 -22
  411. data/src/core/lib/gpr/tmpfile_msys.cc +21 -20
  412. data/src/core/lib/gpr/tmpfile_posix.cc +19 -18
  413. data/src/core/lib/gpr/tmpfile_windows.cc +23 -22
  414. data/src/core/lib/gpr/useful.h +40 -27
  415. data/src/core/lib/gpr/wrap_memcpy.cc +23 -23
  416. data/src/core/lib/gprpp/atomic_utils.h +18 -18
  417. data/src/core/lib/gprpp/bitset.h +24 -0
  418. data/src/core/{ext/filters/http/message_compress/message_decompress_filter.h → lib/gprpp/crash.cc} +15 -14
  419. data/src/core/lib/gprpp/crash.h +34 -0
  420. data/src/core/lib/gprpp/debug_location.h +18 -18
  421. data/src/core/lib/gprpp/dual_ref_counted.h +1 -1
  422. data/src/core/lib/gprpp/env.h +20 -20
  423. data/src/core/lib/gprpp/env_linux.cc +21 -21
  424. data/src/core/lib/gprpp/env_posix.cc +18 -18
  425. data/src/core/lib/gprpp/env_windows.cc +18 -18
  426. data/src/core/lib/gprpp/examine_stack.cc +17 -17
  427. data/src/core/lib/gprpp/examine_stack.h +18 -18
  428. data/src/core/lib/gprpp/fork.cc +21 -22
  429. data/src/core/lib/gprpp/fork.h +22 -22
  430. data/src/core/lib/gprpp/global_config.h +18 -18
  431. data/src/core/lib/gprpp/global_config_custom.h +18 -18
  432. data/src/core/lib/gprpp/global_config_env.cc +17 -17
  433. data/src/core/lib/gprpp/global_config_env.h +23 -23
  434. data/src/core/lib/gprpp/global_config_generic.h +18 -18
  435. data/src/core/lib/gprpp/host_port.cc +26 -26
  436. data/src/core/lib/gprpp/host_port.h +29 -28
  437. data/src/core/lib/gprpp/manual_constructor.h +18 -17
  438. data/src/core/lib/gprpp/memory.h +18 -18
  439. data/src/core/lib/gprpp/mpscq.cc +17 -17
  440. data/src/core/lib/gprpp/mpscq.h +18 -18
  441. data/src/core/lib/gprpp/no_destruct.h +1 -0
  442. data/src/core/lib/gprpp/orphanable.h +18 -18
  443. data/src/core/lib/gprpp/ref_counted.h +18 -18
  444. data/src/core/lib/gprpp/ref_counted_ptr.h +19 -18
  445. data/src/core/lib/gprpp/stat_windows.cc +1 -0
  446. data/src/core/lib/gprpp/status_helper.cc +4 -3
  447. data/src/core/lib/gprpp/sync.h +20 -20
  448. data/src/core/lib/gprpp/table.h +1 -0
  449. data/src/core/lib/gprpp/thd.h +19 -19
  450. data/src/core/lib/gprpp/thd_posix.cc +30 -31
  451. data/src/core/lib/gprpp/thd_windows.cc +25 -24
  452. data/src/core/lib/gprpp/time.cc +13 -7
  453. data/src/core/lib/gprpp/time.h +0 -1
  454. data/src/core/lib/gprpp/time_averaged_stats.cc +20 -20
  455. data/src/core/lib/gprpp/time_averaged_stats.h +48 -48
  456. data/src/core/lib/gprpp/time_util.h +1 -1
  457. data/src/core/lib/gprpp/unique_type_name.h +18 -18
  458. data/src/core/lib/handshaker/proxy_mapper.h +18 -18
  459. data/src/core/lib/handshaker/proxy_mapper_registry.cc +17 -17
  460. data/src/core/lib/handshaker/proxy_mapper_registry.h +18 -18
  461. data/src/core/lib/http/format_request.cc +18 -18
  462. data/src/core/lib/http/format_request.h +18 -18
  463. data/src/core/lib/http/httpcli.cc +17 -17
  464. data/src/core/lib/http/httpcli.h +20 -21
  465. data/src/core/lib/http/httpcli_security_connector.cc +18 -19
  466. data/src/core/lib/http/parser.cc +22 -22
  467. data/src/core/lib/http/parser.h +32 -32
  468. data/src/core/lib/iomgr/block_annotate.h +21 -21
  469. data/src/core/lib/iomgr/buffer_list.cc +52 -21
  470. data/src/core/lib/iomgr/buffer_list.h +63 -57
  471. data/src/core/lib/iomgr/call_combiner.cc +18 -17
  472. data/src/core/lib/iomgr/call_combiner.h +18 -18
  473. data/src/core/lib/iomgr/cfstream_handle.cc +20 -20
  474. data/src/core/lib/iomgr/cfstream_handle.h +22 -22
  475. data/src/core/lib/iomgr/closure.h +42 -41
  476. data/src/core/lib/iomgr/combiner.cc +18 -17
  477. data/src/core/lib/iomgr/combiner.h +18 -18
  478. data/src/core/lib/iomgr/dualstack_socket_posix.cc +21 -21
  479. data/src/core/lib/iomgr/dynamic_annotations.h +20 -20
  480. data/src/core/lib/iomgr/endpoint.cc +17 -17
  481. data/src/core/lib/iomgr/endpoint.h +46 -46
  482. data/src/core/lib/iomgr/endpoint_cfstream.cc +18 -18
  483. data/src/core/lib/iomgr/endpoint_cfstream.h +27 -27
  484. data/src/core/lib/iomgr/endpoint_pair.h +18 -18
  485. data/src/core/lib/iomgr/endpoint_pair_posix.cc +18 -17
  486. data/src/core/lib/iomgr/endpoint_pair_windows.cc +18 -17
  487. data/src/core/lib/iomgr/error.cc +22 -19
  488. data/src/core/lib/iomgr/error.h +20 -21
  489. data/src/core/lib/iomgr/error_cfstream.cc +18 -18
  490. data/src/core/lib/iomgr/error_cfstream.h +19 -19
  491. data/src/core/lib/iomgr/ev_apple.cc +17 -17
  492. data/src/core/lib/iomgr/ev_apple.h +17 -17
  493. data/src/core/lib/iomgr/ev_epoll1_linux.cc +182 -170
  494. data/src/core/lib/iomgr/ev_epoll1_linux.h +18 -18
  495. data/src/core/lib/iomgr/ev_poll_posix.cc +185 -174
  496. data/src/core/lib/iomgr/ev_poll_posix.h +18 -18
  497. data/src/core/lib/iomgr/ev_posix.cc +36 -28
  498. data/src/core/lib/iomgr/ev_posix.h +85 -81
  499. data/src/core/lib/iomgr/ev_windows.cc +18 -18
  500. data/src/core/lib/iomgr/exec_ctx.cc +31 -30
  501. data/src/core/lib/iomgr/exec_ctx.h +139 -138
  502. data/src/core/lib/iomgr/executor.cc +20 -19
  503. data/src/core/lib/iomgr/executor.h +24 -24
  504. data/src/core/lib/iomgr/fork_posix.cc +24 -22
  505. data/src/core/lib/iomgr/fork_windows.cc +21 -21
  506. data/src/core/lib/iomgr/gethostname.h +18 -18
  507. data/src/core/lib/iomgr/gethostname_fallback.cc +17 -17
  508. data/src/core/lib/iomgr/gethostname_host_name_max.cc +17 -17
  509. data/src/core/lib/iomgr/gethostname_sysconf.cc +17 -17
  510. data/src/core/lib/iomgr/grpc_if_nametoindex.h +20 -20
  511. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +20 -19
  512. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +20 -19
  513. data/src/core/lib/iomgr/internal_errqueue.cc +1 -1
  514. data/src/core/lib/iomgr/internal_errqueue.h +80 -80
  515. data/src/core/lib/iomgr/iocp_windows.cc +21 -21
  516. data/src/core/lib/iomgr/iocp_windows.h +18 -18
  517. data/src/core/lib/iomgr/iomgr.cc +19 -18
  518. data/src/core/lib/iomgr/iomgr.h +32 -32
  519. data/src/core/lib/iomgr/iomgr_internal.cc +17 -17
  520. data/src/core/lib/iomgr/iomgr_internal.h +25 -25
  521. data/src/core/lib/iomgr/iomgr_posix.cc +18 -18
  522. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +18 -18
  523. data/src/core/lib/iomgr/iomgr_windows.cc +22 -21
  524. data/src/core/lib/iomgr/load_file.cc +19 -18
  525. data/src/core/lib/iomgr/load_file.h +20 -20
  526. data/src/core/lib/iomgr/lockfree_event.cc +104 -104
  527. data/src/core/lib/iomgr/lockfree_event.h +19 -19
  528. data/src/core/lib/iomgr/nameser.h +84 -84
  529. data/src/core/lib/iomgr/polling_entity.cc +25 -21
  530. data/src/core/lib/iomgr/polling_entity.h +27 -27
  531. data/src/core/lib/iomgr/pollset.cc +17 -17
  532. data/src/core/lib/iomgr/pollset.h +51 -51
  533. data/src/core/lib/iomgr/pollset_set.cc +17 -17
  534. data/src/core/lib/iomgr/pollset_set.h +22 -22
  535. data/src/core/lib/iomgr/pollset_set_windows.cc +18 -18
  536. data/src/core/lib/iomgr/pollset_set_windows.h +18 -18
  537. data/src/core/lib/iomgr/pollset_windows.cc +26 -25
  538. data/src/core/lib/iomgr/pollset_windows.h +22 -22
  539. data/src/core/lib/iomgr/port.h +29 -29
  540. data/src/core/lib/iomgr/python_util.h +18 -18
  541. data/src/core/lib/iomgr/resolve_address.cc +18 -17
  542. data/src/core/lib/iomgr/resolve_address.h +18 -18
  543. data/src/core/lib/iomgr/resolve_address_impl.h +1 -1
  544. data/src/core/lib/iomgr/resolve_address_posix.cc +21 -20
  545. data/src/core/lib/iomgr/resolve_address_windows.cc +4 -3
  546. data/src/core/lib/iomgr/resolved_address.h +1 -1
  547. data/src/core/lib/iomgr/sockaddr.h +21 -21
  548. data/src/core/lib/iomgr/sockaddr_posix.h +18 -18
  549. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +18 -17
  550. data/src/core/lib/iomgr/sockaddr_windows.h +18 -18
  551. data/src/core/lib/iomgr/socket_factory_posix.cc +18 -18
  552. data/src/core/lib/iomgr/socket_factory_posix.h +30 -30
  553. data/src/core/lib/iomgr/socket_mutator.cc +19 -18
  554. data/src/core/lib/iomgr/socket_mutator.h +37 -37
  555. data/src/core/lib/iomgr/socket_utils.h +24 -24
  556. data/src/core/lib/iomgr/socket_utils_common_posix.cc +38 -37
  557. data/src/core/lib/iomgr/socket_utils_linux.cc +18 -17
  558. data/src/core/lib/iomgr/socket_utils_posix.cc +21 -20
  559. data/src/core/lib/iomgr/socket_utils_posix.h +76 -76
  560. data/src/core/lib/iomgr/socket_utils_windows.cc +20 -19
  561. data/src/core/lib/iomgr/socket_windows.cc +35 -34
  562. data/src/core/lib/iomgr/socket_windows.h +56 -56
  563. data/src/core/lib/iomgr/systemd_utils.cc +116 -0
  564. data/src/core/lib/iomgr/systemd_utils.h +33 -0
  565. data/src/core/lib/iomgr/tcp_client.cc +17 -17
  566. data/src/core/lib/iomgr/tcp_client.h +26 -26
  567. data/src/core/lib/iomgr/tcp_client_cfstream.cc +19 -18
  568. data/src/core/lib/iomgr/tcp_client_posix.cc +39 -38
  569. data/src/core/lib/iomgr/tcp_client_posix.h +43 -43
  570. data/src/core/lib/iomgr/tcp_client_windows.cc +28 -27
  571. data/src/core/lib/iomgr/tcp_posix.cc +136 -134
  572. data/src/core/lib/iomgr/tcp_posix.h +27 -27
  573. data/src/core/lib/iomgr/tcp_server.cc +30 -22
  574. data/src/core/lib/iomgr/tcp_server.h +68 -62
  575. data/src/core/lib/iomgr/tcp_server_posix.cc +91 -61
  576. data/src/core/lib/iomgr/tcp_server_utils_posix.h +54 -51
  577. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +72 -34
  578. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +28 -27
  579. data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +18 -18
  580. data/src/core/lib/iomgr/tcp_server_windows.cc +71 -75
  581. data/src/core/lib/iomgr/tcp_windows.cc +83 -60
  582. data/src/core/lib/iomgr/tcp_windows.h +29 -29
  583. data/src/core/lib/iomgr/timer.cc +17 -17
  584. data/src/core/lib/iomgr/timer.h +65 -65
  585. data/src/core/lib/iomgr/timer_generic.cc +106 -107
  586. data/src/core/lib/iomgr/timer_generic.h +19 -19
  587. data/src/core/lib/iomgr/timer_heap.cc +25 -25
  588. data/src/core/lib/iomgr/timer_heap.h +19 -19
  589. data/src/core/lib/iomgr/timer_manager.cc +30 -29
  590. data/src/core/lib/iomgr/timer_manager.h +25 -25
  591. data/src/core/lib/iomgr/unix_sockets_posix.cc +18 -17
  592. data/src/core/lib/iomgr/unix_sockets_posix.h +18 -18
  593. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +19 -17
  594. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +19 -18
  595. data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +23 -23
  596. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +19 -18
  597. data/src/core/lib/iomgr/wakeup_fd_pipe.h +18 -18
  598. data/src/core/lib/iomgr/wakeup_fd_posix.cc +18 -18
  599. data/src/core/lib/iomgr/wakeup_fd_posix.h +50 -50
  600. data/src/core/lib/json/json_object_loader.cc +10 -0
  601. data/src/core/lib/json/json_object_loader.h +15 -1
  602. data/src/core/lib/json/json_reader.cc +28 -28
  603. data/src/core/lib/json/json_writer.cc +56 -56
  604. data/src/core/lib/load_balancing/lb_policy.cc +17 -17
  605. data/src/core/lib/load_balancing/lb_policy.h +3 -4
  606. data/src/core/lib/load_balancing/subchannel_interface.h +1 -1
  607. data/src/core/lib/matchers/matchers.cc +3 -1
  608. data/src/core/lib/matchers/matchers.h +1 -1
  609. data/src/core/lib/promise/activity.h +20 -12
  610. data/src/core/lib/promise/arena_promise.h +2 -1
  611. data/src/core/lib/promise/context.h +1 -0
  612. data/src/core/lib/promise/detail/promise_factory.h +1 -0
  613. data/src/core/lib/promise/detail/switch.h +18 -18
  614. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +18 -12
  615. data/src/core/lib/promise/for_each.h +68 -42
  616. data/src/core/lib/promise/latch.h +13 -19
  617. data/src/core/lib/promise/map.h +1 -0
  618. data/src/core/lib/promise/map_pipe.h +1 -0
  619. data/src/core/lib/promise/poll.h +6 -0
  620. data/src/core/lib/promise/seq.h +1 -0
  621. data/src/core/lib/promise/try_concurrently.h +1 -0
  622. data/src/core/lib/promise/try_seq.h +1 -0
  623. data/src/core/lib/resolver/resolver.cc +17 -17
  624. data/src/core/lib/resolver/server_address.cc +17 -17
  625. data/src/core/lib/resolver/server_address.h +18 -18
  626. data/src/core/lib/resource_quota/api.h +1 -1
  627. data/src/core/lib/resource_quota/arena.cc +17 -17
  628. data/src/core/lib/resource_quota/arena.h +18 -18
  629. data/src/core/lib/resource_quota/memory_quota.cc +139 -43
  630. data/src/core/lib/resource_quota/memory_quota.h +85 -23
  631. data/src/core/lib/resource_quota/resource_quota.h +1 -1
  632. data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
  633. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +0 -1
  634. data/src/core/lib/security/authorization/rbac_policy.h +1 -1
  635. data/src/core/lib/security/context/security_context.cc +22 -23
  636. data/src/core/lib/security/context/security_context.h +30 -30
  637. data/src/core/lib/security/credentials/alts/alts_credentials.cc +17 -17
  638. data/src/core/lib/security/credentials/alts/alts_credentials.h +50 -50
  639. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +19 -19
  640. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +41 -41
  641. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +17 -17
  642. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +18 -17
  643. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +18 -17
  644. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +19 -19
  645. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +18 -18
  646. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +36 -37
  647. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +18 -18
  648. data/src/core/lib/security/credentials/call_creds_util.h +1 -1
  649. data/src/core/lib/security/credentials/composite/composite_credentials.cc +21 -21
  650. data/src/core/lib/security/credentials/composite/composite_credentials.h +20 -21
  651. data/src/core/lib/security/credentials/credentials.cc +19 -18
  652. data/src/core/lib/security/credentials/credentials.h +34 -33
  653. data/src/core/lib/security/credentials/fake/fake_credentials.cc +19 -19
  654. data/src/core/lib/security/credentials/fake/fake_credentials.h +34 -35
  655. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +17 -17
  656. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +48 -49
  657. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +18 -19
  658. data/src/core/lib/security/credentials/iam/iam_credentials.cc +17 -17
  659. data/src/core/lib/security/credentials/iam/iam_credentials.h +18 -18
  660. data/src/core/lib/security/credentials/jwt/json_token.cc +23 -23
  661. data/src/core/lib/security/credentials/jwt/json_token.h +32 -32
  662. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +17 -17
  663. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +18 -19
  664. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +70 -70
  665. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +43 -43
  666. data/src/core/lib/security/credentials/local/local_credentials.cc +17 -17
  667. data/src/core/lib/security/credentials/local/local_credentials.h +20 -20
  668. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +28 -29
  669. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +19 -19
  670. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +18 -18
  671. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +19 -19
  672. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +19 -20
  673. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +18 -18
  674. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +1 -1
  675. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +1 -2
  676. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +18 -18
  677. data/src/core/lib/security/credentials/tls/tls_credentials.cc +18 -19
  678. data/src/core/lib/security/credentials/tls/tls_credentials.h +18 -18
  679. data/src/core/lib/security/credentials/xds/xds_credentials.cc +1 -2
  680. data/src/core/lib/security/credentials/xds/xds_credentials.h +1 -1
  681. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +26 -27
  682. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +41 -42
  683. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +24 -26
  684. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +20 -21
  685. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +1 -2
  686. data/src/core/lib/security/security_connector/load_system_roots.h +18 -18
  687. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +18 -18
  688. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +18 -18
  689. data/src/core/lib/security/security_connector/load_system_roots_supported.h +19 -20
  690. data/src/core/lib/security/security_connector/local/local_security_connector.cc +23 -23
  691. data/src/core/lib/security/security_connector/local/local_security_connector.h +40 -41
  692. data/src/core/lib/security/security_connector/security_connector.cc +17 -17
  693. data/src/core/lib/security/security_connector/security_connector.h +32 -33
  694. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +25 -25
  695. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +38 -39
  696. data/src/core/lib/security/security_connector/ssl_utils.cc +32 -32
  697. data/src/core/lib/security/security_connector/ssl_utils.h +31 -31
  698. data/src/core/lib/security/security_connector/ssl_utils_config.cc +22 -22
  699. data/src/core/lib/security/security_connector/ssl_utils_config.h +18 -19
  700. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +21 -21
  701. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +17 -17
  702. data/src/core/lib/security/transport/auth_filters.h +18 -18
  703. data/src/core/lib/security/transport/client_auth_filter.cc +20 -20
  704. data/src/core/lib/security/transport/secure_endpoint.cc +28 -28
  705. data/src/core/lib/security/transport/secure_endpoint.h +22 -22
  706. data/src/core/lib/security/transport/security_handshaker.cc +17 -17
  707. data/src/core/lib/security/transport/security_handshaker.h +19 -19
  708. data/src/core/lib/security/transport/server_auth_filter.cc +22 -23
  709. data/src/core/lib/security/transport/tsi_error.cc +17 -17
  710. data/src/core/lib/security/transport/tsi_error.h +18 -18
  711. data/src/core/lib/security/util/json_util.cc +17 -17
  712. data/src/core/lib/security/util/json_util.h +18 -18
  713. data/src/core/lib/service_config/service_config.h +1 -1
  714. data/src/core/lib/service_config/service_config_call_data.h +7 -1
  715. data/src/core/lib/slice/b64.cc +24 -24
  716. data/src/core/lib/slice/b64.h +29 -29
  717. data/src/core/lib/slice/percent_encoding.cc +17 -17
  718. data/src/core/lib/slice/percent_encoding.h +24 -24
  719. data/src/core/lib/slice/slice.cc +37 -37
  720. data/src/core/lib/slice/slice.h +38 -5
  721. data/src/core/lib/slice/slice_buffer.cc +50 -45
  722. data/src/core/lib/slice/slice_buffer.h +27 -2
  723. data/src/core/lib/slice/slice_internal.h +18 -18
  724. data/src/core/lib/slice/slice_string_helpers.cc +17 -17
  725. data/src/core/lib/slice/slice_string_helpers.h +19 -19
  726. data/src/core/lib/surface/api_trace.cc +17 -17
  727. data/src/core/lib/surface/api_trace.h +22 -22
  728. data/src/core/lib/surface/byte_buffer.cc +19 -19
  729. data/src/core/lib/surface/byte_buffer_reader.cc +19 -19
  730. data/src/core/lib/surface/call.cc +163 -104
  731. data/src/core/lib/surface/call.h +42 -39
  732. data/src/core/lib/surface/call_details.cc +17 -18
  733. data/src/core/lib/surface/call_log_batch.cc +18 -18
  734. data/src/core/lib/surface/call_test_only.h +30 -30
  735. data/src/core/lib/surface/call_trace.cc +5 -5
  736. data/src/core/lib/surface/channel.cc +18 -18
  737. data/src/core/lib/surface/channel.h +31 -31
  738. data/src/core/lib/surface/channel_init.cc +17 -17
  739. data/src/core/lib/surface/channel_init.h +18 -18
  740. data/src/core/lib/surface/channel_ping.cc +18 -18
  741. data/src/core/lib/surface/channel_stack_type.cc +17 -17
  742. data/src/core/lib/surface/channel_stack_type.h +18 -18
  743. data/src/core/lib/surface/completion_queue.cc +136 -140
  744. data/src/core/lib/surface/completion_queue.h +32 -32
  745. data/src/core/lib/surface/completion_queue_factory.cc +28 -28
  746. data/src/core/lib/surface/completion_queue_factory.h +20 -20
  747. data/src/core/lib/surface/event_string.cc +17 -17
  748. data/src/core/lib/surface/event_string.h +20 -20
  749. data/src/core/lib/surface/init.cc +21 -19
  750. data/src/core/lib/surface/init.h +18 -18
  751. data/src/core/lib/surface/init_internally.cc +1 -0
  752. data/src/core/lib/surface/init_internally.h +1 -0
  753. data/src/core/lib/surface/lame_client.cc +18 -18
  754. data/src/core/lib/surface/lame_client.h +19 -19
  755. data/src/core/lib/surface/metadata_array.cc +17 -18
  756. data/src/core/lib/surface/server.cc +15 -15
  757. data/src/core/lib/surface/server.h +2 -3
  758. data/src/core/lib/surface/validate_metadata.cc +17 -17
  759. data/src/core/lib/surface/validate_metadata.h +18 -18
  760. data/src/core/lib/surface/version.cc +21 -21
  761. data/src/core/lib/transport/bdp_estimator.cc +17 -17
  762. data/src/core/lib/transport/bdp_estimator.h +18 -19
  763. data/src/core/lib/transport/connectivity_state.cc +17 -17
  764. data/src/core/lib/transport/connectivity_state.h +19 -19
  765. data/src/core/lib/transport/error_utils.cc +17 -17
  766. data/src/core/lib/transport/error_utils.h +18 -18
  767. data/src/core/lib/transport/handshaker.cc +37 -34
  768. data/src/core/lib/transport/handshaker.h +42 -37
  769. data/src/core/lib/transport/handshaker_factory.h +18 -18
  770. data/src/core/lib/transport/handshaker_registry.cc +17 -17
  771. data/src/core/lib/transport/handshaker_registry.h +18 -18
  772. data/src/core/lib/transport/http2_errors.h +20 -20
  773. data/src/core/lib/transport/http_connect_handshaker.cc +17 -17
  774. data/src/core/lib/transport/http_connect_handshaker.h +18 -18
  775. data/src/core/lib/transport/metadata_batch.cc +4 -1
  776. data/src/core/lib/transport/metadata_batch.h +30 -20
  777. data/src/core/lib/transport/parsed_metadata.h +1 -0
  778. data/src/core/lib/transport/pid_controller.cc +20 -20
  779. data/src/core/lib/transport/pid_controller.h +24 -24
  780. data/src/core/lib/transport/status_conversion.cc +22 -22
  781. data/src/core/lib/transport/status_conversion.h +20 -20
  782. data/src/core/lib/transport/tcp_connect_handshaker.h +1 -1
  783. data/src/core/lib/transport/timeout_encoding.cc +22 -22
  784. data/src/core/lib/transport/timeout_encoding.h +18 -18
  785. data/src/core/lib/transport/transport.cc +25 -24
  786. data/src/core/lib/transport/transport.h +134 -132
  787. data/src/core/lib/transport/transport_impl.h +41 -41
  788. data/src/core/lib/transport/transport_op_string.cc +19 -19
  789. data/src/core/plugin_registry/grpc_plugin_registry.cc +21 -19
  790. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +5 -0
  791. data/src/core/tsi/alts/crypt/aes_gcm.cc +20 -20
  792. data/src/core/tsi/alts/crypt/gsec.cc +26 -26
  793. data/src/core/tsi/alts/crypt/gsec.h +334 -334
  794. data/src/core/tsi/alts/frame_protector/alts_counter.cc +23 -23
  795. data/src/core/tsi/alts/frame_protector/alts_counter.h +66 -66
  796. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +19 -19
  797. data/src/core/tsi/alts/frame_protector/alts_crypter.h +206 -206
  798. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +72 -71
  799. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +38 -38
  800. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +18 -18
  801. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +80 -81
  802. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +22 -22
  803. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +22 -22
  804. data/src/core/tsi/alts/frame_protector/frame_handler.cc +26 -25
  805. data/src/core/tsi/alts/frame_protector/frame_handler.h +166 -166
  806. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +68 -67
  807. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +99 -99
  808. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +18 -17
  809. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +41 -42
  810. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +29 -28
  811. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +58 -58
  812. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +20 -20
  813. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +19 -19
  814. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +36 -36
  815. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +19 -19
  816. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +102 -101
  817. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +38 -37
  818. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +38 -39
  819. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +31 -30
  820. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +33 -34
  821. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +65 -66
  822. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +31 -30
  823. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +53 -54
  824. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +54 -53
  825. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +138 -139
  826. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +53 -52
  827. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +41 -42
  828. data/src/core/tsi/fake_transport_security.cc +77 -76
  829. data/src/core/tsi/fake_transport_security.h +30 -30
  830. data/src/core/tsi/local_transport_security.cc +34 -33
  831. data/src/core/tsi/local_transport_security.h +31 -31
  832. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +1 -0
  833. data/src/core/tsi/ssl/session_cache/ssl_session.h +18 -18
  834. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +18 -18
  835. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +18 -17
  836. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +19 -19
  837. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +19 -18
  838. data/src/core/tsi/ssl_transport_security.cc +139 -323
  839. data/src/core/tsi/ssl_transport_security.h +201 -200
  840. data/src/core/tsi/ssl_transport_security_utils.cc +250 -0
  841. data/src/core/tsi/ssl_transport_security_utils.h +147 -0
  842. data/src/core/tsi/ssl_types.h +25 -25
  843. data/src/core/tsi/transport_security.cc +26 -26
  844. data/src/core/tsi/transport_security.h +45 -45
  845. data/src/core/tsi/transport_security_grpc.cc +20 -20
  846. data/src/core/tsi/transport_security_grpc.h +39 -39
  847. data/src/core/tsi/transport_security_interface.h +330 -330
  848. data/src/ruby/ext/grpc/{ext-export-truffleruby.clang → ext-export-truffleruby-with-ruby-abi-version.clang} +0 -0
  849. data/src/ruby/ext/grpc/{ext-export-truffleruby.gcc → ext-export-truffleruby-with-ruby-abi-version.gcc} +0 -0
  850. data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.clang +2 -0
  851. data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.gcc +7 -0
  852. data/src/ruby/ext/grpc/ext-export.clang +0 -1
  853. data/src/ruby/ext/grpc/ext-export.gcc +1 -2
  854. data/src/ruby/ext/grpc/extconf.rb +47 -2
  855. data/src/ruby/ext/grpc/rb_call.c +1 -0
  856. data/src/ruby/ext/grpc/rb_channel.c +1 -0
  857. data/src/ruby/ext/grpc/rb_channel_args.c +1 -0
  858. data/src/ruby/ext/grpc/rb_compression_options.c +1 -1
  859. data/src/ruby/ext/grpc/rb_grpc.c +1 -0
  860. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +38 -36
  861. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +59 -56
  862. data/src/ruby/lib/grpc/generic/bidi_call.rb +2 -0
  863. data/src/ruby/lib/grpc/version.rb +1 -1
  864. data/src/ruby/spec/client_server_spec.rb +20 -8
  865. data/third_party/re2/re2/bitstate.cc +3 -3
  866. data/third_party/re2/re2/dfa.cc +13 -13
  867. data/third_party/re2/re2/nfa.cc +4 -4
  868. data/third_party/re2/re2/onepass.cc +2 -2
  869. data/third_party/re2/re2/prefilter_tree.cc +27 -59
  870. data/third_party/re2/re2/prefilter_tree.h +3 -2
  871. data/third_party/re2/re2/prog.cc +11 -2
  872. data/third_party/re2/re2/prog.h +17 -5
  873. data/third_party/re2/re2/re2.cc +6 -11
  874. data/third_party/re2/re2/re2.h +1 -1
  875. data/third_party/re2/re2/regexp.cc +1 -2
  876. data/third_party/re2/re2/stringpiece.h +10 -7
  877. data/third_party/re2/re2/unicode_casefold.cc +25 -11
  878. data/third_party/re2/re2/unicode_groups.cc +319 -151
  879. data/third_party/re2/re2/walker-inl.h +3 -2
  880. data/third_party/re2/util/mutex.h +4 -4
  881. metadata +95 -26
  882. data/include/grpc/impl/codegen/gpr_slice.h +0 -71
  883. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +0 -332
  884. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +0 -52
  885. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +0 -322
  886. data/src/core/ext/filters/server_config_selector/server_config_selector.cc +0 -62
@@ -1,20 +1,20 @@
1
- /*
2
- *
3
- * Copyright 2015 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2015 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #ifndef GRPC_CORE_LIB_SURFACE_CALL_H
20
20
  #define GRPC_CORE_LIB_SURFACE_CALL_H
@@ -28,8 +28,8 @@
28
28
  #include "absl/strings/string_view.h"
29
29
  #include "absl/types/optional.h"
30
30
 
31
- #include <grpc/impl/codegen/compression_types.h>
32
- #include <grpc/impl/codegen/grpc_types.h>
31
+ #include <grpc/grpc.h>
32
+ #include <grpc/impl/compression_types.h>
33
33
  #include <grpc/support/atm.h>
34
34
  #include <grpc/support/log.h>
35
35
 
@@ -61,7 +61,7 @@ typedef struct grpc_call_create_args {
61
61
  uint32_t propagation_mask;
62
62
 
63
63
  grpc_completion_queue* cq;
64
- /* if not NULL, it'll be used in lieu of cq */
64
+ // if not NULL, it'll be used in lieu of cq
65
65
  grpc_pollset_set* pollset_set_alternative;
66
66
 
67
67
  const void* server_transport_data;
@@ -80,6 +80,9 @@ class CallContext {
80
80
  public:
81
81
  explicit CallContext(PromiseBasedCall* call) : call_(call) {}
82
82
 
83
+ // Update the deadline (if deadline < the current deadline).
84
+ void UpdateDeadline(Timestamp deadline);
85
+
83
86
  // Run some action in the call activity context. This is needed to adapt some
84
87
  // legacy systems to promises, and will likely disappear once that conversion
85
88
  // is complete.
@@ -111,9 +114,9 @@ template <>
111
114
  struct ContextType<CallContext> {};
112
115
  } // namespace grpc_core
113
116
 
114
- /* Create a new call based on \a args.
115
- Regardless of success or failure, always returns a valid new call into *call
116
- */
117
+ // Create a new call based on \a args.
118
+ // Regardless of success or failure, always returns a valid new call into *call
119
+ //
117
120
  grpc_error_handle grpc_call_create(grpc_call_create_args* args,
118
121
  grpc_call** call);
119
122
 
@@ -128,22 +131,22 @@ grpc_call_error grpc_call_start_batch_and_execute(grpc_call* call,
128
131
  size_t nops,
129
132
  grpc_closure* closure);
130
133
 
131
- /* gRPC core internal version of grpc_call_cancel that does not create
132
- * exec_ctx. */
134
+ // gRPC core internal version of grpc_call_cancel that does not create
135
+ // exec_ctx.
133
136
  void grpc_call_cancel_internal(grpc_call* call);
134
137
 
135
- /* Given the top call_element, get the call object. */
138
+ // Given the top call_element, get the call object.
136
139
  grpc_call* grpc_call_from_top_element(grpc_call_element* surface_element);
137
140
 
138
141
  void grpc_call_log_batch(const char* file, int line, gpr_log_severity severity,
139
142
  const grpc_op* ops, size_t nops);
140
143
 
141
- /* Set a context pointer.
142
- No thread safety guarantees are made wrt this value. */
143
- /* TODO(#9731): add exec_ctx to destroy */
144
+ // Set a context pointer.
145
+ // No thread safety guarantees are made wrt this value.
146
+ // TODO(#9731): add exec_ctx to destroy
144
147
  void grpc_call_context_set(grpc_call* call, grpc_context_index elem,
145
148
  void* value, void (*destroy)(void* value));
146
- /* Get a context pointer. */
149
+ // Get a context pointer.
147
150
  void* grpc_call_context_get(grpc_call* call, grpc_context_index elem);
148
151
 
149
152
  #define GRPC_CALL_LOG_BATCH(sev, ops, nops) \
@@ -155,19 +158,19 @@ void* grpc_call_context_get(grpc_call* call, grpc_context_index elem);
155
158
 
156
159
  uint8_t grpc_call_is_client(grpc_call* call);
157
160
 
158
- /* Get the estimated memory size for a call BESIDES the call stack. Combined
159
- * with the size of the call stack, it helps estimate the arena size for the
160
- * initial call. */
161
+ // Get the estimated memory size for a call BESIDES the call stack. Combined
162
+ // with the size of the call stack, it helps estimate the arena size for the
163
+ // initial call.
161
164
  size_t grpc_call_get_initial_size_estimate();
162
165
 
163
- /* Return an appropriate compression algorithm for the requested compression \a
164
- * level in the context of \a call. */
166
+ // Return an appropriate compression algorithm for the requested compression \a
167
+ // level in the context of \a call.
165
168
  grpc_compression_algorithm grpc_call_compression_for_level(
166
169
  grpc_call* call, grpc_compression_level level);
167
170
 
168
- /* Did this client call receive a trailers-only response */
169
- /* TODO(markdroth): This is currently available only to the C++ API.
170
- Move to surface API if requested by other languages. */
171
+ // Did this client call receive a trailers-only response
172
+ // TODO(markdroth): This is currently available only to the C++ API.
173
+ // Move to surface API if requested by other languages.
171
174
  bool grpc_call_is_trailers_only(const grpc_call* call);
172
175
 
173
176
  // Returns the authority for the call, as seen on the server side.
@@ -176,4 +179,4 @@ absl::string_view grpc_call_server_authority(const grpc_call* call);
176
179
  extern grpc_core::TraceFlag grpc_call_error_trace;
177
180
  extern grpc_core::TraceFlag grpc_compression_trace;
178
181
 
179
- #endif /* GRPC_CORE_LIB_SURFACE_CALL_H */
182
+ #endif // GRPC_CORE_LIB_SURFACE_CALL_H
@@ -1,25 +1,24 @@
1
- /*
2
- *
3
- * Copyright 2015 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2015 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #include <grpc/support/port_platform.h>
20
20
 
21
21
  #include <grpc/grpc.h>
22
- #include <grpc/impl/codegen/grpc_types.h>
23
22
  #include <grpc/slice.h>
24
23
 
25
24
  #include "src/core/lib/debug/trace.h"
@@ -1,20 +1,20 @@
1
- /*
2
- *
3
- * Copyright 2015 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2015 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #include <grpc/support/port_platform.h>
20
20
 
@@ -29,7 +29,7 @@
29
29
  #include "absl/strings/str_join.h"
30
30
  #include "absl/strings/string_view.h"
31
31
 
32
- #include <grpc/impl/codegen/grpc_types.h>
32
+ #include <grpc/grpc.h>
33
33
  #include <grpc/support/alloc.h>
34
34
  #include <grpc/support/log.h>
35
35
 
@@ -1,20 +1,20 @@
1
- /*
2
- *
3
- * Copyright 2015 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2015 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #ifndef GRPC_CORE_LIB_SURFACE_CALL_TEST_ONLY_H
20
20
  #define GRPC_CORE_LIB_SURFACE_CALL_TEST_ONLY_H
@@ -23,24 +23,24 @@
23
23
 
24
24
  #include <stdint.h>
25
25
 
26
- #include <grpc/impl/codegen/compression_types.h>
27
- #include <grpc/impl/codegen/grpc_types.h>
26
+ #include <grpc/grpc.h>
27
+ #include <grpc/impl/compression_types.h>
28
28
 
29
- /** Return the message compression algorithm from \a call.
30
- *
31
- * \warning This function should \b only be used in test code. */
29
+ /// Return the message compression algorithm from \a call.
30
+ ///
31
+ ///\warning This function should \b only be used in test code.
32
32
  grpc_compression_algorithm grpc_call_test_only_get_compression_algorithm(
33
33
  grpc_call* call);
34
34
 
35
- /** Return the message flags from \a call.
36
- *
37
- * \warning This function should \b only be used in test code. */
35
+ /// Return the message flags from \a call.
36
+ ///
37
+ ///\warning This function should \b only be used in test code.
38
38
  uint32_t grpc_call_test_only_get_message_flags(grpc_call* call);
39
39
 
40
- /** Returns a bitset for the encodings (compression algorithms) supported by \a
41
- * call's peer.
42
- *
43
- * To be indexed by grpc_compression_algorithm enum values. */
40
+ /// Returns a bitset for the encodings (compression algorithms) supported by \a
41
+ /// call's peer.
42
+ ///
43
+ /// To be indexed by grpc_compression_algorithm enum values.
44
44
  uint32_t grpc_call_test_only_get_encodings_accepted_by_peer(grpc_call* call);
45
45
 
46
- #endif /* GRPC_CORE_LIB_SURFACE_CALL_TEST_ONLY_H */
46
+ #endif // GRPC_CORE_LIB_SURFACE_CALL_TEST_ONLY_H
@@ -46,7 +46,7 @@ const grpc_channel_filter* PromiseTracingFilterFor(
46
46
  explicit DerivedFilter(const grpc_channel_filter* filter)
47
47
  : grpc_channel_filter{
48
48
  /* start_transport_stream_op_batch: */ grpc_call_next_op,
49
- /* make_call_promise: */
49
+ // make_call_promise:
50
50
  [](grpc_channel_element* elem, CallArgs call_args,
51
51
  NextPromiseFactory next_promise_factory)
52
52
  -> ArenaPromise<ServerMetadataHandle> {
@@ -77,19 +77,19 @@ const grpc_channel_filter* PromiseTracingFilterFor(
77
77
  };
78
78
  },
79
79
  grpc_channel_next_op, /* sizeof_call_data: */ 0,
80
- /* init_call_elem: */
80
+ // init_call_elem:
81
81
  [](grpc_call_element*, const grpc_call_element_args*) {
82
82
  return absl::OkStatus();
83
83
  },
84
84
  grpc_call_stack_ignore_set_pollset_or_pollset_set,
85
- /* destroy_call_elem: */
85
+ // destroy_call_elem:
86
86
  [](grpc_call_element*, const grpc_call_final_info*,
87
87
  grpc_closure*) {},
88
- /* sizeof_channel_data: */ 0, /* init_channel_elem: */
88
+ /* sizeof_channel_data: */ 0, // init_channel_elem:
89
89
  [](grpc_channel_element*, grpc_channel_element_args*) {
90
90
  return absl::OkStatus();
91
91
  },
92
- /* post_init_channel_elem: */
92
+ // post_init_channel_elem:
93
93
  [](grpc_channel_stack*, grpc_channel_element*) {},
94
94
  /* destroy_channel_elem: */ [](grpc_channel_element*) {},
95
95
  grpc_channel_next_get_info, filter->name},
@@ -1,20 +1,20 @@
1
- /*
2
- *
3
- * Copyright 2015 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2015 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #include <grpc/support/port_platform.h>
20
20
 
@@ -32,9 +32,9 @@
32
32
 
33
33
  #include <grpc/compression.h>
34
34
  #include <grpc/grpc.h>
35
- #include <grpc/impl/codegen/gpr_types.h>
36
35
  #include <grpc/support/alloc.h>
37
36
  #include <grpc/support/log.h>
37
+ #include <grpc/support/time.h>
38
38
 
39
39
  #include "src/core/lib/channel/channel_args.h"
40
40
  #include "src/core/lib/channel/channel_stack.h"
@@ -1,20 +1,20 @@
1
- /*
2
- *
3
- * Copyright 2015 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2015 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #ifndef GRPC_CORE_LIB_SURFACE_CHANNEL_H
20
20
  #define GRPC_CORE_LIB_SURFACE_CHANNEL_H
@@ -36,8 +36,8 @@
36
36
 
37
37
  #include <grpc/event_engine/event_engine.h>
38
38
  #include <grpc/event_engine/memory_allocator.h>
39
- #include <grpc/impl/codegen/compression_types.h>
40
- #include <grpc/impl/codegen/grpc_types.h>
39
+ #include <grpc/grpc.h>
40
+ #include <grpc/impl/compression_types.h>
41
41
  #include <grpc/slice.h>
42
42
 
43
43
  #include "src/core/lib/channel/channel_args.h"
@@ -57,24 +57,24 @@
57
57
  #include "src/core/lib/surface/channel_stack_type.h"
58
58
  #include "src/core/lib/transport/transport_fwd.h"
59
59
 
60
- /** The same as grpc_channel_destroy, but doesn't create an ExecCtx, and so
61
- * is safe to use from within core. */
60
+ /// The same as grpc_channel_destroy, but doesn't create an ExecCtx, and so
61
+ /// is safe to use from within core.
62
62
  void grpc_channel_destroy_internal(grpc_channel* channel);
63
63
 
64
- /** Create a call given a grpc_channel, in order to call \a method.
65
- Progress is tied to activity on \a pollset_set. The returned call object is
66
- meant to be used with \a grpc_call_start_batch_and_execute, which relies on
67
- callbacks to signal completions. \a method and \a host need
68
- only live through the invocation of this function. If \a parent_call is
69
- non-NULL, it must be a server-side call. It will be used to propagate
70
- properties from the server call to this new client call, depending on the
71
- value of \a propagation_mask (see propagation_bits.h for possible values) */
64
+ /// Create a call given a grpc_channel, in order to call \a method.
65
+ /// Progress is tied to activity on \a pollset_set. The returned call object is
66
+ /// meant to be used with \a grpc_call_start_batch_and_execute, which relies on
67
+ /// callbacks to signal completions. \a method and \a host need
68
+ /// only live through the invocation of this function. If \a parent_call is
69
+ /// non-NULL, it must be a server-side call. It will be used to propagate
70
+ /// properties from the server call to this new client call, depending on the
71
+ /// value of \a propagation_mask (see propagation_bits.h for possible values)
72
72
  grpc_call* grpc_channel_create_pollset_set_call(
73
73
  grpc_channel* channel, grpc_call* parent_call, uint32_t propagation_mask,
74
74
  grpc_pollset_set* pollset_set, const grpc_slice& method,
75
75
  const grpc_slice* host, grpc_core::Timestamp deadline, void* reserved);
76
76
 
77
- /** Get a (borrowed) pointer to this channels underlying channel stack */
77
+ /// Get a (borrowed) pointer to this channels underlying channel stack
78
78
  grpc_channel_stack* grpc_channel_get_channel_stack(grpc_channel* channel);
79
79
 
80
80
  grpc_core::channelz::ChannelNode* grpc_channel_get_channelz_node(
@@ -211,4 +211,4 @@ grpc_compression_options grpc_channel_compression_options(
211
211
  void grpc_channel_ping(grpc_channel* channel, grpc_completion_queue* cq,
212
212
  void* tag, void* reserved);
213
213
 
214
- #endif /* GRPC_CORE_LIB_SURFACE_CHANNEL_H */
214
+ #endif // GRPC_CORE_LIB_SURFACE_CHANNEL_H
@@ -1,20 +1,20 @@
1
- /*
2
- *
3
- * Copyright 2016 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2016 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #include <grpc/support/port_platform.h>
20
20
 
@@ -1,20 +1,20 @@
1
- /*
2
- *
3
- * Copyright 2016 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2016 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #ifndef GRPC_CORE_LIB_SURFACE_CHANNEL_INIT_H
20
20
  #define GRPC_CORE_LIB_SURFACE_CHANNEL_INIT_H
@@ -81,4 +81,4 @@ class ChannelInit {
81
81
 
82
82
  } // namespace grpc_core
83
83
 
84
- #endif /* GRPC_CORE_LIB_SURFACE_CHANNEL_INIT_H */
84
+ #endif // GRPC_CORE_LIB_SURFACE_CHANNEL_INIT_H
@@ -1,24 +1,24 @@
1
- /*
2
- *
3
- * Copyright 2015 gRPC authors.
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- *
17
- */
1
+ //
2
+ //
3
+ // Copyright 2015 gRPC authors.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 (the "License");
6
+ // you may not use this file except in compliance with the License.
7
+ // You may obtain a copy of the License at
8
+ //
9
+ // http://www.apache.org/licenses/LICENSE-2.0
10
+ //
11
+ // Unless required by applicable law or agreed to in writing, software
12
+ // distributed under the License is distributed on an "AS IS" BASIS,
13
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ // See the License for the specific language governing permissions and
15
+ // limitations under the License.
16
+ //
17
+ //
18
18
 
19
19
  #include <grpc/support/port_platform.h>
20
20
 
21
- #include <grpc/impl/codegen/grpc_types.h>
21
+ #include <grpc/grpc.h>
22
22
  #include <grpc/support/alloc.h>
23
23
  #include <grpc/support/log.h>
24
24