grpc 1.45.0 → 1.53.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of grpc might be problematic. Click here for more details.

Files changed (1842) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +437 -254
  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/endpoint_config.h +11 -5
  7. data/include/grpc/event_engine/event_engine.h +129 -39
  8. data/include/grpc/event_engine/internal/memory_allocator_impl.h +1 -1
  9. data/include/grpc/event_engine/internal/slice_cast.h +67 -0
  10. data/include/grpc/event_engine/memory_allocator.h +1 -16
  11. data/include/grpc/event_engine/port.h +1 -1
  12. data/include/grpc/event_engine/slice.h +306 -0
  13. data/include/grpc/event_engine/slice_buffer.h +159 -0
  14. data/include/grpc/fork.h +25 -1
  15. data/include/grpc/grpc.h +4 -14
  16. data/include/grpc/grpc_posix.h +1 -1
  17. data/include/grpc/grpc_security.h +11 -0
  18. data/include/grpc/impl/codegen/atm.h +3 -71
  19. data/include/grpc/impl/codegen/atm_gcc_atomic.h +3 -67
  20. data/include/grpc/impl/codegen/atm_gcc_sync.h +3 -61
  21. data/include/grpc/impl/codegen/atm_windows.h +3 -108
  22. data/include/grpc/impl/codegen/byte_buffer.h +4 -78
  23. data/include/grpc/impl/codegen/byte_buffer_reader.h +4 -19
  24. data/include/grpc/impl/codegen/compression_types.h +5 -83
  25. data/include/grpc/impl/codegen/connectivity_state.h +5 -21
  26. data/include/grpc/impl/codegen/fork.h +4 -25
  27. data/include/grpc/impl/codegen/gpr_types.h +4 -35
  28. data/include/grpc/impl/codegen/grpc_types.h +5 -797
  29. data/include/grpc/impl/codegen/log.h +3 -86
  30. data/include/grpc/impl/codegen/port_platform.h +3 -699
  31. data/include/grpc/impl/codegen/propagation_bits.h +3 -28
  32. data/include/grpc/impl/codegen/slice.h +4 -107
  33. data/include/grpc/impl/codegen/status.h +4 -131
  34. data/include/grpc/impl/codegen/sync.h +3 -42
  35. data/include/grpc/impl/codegen/sync_abseil.h +3 -12
  36. data/include/grpc/impl/codegen/sync_custom.h +3 -14
  37. data/include/grpc/impl/codegen/sync_generic.h +3 -25
  38. data/include/grpc/impl/codegen/sync_posix.h +3 -28
  39. data/include/grpc/impl/codegen/sync_windows.h +3 -16
  40. data/include/grpc/impl/compression_types.h +109 -0
  41. data/include/grpc/impl/connectivity_state.h +47 -0
  42. data/include/grpc/impl/grpc_types.h +827 -0
  43. data/include/grpc/impl/propagation_bits.h +54 -0
  44. data/include/grpc/impl/slice_type.h +112 -0
  45. data/include/grpc/load_reporting.h +1 -1
  46. data/include/grpc/module.modulemap +5 -1
  47. data/include/grpc/slice.h +1 -1
  48. data/include/grpc/status.h +131 -1
  49. data/include/grpc/support/atm.h +70 -1
  50. data/include/grpc/support/atm_gcc_atomic.h +59 -1
  51. data/include/grpc/support/atm_gcc_sync.h +58 -1
  52. data/include/grpc/support/atm_windows.h +105 -1
  53. data/include/grpc/support/log.h +87 -1
  54. data/include/grpc/support/log_windows.h +1 -1
  55. data/include/grpc/support/port_platform.h +767 -1
  56. data/include/grpc/support/string_util.h +1 -1
  57. data/include/grpc/support/sync.h +35 -2
  58. data/include/grpc/support/sync_abseil.h +11 -1
  59. data/include/grpc/support/sync_custom.h +13 -1
  60. data/include/grpc/support/sync_generic.h +24 -1
  61. data/include/grpc/support/sync_posix.h +27 -1
  62. data/include/grpc/support/sync_windows.h +15 -1
  63. data/include/grpc/support/time.h +31 -6
  64. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +148 -0
  65. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +52 -0
  66. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +29 -0
  67. data/src/core/ext/filters/census/grpc_context.cc +19 -17
  68. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +315 -0
  69. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +142 -0
  70. data/src/core/ext/filters/{client_idle → channel_idle}/idle_filter_state.cc +1 -1
  71. data/src/core/ext/filters/{client_idle → channel_idle}/idle_filter_state.h +6 -4
  72. data/src/core/ext/filters/client_channel/backend_metric.cc +19 -12
  73. data/src/core/ext/filters/client_channel/backend_metric.h +21 -11
  74. data/src/core/ext/filters/client_channel/backup_poller.cc +34 -34
  75. data/src/core/ext/filters/client_channel/backup_poller.h +26 -28
  76. data/src/core/ext/filters/client_channel/channel_connectivity.cc +89 -44
  77. data/src/core/ext/filters/client_channel/client_channel.cc +557 -540
  78. data/src/core/ext/filters/client_channel/client_channel.h +70 -26
  79. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +19 -23
  80. data/src/core/ext/filters/client_channel/client_channel_channelz.h +33 -23
  81. data/src/core/ext/filters/client_channel/client_channel_factory.cc +19 -43
  82. data/src/core/ext/filters/client_channel/client_channel_factory.h +11 -11
  83. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +22 -47
  84. data/src/core/ext/filters/client_channel/client_channel_service_config.cc +153 -0
  85. data/src/core/ext/filters/client_channel/{resolver_result_parsing.h → client_channel_service_config.h} +33 -27
  86. data/src/core/ext/filters/client_channel/config_selector.cc +1 -0
  87. data/src/core/ext/filters/client_channel/config_selector.h +29 -23
  88. data/src/core/ext/filters/client_channel/connector.h +19 -10
  89. data/src/core/ext/filters/client_channel/dynamic_filters.cc +40 -54
  90. data/src/core/ext/filters/client_channel/dynamic_filters.h +20 -11
  91. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +2 -0
  92. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +24 -21
  93. data/src/core/ext/filters/client_channel/health/health_check_client.cc +137 -582
  94. data/src/core/ext/filters/client_channel/health/health_check_client.h +29 -163
  95. data/src/core/ext/filters/client_channel/http_proxy.cc +130 -164
  96. data/src/core/ext/filters/client_channel/http_proxy.h +46 -22
  97. data/src/core/ext/filters/client_channel/lb_call_state_internal.h +39 -0
  98. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +8 -5
  99. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +4 -3
  100. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +49 -0
  101. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +37 -16
  102. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +18 -13
  103. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +71 -131
  104. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +41 -24
  105. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +410 -375
  106. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +26 -27
  107. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +15 -3
  108. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +9 -7
  109. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +18 -20
  110. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +27 -22
  111. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +28 -19
  112. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +26 -25
  113. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +338 -0
  114. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h +57 -0
  115. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h +117 -0
  116. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +1129 -0
  117. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +94 -0
  118. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +174 -180
  119. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +478 -479
  120. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +491 -409
  121. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +19 -9
  122. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +618 -642
  123. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +261 -234
  124. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +165 -143
  125. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc +128 -0
  126. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h +71 -0
  127. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +972 -0
  128. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +280 -248
  129. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +251 -187
  130. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.cc +42 -0
  131. data/src/core/ext/filters/client_channel/lb_policy/xds/{xds.h → xds_attributes.h} +19 -15
  132. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +3 -3
  133. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +178 -256
  134. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +212 -216
  135. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +543 -584
  136. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +819 -0
  137. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +67 -0
  138. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +369 -0
  139. data/src/core/ext/filters/client_channel/local_subchannel_pool.cc +4 -0
  140. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +22 -21
  141. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +34 -19
  142. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +579 -376
  143. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +50 -44
  144. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +31 -30
  145. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +89 -84
  146. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +300 -209
  147. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +82 -61
  148. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +18 -18
  149. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +20 -19
  150. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc +2 -0
  151. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +22 -22
  152. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +86 -224
  153. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +21 -34
  154. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +19 -5
  155. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +135 -63
  156. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +269 -0
  157. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +121 -0
  158. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +21 -27
  159. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +413 -303
  160. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +6 -4
  161. data/src/core/ext/filters/client_channel/retry_filter.cc +184 -166
  162. data/src/core/ext/filters/client_channel/retry_filter.h +4 -3
  163. data/src/core/ext/filters/client_channel/retry_service_config.cc +197 -229
  164. data/src/core/ext/filters/client_channel/retry_service_config.h +29 -26
  165. data/src/core/ext/filters/client_channel/retry_throttle.cc +28 -37
  166. data/src/core/ext/filters/client_channel/retry_throttle.h +36 -29
  167. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +34 -17
  168. data/src/core/ext/filters/client_channel/subchannel.cc +336 -388
  169. data/src/core/ext/filters/client_channel/subchannel.h +112 -82
  170. data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +38 -0
  171. data/src/core/ext/filters/client_channel/subchannel_pool_interface.cc +17 -77
  172. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +41 -47
  173. data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +470 -0
  174. data/src/core/ext/filters/client_channel/subchannel_stream_client.h +222 -0
  175. data/src/core/ext/filters/deadline/deadline_filter.cc +94 -76
  176. data/src/core/ext/filters/deadline/deadline_filter.h +14 -12
  177. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +154 -372
  178. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +41 -9
  179. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +118 -0
  180. data/src/core/ext/filters/fault_injection/{service_config_parser.h → fault_injection_service_config_parser.h} +34 -13
  181. data/src/core/ext/filters/http/client/http_client_filter.cc +119 -477
  182. data/src/core/ext/filters/http/client/http_client_filter.h +55 -25
  183. data/src/core/ext/filters/http/client_authority_filter.cc +48 -58
  184. data/src/core/ext/filters/http/client_authority_filter.h +32 -28
  185. data/src/core/ext/filters/http/http_filters_plugin.cc +46 -52
  186. data/src/core/ext/filters/http/message_compress/compression_filter.cc +307 -0
  187. data/src/core/ext/filters/http/message_compress/compression_filter.h +139 -0
  188. data/src/core/ext/filters/http/server/http_server_filter.cc +111 -385
  189. data/src/core/ext/filters/http/server/http_server_filter.h +58 -24
  190. data/src/core/ext/filters/message_size/message_size_filter.cc +117 -137
  191. data/src/core/ext/filters/message_size/message_size_filter.h +34 -17
  192. data/src/core/ext/filters/rbac/rbac_filter.cc +29 -16
  193. data/src/core/ext/filters/rbac/rbac_filter.h +11 -3
  194. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +736 -523
  195. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +18 -7
  196. data/src/core/ext/filters/server_config_selector/server_config_selector.h +20 -8
  197. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +90 -202
  198. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.h +4 -3
  199. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +219 -0
  200. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +66 -0
  201. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +82 -0
  202. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +93 -0
  203. data/src/core/ext/transport/chttp2/alpn/alpn.cc +18 -18
  204. data/src/core/ext/transport/chttp2/alpn/alpn.h +24 -24
  205. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +186 -241
  206. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +38 -30
  207. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +209 -215
  208. data/src/core/ext/transport/chttp2/server/chttp2_server.h +26 -26
  209. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +24 -24
  210. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +35 -34
  211. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +31 -30
  212. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +29 -29
  213. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +893 -1079
  214. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +28 -23
  215. data/src/core/ext/transport/chttp2/transport/context_list.cc +23 -19
  216. data/src/core/ext/transport/chttp2/transport/context_list.h +32 -29
  217. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +251 -0
  218. data/src/core/ext/transport/chttp2/transport/decode_huff.h +971 -0
  219. data/src/core/ext/transport/chttp2/transport/flow_control.cc +350 -300
  220. data/src/core/ext/transport/chttp2/transport/flow_control.h +248 -325
  221. data/src/core/ext/transport/chttp2/transport/frame.h +22 -26
  222. data/src/core/ext/transport/chttp2/transport/frame_data.cc +85 -234
  223. data/src/core/ext/transport/chttp2/transport/frame_data.h +38 -61
  224. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +41 -36
  225. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +24 -22
  226. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +31 -25
  227. data/src/core/ext/transport/chttp2/transport/frame_ping.h +25 -22
  228. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +35 -26
  229. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +24 -21
  230. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +46 -77
  231. data/src/core/ext/transport/chttp2/transport/frame_settings.h +27 -23
  232. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +34 -33
  233. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +24 -21
  234. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +10 -4
  235. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +169 -220
  236. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +59 -61
  237. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +4 -1
  238. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +14 -5
  239. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +114 -542
  240. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +31 -24
  241. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +75 -67
  242. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +70 -48
  243. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +21 -19
  244. data/src/core/ext/transport/chttp2/transport/http2_settings.h +39 -38
  245. data/src/core/ext/transport/chttp2/transport/http_trace.cc +19 -0
  246. data/src/core/ext/transport/chttp2/transport/http_trace.h +24 -0
  247. data/src/core/ext/transport/chttp2/transport/huffsyms.cc +20 -20
  248. data/src/core/ext/transport/chttp2/transport/huffsyms.h +21 -21
  249. data/src/core/ext/transport/chttp2/transport/internal.h +250 -298
  250. data/src/core/ext/transport/chttp2/transport/parsing.cc +365 -132
  251. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +30 -30
  252. data/src/core/ext/transport/chttp2/transport/stream_map.cc +24 -24
  253. data/src/core/ext/transport/chttp2/transport/stream_map.h +34 -33
  254. data/src/core/ext/transport/chttp2/transport/varint.cc +19 -20
  255. data/src/core/ext/transport/chttp2/transport/varint.h +39 -34
  256. data/src/core/ext/transport/chttp2/transport/writing.cc +144 -106
  257. data/src/core/ext/transport/inproc/inproc_plugin.cc +17 -18
  258. data/src/core/ext/transport/inproc/inproc_transport.cc +227 -274
  259. data/src/core/ext/transport/inproc/inproc_transport.h +23 -21
  260. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +27 -24
  261. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +173 -73
  262. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +39 -36
  263. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +210 -85
  264. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +29 -344
  265. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +189 -1489
  266. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +388 -0
  267. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1953 -0
  268. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +5 -5
  269. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +38 -17
  270. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +9 -7
  271. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +56 -13
  272. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +7 -7
  273. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +24 -2
  274. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +4 -4
  275. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +19 -6
  276. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +4 -4
  277. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +15 -2
  278. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +49 -46
  279. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +229 -82
  280. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +3 -3
  281. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +16 -4
  282. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +12 -12
  283. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +40 -8
  284. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +5 -5
  285. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +26 -4
  286. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +55 -55
  287. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +379 -140
  288. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +140 -126
  289. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +824 -301
  290. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +24 -18
  291. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +114 -29
  292. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +195 -191
  293. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +1042 -412
  294. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +3 -3
  295. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +16 -4
  296. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +44 -24
  297. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +171 -42
  298. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +72 -63
  299. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +517 -202
  300. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +61 -36
  301. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +333 -66
  302. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +5 -4
  303. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +20 -6
  304. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +93 -91
  305. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +615 -213
  306. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +76 -33
  307. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +417 -79
  308. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +2 -2
  309. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +20 -8
  310. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +5 -25
  311. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +16 -93
  312. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +5 -5
  313. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +38 -17
  314. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +70 -68
  315. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +447 -157
  316. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +98 -66
  317. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +545 -191
  318. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +4 -4
  319. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +33 -13
  320. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +108 -87
  321. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +502 -149
  322. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +2 -2
  323. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +9 -2
  324. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +6 -6
  325. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +42 -17
  326. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +24 -9
  327. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +110 -18
  328. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +8 -8
  329. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +64 -26
  330. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +4 -4
  331. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +20 -6
  332. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +18 -18
  333. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +118 -49
  334. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +39 -32
  335. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +242 -87
  336. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +32 -32
  337. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +226 -105
  338. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +2 -2
  339. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +13 -4
  340. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +86 -53
  341. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +475 -141
  342. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +56 -50
  343. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +379 -160
  344. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +16 -12
  345. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +77 -16
  346. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +9 -6
  347. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +50 -8
  348. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +5 -5
  349. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +26 -6
  350. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +33 -32
  351. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +253 -102
  352. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +34 -34
  353. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +229 -92
  354. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +74 -55
  355. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +494 -160
  356. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +38 -30
  357. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +232 -124
  358. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +458 -351
  359. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +2879 -947
  360. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +11 -11
  361. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +67 -22
  362. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +79 -54
  363. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +454 -133
  364. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +5 -4
  365. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +21 -2
  366. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +3 -3
  367. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +16 -4
  368. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +5 -5
  369. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +38 -14
  370. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +5 -5
  371. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +33 -14
  372. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +17 -16
  373. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +89 -38
  374. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +47 -0
  375. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +107 -0
  376. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +2 -2
  377. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +13 -4
  378. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +8 -8
  379. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +58 -21
  380. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +1 -0
  381. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +1 -0
  382. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +9 -9
  383. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +50 -16
  384. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +9 -8
  385. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +43 -10
  386. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +2 -2
  387. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +16 -8
  388. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +15 -15
  389. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +101 -38
  390. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +25 -25
  391. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +167 -71
  392. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +16 -8
  393. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +88 -16
  394. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +14 -11
  395. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +71 -17
  396. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +62 -0
  397. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +179 -0
  398. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +184 -144
  399. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1091 -361
  400. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +46 -0
  401. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +98 -0
  402. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c +54 -0
  403. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +188 -0
  404. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +111 -0
  405. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +444 -0
  406. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +56 -0
  407. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +192 -0
  408. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +46 -0
  409. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +98 -0
  410. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +56 -48
  411. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +327 -130
  412. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +13 -13
  413. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +88 -31
  414. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +83 -56
  415. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +472 -136
  416. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +5 -5
  417. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +35 -13
  418. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +1 -1
  419. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +6 -2
  420. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +171 -54
  421. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +917 -134
  422. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +8 -8
  423. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +59 -25
  424. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +33 -33
  425. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +205 -76
  426. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +4 -4
  427. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +23 -8
  428. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +8 -8
  429. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +62 -25
  430. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +47 -0
  431. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +113 -0
  432. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +8 -8
  433. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +36 -8
  434. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +7 -7
  435. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +55 -22
  436. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +3 -3
  437. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +26 -11
  438. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +3 -3
  439. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +30 -11
  440. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +2 -2
  441. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +20 -8
  442. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +8 -8
  443. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +58 -22
  444. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +43 -0
  445. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +114 -0
  446. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +9 -9
  447. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +82 -29
  448. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +5 -5
  449. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +49 -22
  450. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +12 -12
  451. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +99 -36
  452. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +16 -16
  453. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +118 -44
  454. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +20 -20
  455. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +120 -40
  456. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +7 -7
  457. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +46 -16
  458. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +2 -2
  459. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +9 -2
  460. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +5 -5
  461. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +25 -8
  462. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +9 -9
  463. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +36 -6
  464. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +63 -0
  465. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +202 -0
  466. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +3 -1
  467. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +4 -4
  468. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +15 -2
  469. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +5 -5
  470. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +23 -6
  471. data/src/core/ext/upb-generated/google/api/annotations.upb.c +3 -3
  472. data/src/core/ext/upb-generated/google/api/annotations.upb.h +17 -2
  473. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +70 -66
  474. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +477 -185
  475. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +80 -74
  476. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +512 -182
  477. data/src/core/ext/upb-generated/google/api/http.upb.c +17 -17
  478. data/src/core/ext/upb-generated/google/api/http.upb.h +134 -49
  479. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +4 -4
  480. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +25 -9
  481. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +3 -3
  482. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +12 -2
  483. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +183 -181
  484. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +1332 -488
  485. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +3 -3
  486. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +16 -6
  487. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +1 -1
  488. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +6 -2
  489. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +15 -15
  490. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +126 -46
  491. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +3 -3
  492. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +16 -6
  493. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +18 -18
  494. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +81 -18
  495. data/src/core/ext/upb-generated/google/rpc/status.upb.c +4 -4
  496. data/src/core/ext/upb-generated/google/rpc/status.upb.h +25 -9
  497. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +15 -15
  498. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +89 -30
  499. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +12 -12
  500. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +55 -14
  501. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +69 -65
  502. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +424 -169
  503. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +8 -7
  504. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +32 -8
  505. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +4 -4
  506. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +18 -4
  507. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +31 -31
  508. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +204 -76
  509. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +11 -11
  510. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +63 -22
  511. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +175 -0
  512. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +792 -0
  513. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +22 -22
  514. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +115 -16
  515. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +6 -6
  516. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +29 -4
  517. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +3 -3
  518. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +10 -2
  519. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +6 -6
  520. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +33 -8
  521. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +5 -5
  522. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +26 -4
  523. data/src/core/ext/upb-generated/validate/validate.upb.c +264 -253
  524. data/src/core/ext/upb-generated/validate/validate.upb.h +1974 -709
  525. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +22 -22
  526. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +115 -16
  527. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +6 -6
  528. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +29 -4
  529. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +3 -3
  530. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +10 -2
  531. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +18 -18
  532. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +94 -18
  533. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +5 -5
  534. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +26 -4
  535. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +2 -2
  536. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +9 -2
  537. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +47 -0
  538. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +107 -0
  539. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +8 -8
  540. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +50 -16
  541. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +5 -5
  542. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +33 -12
  543. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +3 -3
  544. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +16 -4
  545. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +5 -5
  546. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +27 -10
  547. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +10 -10
  548. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +83 -34
  549. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +5 -5
  550. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +22 -4
  551. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +14 -13
  552. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +84 -28
  553. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +46 -0
  554. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +113 -0
  555. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +46 -0
  556. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +98 -0
  557. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +62 -0
  558. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +174 -0
  559. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +36 -0
  560. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +74 -0
  561. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +65 -0
  562. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +191 -0
  563. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +43 -39
  564. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +309 -121
  565. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +127 -0
  566. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +474 -0
  567. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +4 -4
  568. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +31 -12
  569. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +9 -9
  570. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +82 -29
  571. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +67 -0
  572. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +214 -0
  573. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +64 -0
  574. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +208 -0
  575. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +3 -4
  576. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +16 -4
  577. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +54 -53
  578. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +67 -274
  579. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +0 -85
  580. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +277 -0
  581. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +125 -0
  582. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +14 -11
  583. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +107 -107
  584. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +199 -187
  585. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +50 -46
  586. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +149 -129
  587. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +0 -5
  588. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +16 -12
  589. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +95 -75
  590. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +5 -0
  591. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +187 -183
  592. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +129 -94
  593. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +10 -0
  594. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +18 -33
  595. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +0 -5
  596. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +168 -154
  597. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +5 -0
  598. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +190 -186
  599. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +7 -3
  600. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +5 -0
  601. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +16 -16
  602. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +71 -66
  603. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +164 -137
  604. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +5 -0
  605. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +141 -138
  606. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +16 -12
  607. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +39 -31
  608. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +140 -129
  609. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +5 -0
  610. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +82 -68
  611. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +2 -2
  612. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +828 -747
  613. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +20 -0
  614. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +150 -139
  615. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +5 -0
  616. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +16 -14
  617. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +48 -0
  618. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +35 -0
  619. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +16 -12
  620. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +20 -18
  621. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +46 -25
  622. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +53 -42
  623. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +60 -0
  624. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +40 -0
  625. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +483 -445
  626. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +5 -0
  627. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +50 -0
  628. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +35 -0
  629. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +21 -18
  630. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +211 -193
  631. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +5 -0
  632. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +156 -84
  633. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +35 -0
  634. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +113 -113
  635. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +48 -0
  636. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +35 -0
  637. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +29 -28
  638. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +40 -0
  639. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +40 -0
  640. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +69 -0
  641. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +40 -0
  642. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +10 -9
  643. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +92 -90
  644. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +99 -0
  645. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +75 -0
  646. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +45 -0
  647. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +35 -0
  648. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +43 -0
  649. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +35 -0
  650. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +51 -0
  651. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +40 -0
  652. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +36 -0
  653. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +35 -0
  654. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +55 -0
  655. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +40 -0
  656. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +9 -9
  657. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +71 -0
  658. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +60 -0
  659. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +60 -0
  660. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +40 -0
  661. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +36 -0
  662. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +45 -0
  663. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +4 -7
  664. data/src/core/ext/xds/certificate_provider_store.cc +75 -3
  665. data/src/core/ext/xds/certificate_provider_store.h +30 -4
  666. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +17 -10
  667. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +12 -4
  668. data/src/core/ext/xds/upb_utils.h +3 -25
  669. data/src/core/ext/xds/xds_api.cc +106 -192
  670. data/src/core/ext/xds/xds_api.h +41 -39
  671. data/src/core/ext/xds/xds_bootstrap.cc +5 -537
  672. data/src/core/ext/xds/xds_bootstrap.h +42 -95
  673. data/src/core/ext/xds/xds_bootstrap_grpc.cc +362 -0
  674. data/src/core/ext/xds/xds_bootstrap_grpc.h +184 -0
  675. data/src/core/ext/xds/xds_certificate_provider.cc +36 -25
  676. data/src/core/ext/xds/xds_certificate_provider.h +36 -4
  677. data/src/core/ext/xds/xds_channel_args.h +3 -3
  678. data/src/core/ext/xds/xds_channel_stack_modifier.cc +17 -7
  679. data/src/core/ext/xds/xds_channel_stack_modifier.h +16 -4
  680. data/src/core/ext/xds/xds_client.cc +885 -1360
  681. data/src/core/ext/xds/xds_client.h +69 -65
  682. data/src/core/ext/xds/xds_client_grpc.cc +235 -0
  683. data/src/core/ext/xds/xds_client_grpc.h +79 -0
  684. data/src/core/ext/xds/xds_client_stats.cc +24 -25
  685. data/src/core/ext/xds/xds_client_stats.h +26 -24
  686. data/src/core/ext/xds/xds_cluster.cc +505 -247
  687. data/src/core/ext/xds/xds_cluster.h +69 -40
  688. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +132 -0
  689. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +97 -0
  690. data/src/core/ext/xds/xds_common_types.cc +238 -123
  691. data/src/core/ext/xds/xds_common_types.h +29 -16
  692. data/src/core/ext/xds/xds_endpoint.cc +266 -156
  693. data/src/core/ext/xds/xds_endpoint.h +19 -15
  694. data/src/core/ext/xds/xds_health_status.cc +80 -0
  695. data/src/core/ext/xds/xds_health_status.h +109 -0
  696. data/src/core/ext/xds/xds_http_fault_filter.cc +68 -59
  697. data/src/core/ext/xds/xds_http_fault_filter.h +19 -25
  698. data/src/core/ext/xds/xds_http_filters.cc +70 -71
  699. data/src/core/ext/xds/xds_http_filters.h +73 -25
  700. data/src/core/ext/xds/xds_http_rbac_filter.cc +168 -225
  701. data/src/core/ext/xds/xds_http_rbac_filter.h +22 -18
  702. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +218 -0
  703. data/src/core/ext/xds/xds_http_stateful_session_filter.h +58 -0
  704. data/src/core/ext/xds/xds_lb_policy_registry.cc +334 -0
  705. data/src/core/ext/xds/xds_lb_policy_registry.h +71 -0
  706. data/src/core/ext/xds/xds_listener.cc +573 -481
  707. data/src/core/ext/xds/xds_listener.h +57 -51
  708. data/src/core/ext/xds/xds_resource_type.h +28 -22
  709. data/src/core/ext/xds/xds_resource_type_impl.h +18 -17
  710. data/src/core/ext/xds/xds_route_config.cc +638 -479
  711. data/src/core/ext/xds/xds_route_config.h +79 -42
  712. data/src/core/ext/xds/xds_routing.cc +21 -7
  713. data/src/core/ext/xds/xds_routing.h +17 -12
  714. data/src/core/ext/xds/xds_server_config_fetcher.cc +244 -200
  715. data/src/core/ext/xds/xds_transport.h +86 -0
  716. data/src/core/ext/xds/xds_transport_grpc.cc +356 -0
  717. data/src/core/ext/xds/xds_transport_grpc.h +135 -0
  718. data/src/core/lib/address_utils/parse_address.cc +52 -52
  719. data/src/core/lib/address_utils/parse_address.h +46 -42
  720. data/src/core/lib/address_utils/sockaddr_utils.cc +90 -54
  721. data/src/core/lib/address_utils/sockaddr_utils.h +45 -40
  722. data/src/core/lib/avl/avl.h +100 -13
  723. data/src/core/lib/backoff/backoff.cc +19 -21
  724. data/src/core/lib/backoff/backoff.h +21 -21
  725. data/src/core/lib/channel/call_finalization.h +6 -4
  726. data/src/core/lib/channel/call_tracer.h +27 -9
  727. data/src/core/lib/channel/channel_args.cc +268 -101
  728. data/src/core/lib/channel/channel_args.h +461 -56
  729. data/src/core/lib/channel/channel_args_preconditioning.cc +6 -11
  730. data/src/core/lib/channel/channel_args_preconditioning.h +7 -7
  731. data/src/core/lib/channel/channel_fwd.h +26 -0
  732. data/src/core/lib/channel/channel_stack.cc +92 -52
  733. data/src/core/lib/channel/channel_stack.h +186 -140
  734. data/src/core/lib/channel/channel_stack_builder.cc +26 -104
  735. data/src/core/lib/channel/channel_stack_builder.h +45 -31
  736. data/src/core/lib/channel/channel_stack_builder_impl.cc +126 -0
  737. data/src/core/lib/channel/channel_stack_builder_impl.h +48 -0
  738. data/src/core/lib/channel/channel_trace.cc +29 -36
  739. data/src/core/lib/channel/channel_trace.h +27 -24
  740. data/src/core/lib/channel/channelz.cc +50 -65
  741. data/src/core/lib/channel/channelz.h +50 -33
  742. data/src/core/lib/channel/channelz_registry.cc +28 -36
  743. data/src/core/lib/channel/channelz_registry.h +31 -30
  744. data/src/core/lib/channel/connected_channel.cc +1267 -78
  745. data/src/core/lib/channel/connected_channel.h +22 -23
  746. data/src/core/lib/channel/context.h +25 -21
  747. data/src/core/lib/channel/promise_based_filter.cc +2155 -303
  748. data/src/core/lib/channel/promise_based_filter.h +636 -122
  749. data/src/core/lib/channel/status_util.cc +64 -17
  750. data/src/core/lib/channel/status_util.h +38 -24
  751. data/src/core/lib/compression/compression.cc +24 -19
  752. data/src/core/lib/compression/compression_internal.cc +89 -70
  753. data/src/core/lib/compression/compression_internal.h +28 -27
  754. data/src/core/lib/compression/message_compress.cc +28 -26
  755. data/src/core/lib/compression/message_compress.h +28 -29
  756. data/src/core/lib/config/core_configuration.cc +8 -1
  757. data/src/core/lib/config/core_configuration.h +86 -39
  758. data/src/core/lib/debug/event_log.cc +88 -0
  759. data/src/core/lib/debug/event_log.h +81 -0
  760. data/src/core/lib/debug/histogram_view.cc +69 -0
  761. data/src/core/lib/debug/histogram_view.h +37 -0
  762. data/src/core/lib/debug/stats.cc +48 -152
  763. data/src/core/lib/debug/stats.h +50 -57
  764. data/src/core/lib/debug/stats_data.cc +302 -649
  765. data/src/core/lib/debug/stats_data.h +293 -548
  766. data/src/core/lib/debug/trace.cc +18 -20
  767. data/src/core/lib/debug/trace.h +27 -48
  768. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +16 -17
  769. data/src/core/lib/event_engine/channel_args_endpoint_config.h +16 -9
  770. data/src/core/lib/event_engine/common_closures.h +71 -0
  771. data/src/core/lib/event_engine/default_event_engine.cc +99 -0
  772. data/src/core/lib/event_engine/default_event_engine.h +73 -0
  773. data/src/core/lib/event_engine/default_event_engine_factory.cc +24 -3
  774. data/src/core/lib/event_engine/{event_engine_factory.h → default_event_engine_factory.h} +6 -9
  775. data/src/core/lib/event_engine/event_engine.cc +3 -30
  776. data/src/core/lib/event_engine/executor/executor.h +38 -0
  777. data/src/core/lib/event_engine/forkable.cc +106 -0
  778. data/src/core/lib/event_engine/forkable.h +61 -0
  779. data/src/core/lib/event_engine/handle_containers.h +74 -0
  780. data/src/core/lib/event_engine/memory_allocator.cc +11 -3
  781. data/src/core/lib/event_engine/poller.h +62 -0
  782. data/src/core/lib/event_engine/posix.h +158 -0
  783. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +642 -0
  784. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +139 -0
  785. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +899 -0
  786. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +97 -0
  787. data/src/core/lib/event_engine/posix_engine/event_poller.h +111 -0
  788. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +74 -0
  789. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +33 -0
  790. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +77 -0
  791. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +179 -0
  792. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +265 -0
  793. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +73 -0
  794. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +1305 -0
  795. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +717 -0
  796. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +640 -0
  797. data/src/core/lib/event_engine/posix_engine/posix_engine.h +259 -0
  798. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +80 -0
  799. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +289 -0
  800. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +279 -0
  801. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +379 -0
  802. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +91 -0
  803. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +853 -0
  804. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +316 -0
  805. data/src/core/lib/event_engine/posix_engine/timer.cc +311 -0
  806. data/src/core/lib/event_engine/posix_engine/timer.h +194 -0
  807. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +107 -0
  808. data/src/core/lib/event_engine/posix_engine/timer_heap.h +56 -0
  809. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +173 -0
  810. data/src/core/lib/event_engine/posix_engine/timer_manager.h +114 -0
  811. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +332 -0
  812. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +185 -0
  813. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +127 -0
  814. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +45 -0
  815. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +150 -0
  816. data/src/core/lib/{iomgr/event_engine/promise.h → event_engine/posix_engine/wakeup_fd_pipe.h} +19 -25
  817. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +76 -0
  818. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +67 -0
  819. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +37 -0
  820. data/src/core/lib/event_engine/resolved_address.cc +23 -2
  821. data/src/core/lib/{iomgr/event_engine → event_engine}/resolved_address_internal.h +5 -8
  822. data/src/core/lib/event_engine/shim.cc +56 -0
  823. data/src/core/lib/event_engine/shim.h +33 -0
  824. data/src/core/lib/event_engine/slice.cc +103 -0
  825. data/src/core/lib/event_engine/slice_buffer.cc +50 -0
  826. data/src/core/lib/event_engine/tcp_socket_utils.cc +389 -0
  827. data/src/core/lib/event_engine/tcp_socket_utils.h +90 -0
  828. data/src/core/lib/event_engine/thread_local.cc +29 -0
  829. data/src/core/lib/event_engine/thread_local.h +32 -0
  830. data/src/core/lib/event_engine/thread_pool.cc +253 -0
  831. data/src/core/lib/event_engine/thread_pool.h +141 -0
  832. data/src/core/lib/event_engine/time_util.cc +30 -0
  833. data/src/core/lib/event_engine/time_util.h +32 -0
  834. data/src/core/{ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc → lib/event_engine/trace.cc} +9 -13
  835. data/src/core/lib/event_engine/trace.h +43 -0
  836. data/src/core/lib/event_engine/utils.cc +44 -0
  837. data/src/core/lib/event_engine/utils.h +44 -0
  838. data/src/core/lib/event_engine/windows/iocp.cc +140 -0
  839. data/src/core/lib/event_engine/windows/iocp.h +69 -0
  840. data/src/core/lib/event_engine/windows/win_socket.cc +219 -0
  841. data/src/core/lib/event_engine/windows/win_socket.h +129 -0
  842. data/src/core/lib/event_engine/windows/windows_endpoint.cc +331 -0
  843. data/src/core/lib/event_engine/windows/windows_endpoint.h +103 -0
  844. data/src/core/lib/event_engine/windows/windows_engine.cc +388 -0
  845. data/src/core/lib/event_engine/windows/windows_engine.h +163 -0
  846. data/src/core/lib/experiments/config.cc +161 -0
  847. data/src/core/lib/experiments/config.h +53 -0
  848. data/src/core/lib/experiments/experiments.cc +81 -0
  849. data/src/core/lib/experiments/experiments.h +117 -0
  850. data/src/core/lib/gpr/alloc.cc +19 -25
  851. data/src/core/lib/gpr/alloc.h +20 -20
  852. data/src/core/lib/gpr/atm.cc +17 -17
  853. data/src/core/lib/gpr/cpu_iphone.cc +24 -24
  854. data/src/core/lib/gpr/cpu_linux.cc +28 -23
  855. data/src/core/lib/gpr/cpu_posix.cc +23 -22
  856. data/src/core/lib/gpr/cpu_windows.cc +20 -18
  857. data/src/core/lib/gpr/log.cc +30 -17
  858. data/src/core/lib/gpr/log_android.cc +22 -20
  859. data/src/core/lib/gpr/log_linux.cc +24 -24
  860. data/src/core/lib/gpr/log_posix.cc +20 -19
  861. data/src/core/lib/gpr/log_windows.cc +25 -25
  862. data/src/core/lib/gpr/spinlock.h +20 -20
  863. data/src/core/lib/gpr/string.cc +25 -24
  864. data/src/core/lib/gpr/string.h +61 -61
  865. data/src/core/lib/gpr/string_posix.cc +24 -24
  866. data/src/core/lib/gpr/string_util_windows.cc +25 -52
  867. data/src/core/lib/gpr/string_windows.cc +24 -24
  868. data/src/core/lib/gpr/sync.cc +25 -25
  869. data/src/core/lib/gpr/sync_abseil.cc +36 -40
  870. data/src/core/lib/gpr/sync_posix.cc +22 -34
  871. data/src/core/lib/gpr/sync_windows.cc +29 -27
  872. data/src/core/lib/gpr/time.cc +34 -30
  873. data/src/core/lib/gpr/time_posix.cc +41 -45
  874. data/src/core/lib/gpr/time_precise.cc +22 -22
  875. data/src/core/lib/gpr/time_precise.h +21 -22
  876. data/src/core/lib/gpr/time_windows.cc +35 -29
  877. data/src/core/lib/gpr/tmpfile.h +24 -24
  878. data/src/core/lib/gpr/tmpfile_msys.cc +21 -20
  879. data/src/core/lib/gpr/tmpfile_posix.cc +22 -20
  880. data/src/core/lib/gpr/tmpfile_windows.cc +28 -29
  881. data/src/core/lib/gpr/useful.h +83 -30
  882. data/src/core/lib/gpr/wrap_memcpy.cc +23 -23
  883. data/src/core/lib/gprpp/atomic_utils.h +20 -20
  884. data/src/core/lib/gprpp/bitset.h +47 -17
  885. data/src/core/lib/gprpp/chunked_vector.h +7 -3
  886. data/src/core/lib/gprpp/construct_destruct.h +4 -3
  887. data/src/core/lib/gprpp/cpp_impl_of.h +7 -3
  888. data/src/core/{ext/xds/xds_resource_type.cc → lib/gprpp/crash.cc} +12 -12
  889. data/src/core/lib/gprpp/crash.h +34 -0
  890. data/src/core/lib/gprpp/debug_location.h +60 -31
  891. data/src/core/lib/gprpp/dual_ref_counted.h +4 -7
  892. data/src/core/lib/gprpp/env.h +53 -0
  893. data/src/core/lib/gprpp/env_linux.cc +80 -0
  894. data/src/core/{ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc → lib/gprpp/env_posix.cc} +25 -9
  895. data/src/core/lib/gprpp/env_windows.cc +56 -0
  896. data/src/core/lib/gprpp/examine_stack.cc +17 -17
  897. data/src/core/lib/gprpp/examine_stack.h +21 -22
  898. data/src/core/lib/gprpp/fork.cc +58 -53
  899. data/src/core/lib/gprpp/fork.h +29 -35
  900. data/src/core/lib/gprpp/global_config.h +22 -24
  901. data/src/core/lib/gprpp/global_config_custom.h +20 -20
  902. data/src/core/lib/gprpp/global_config_env.cc +28 -25
  903. data/src/core/lib/gprpp/global_config_env.h +29 -27
  904. data/src/core/lib/gprpp/global_config_generic.h +21 -25
  905. data/src/core/lib/gprpp/host_port.cc +30 -26
  906. data/src/core/lib/gprpp/host_port.h +32 -31
  907. data/src/core/lib/gprpp/load_file.cc +75 -0
  908. data/src/core/lib/gprpp/load_file.h +33 -0
  909. data/src/core/lib/gprpp/manual_constructor.h +21 -89
  910. data/src/core/lib/gprpp/match.h +75 -0
  911. data/src/core/lib/gprpp/memory.h +22 -26
  912. data/src/core/lib/gprpp/mpscq.cc +17 -17
  913. data/src/core/lib/gprpp/mpscq.h +21 -21
  914. data/src/core/lib/gprpp/no_destruct.h +95 -0
  915. data/src/core/lib/gprpp/notification.h +67 -0
  916. data/src/core/lib/gprpp/orphanable.h +22 -25
  917. data/src/core/lib/gprpp/overload.h +59 -0
  918. data/src/core/lib/gprpp/packed_table.h +40 -0
  919. data/src/core/lib/gprpp/per_cpu.h +46 -0
  920. data/src/core/lib/gprpp/ref_counted.h +24 -24
  921. data/src/core/lib/gprpp/ref_counted_ptr.h +42 -55
  922. data/src/core/lib/gprpp/single_set_ptr.h +87 -0
  923. data/src/core/lib/gprpp/sorted_pack.h +98 -0
  924. data/src/core/lib/gprpp/stat.h +3 -5
  925. data/src/core/lib/gprpp/stat_posix.cc +10 -4
  926. data/src/core/lib/gprpp/stat_windows.cc +4 -2
  927. data/src/core/lib/gprpp/status_helper.cc +56 -20
  928. data/src/core/lib/gprpp/status_helper.h +13 -5
  929. data/src/core/lib/gprpp/strerror.cc +43 -0
  930. data/src/core/lib/gprpp/strerror.h +29 -0
  931. data/src/core/lib/gprpp/sync.h +26 -24
  932. data/src/core/lib/gprpp/table.h +22 -4
  933. data/src/core/lib/gprpp/tchar.cc +49 -0
  934. data/src/core/lib/gprpp/tchar.h +33 -0
  935. data/src/core/lib/gprpp/thd.h +25 -28
  936. data/src/core/lib/gprpp/thd_posix.cc +33 -32
  937. data/src/core/lib/gprpp/thd_windows.cc +28 -26
  938. data/src/core/lib/gprpp/time.cc +64 -9
  939. data/src/core/lib/gprpp/time.h +79 -5
  940. data/src/core/lib/gprpp/time_averaged_stats.cc +60 -0
  941. data/src/core/lib/gprpp/time_averaged_stats.h +79 -0
  942. data/src/core/lib/gprpp/time_util.cc +4 -0
  943. data/src/core/lib/gprpp/time_util.h +3 -3
  944. data/src/core/lib/gprpp/unique_type_name.h +104 -0
  945. data/src/core/lib/gprpp/validation_errors.cc +61 -0
  946. data/src/core/lib/gprpp/validation_errors.h +127 -0
  947. data/src/core/lib/{iomgr → gprpp}/work_serializer.cc +34 -18
  948. data/src/core/lib/{iomgr → gprpp}/work_serializer.h +21 -28
  949. data/src/core/lib/handshaker/proxy_mapper.h +53 -0
  950. data/src/core/lib/handshaker/proxy_mapper_registry.cc +71 -0
  951. data/src/core/lib/handshaker/proxy_mapper_registry.h +75 -0
  952. data/src/core/lib/http/format_request.cc +54 -24
  953. data/src/core/lib/http/format_request.h +23 -21
  954. data/src/core/lib/http/httpcli.cc +139 -141
  955. data/src/core/lib/http/httpcli.h +86 -38
  956. data/src/core/lib/http/httpcli_security_connector.cc +53 -45
  957. data/src/core/lib/http/httpcli_ssl_credentials.h +6 -4
  958. data/src/core/lib/http/parser.cc +144 -85
  959. data/src/core/lib/http/parser.h +51 -35
  960. data/src/core/lib/iomgr/block_annotate.h +23 -23
  961. data/src/core/lib/iomgr/buffer_list.cc +156 -136
  962. data/src/core/lib/iomgr/buffer_list.h +123 -101
  963. data/src/core/lib/iomgr/call_combiner.cc +32 -64
  964. data/src/core/lib/iomgr/call_combiner.h +24 -25
  965. data/src/core/lib/iomgr/cfstream_handle.cc +33 -36
  966. data/src/core/lib/iomgr/cfstream_handle.h +25 -25
  967. data/src/core/lib/iomgr/{event_engine/pollset.h → closure.cc} +9 -7
  968. data/src/core/lib/iomgr/closure.h +95 -58
  969. data/src/core/lib/iomgr/combiner.cc +20 -39
  970. data/src/core/lib/iomgr/combiner.h +20 -20
  971. data/src/core/lib/iomgr/dualstack_socket_posix.cc +21 -21
  972. data/src/core/lib/iomgr/dynamic_annotations.h +22 -22
  973. data/src/core/lib/iomgr/endpoint.cc +21 -21
  974. data/src/core/lib/iomgr/endpoint.h +53 -51
  975. data/src/core/lib/iomgr/endpoint_cfstream.cc +51 -47
  976. data/src/core/lib/iomgr/endpoint_cfstream.h +32 -32
  977. data/src/core/lib/iomgr/endpoint_pair.h +20 -20
  978. data/src/core/lib/iomgr/endpoint_pair_posix.cc +34 -27
  979. data/src/core/lib/iomgr/endpoint_pair_windows.cc +30 -21
  980. data/src/core/lib/iomgr/error.cc +51 -834
  981. data/src/core/lib/iomgr/error.h +45 -317
  982. data/src/core/lib/iomgr/error_cfstream.cc +18 -23
  983. data/src/core/lib/iomgr/error_cfstream.h +21 -21
  984. data/src/core/lib/iomgr/ev_apple.cc +21 -21
  985. data/src/core/lib/iomgr/ev_apple.h +21 -21
  986. data/src/core/lib/iomgr/ev_epoll1_linux.cc +263 -248
  987. data/src/core/lib/iomgr/ev_epoll1_linux.h +21 -21
  988. data/src/core/lib/iomgr/ev_poll_posix.cc +296 -271
  989. data/src/core/lib/iomgr/ev_poll_posix.h +22 -22
  990. data/src/core/lib/iomgr/ev_posix.cc +88 -122
  991. data/src/core/lib/iomgr/ev_posix.h +93 -87
  992. data/src/core/lib/iomgr/ev_windows.cc +18 -18
  993. data/src/core/lib/iomgr/{event_engine → event_engine_shims}/closure.cc +15 -30
  994. data/src/core/lib/iomgr/{event_engine → event_engine_shims}/closure.h +10 -13
  995. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +430 -0
  996. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +43 -0
  997. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +91 -0
  998. data/src/core/lib/iomgr/event_engine_shims/tcp_client.h +44 -0
  999. data/src/core/lib/iomgr/exec_ctx.cc +34 -56
  1000. data/src/core/lib/iomgr/exec_ctx.h +152 -177
  1001. data/src/core/lib/iomgr/executor.cc +21 -31
  1002. data/src/core/lib/iomgr/executor.h +27 -30
  1003. data/src/core/lib/iomgr/fork_posix.cc +31 -28
  1004. data/src/core/lib/iomgr/fork_windows.cc +21 -21
  1005. data/src/core/lib/iomgr/gethostname.h +20 -20
  1006. data/src/core/lib/iomgr/gethostname_fallback.cc +17 -17
  1007. data/src/core/lib/iomgr/gethostname_host_name_max.cc +17 -17
  1008. data/src/core/lib/iomgr/gethostname_sysconf.cc +17 -17
  1009. data/src/core/lib/iomgr/grpc_if_nametoindex.h +22 -22
  1010. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +20 -19
  1011. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +20 -19
  1012. data/src/core/lib/iomgr/internal_errqueue.cc +41 -48
  1013. data/src/core/lib/iomgr/internal_errqueue.h +84 -89
  1014. data/src/core/lib/iomgr/iocp_windows.cc +23 -23
  1015. data/src/core/lib/iomgr/iocp_windows.h +21 -21
  1016. data/src/core/lib/iomgr/iomgr.cc +25 -20
  1017. data/src/core/lib/iomgr/iomgr.h +35 -35
  1018. data/src/core/lib/iomgr/iomgr_fwd.h +26 -0
  1019. data/src/core/lib/iomgr/iomgr_internal.cc +17 -17
  1020. data/src/core/lib/iomgr/iomgr_internal.h +28 -28
  1021. data/src/core/lib/iomgr/iomgr_posix.cc +21 -20
  1022. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +21 -19
  1023. data/src/core/lib/iomgr/iomgr_windows.cc +24 -22
  1024. data/src/core/lib/iomgr/load_file.cc +24 -27
  1025. data/src/core/lib/iomgr/load_file.h +22 -22
  1026. data/src/core/lib/iomgr/lockfree_event.cc +114 -131
  1027. data/src/core/lib/iomgr/lockfree_event.h +23 -23
  1028. data/src/core/lib/iomgr/nameser.h +86 -86
  1029. data/src/core/lib/iomgr/polling_entity.cc +25 -21
  1030. data/src/core/lib/iomgr/polling_entity.h +29 -29
  1031. data/src/core/lib/iomgr/pollset.cc +17 -17
  1032. data/src/core/lib/iomgr/pollset.h +55 -55
  1033. data/src/core/lib/iomgr/pollset_set.cc +17 -17
  1034. data/src/core/lib/iomgr/pollset_set.h +26 -28
  1035. data/src/core/lib/iomgr/pollset_set_windows.cc +18 -18
  1036. data/src/core/lib/iomgr/pollset_set_windows.h +20 -20
  1037. data/src/core/lib/iomgr/pollset_windows.cc +32 -31
  1038. data/src/core/lib/iomgr/pollset_windows.h +24 -24
  1039. data/src/core/lib/iomgr/port.h +59 -39
  1040. data/src/core/lib/iomgr/python_util.h +24 -24
  1041. data/src/core/lib/iomgr/resolve_address.cc +34 -20
  1042. data/src/core/lib/iomgr/resolve_address.h +73 -43
  1043. data/src/core/lib/iomgr/resolve_address_impl.h +7 -7
  1044. data/src/core/lib/iomgr/resolve_address_posix.cc +81 -62
  1045. data/src/core/lib/iomgr/resolve_address_posix.h +26 -10
  1046. data/src/core/lib/iomgr/resolve_address_windows.cc +64 -38
  1047. data/src/core/lib/iomgr/resolve_address_windows.h +26 -10
  1048. data/src/core/lib/iomgr/resolved_address.h +3 -3
  1049. data/src/core/lib/iomgr/sockaddr.h +25 -26
  1050. data/src/core/lib/iomgr/sockaddr_posix.h +23 -21
  1051. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +20 -18
  1052. data/src/core/lib/iomgr/sockaddr_windows.h +23 -21
  1053. data/src/core/lib/iomgr/socket_factory_posix.cc +18 -18
  1054. data/src/core/lib/iomgr/socket_factory_posix.h +32 -32
  1055. data/src/core/lib/iomgr/socket_mutator.cc +19 -18
  1056. data/src/core/lib/iomgr/socket_mutator.h +39 -39
  1057. data/src/core/lib/iomgr/socket_utils.h +27 -27
  1058. data/src/core/lib/iomgr/socket_utils_common_posix.cc +82 -101
  1059. data/src/core/lib/iomgr/socket_utils_linux.cc +18 -17
  1060. data/src/core/lib/iomgr/socket_utils_posix.cc +103 -19
  1061. data/src/core/lib/iomgr/socket_utils_posix.h +176 -84
  1062. data/src/core/lib/iomgr/socket_utils_windows.cc +20 -19
  1063. data/src/core/lib/iomgr/socket_windows.cc +37 -36
  1064. data/src/core/lib/iomgr/socket_windows.h +59 -61
  1065. data/src/core/lib/iomgr/systemd_utils.cc +116 -0
  1066. data/src/core/lib/iomgr/systemd_utils.h +33 -0
  1067. data/src/core/lib/iomgr/tcp_client.cc +28 -24
  1068. data/src/core/lib/iomgr/tcp_client.h +49 -38
  1069. data/src/core/lib/iomgr/tcp_client_cfstream.cc +46 -35
  1070. data/src/core/lib/iomgr/tcp_client_posix.cc +244 -106
  1071. data/src/core/lib/iomgr/tcp_client_posix.h +55 -52
  1072. data/src/core/lib/iomgr/tcp_client_windows.cc +73 -53
  1073. data/src/core/lib/iomgr/tcp_posix.cc +562 -361
  1074. data/src/core/lib/iomgr/tcp_posix.h +32 -30
  1075. data/src/core/lib/iomgr/tcp_server.cc +33 -24
  1076. data/src/core/lib/iomgr/tcp_server.h +78 -69
  1077. data/src/core/lib/iomgr/tcp_server_posix.cc +402 -145
  1078. data/src/core/lib/iomgr/tcp_server_utils_posix.h +68 -55
  1079. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +120 -82
  1080. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +46 -43
  1081. data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +19 -19
  1082. data/src/core/lib/iomgr/tcp_server_windows.cc +116 -118
  1083. data/src/core/lib/iomgr/tcp_windows.cc +116 -98
  1084. data/src/core/lib/iomgr/tcp_windows.h +34 -35
  1085. data/src/core/lib/iomgr/timer.cc +17 -17
  1086. data/src/core/lib/iomgr/timer.h +68 -68
  1087. data/src/core/lib/iomgr/timer_generic.cc +125 -134
  1088. data/src/core/lib/iomgr/timer_generic.h +21 -21
  1089. data/src/core/lib/iomgr/timer_heap.cc +25 -25
  1090. data/src/core/lib/iomgr/timer_heap.h +22 -22
  1091. data/src/core/lib/iomgr/timer_manager.cc +31 -31
  1092. data/src/core/lib/iomgr/timer_manager.h +27 -27
  1093. data/src/core/lib/iomgr/unix_sockets_posix.cc +20 -21
  1094. data/src/core/lib/iomgr/unix_sockets_posix.h +21 -21
  1095. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +19 -17
  1096. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +23 -23
  1097. data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +23 -23
  1098. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +29 -26
  1099. data/src/core/lib/iomgr/wakeup_fd_pipe.h +20 -20
  1100. data/src/core/lib/iomgr/wakeup_fd_posix.cc +33 -30
  1101. data/src/core/lib/iomgr/wakeup_fd_posix.h +52 -54
  1102. data/src/core/lib/json/json.h +23 -27
  1103. data/src/core/{ext/filters/http/message_compress/message_decompress_filter.h → lib/json/json_args.h} +13 -10
  1104. data/src/core/lib/json/json_channel_args.h +42 -0
  1105. data/src/core/lib/json/json_object_loader.cc +217 -0
  1106. data/src/core/lib/json/json_object_loader.h +634 -0
  1107. data/src/core/lib/json/json_reader.cc +123 -90
  1108. data/src/core/lib/json/json_util.cc +14 -34
  1109. data/src/core/lib/json/json_util.h +19 -10
  1110. data/src/core/lib/json/json_writer.cc +62 -57
  1111. data/src/core/{ext/filters/client_channel → lib/load_balancing}/lb_policy.cc +30 -60
  1112. data/src/core/{ext/filters/client_channel → lib/load_balancing}/lb_policy.h +47 -62
  1113. data/src/core/lib/load_balancing/lb_policy_factory.h +49 -0
  1114. data/src/core/lib/load_balancing/lb_policy_registry.cc +142 -0
  1115. data/src/core/lib/load_balancing/lb_policy_registry.h +82 -0
  1116. data/src/core/{ext/filters/client_channel → lib/load_balancing}/subchannel_interface.h +57 -52
  1117. data/src/core/lib/matchers/matchers.cc +12 -7
  1118. data/src/core/lib/matchers/matchers.h +5 -3
  1119. data/src/core/lib/promise/activity.cc +23 -8
  1120. data/src/core/lib/promise/activity.h +116 -58
  1121. data/src/core/lib/promise/arena_promise.h +115 -72
  1122. data/src/core/lib/promise/context.h +18 -11
  1123. data/src/core/lib/promise/detail/basic_join.h +197 -0
  1124. data/src/core/lib/promise/detail/basic_seq.h +28 -33
  1125. data/src/core/lib/promise/detail/promise_factory.h +61 -14
  1126. data/src/core/lib/promise/detail/promise_like.h +3 -3
  1127. data/src/core/lib/promise/detail/status.h +33 -4
  1128. data/src/core/lib/promise/detail/switch.h +21 -21
  1129. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +23 -15
  1130. data/src/core/lib/promise/if.h +195 -0
  1131. data/src/core/lib/promise/interceptor_list.h +308 -0
  1132. data/src/core/lib/promise/intra_activity_waiter.h +55 -0
  1133. data/src/core/lib/promise/latch.h +191 -0
  1134. data/src/core/lib/promise/loop.h +13 -9
  1135. data/src/core/lib/promise/map.h +4 -6
  1136. data/src/core/lib/promise/pipe.h +608 -0
  1137. data/src/core/lib/promise/poll.h +129 -11
  1138. data/src/core/lib/promise/promise.h +5 -5
  1139. data/src/core/lib/promise/race.h +6 -10
  1140. data/src/core/lib/promise/seq.h +32 -14
  1141. data/src/core/lib/promise/sleep.cc +58 -42
  1142. data/src/core/lib/promise/sleep.h +44 -26
  1143. data/src/core/lib/promise/trace.cc +20 -0
  1144. data/src/core/{ext/filters/max_age/max_age_filter.h → lib/promise/trace.h} +6 -8
  1145. data/src/core/lib/promise/try_join.h +82 -0
  1146. data/src/core/lib/promise/try_seq.h +41 -23
  1147. data/src/core/lib/resolver/resolver.cc +17 -59
  1148. data/src/core/lib/resolver/resolver.h +21 -18
  1149. data/src/core/lib/resolver/resolver_factory.h +11 -10
  1150. data/src/core/lib/resolver/resolver_registry.cc +17 -9
  1151. data/src/core/lib/resolver/resolver_registry.h +15 -5
  1152. data/src/core/lib/resolver/server_address.cc +46 -34
  1153. data/src/core/lib/resolver/server_address.h +36 -35
  1154. data/src/core/lib/resource_quota/api.cc +25 -29
  1155. data/src/core/lib/resource_quota/api.h +14 -5
  1156. data/src/core/lib/resource_quota/arena.cc +85 -27
  1157. data/src/core/lib/resource_quota/arena.h +197 -25
  1158. data/src/core/lib/resource_quota/memory_quota.cc +322 -101
  1159. data/src/core/lib/resource_quota/memory_quota.h +191 -56
  1160. data/src/core/lib/resource_quota/periodic_update.cc +78 -0
  1161. data/src/core/lib/resource_quota/periodic_update.h +71 -0
  1162. data/src/core/lib/resource_quota/resource_quota.h +20 -4
  1163. data/src/core/lib/resource_quota/thread_quota.cc +2 -0
  1164. data/src/core/lib/resource_quota/thread_quota.h +7 -3
  1165. data/src/core/lib/resource_quota/trace.h +3 -3
  1166. data/src/core/lib/security/authorization/authorization_engine.h +3 -3
  1167. data/src/core/lib/security/authorization/authorization_policy_provider.h +17 -3
  1168. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +3 -0
  1169. data/src/core/lib/security/authorization/evaluate_args.cc +17 -8
  1170. data/src/core/lib/security/authorization/evaluate_args.h +9 -6
  1171. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +5 -1
  1172. data/src/core/lib/security/authorization/grpc_authorization_engine.h +10 -3
  1173. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +26 -13
  1174. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +20 -10
  1175. data/src/core/lib/security/authorization/matchers.cc +44 -30
  1176. data/src/core/lib/security/authorization/matchers.h +10 -3
  1177. data/src/core/lib/security/authorization/rbac_policy.cc +6 -2
  1178. data/src/core/lib/security/authorization/rbac_policy.h +10 -3
  1179. data/src/core/{ext/xds → lib/security/certificate_provider}/certificate_provider_factory.h +9 -4
  1180. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +60 -0
  1181. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +70 -0
  1182. data/src/core/lib/security/context/security_context.cc +27 -25
  1183. data/src/core/lib/security/context/security_context.h +64 -35
  1184. data/src/core/lib/security/credentials/alts/alts_credentials.cc +35 -27
  1185. data/src/core/lib/security/credentials/alts/alts_credentials.h +65 -57
  1186. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +19 -19
  1187. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +43 -43
  1188. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +17 -17
  1189. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +18 -17
  1190. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +18 -17
  1191. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +20 -22
  1192. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +18 -18
  1193. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +38 -39
  1194. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +19 -22
  1195. data/src/core/lib/security/credentials/call_creds_util.cc +13 -3
  1196. data/src/core/lib/security/credentials/call_creds_util.h +6 -5
  1197. data/src/core/lib/security/credentials/channel_creds_registry.h +10 -4
  1198. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +13 -3
  1199. data/src/core/lib/security/credentials/composite/composite_credentials.cc +46 -41
  1200. data/src/core/lib/security/credentials/composite/composite_credentials.h +51 -38
  1201. data/src/core/lib/security/credentials/credentials.cc +23 -26
  1202. data/src/core/lib/security/credentials/credentials.h +91 -94
  1203. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +202 -74
  1204. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +21 -3
  1205. data/src/core/lib/security/credentials/external/aws_request_signer.cc +14 -3
  1206. data/src/core/lib/security/credentials/external/aws_request_signer.h +3 -3
  1207. data/src/core/lib/security/credentials/external/external_account_credentials.cc +86 -68
  1208. data/src/core/lib/security/credentials/external/external_account_credentials.h +14 -3
  1209. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +29 -26
  1210. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +9 -3
  1211. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +44 -31
  1212. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +13 -3
  1213. data/src/core/lib/security/credentials/fake/fake_credentials.cc +48 -48
  1214. data/src/core/lib/security/credentials/fake/fake_credentials.h +57 -47
  1215. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +23 -25
  1216. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +148 -112
  1217. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +35 -29
  1218. data/src/core/lib/security/credentials/iam/iam_credentials.cc +35 -24
  1219. data/src/core/lib/security/credentials/iam/iam_credentials.h +37 -23
  1220. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +32 -29
  1221. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +61 -0
  1222. data/src/core/lib/security/credentials/jwt/json_token.cc +40 -29
  1223. data/src/core/lib/security/credentials/jwt/json_token.h +36 -36
  1224. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +37 -30
  1225. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +41 -23
  1226. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +113 -89
  1227. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +49 -47
  1228. data/src/core/lib/security/credentials/local/local_credentials.cc +36 -30
  1229. data/src/core/lib/security/credentials/local/local_credentials.h +36 -26
  1230. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +107 -91
  1231. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +56 -27
  1232. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +42 -36
  1233. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +55 -29
  1234. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +48 -44
  1235. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +43 -23
  1236. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +22 -30
  1237. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +16 -17
  1238. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +65 -48
  1239. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +69 -9
  1240. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +44 -4
  1241. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +75 -13
  1242. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +22 -23
  1243. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +69 -98
  1244. data/src/core/lib/security/credentials/tls/tls_credentials.cc +55 -50
  1245. data/src/core/lib/security/credentials/tls/tls_credentials.h +33 -30
  1246. data/src/core/lib/security/credentials/tls/tls_utils.cc +5 -1
  1247. data/src/core/lib/security/credentials/tls/tls_utils.h +4 -4
  1248. data/src/core/lib/security/credentials/xds/xds_credentials.cc +77 -81
  1249. data/src/core/lib/security/credentials/xds/xds_credentials.h +50 -10
  1250. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +60 -54
  1251. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +49 -47
  1252. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +75 -79
  1253. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +25 -26
  1254. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +15 -6
  1255. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +26 -15
  1256. data/src/core/lib/security/security_connector/load_system_roots.h +20 -20
  1257. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +22 -20
  1258. data/src/core/lib/security/security_connector/{load_system_roots_linux.cc → load_system_roots_supported.cc} +43 -38
  1259. data/src/core/lib/security/security_connector/load_system_roots_supported.h +45 -0
  1260. data/src/core/lib/security/security_connector/local/local_security_connector.cc +66 -49
  1261. data/src/core/lib/security/security_connector/local/local_security_connector.h +49 -46
  1262. data/src/core/lib/security/security_connector/security_connector.cc +37 -35
  1263. data/src/core/lib/security/security_connector/security_connector.h +67 -45
  1264. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +59 -48
  1265. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +44 -43
  1266. data/src/core/lib/security/security_connector/ssl_utils.cc +47 -39
  1267. data/src/core/lib/security/security_connector/ssl_utils.h +45 -42
  1268. data/src/core/lib/security/security_connector/ssl_utils_config.cc +22 -22
  1269. data/src/core/lib/security/security_connector/ssl_utils_config.h +21 -22
  1270. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +62 -58
  1271. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +48 -28
  1272. data/src/core/lib/security/transport/auth_filters.h +59 -30
  1273. data/src/core/lib/security/transport/client_auth_filter.cc +73 -48
  1274. data/src/core/lib/security/transport/secure_endpoint.cc +305 -181
  1275. data/src/core/lib/security/transport/secure_endpoint.h +29 -28
  1276. data/src/core/lib/security/transport/security_handshaker.cc +142 -110
  1277. data/src/core/lib/security/transport/security_handshaker.h +28 -23
  1278. data/src/core/lib/security/transport/server_auth_filter.cc +157 -266
  1279. data/src/core/lib/security/transport/tsi_error.cc +23 -20
  1280. data/src/core/lib/security/transport/tsi_error.h +20 -20
  1281. data/src/core/lib/security/util/json_util.cc +24 -24
  1282. data/src/core/lib/security/util/json_util.h +21 -23
  1283. data/src/core/lib/service_config/service_config.h +19 -12
  1284. data/src/core/lib/service_config/service_config_call_data.h +15 -5
  1285. data/src/core/lib/service_config/service_config_impl.cc +111 -150
  1286. data/src/core/lib/service_config/service_config_impl.h +27 -27
  1287. data/src/core/lib/service_config/service_config_parser.cc +16 -28
  1288. data/src/core/lib/service_config/service_config_parser.h +18 -19
  1289. data/src/core/lib/slice/b64.cc +26 -26
  1290. data/src/core/lib/slice/b64.h +34 -32
  1291. data/src/core/lib/slice/percent_encoding.cc +24 -30
  1292. data/src/core/lib/slice/percent_encoding.h +28 -34
  1293. data/src/core/lib/slice/slice.cc +59 -46
  1294. data/src/core/lib/slice/slice.h +64 -20
  1295. data/src/core/lib/slice/slice_buffer.cc +136 -76
  1296. data/src/core/lib/slice/slice_buffer.h +168 -0
  1297. data/src/core/lib/slice/slice_internal.h +38 -45
  1298. data/src/core/lib/slice/slice_refcount.cc +3 -18
  1299. data/src/core/lib/slice/slice_refcount.h +53 -19
  1300. data/src/core/lib/slice/slice_string_helpers.cc +17 -33
  1301. data/src/core/lib/slice/slice_string_helpers.h +23 -30
  1302. data/src/core/lib/surface/api_trace.cc +17 -17
  1303. data/src/core/lib/surface/api_trace.h +25 -25
  1304. data/src/core/lib/surface/builtins.cc +7 -2
  1305. data/src/core/lib/surface/builtins.h +3 -3
  1306. data/src/core/lib/surface/byte_buffer.cc +26 -21
  1307. data/src/core/lib/surface/byte_buffer_reader.cc +24 -24
  1308. data/src/core/lib/surface/call.cc +3000 -1131
  1309. data/src/core/lib/surface/call.h +135 -56
  1310. data/src/core/lib/surface/call_details.cc +22 -23
  1311. data/src/core/lib/surface/call_log_batch.cc +25 -18
  1312. data/src/core/lib/surface/call_test_only.h +34 -31
  1313. data/src/core/lib/surface/call_trace.cc +123 -0
  1314. data/src/core/lib/surface/call_trace.h +30 -0
  1315. data/src/core/lib/surface/channel.cc +218 -284
  1316. data/src/core/lib/surface/channel.h +137 -90
  1317. data/src/core/lib/surface/channel_init.cc +19 -20
  1318. data/src/core/lib/surface/channel_init.h +24 -26
  1319. data/src/core/lib/surface/channel_ping.cc +26 -20
  1320. data/src/core/lib/surface/channel_stack_type.cc +21 -19
  1321. data/src/core/lib/surface/channel_stack_type.h +22 -22
  1322. data/src/core/lib/surface/completion_queue.cc +200 -222
  1323. data/src/core/lib/surface/completion_queue.h +42 -40
  1324. data/src/core/lib/surface/completion_queue_factory.cc +34 -28
  1325. data/src/core/lib/surface/completion_queue_factory.h +21 -23
  1326. data/src/core/lib/surface/event_string.cc +19 -24
  1327. data/src/core/lib/surface/event_string.h +21 -21
  1328. data/src/core/lib/surface/init.cc +57 -114
  1329. data/src/core/lib/surface/init.h +20 -28
  1330. data/src/core/lib/surface/init_internally.cc +25 -0
  1331. data/src/core/lib/surface/init_internally.h +37 -0
  1332. data/src/core/lib/surface/lame_client.cc +87 -130
  1333. data/src/core/lib/surface/lame_client.h +62 -24
  1334. data/src/core/lib/surface/metadata_array.cc +18 -17
  1335. data/src/core/lib/surface/server.cc +409 -188
  1336. data/src/core/lib/surface/server.h +57 -26
  1337. data/src/core/lib/surface/validate_metadata.cc +34 -48
  1338. data/src/core/lib/surface/validate_metadata.h +24 -21
  1339. data/src/core/lib/surface/version.cc +21 -21
  1340. data/src/core/lib/transport/bdp_estimator.cc +19 -19
  1341. data/src/core/lib/transport/bdp_estimator.h +22 -24
  1342. data/src/core/lib/transport/connectivity_state.cc +24 -23
  1343. data/src/core/lib/transport/connectivity_state.h +24 -25
  1344. data/src/core/lib/transport/error_utils.cc +57 -79
  1345. data/src/core/lib/transport/error_utils.h +29 -25
  1346. data/src/core/lib/{channel → transport}/handshaker.cc +75 -58
  1347. data/src/core/lib/{channel → transport}/handshaker.h +59 -48
  1348. data/src/core/lib/transport/handshaker_factory.h +74 -0
  1349. data/src/core/lib/transport/handshaker_registry.cc +61 -0
  1350. data/src/core/lib/transport/handshaker_registry.h +69 -0
  1351. data/src/core/lib/transport/http2_errors.h +22 -22
  1352. data/src/core/{ext/filters/client_channel → lib/transport}/http_connect_handshaker.cc +78 -65
  1353. data/src/core/lib/transport/http_connect_handshaker.h +42 -0
  1354. data/src/core/lib/transport/metadata_batch.cc +305 -0
  1355. data/src/core/lib/transport/metadata_batch.h +269 -302
  1356. data/src/core/lib/transport/parsed_metadata.cc +2 -4
  1357. data/src/core/lib/transport/parsed_metadata.h +17 -8
  1358. data/src/core/lib/transport/pid_controller.cc +20 -20
  1359. data/src/core/lib/transport/pid_controller.h +27 -27
  1360. data/src/core/lib/transport/status_conversion.cc +23 -23
  1361. data/src/core/lib/transport/status_conversion.h +24 -24
  1362. data/src/core/lib/transport/tcp_connect_handshaker.cc +245 -0
  1363. data/src/core/lib/transport/tcp_connect_handshaker.h +39 -0
  1364. data/src/core/lib/transport/timeout_encoding.cc +24 -28
  1365. data/src/core/lib/transport/timeout_encoding.h +25 -21
  1366. data/src/core/lib/transport/transport.cc +97 -57
  1367. data/src/core/lib/transport/transport.h +252 -207
  1368. data/src/core/lib/transport/transport_fwd.h +20 -0
  1369. data/src/core/lib/transport/transport_impl.h +59 -48
  1370. data/src/core/lib/transport/transport_op_string.cc +40 -39
  1371. data/src/core/lib/uri/uri_parser.cc +12 -4
  1372. data/src/core/lib/uri/uri_parser.h +3 -5
  1373. data/src/core/plugin_registry/grpc_plugin_registry.cc +62 -73
  1374. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +20 -39
  1375. data/src/core/tsi/alts/crypt/aes_gcm.cc +20 -20
  1376. data/src/core/tsi/alts/crypt/gsec.cc +26 -26
  1377. data/src/core/tsi/alts/crypt/gsec.h +336 -336
  1378. data/src/core/tsi/alts/frame_protector/alts_counter.cc +23 -23
  1379. data/src/core/tsi/alts/frame_protector/alts_counter.h +68 -68
  1380. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +19 -19
  1381. data/src/core/tsi/alts/frame_protector/alts_crypter.h +209 -209
  1382. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +72 -71
  1383. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +40 -40
  1384. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +18 -18
  1385. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +82 -83
  1386. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +22 -22
  1387. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +22 -22
  1388. data/src/core/tsi/alts/frame_protector/frame_handler.cc +26 -25
  1389. data/src/core/tsi/alts/frame_protector/frame_handler.h +169 -169
  1390. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +117 -97
  1391. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +104 -104
  1392. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +18 -17
  1393. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +43 -44
  1394. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +53 -45
  1395. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +60 -60
  1396. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +24 -24
  1397. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +21 -20
  1398. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +38 -38
  1399. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +19 -19
  1400. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +105 -104
  1401. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +45 -44
  1402. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +40 -41
  1403. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +38 -36
  1404. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +35 -36
  1405. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +67 -68
  1406. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +32 -31
  1407. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +55 -56
  1408. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +54 -53
  1409. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +141 -142
  1410. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +67 -58
  1411. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +43 -44
  1412. data/src/core/tsi/fake_transport_security.cc +146 -110
  1413. data/src/core/tsi/fake_transport_security.h +36 -30
  1414. data/src/core/tsi/local_transport_security.cc +43 -38
  1415. data/src/core/tsi/local_transport_security.h +33 -33
  1416. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +9 -4
  1417. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +3 -3
  1418. data/src/core/tsi/ssl/session_cache/ssl_session.h +23 -21
  1419. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +21 -19
  1420. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +18 -17
  1421. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +31 -22
  1422. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +27 -20
  1423. data/src/core/tsi/ssl_transport_security.cc +356 -390
  1424. data/src/core/tsi/ssl_transport_security.h +210 -201
  1425. data/src/core/tsi/ssl_transport_security_utils.cc +250 -0
  1426. data/src/core/tsi/ssl_transport_security_utils.h +147 -0
  1427. data/src/core/tsi/ssl_types.h +27 -27
  1428. data/src/core/tsi/transport_security.cc +44 -32
  1429. data/src/core/tsi/transport_security.h +49 -48
  1430. data/src/core/tsi/transport_security_grpc.cc +23 -22
  1431. data/src/core/tsi/transport_security_grpc.h +44 -41
  1432. data/src/core/tsi/transport_security_interface.h +346 -332
  1433. data/src/ruby/ext/grpc/ext-export-truffleruby-with-ruby-abi-version.clang +2 -0
  1434. data/src/ruby/ext/grpc/ext-export-truffleruby-with-ruby-abi-version.gcc +7 -0
  1435. data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.clang +2 -0
  1436. data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.gcc +7 -0
  1437. data/src/ruby/ext/grpc/ext-export.gcc +1 -1
  1438. data/src/ruby/ext/grpc/extconf.rb +98 -20
  1439. data/src/ruby/ext/grpc/rb_call.c +1 -0
  1440. data/src/ruby/ext/grpc/rb_channel.c +1 -0
  1441. data/src/ruby/ext/grpc/rb_channel_args.c +1 -0
  1442. data/src/ruby/ext/grpc/rb_compression_options.c +1 -1
  1443. data/src/ruby/ext/grpc/rb_grpc.c +1 -0
  1444. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +38 -38
  1445. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +60 -60
  1446. data/src/ruby/ext/grpc/rb_loader.c +6 -2
  1447. data/src/ruby/lib/grpc/errors.rb +1 -1
  1448. data/src/ruby/lib/grpc/generic/active_call.rb +7 -1
  1449. data/src/ruby/lib/grpc/generic/bidi_call.rb +2 -0
  1450. data/src/ruby/lib/grpc/grpc.rb +1 -1
  1451. data/src/ruby/lib/grpc/version.rb +1 -1
  1452. data/src/ruby/pb/generate_proto_ruby.sh +1 -6
  1453. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +4 -0
  1454. data/src/ruby/pb/test/client.rb +769 -0
  1455. data/src/ruby/pb/test/server.rb +252 -0
  1456. data/src/ruby/pb/test/xds_client.rb +415 -0
  1457. data/src/ruby/spec/channel_spec.rb +5 -43
  1458. data/src/ruby/spec/client_server_spec.rb +20 -8
  1459. data/src/ruby/spec/generic/active_call_spec.rb +12 -3
  1460. data/src/ruby/spec/generic/client_stub_spec.rb +23 -23
  1461. data/src/ruby/spec/generic/server_interceptors_spec.rb +1 -1
  1462. data/src/ruby/spec/user_agent_spec.rb +1 -1
  1463. data/third_party/abseil-cpp/absl/algorithm/container.h +57 -58
  1464. data/third_party/abseil-cpp/absl/base/attributes.h +88 -41
  1465. data/third_party/abseil-cpp/absl/base/casts.h +61 -68
  1466. data/third_party/abseil-cpp/absl/base/config.h +221 -39
  1467. data/third_party/abseil-cpp/absl/base/internal/cycleclock.cc +12 -42
  1468. data/third_party/abseil-cpp/absl/base/internal/cycleclock.h +52 -2
  1469. data/third_party/abseil-cpp/absl/base/internal/cycleclock_config.h +55 -0
  1470. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +5 -4
  1471. data/third_party/abseil-cpp/absl/base/internal/endian.h +17 -62
  1472. data/third_party/abseil-cpp/absl/base/internal/fast_type_id.h +2 -0
  1473. data/third_party/abseil-cpp/absl/base/internal/inline_variable.h +3 -3
  1474. data/third_party/abseil-cpp/absl/base/internal/invoke.h +54 -0
  1475. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +2 -2
  1476. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +1 -1
  1477. data/third_party/abseil-cpp/absl/base/internal/prefetch.h +138 -0
  1478. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +39 -28
  1479. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +36 -36
  1480. data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +6 -3
  1481. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +10 -6
  1482. data/third_party/abseil-cpp/absl/base/internal/spinlock_linux.inc +2 -5
  1483. data/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +4 -1
  1484. data/third_party/abseil-cpp/absl/base/internal/strerror.cc +88 -0
  1485. data/third_party/abseil-cpp/absl/base/internal/strerror.h +39 -0
  1486. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +14 -11
  1487. data/third_party/abseil-cpp/absl/base/internal/thread_annotations.h +9 -0
  1488. data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +2 -1
  1489. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +4 -0
  1490. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +6 -7
  1491. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +12 -40
  1492. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +62 -0
  1493. data/third_party/abseil-cpp/absl/base/log_severity.cc +28 -0
  1494. data/third_party/abseil-cpp/absl/base/log_severity.h +51 -0
  1495. data/third_party/abseil-cpp/absl/base/macros.h +4 -21
  1496. data/third_party/abseil-cpp/absl/base/optimization.h +76 -16
  1497. data/third_party/abseil-cpp/absl/base/options.h +1 -7
  1498. data/third_party/abseil-cpp/absl/base/policy_checks.h +15 -13
  1499. data/third_party/abseil-cpp/absl/base/thread_annotations.h +2 -2
  1500. data/third_party/abseil-cpp/absl/cleanup/cleanup.h +140 -0
  1501. data/third_party/abseil-cpp/absl/cleanup/internal/cleanup.h +100 -0
  1502. data/third_party/abseil-cpp/absl/container/fixed_array.h +9 -5
  1503. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +11 -4
  1504. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +503 -0
  1505. data/third_party/abseil-cpp/absl/container/inlined_vector.h +84 -25
  1506. data/third_party/abseil-cpp/absl/container/internal/common.h +9 -8
  1507. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +132 -0
  1508. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +23 -29
  1509. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +4 -55
  1510. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +116 -23
  1511. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +40 -54
  1512. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +165 -66
  1513. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +159 -4
  1514. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1121 -470
  1515. data/third_party/abseil-cpp/absl/crc/crc32c.cc +99 -0
  1516. data/third_party/abseil-cpp/absl/crc/crc32c.h +183 -0
  1517. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +256 -0
  1518. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.h +57 -0
  1519. data/third_party/abseil-cpp/absl/crc/internal/crc.cc +468 -0
  1520. data/third_party/abseil-cpp/absl/crc/internal/crc.h +91 -0
  1521. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +269 -0
  1522. data/third_party/abseil-cpp/absl/crc/internal/crc32c.h +39 -0
  1523. data/third_party/abseil-cpp/absl/crc/internal/crc32c_inline.h +72 -0
  1524. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +130 -0
  1525. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h +159 -0
  1526. data/third_party/abseil-cpp/absl/crc/internal/crc_internal.h +179 -0
  1527. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy.h +119 -0
  1528. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +75 -0
  1529. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_64.cc +434 -0
  1530. data/third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +93 -0
  1531. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +725 -0
  1532. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h +79 -0
  1533. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +180 -0
  1534. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +45 -88
  1535. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +67 -38
  1536. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +1 -1
  1537. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +16 -13
  1538. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +3 -2
  1539. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +19 -12
  1540. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +8 -3
  1541. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +2 -1
  1542. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +1 -1
  1543. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +8 -3
  1544. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +59 -102
  1545. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +5 -4
  1546. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +41 -11
  1547. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +18 -4
  1548. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +6 -1
  1549. data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +3 -2
  1550. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +164 -101
  1551. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +7 -6
  1552. data/third_party/abseil-cpp/absl/functional/any_invocable.h +316 -0
  1553. data/third_party/abseil-cpp/absl/functional/bind_front.h +10 -1
  1554. data/third_party/abseil-cpp/absl/functional/function_ref.h +2 -1
  1555. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +878 -0
  1556. data/third_party/abseil-cpp/absl/hash/hash.h +82 -8
  1557. data/third_party/abseil-cpp/absl/hash/internal/city.cc +10 -10
  1558. data/third_party/abseil-cpp/absl/hash/internal/hash.h +235 -26
  1559. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +3 -14
  1560. data/third_party/abseil-cpp/absl/memory/memory.h +26 -447
  1561. data/third_party/abseil-cpp/absl/meta/type_traits.h +104 -12
  1562. data/third_party/abseil-cpp/absl/numeric/bits.h +1 -1
  1563. data/third_party/abseil-cpp/absl/numeric/int128.cc +14 -10
  1564. data/third_party/abseil-cpp/absl/numeric/int128.h +2 -2
  1565. data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +33 -10
  1566. data/third_party/abseil-cpp/absl/random/bernoulli_distribution.h +4 -4
  1567. data/third_party/abseil-cpp/absl/random/distributions.h +3 -3
  1568. data/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +3 -0
  1569. data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +4 -2
  1570. data/third_party/abseil-cpp/absl/random/internal/generate_real.h +2 -2
  1571. data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +59 -48
  1572. data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +3 -24
  1573. data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +9 -9
  1574. data/third_party/abseil-cpp/absl/random/internal/randen.h +5 -11
  1575. data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +6 -2
  1576. data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +48 -23
  1577. data/third_party/abseil-cpp/absl/random/internal/salted_seed_seq.h +24 -26
  1578. data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +2 -2
  1579. data/third_party/abseil-cpp/absl/random/internal/traits.h +53 -5
  1580. data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +5 -5
  1581. data/third_party/abseil-cpp/absl/random/internal/wide_multiply.h +33 -48
  1582. data/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h +9 -10
  1583. data/third_party/abseil-cpp/absl/random/poisson_distribution.h +7 -4
  1584. data/third_party/abseil-cpp/absl/random/random.h +6 -6
  1585. data/third_party/abseil-cpp/absl/random/seed_sequences.h +1 -0
  1586. data/third_party/abseil-cpp/absl/random/uniform_int_distribution.h +2 -2
  1587. data/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +1 -1
  1588. data/third_party/abseil-cpp/absl/random/zipf_distribution.h +4 -3
  1589. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +18 -0
  1590. data/third_party/abseil-cpp/absl/status/status.cc +193 -14
  1591. data/third_party/abseil-cpp/absl/status/status.h +24 -14
  1592. data/third_party/abseil-cpp/absl/status/statusor.h +9 -3
  1593. data/third_party/abseil-cpp/absl/strings/ascii.cc +5 -5
  1594. data/third_party/abseil-cpp/absl/strings/ascii.h +4 -4
  1595. data/third_party/abseil-cpp/absl/strings/charconv.cc +534 -96
  1596. data/third_party/abseil-cpp/absl/strings/cord.cc +257 -924
  1597. data/third_party/abseil-cpp/absl/strings/cord.h +268 -156
  1598. data/third_party/abseil-cpp/absl/strings/cord_analysis.cc +188 -0
  1599. data/third_party/abseil-cpp/absl/strings/cord_analysis.h +44 -0
  1600. data/third_party/abseil-cpp/absl/strings/cord_buffer.cc +30 -0
  1601. data/third_party/abseil-cpp/absl/strings/cord_buffer.h +575 -0
  1602. data/third_party/abseil-cpp/absl/strings/escaping.cc +73 -62
  1603. data/third_party/abseil-cpp/absl/strings/escaping.h +24 -19
  1604. data/third_party/abseil-cpp/absl/strings/internal/char_map.h +14 -12
  1605. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +4 -4
  1606. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +2 -2
  1607. data/third_party/abseil-cpp/absl/strings/internal/cord_data_edge.h +63 -0
  1608. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +20 -32
  1609. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +441 -150
  1610. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +157 -53
  1611. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +70 -73
  1612. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +8 -6
  1613. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h +4 -2
  1614. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc +3 -2
  1615. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h +5 -4
  1616. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +7 -74
  1617. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.cc +56 -0
  1618. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.h +103 -0
  1619. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +58 -17
  1620. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +13 -11
  1621. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +7 -15
  1622. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +3 -3
  1623. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +19 -43
  1624. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +7 -7
  1625. data/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +5 -4
  1626. data/third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h +4 -2
  1627. data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc +93 -0
  1628. data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h +34 -0
  1629. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +18 -15
  1630. data/third_party/abseil-cpp/absl/strings/internal/escaping.h +7 -9
  1631. data/third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h +55 -0
  1632. data/third_party/abseil-cpp/absl/strings/internal/memutil.cc +9 -6
  1633. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.cc +14 -7
  1634. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.h +35 -10
  1635. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +113 -46
  1636. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +127 -30
  1637. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +3 -2
  1638. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +42 -10
  1639. data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +56 -289
  1640. data/third_party/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h +351 -0
  1641. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +6 -6
  1642. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +9 -4
  1643. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +215 -181
  1644. data/third_party/abseil-cpp/absl/strings/internal/str_format/output.h +2 -1
  1645. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +10 -209
  1646. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +14 -103
  1647. data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +9 -6
  1648. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +2 -1
  1649. data/third_party/abseil-cpp/absl/strings/internal/string_constant.h +10 -2
  1650. data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.cc +28 -0
  1651. data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.h +57 -0
  1652. data/third_party/abseil-cpp/absl/strings/internal/utf8.cc +9 -9
  1653. data/third_party/abseil-cpp/absl/strings/numbers.cc +42 -39
  1654. data/third_party/abseil-cpp/absl/strings/numbers.h +26 -23
  1655. data/third_party/abseil-cpp/absl/strings/str_cat.cc +9 -6
  1656. data/third_party/abseil-cpp/absl/strings/str_cat.h +70 -16
  1657. data/third_party/abseil-cpp/absl/strings/str_format.h +71 -9
  1658. data/third_party/abseil-cpp/absl/strings/str_join.h +9 -15
  1659. data/third_party/abseil-cpp/absl/strings/str_split.h +1 -2
  1660. data/third_party/abseil-cpp/absl/strings/string_view.cc +8 -19
  1661. data/third_party/abseil-cpp/absl/strings/string_view.h +6 -12
  1662. data/third_party/abseil-cpp/absl/strings/strip.h +8 -6
  1663. data/third_party/abseil-cpp/absl/strings/substitute.cc +8 -6
  1664. data/third_party/abseil-cpp/absl/strings/substitute.h +55 -21
  1665. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +9 -6
  1666. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +0 -4
  1667. data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +20 -17
  1668. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +37 -31
  1669. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +22 -8
  1670. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +0 -4
  1671. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +1 -6
  1672. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +0 -25
  1673. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +10 -4
  1674. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +172 -88
  1675. data/third_party/abseil-cpp/absl/synchronization/mutex.h +102 -55
  1676. data/third_party/abseil-cpp/absl/synchronization/notification.cc +0 -1
  1677. data/third_party/abseil-cpp/absl/synchronization/notification.h +3 -3
  1678. data/third_party/abseil-cpp/absl/time/civil_time.cc +26 -0
  1679. data/third_party/abseil-cpp/absl/time/civil_time.h +25 -0
  1680. data/third_party/abseil-cpp/absl/time/clock.cc +17 -11
  1681. data/third_party/abseil-cpp/absl/time/duration.cc +12 -11
  1682. data/third_party/abseil-cpp/absl/time/format.cc +2 -1
  1683. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +11 -7
  1684. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1 -1
  1685. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +26 -5
  1686. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +7 -6
  1687. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +36 -35
  1688. data/third_party/abseil-cpp/absl/time/time.cc +2 -2
  1689. data/third_party/abseil-cpp/absl/time/time.h +268 -169
  1690. data/third_party/abseil-cpp/absl/types/internal/optional.h +8 -0
  1691. data/third_party/abseil-cpp/absl/types/internal/span.h +30 -19
  1692. data/third_party/abseil-cpp/absl/types/internal/variant.h +28 -40
  1693. data/third_party/abseil-cpp/absl/types/optional.h +17 -14
  1694. data/third_party/abseil-cpp/absl/types/span.h +31 -8
  1695. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +1 -1
  1696. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +1 -2
  1697. data/third_party/re2/re2/bitstate.cc +3 -3
  1698. data/third_party/re2/re2/dfa.cc +13 -13
  1699. data/third_party/re2/re2/nfa.cc +4 -4
  1700. data/third_party/re2/re2/onepass.cc +2 -2
  1701. data/third_party/re2/re2/prefilter_tree.cc +27 -59
  1702. data/third_party/re2/re2/prefilter_tree.h +3 -2
  1703. data/third_party/re2/re2/prog.cc +11 -2
  1704. data/third_party/re2/re2/prog.h +17 -5
  1705. data/third_party/re2/re2/re2.cc +6 -11
  1706. data/third_party/re2/re2/re2.h +1 -1
  1707. data/third_party/re2/re2/regexp.cc +1 -2
  1708. data/third_party/re2/re2/stringpiece.h +10 -7
  1709. data/third_party/re2/re2/unicode_casefold.cc +25 -11
  1710. data/third_party/re2/re2/unicode_groups.cc +319 -151
  1711. data/third_party/re2/re2/walker-inl.h +3 -2
  1712. data/third_party/re2/util/mutex.h +4 -4
  1713. data/third_party/upb/upb/arena.c +277 -0
  1714. data/third_party/upb/upb/arena.h +225 -0
  1715. data/third_party/upb/upb/array.c +114 -0
  1716. data/third_party/upb/upb/array.h +83 -0
  1717. data/third_party/upb/upb/collections.h +36 -0
  1718. data/third_party/upb/upb/decode.c +188 -76
  1719. data/third_party/upb/upb/decode.h +1 -0
  1720. data/third_party/upb/upb/decode_fast.c +1 -1
  1721. data/third_party/upb/upb/def.c +128 -57
  1722. data/third_party/upb/upb/def.h +20 -4
  1723. data/third_party/upb/upb/def.hpp +7 -4
  1724. data/third_party/upb/upb/encode.c +43 -28
  1725. data/third_party/upb/upb/encode.h +16 -6
  1726. data/third_party/upb/upb/extension_registry.c +93 -0
  1727. data/third_party/upb/upb/extension_registry.h +84 -0
  1728. data/third_party/upb/upb/{decode_internal.h → internal/decode.h} +5 -5
  1729. data/third_party/upb/upb/internal/table.h +385 -0
  1730. data/third_party/upb/upb/{upb_internal.h → internal/upb.h} +3 -3
  1731. data/third_party/upb/upb/internal/vsnprintf_compat.h +52 -0
  1732. data/third_party/upb/upb/json_decode.c +1512 -0
  1733. data/third_party/upb/upb/json_decode.h +47 -0
  1734. data/third_party/upb/upb/json_encode.c +780 -0
  1735. data/third_party/upb/upb/json_encode.h +65 -0
  1736. data/third_party/upb/upb/map.c +108 -0
  1737. data/third_party/upb/upb/map.h +117 -0
  1738. data/third_party/upb/upb/message_value.h +66 -0
  1739. data/third_party/upb/upb/mini_table.c +1147 -0
  1740. data/third_party/upb/upb/mini_table.h +189 -0
  1741. data/third_party/upb/upb/mini_table.hpp +112 -0
  1742. data/third_party/upb/upb/msg.c +6 -68
  1743. data/third_party/upb/upb/msg.h +2 -46
  1744. data/third_party/upb/upb/msg_internal.h +77 -58
  1745. data/third_party/upb/upb/port_def.inc +10 -1
  1746. data/third_party/upb/upb/port_undef.inc +2 -0
  1747. data/third_party/upb/upb/reflection.c +2 -159
  1748. data/third_party/upb/upb/reflection.h +2 -112
  1749. data/third_party/upb/upb/status.c +86 -0
  1750. data/third_party/upb/upb/status.h +66 -0
  1751. data/third_party/upb/upb/table.c +12 -8
  1752. data/third_party/upb/upb/table_internal.h +3 -350
  1753. data/third_party/upb/upb/text_encode.c +3 -2
  1754. data/third_party/upb/upb/upb.c +4 -290
  1755. data/third_party/upb/upb/upb.h +8 -167
  1756. data/third_party/zlib/compress.c +3 -3
  1757. data/third_party/zlib/crc32.c +975 -292
  1758. data/third_party/zlib/crc32.h +9441 -436
  1759. data/third_party/zlib/deflate.c +183 -129
  1760. data/third_party/zlib/deflate.h +12 -15
  1761. data/third_party/zlib/gzguts.h +3 -2
  1762. data/third_party/zlib/gzlib.c +6 -4
  1763. data/third_party/zlib/gzread.c +8 -12
  1764. data/third_party/zlib/gzwrite.c +26 -14
  1765. data/third_party/zlib/infback.c +12 -8
  1766. data/third_party/zlib/inffast.c +14 -14
  1767. data/third_party/zlib/inflate.c +44 -10
  1768. data/third_party/zlib/inflate.h +3 -2
  1769. data/third_party/zlib/inftrees.c +3 -3
  1770. data/third_party/zlib/inftrees.h +1 -1
  1771. data/third_party/zlib/trees.c +85 -107
  1772. data/third_party/zlib/uncompr.c +2 -2
  1773. data/third_party/zlib/zconf.h +16 -3
  1774. data/third_party/zlib/zlib.h +129 -106
  1775. data/third_party/zlib/zutil.c +11 -9
  1776. data/third_party/zlib/zutil.h +13 -9
  1777. metadata +424 -135
  1778. data/include/grpc/impl/codegen/gpr_slice.h +0 -71
  1779. data/src/core/ext/filters/client_channel/http_connect_handshaker.h +0 -42
  1780. data/src/core/ext/filters/client_channel/lb_policy_factory.h +0 -48
  1781. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +0 -185
  1782. data/src/core/ext/filters/client_channel/lb_policy_registry.h +0 -65
  1783. data/src/core/ext/filters/client_channel/proxy_mapper.h +0 -54
  1784. data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +0 -89
  1785. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +0 -50
  1786. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +0 -186
  1787. data/src/core/ext/filters/client_idle/client_idle_filter.cc +0 -201
  1788. data/src/core/ext/filters/fault_injection/service_config_parser.cc +0 -179
  1789. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +0 -456
  1790. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +0 -53
  1791. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +0 -386
  1792. data/src/core/ext/filters/max_age/max_age_filter.cc +0 -566
  1793. data/src/core/ext/filters/server_config_selector/server_config_selector.cc +0 -67
  1794. data/src/core/ext/xds/certificate_provider_registry.cc +0 -103
  1795. data/src/core/ext/xds/certificate_provider_registry.h +0 -57
  1796. data/src/core/lib/channel/handshaker_factory.h +0 -50
  1797. data/src/core/lib/channel/handshaker_registry.cc +0 -50
  1798. data/src/core/lib/channel/handshaker_registry.h +0 -71
  1799. data/src/core/lib/event_engine/sockaddr.cc +0 -40
  1800. data/src/core/lib/event_engine/sockaddr.h +0 -44
  1801. data/src/core/lib/gpr/env.h +0 -40
  1802. data/src/core/lib/gpr/env_linux.cc +0 -75
  1803. data/src/core/lib/gpr/env_posix.cc +0 -46
  1804. data/src/core/lib/gpr/env_windows.cc +0 -74
  1805. data/src/core/lib/gpr/murmur_hash.cc +0 -82
  1806. data/src/core/lib/gpr/murmur_hash.h +0 -29
  1807. data/src/core/lib/gpr/string_windows.h +0 -32
  1808. data/src/core/lib/gpr/tls.h +0 -157
  1809. data/src/core/lib/gprpp/capture.h +0 -76
  1810. data/src/core/lib/iomgr/endpoint_pair_event_engine.cc +0 -32
  1811. data/src/core/lib/iomgr/error_internal.h +0 -66
  1812. data/src/core/lib/iomgr/ev_epollex_linux.cc +0 -1657
  1813. data/src/core/lib/iomgr/ev_epollex_linux.h +0 -30
  1814. data/src/core/lib/iomgr/event_engine/endpoint.cc +0 -172
  1815. data/src/core/lib/iomgr/event_engine/endpoint.h +0 -52
  1816. data/src/core/lib/iomgr/event_engine/iomgr.cc +0 -85
  1817. data/src/core/lib/iomgr/event_engine/pollset.cc +0 -87
  1818. data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +0 -47
  1819. data/src/core/lib/iomgr/event_engine/resolver.cc +0 -133
  1820. data/src/core/lib/iomgr/event_engine/resolver.h +0 -56
  1821. data/src/core/lib/iomgr/event_engine/tcp.cc +0 -296
  1822. data/src/core/lib/iomgr/event_engine/timer.cc +0 -62
  1823. data/src/core/lib/iomgr/executor/mpmcqueue.cc +0 -182
  1824. data/src/core/lib/iomgr/executor/mpmcqueue.h +0 -171
  1825. data/src/core/lib/iomgr/executor/threadpool.cc +0 -136
  1826. data/src/core/lib/iomgr/executor/threadpool.h +0 -150
  1827. data/src/core/lib/iomgr/is_epollexclusive_available.cc +0 -119
  1828. data/src/core/lib/iomgr/is_epollexclusive_available.h +0 -36
  1829. data/src/core/lib/iomgr/sys_epoll_wrapper.h +0 -30
  1830. data/src/core/lib/iomgr/time_averaged_stats.cc +0 -64
  1831. data/src/core/lib/iomgr/time_averaged_stats.h +0 -72
  1832. data/src/core/lib/profiling/basic_timers.cc +0 -295
  1833. data/src/core/lib/profiling/stap_timers.cc +0 -50
  1834. data/src/core/lib/profiling/timers.h +0 -94
  1835. data/src/core/lib/security/security_connector/load_system_roots_linux.h +0 -46
  1836. data/src/core/lib/slice/slice_api.cc +0 -39
  1837. data/src/core/lib/slice/slice_refcount_base.h +0 -61
  1838. data/src/core/lib/slice/slice_split.cc +0 -100
  1839. data/src/core/lib/slice/slice_split.h +0 -40
  1840. data/src/core/lib/transport/byte_stream.cc +0 -162
  1841. data/src/core/lib/transport/byte_stream.h +0 -166
  1842. data/third_party/abseil-cpp/absl/container/internal/have_sse.h +0 -50
@@ -98,30 +98,43 @@ UPB_INLINE grpc_gcp_Endpoint* grpc_gcp_Endpoint_parse_ex(const char* buf, size_t
98
98
  return ret;
99
99
  }
100
100
  UPB_INLINE char* grpc_gcp_Endpoint_serialize(const grpc_gcp_Endpoint* msg, upb_Arena* arena, size_t* len) {
101
- return upb_Encode(msg, &grpc_gcp_Endpoint_msginit, 0, arena, len);
101
+ char* ptr;
102
+ (void)upb_Encode(msg, &grpc_gcp_Endpoint_msginit, 0, arena, &ptr, len);
103
+ return ptr;
102
104
  }
103
105
  UPB_INLINE char* grpc_gcp_Endpoint_serialize_ex(const grpc_gcp_Endpoint* msg, int options,
104
106
  upb_Arena* arena, size_t* len) {
105
- return upb_Encode(msg, &grpc_gcp_Endpoint_msginit, options, arena, len);
107
+ char* ptr;
108
+ (void)upb_Encode(msg, &grpc_gcp_Endpoint_msginit, options, arena, &ptr, len);
109
+ return ptr;
110
+ }
111
+ UPB_INLINE void grpc_gcp_Endpoint_clear_ip_address(const grpc_gcp_Endpoint* msg) {
112
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
106
113
  }
107
114
  UPB_INLINE upb_StringView grpc_gcp_Endpoint_ip_address(const grpc_gcp_Endpoint* msg) {
108
115
  return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView);
109
116
  }
117
+ UPB_INLINE void grpc_gcp_Endpoint_clear_port(const grpc_gcp_Endpoint* msg) {
118
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = 0;
119
+ }
110
120
  UPB_INLINE int32_t grpc_gcp_Endpoint_port(const grpc_gcp_Endpoint* msg) {
111
- return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
121
+ return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
122
+ }
123
+ UPB_INLINE void grpc_gcp_Endpoint_clear_protocol(const grpc_gcp_Endpoint* msg) {
124
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = 0;
112
125
  }
113
126
  UPB_INLINE int32_t grpc_gcp_Endpoint_protocol(const grpc_gcp_Endpoint* msg) {
114
- return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
127
+ return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
115
128
  }
116
129
 
117
130
  UPB_INLINE void grpc_gcp_Endpoint_set_ip_address(grpc_gcp_Endpoint *msg, upb_StringView value) {
118
131
  *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView) = value;
119
132
  }
120
133
  UPB_INLINE void grpc_gcp_Endpoint_set_port(grpc_gcp_Endpoint *msg, int32_t value) {
121
- *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
134
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
122
135
  }
123
136
  UPB_INLINE void grpc_gcp_Endpoint_set_protocol(grpc_gcp_Endpoint *msg, int32_t value) {
124
- *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
137
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
125
138
  }
126
139
 
127
140
  /* grpc.gcp.Identity */
@@ -149,47 +162,83 @@ UPB_INLINE grpc_gcp_Identity* grpc_gcp_Identity_parse_ex(const char* buf, size_t
149
162
  return ret;
150
163
  }
151
164
  UPB_INLINE char* grpc_gcp_Identity_serialize(const grpc_gcp_Identity* msg, upb_Arena* arena, size_t* len) {
152
- return upb_Encode(msg, &grpc_gcp_Identity_msginit, 0, arena, len);
165
+ char* ptr;
166
+ (void)upb_Encode(msg, &grpc_gcp_Identity_msginit, 0, arena, &ptr, len);
167
+ return ptr;
153
168
  }
154
169
  UPB_INLINE char* grpc_gcp_Identity_serialize_ex(const grpc_gcp_Identity* msg, int options,
155
170
  upb_Arena* arena, size_t* len) {
156
- return upb_Encode(msg, &grpc_gcp_Identity_msginit, options, arena, len);
171
+ char* ptr;
172
+ (void)upb_Encode(msg, &grpc_gcp_Identity_msginit, options, arena, &ptr, len);
173
+ return ptr;
157
174
  }
158
175
  typedef enum {
159
176
  grpc_gcp_Identity_identity_oneof_service_account = 1,
160
177
  grpc_gcp_Identity_identity_oneof_hostname = 2,
161
178
  grpc_gcp_Identity_identity_oneof_NOT_SET = 0
162
179
  } grpc_gcp_Identity_identity_oneof_oneofcases;
163
- UPB_INLINE grpc_gcp_Identity_identity_oneof_oneofcases grpc_gcp_Identity_identity_oneof_case(const grpc_gcp_Identity* msg) { return (grpc_gcp_Identity_identity_oneof_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
164
-
165
- UPB_INLINE bool grpc_gcp_Identity_has_service_account(const grpc_gcp_Identity *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 1; }
166
- UPB_INLINE upb_StringView grpc_gcp_Identity_service_account(const grpc_gcp_Identity *msg) { return UPB_READ_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), UPB_SIZE(12, 24), 1, upb_StringView_FromString("")); }
167
- UPB_INLINE bool grpc_gcp_Identity_has_hostname(const grpc_gcp_Identity *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 2; }
168
- UPB_INLINE upb_StringView grpc_gcp_Identity_hostname(const grpc_gcp_Identity *msg) { return UPB_READ_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), UPB_SIZE(12, 24), 2, upb_StringView_FromString("")); }
169
- UPB_INLINE bool grpc_gcp_Identity_has_attributes(const grpc_gcp_Identity *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
170
- UPB_INLINE size_t grpc_gcp_Identity_attributes_size(const grpc_gcp_Identity *msg) {return _upb_msg_map_size(msg, UPB_SIZE(0, 0)); }
171
- UPB_INLINE bool grpc_gcp_Identity_attributes_get(const grpc_gcp_Identity *msg, upb_StringView key, upb_StringView *val) { return _upb_msg_map_get(msg, UPB_SIZE(0, 0), &key, 0, val, 0); }
172
- UPB_INLINE const grpc_gcp_Identity_AttributesEntry* grpc_gcp_Identity_attributes_next(const grpc_gcp_Identity *msg, size_t* iter) { return (const grpc_gcp_Identity_AttributesEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter); }
180
+ UPB_INLINE grpc_gcp_Identity_identity_oneof_oneofcases grpc_gcp_Identity_identity_oneof_case(const grpc_gcp_Identity* msg) {
181
+ return (grpc_gcp_Identity_identity_oneof_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
182
+ }
183
+ UPB_INLINE bool grpc_gcp_Identity_has_service_account(const grpc_gcp_Identity* msg) {
184
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 1;
185
+ }
186
+ UPB_INLINE void grpc_gcp_Identity_clear_service_account(const grpc_gcp_Identity* msg) {
187
+ UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), upb_StringView_FromDataAndSize(NULL, 0), UPB_SIZE(0, 0), grpc_gcp_Identity_identity_oneof_NOT_SET);
188
+ }
189
+ UPB_INLINE upb_StringView grpc_gcp_Identity_service_account(const grpc_gcp_Identity* msg) {
190
+ return UPB_READ_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 1, upb_StringView_FromString(""));
191
+ }
192
+ UPB_INLINE bool grpc_gcp_Identity_has_hostname(const grpc_gcp_Identity* msg) {
193
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 2;
194
+ }
195
+ UPB_INLINE void grpc_gcp_Identity_clear_hostname(const grpc_gcp_Identity* msg) {
196
+ UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), upb_StringView_FromDataAndSize(NULL, 0), UPB_SIZE(0, 0), grpc_gcp_Identity_identity_oneof_NOT_SET);
197
+ }
198
+ UPB_INLINE upb_StringView grpc_gcp_Identity_hostname(const grpc_gcp_Identity* msg) {
199
+ return UPB_READ_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 2, upb_StringView_FromString(""));
200
+ }
201
+ UPB_INLINE bool grpc_gcp_Identity_has_attributes(const grpc_gcp_Identity* msg) {
202
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(12, 24));
203
+ }
204
+ UPB_INLINE void grpc_gcp_Identity_clear_attributes(const grpc_gcp_Identity* msg) {
205
+ _upb_array_detach(msg, UPB_SIZE(12, 24));
206
+ }
207
+ UPB_INLINE size_t grpc_gcp_Identity_attributes_size(const grpc_gcp_Identity* msg) {
208
+ return _upb_msg_map_size(msg, UPB_SIZE(12, 24));
209
+ }
210
+ UPB_INLINE bool grpc_gcp_Identity_attributes_get(const grpc_gcp_Identity* msg, upb_StringView key, upb_StringView* val) {
211
+ return _upb_msg_map_get(msg, UPB_SIZE(12, 24), &key, 0, val, 0);
212
+ }
213
+ UPB_INLINE const grpc_gcp_Identity_AttributesEntry* grpc_gcp_Identity_attributes_next(const grpc_gcp_Identity* msg, size_t* iter) {
214
+ return (const grpc_gcp_Identity_AttributesEntry*)_upb_msg_map_next(msg, UPB_SIZE(12, 24), iter);
215
+ }
173
216
 
174
217
  UPB_INLINE void grpc_gcp_Identity_set_service_account(grpc_gcp_Identity *msg, upb_StringView value) {
175
- UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), value, UPB_SIZE(12, 24), 1);
218
+ UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 1);
176
219
  }
177
220
  UPB_INLINE void grpc_gcp_Identity_set_hostname(grpc_gcp_Identity *msg, upb_StringView value) {
178
- UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), value, UPB_SIZE(12, 24), 2);
221
+ UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 2);
222
+ }
223
+ UPB_INLINE void grpc_gcp_Identity_attributes_clear(grpc_gcp_Identity* msg) { _upb_msg_map_clear(msg, UPB_SIZE(12, 24)); }
224
+ UPB_INLINE bool grpc_gcp_Identity_attributes_set(grpc_gcp_Identity* msg, upb_StringView key, upb_StringView val, upb_Arena* a) {
225
+ return _upb_msg_map_set(msg, UPB_SIZE(12, 24), &key, 0, &val, 0, a);
226
+ }
227
+ UPB_INLINE bool grpc_gcp_Identity_attributes_delete(grpc_gcp_Identity* msg, upb_StringView key) {
228
+ return _upb_msg_map_delete(msg, UPB_SIZE(12, 24), &key, 0);
229
+ }
230
+ UPB_INLINE grpc_gcp_Identity_AttributesEntry* grpc_gcp_Identity_attributes_nextmutable(grpc_gcp_Identity* msg, size_t* iter) {
231
+ return (grpc_gcp_Identity_AttributesEntry*)_upb_msg_map_next(msg, UPB_SIZE(12, 24), iter);
179
232
  }
180
- UPB_INLINE void grpc_gcp_Identity_attributes_clear(grpc_gcp_Identity *msg) { _upb_msg_map_clear(msg, UPB_SIZE(0, 0)); }
181
- UPB_INLINE bool grpc_gcp_Identity_attributes_set(grpc_gcp_Identity *msg, upb_StringView key, upb_StringView val, upb_Arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(0, 0), &key, 0, &val, 0, a); }
182
- UPB_INLINE bool grpc_gcp_Identity_attributes_delete(grpc_gcp_Identity *msg, upb_StringView key) { return _upb_msg_map_delete(msg, UPB_SIZE(0, 0), &key, 0); }
183
- UPB_INLINE grpc_gcp_Identity_AttributesEntry* grpc_gcp_Identity_attributes_nextmutable(grpc_gcp_Identity *msg, size_t* iter) { return (grpc_gcp_Identity_AttributesEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter); }
184
233
 
185
234
  /* grpc.gcp.Identity.AttributesEntry */
186
235
 
187
- UPB_INLINE upb_StringView grpc_gcp_Identity_AttributesEntry_key(const grpc_gcp_Identity_AttributesEntry *msg) {
236
+ UPB_INLINE upb_StringView grpc_gcp_Identity_AttributesEntry_key(const grpc_gcp_Identity_AttributesEntry* msg) {
188
237
  upb_StringView ret;
189
238
  _upb_msg_map_key(msg, &ret, 0);
190
239
  return ret;
191
240
  }
192
- UPB_INLINE upb_StringView grpc_gcp_Identity_AttributesEntry_value(const grpc_gcp_Identity_AttributesEntry *msg) {
241
+ UPB_INLINE upb_StringView grpc_gcp_Identity_AttributesEntry_value(const grpc_gcp_Identity_AttributesEntry* msg) {
193
242
  upb_StringView ret;
194
243
  _upb_msg_map_value(msg, &ret, 0);
195
244
  return ret;
@@ -224,37 +273,87 @@ UPB_INLINE grpc_gcp_StartClientHandshakeReq* grpc_gcp_StartClientHandshakeReq_pa
224
273
  return ret;
225
274
  }
226
275
  UPB_INLINE char* grpc_gcp_StartClientHandshakeReq_serialize(const grpc_gcp_StartClientHandshakeReq* msg, upb_Arena* arena, size_t* len) {
227
- return upb_Encode(msg, &grpc_gcp_StartClientHandshakeReq_msginit, 0, arena, len);
276
+ char* ptr;
277
+ (void)upb_Encode(msg, &grpc_gcp_StartClientHandshakeReq_msginit, 0, arena, &ptr, len);
278
+ return ptr;
228
279
  }
229
280
  UPB_INLINE char* grpc_gcp_StartClientHandshakeReq_serialize_ex(const grpc_gcp_StartClientHandshakeReq* msg, int options,
230
281
  upb_Arena* arena, size_t* len) {
231
- return upb_Encode(msg, &grpc_gcp_StartClientHandshakeReq_msginit, options, arena, len);
282
+ char* ptr;
283
+ (void)upb_Encode(msg, &grpc_gcp_StartClientHandshakeReq_msginit, options, arena, &ptr, len);
284
+ return ptr;
285
+ }
286
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_handshake_security_protocol(const grpc_gcp_StartClientHandshakeReq* msg) {
287
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = 0;
232
288
  }
233
289
  UPB_INLINE int32_t grpc_gcp_StartClientHandshakeReq_handshake_security_protocol(const grpc_gcp_StartClientHandshakeReq* msg) {
234
290
  return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
235
291
  }
236
- UPB_INLINE upb_StringView const* grpc_gcp_StartClientHandshakeReq_application_protocols(const grpc_gcp_StartClientHandshakeReq *msg, size_t *len) { return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(36, 64), len); }
237
- UPB_INLINE upb_StringView const* grpc_gcp_StartClientHandshakeReq_record_protocols(const grpc_gcp_StartClientHandshakeReq *msg, size_t *len) { return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(40, 72), len); }
238
- UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_target_identities(const grpc_gcp_StartClientHandshakeReq *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(44, 80)); }
239
- UPB_INLINE const grpc_gcp_Identity* const* grpc_gcp_StartClientHandshakeReq_target_identities(const grpc_gcp_StartClientHandshakeReq *msg, size_t *len) { return (const grpc_gcp_Identity* const*)_upb_array_accessor(msg, UPB_SIZE(44, 80), len); }
240
- UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_local_identity(const grpc_gcp_StartClientHandshakeReq *msg) { return _upb_hasbit(msg, 1); }
292
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_application_protocols(const grpc_gcp_StartClientHandshakeReq* msg) {
293
+ _upb_array_detach(msg, UPB_SIZE(12, 16));
294
+ }
295
+ UPB_INLINE upb_StringView const* grpc_gcp_StartClientHandshakeReq_application_protocols(const grpc_gcp_StartClientHandshakeReq* msg, size_t* len) {
296
+ return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(12, 16), len);
297
+ }
298
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_record_protocols(const grpc_gcp_StartClientHandshakeReq* msg) {
299
+ _upb_array_detach(msg, UPB_SIZE(16, 24));
300
+ }
301
+ UPB_INLINE upb_StringView const* grpc_gcp_StartClientHandshakeReq_record_protocols(const grpc_gcp_StartClientHandshakeReq* msg, size_t* len) {
302
+ return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(16, 24), len);
303
+ }
304
+ UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_target_identities(const grpc_gcp_StartClientHandshakeReq* msg) {
305
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(20, 32));
306
+ }
307
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_target_identities(const grpc_gcp_StartClientHandshakeReq* msg) {
308
+ _upb_array_detach(msg, UPB_SIZE(20, 32));
309
+ }
310
+ UPB_INLINE const grpc_gcp_Identity* const* grpc_gcp_StartClientHandshakeReq_target_identities(const grpc_gcp_StartClientHandshakeReq* msg, size_t* len) {
311
+ return (const grpc_gcp_Identity* const*)_upb_array_accessor(msg, UPB_SIZE(20, 32), len);
312
+ }
313
+ UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_local_identity(const grpc_gcp_StartClientHandshakeReq* msg) {
314
+ return _upb_hasbit(msg, 1);
315
+ }
316
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_local_identity(const grpc_gcp_StartClientHandshakeReq* msg) {
317
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const upb_Message*) = NULL;
318
+ }
241
319
  UPB_INLINE const grpc_gcp_Identity* grpc_gcp_StartClientHandshakeReq_local_identity(const grpc_gcp_StartClientHandshakeReq* msg) {
242
- return *UPB_PTR_AT(msg, UPB_SIZE(20, 32), const grpc_gcp_Identity*);
320
+ return *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const grpc_gcp_Identity*);
321
+ }
322
+ UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_local_endpoint(const grpc_gcp_StartClientHandshakeReq* msg) {
323
+ return _upb_hasbit(msg, 2);
324
+ }
325
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_local_endpoint(const grpc_gcp_StartClientHandshakeReq* msg) {
326
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 48), const upb_Message*) = NULL;
243
327
  }
244
- UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_local_endpoint(const grpc_gcp_StartClientHandshakeReq *msg) { return _upb_hasbit(msg, 2); }
245
328
  UPB_INLINE const grpc_gcp_Endpoint* grpc_gcp_StartClientHandshakeReq_local_endpoint(const grpc_gcp_StartClientHandshakeReq* msg) {
246
- return *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const grpc_gcp_Endpoint*);
329
+ return *UPB_PTR_AT(msg, UPB_SIZE(28, 48), const grpc_gcp_Endpoint*);
330
+ }
331
+ UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_remote_endpoint(const grpc_gcp_StartClientHandshakeReq* msg) {
332
+ return _upb_hasbit(msg, 3);
333
+ }
334
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_remote_endpoint(const grpc_gcp_StartClientHandshakeReq* msg) {
335
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 56), const upb_Message*) = NULL;
247
336
  }
248
- UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_remote_endpoint(const grpc_gcp_StartClientHandshakeReq *msg) { return _upb_hasbit(msg, 3); }
249
337
  UPB_INLINE const grpc_gcp_Endpoint* grpc_gcp_StartClientHandshakeReq_remote_endpoint(const grpc_gcp_StartClientHandshakeReq* msg) {
250
- return *UPB_PTR_AT(msg, UPB_SIZE(28, 48), const grpc_gcp_Endpoint*);
338
+ return *UPB_PTR_AT(msg, UPB_SIZE(32, 56), const grpc_gcp_Endpoint*);
339
+ }
340
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_target_name(const grpc_gcp_StartClientHandshakeReq* msg) {
341
+ *UPB_PTR_AT(msg, UPB_SIZE(36, 64), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
251
342
  }
252
343
  UPB_INLINE upb_StringView grpc_gcp_StartClientHandshakeReq_target_name(const grpc_gcp_StartClientHandshakeReq* msg) {
253
- return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), upb_StringView);
344
+ return *UPB_PTR_AT(msg, UPB_SIZE(36, 64), upb_StringView);
345
+ }
346
+ UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_rpc_versions(const grpc_gcp_StartClientHandshakeReq* msg) {
347
+ return _upb_hasbit(msg, 4);
348
+ }
349
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_rpc_versions(const grpc_gcp_StartClientHandshakeReq* msg) {
350
+ *UPB_PTR_AT(msg, UPB_SIZE(44, 80), const upb_Message*) = NULL;
254
351
  }
255
- UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_has_rpc_versions(const grpc_gcp_StartClientHandshakeReq *msg) { return _upb_hasbit(msg, 4); }
256
352
  UPB_INLINE const struct grpc_gcp_RpcProtocolVersions* grpc_gcp_StartClientHandshakeReq_rpc_versions(const grpc_gcp_StartClientHandshakeReq* msg) {
257
- return *UPB_PTR_AT(msg, UPB_SIZE(32, 56), const struct grpc_gcp_RpcProtocolVersions*);
353
+ return *UPB_PTR_AT(msg, UPB_SIZE(44, 80), const struct grpc_gcp_RpcProtocolVersions*);
354
+ }
355
+ UPB_INLINE void grpc_gcp_StartClientHandshakeReq_clear_max_frame_size(const grpc_gcp_StartClientHandshakeReq* msg) {
356
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), uint32_t) = 0;
258
357
  }
259
358
  UPB_INLINE uint32_t grpc_gcp_StartClientHandshakeReq_max_frame_size(const grpc_gcp_StartClientHandshakeReq* msg) {
260
359
  return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), uint32_t);
@@ -263,44 +362,41 @@ UPB_INLINE uint32_t grpc_gcp_StartClientHandshakeReq_max_frame_size(const grpc_g
263
362
  UPB_INLINE void grpc_gcp_StartClientHandshakeReq_set_handshake_security_protocol(grpc_gcp_StartClientHandshakeReq *msg, int32_t value) {
264
363
  *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
265
364
  }
266
- UPB_INLINE upb_StringView* grpc_gcp_StartClientHandshakeReq_mutable_application_protocols(grpc_gcp_StartClientHandshakeReq *msg, size_t *len) {
267
- return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(36, 64), len);
365
+ UPB_INLINE upb_StringView* grpc_gcp_StartClientHandshakeReq_mutable_application_protocols(grpc_gcp_StartClientHandshakeReq* msg, size_t* len) {
366
+ return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(12, 16), len);
268
367
  }
269
- UPB_INLINE upb_StringView* grpc_gcp_StartClientHandshakeReq_resize_application_protocols(grpc_gcp_StartClientHandshakeReq *msg, size_t len, upb_Arena *arena) {
270
- return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(36, 64), len, UPB_SIZE(3, 4), arena);
368
+ UPB_INLINE upb_StringView* grpc_gcp_StartClientHandshakeReq_resize_application_protocols(grpc_gcp_StartClientHandshakeReq* msg, size_t len, upb_Arena* arena) {
369
+ return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(12, 16), len, UPB_SIZE(3, 4), arena);
271
370
  }
272
- UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_add_application_protocols(grpc_gcp_StartClientHandshakeReq *msg, upb_StringView val, upb_Arena *arena) {
273
- return _upb_Array_Append_accessor2(msg, UPB_SIZE(36, 64), UPB_SIZE(3, 4), &val,
274
- arena);
371
+ UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_add_application_protocols(grpc_gcp_StartClientHandshakeReq* msg, upb_StringView val, upb_Arena* arena) {
372
+ return _upb_Array_Append_accessor2(msg, UPB_SIZE(12, 16), UPB_SIZE(3, 4), &val, arena);
275
373
  }
276
- UPB_INLINE upb_StringView* grpc_gcp_StartClientHandshakeReq_mutable_record_protocols(grpc_gcp_StartClientHandshakeReq *msg, size_t *len) {
277
- return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(40, 72), len);
374
+ UPB_INLINE upb_StringView* grpc_gcp_StartClientHandshakeReq_mutable_record_protocols(grpc_gcp_StartClientHandshakeReq* msg, size_t* len) {
375
+ return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 24), len);
278
376
  }
279
- UPB_INLINE upb_StringView* grpc_gcp_StartClientHandshakeReq_resize_record_protocols(grpc_gcp_StartClientHandshakeReq *msg, size_t len, upb_Arena *arena) {
280
- return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(40, 72), len, UPB_SIZE(3, 4), arena);
377
+ UPB_INLINE upb_StringView* grpc_gcp_StartClientHandshakeReq_resize_record_protocols(grpc_gcp_StartClientHandshakeReq* msg, size_t len, upb_Arena* arena) {
378
+ return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(16, 24), len, UPB_SIZE(3, 4), arena);
281
379
  }
282
- UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_add_record_protocols(grpc_gcp_StartClientHandshakeReq *msg, upb_StringView val, upb_Arena *arena) {
283
- return _upb_Array_Append_accessor2(msg, UPB_SIZE(40, 72), UPB_SIZE(3, 4), &val,
284
- arena);
380
+ UPB_INLINE bool grpc_gcp_StartClientHandshakeReq_add_record_protocols(grpc_gcp_StartClientHandshakeReq* msg, upb_StringView val, upb_Arena* arena) {
381
+ return _upb_Array_Append_accessor2(msg, UPB_SIZE(16, 24), UPB_SIZE(3, 4), &val, arena);
285
382
  }
286
- UPB_INLINE grpc_gcp_Identity** grpc_gcp_StartClientHandshakeReq_mutable_target_identities(grpc_gcp_StartClientHandshakeReq *msg, size_t *len) {
287
- return (grpc_gcp_Identity**)_upb_array_mutable_accessor(msg, UPB_SIZE(44, 80), len);
383
+ UPB_INLINE grpc_gcp_Identity** grpc_gcp_StartClientHandshakeReq_mutable_target_identities(grpc_gcp_StartClientHandshakeReq* msg, size_t* len) {
384
+ return (grpc_gcp_Identity**)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 32), len);
288
385
  }
289
- UPB_INLINE grpc_gcp_Identity** grpc_gcp_StartClientHandshakeReq_resize_target_identities(grpc_gcp_StartClientHandshakeReq *msg, size_t len, upb_Arena *arena) {
290
- return (grpc_gcp_Identity**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(44, 80), len, UPB_SIZE(2, 3), arena);
386
+ UPB_INLINE grpc_gcp_Identity** grpc_gcp_StartClientHandshakeReq_resize_target_identities(grpc_gcp_StartClientHandshakeReq* msg, size_t len, upb_Arena* arena) {
387
+ return (grpc_gcp_Identity**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(20, 32), len, UPB_SIZE(2, 3), arena);
291
388
  }
292
- UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_StartClientHandshakeReq_add_target_identities(grpc_gcp_StartClientHandshakeReq *msg, upb_Arena *arena) {
389
+ UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_StartClientHandshakeReq_add_target_identities(grpc_gcp_StartClientHandshakeReq* msg, upb_Arena* arena) {
293
390
  struct grpc_gcp_Identity* sub = (struct grpc_gcp_Identity*)_upb_Message_New(&grpc_gcp_Identity_msginit, arena);
294
- bool ok = _upb_Array_Append_accessor2(
295
- msg, UPB_SIZE(44, 80), UPB_SIZE(2, 3), &sub, arena);
391
+ bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(20, 32), UPB_SIZE(2, 3), &sub, arena);
296
392
  if (!ok) return NULL;
297
393
  return sub;
298
394
  }
299
395
  UPB_INLINE void grpc_gcp_StartClientHandshakeReq_set_local_identity(grpc_gcp_StartClientHandshakeReq *msg, grpc_gcp_Identity* value) {
300
396
  _upb_sethas(msg, 1);
301
- *UPB_PTR_AT(msg, UPB_SIZE(20, 32), grpc_gcp_Identity*) = value;
397
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 40), grpc_gcp_Identity*) = value;
302
398
  }
303
- UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_StartClientHandshakeReq_mutable_local_identity(grpc_gcp_StartClientHandshakeReq *msg, upb_Arena *arena) {
399
+ UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_StartClientHandshakeReq_mutable_local_identity(grpc_gcp_StartClientHandshakeReq* msg, upb_Arena* arena) {
304
400
  struct grpc_gcp_Identity* sub = (struct grpc_gcp_Identity*)grpc_gcp_StartClientHandshakeReq_local_identity(msg);
305
401
  if (sub == NULL) {
306
402
  sub = (struct grpc_gcp_Identity*)_upb_Message_New(&grpc_gcp_Identity_msginit, arena);
@@ -311,9 +407,9 @@ UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_StartClientHandshakeReq_mutable_lo
311
407
  }
312
408
  UPB_INLINE void grpc_gcp_StartClientHandshakeReq_set_local_endpoint(grpc_gcp_StartClientHandshakeReq *msg, grpc_gcp_Endpoint* value) {
313
409
  _upb_sethas(msg, 2);
314
- *UPB_PTR_AT(msg, UPB_SIZE(24, 40), grpc_gcp_Endpoint*) = value;
410
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 48), grpc_gcp_Endpoint*) = value;
315
411
  }
316
- UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartClientHandshakeReq_mutable_local_endpoint(grpc_gcp_StartClientHandshakeReq *msg, upb_Arena *arena) {
412
+ UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartClientHandshakeReq_mutable_local_endpoint(grpc_gcp_StartClientHandshakeReq* msg, upb_Arena* arena) {
317
413
  struct grpc_gcp_Endpoint* sub = (struct grpc_gcp_Endpoint*)grpc_gcp_StartClientHandshakeReq_local_endpoint(msg);
318
414
  if (sub == NULL) {
319
415
  sub = (struct grpc_gcp_Endpoint*)_upb_Message_New(&grpc_gcp_Endpoint_msginit, arena);
@@ -324,9 +420,9 @@ UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartClientHandshakeReq_mutable_lo
324
420
  }
325
421
  UPB_INLINE void grpc_gcp_StartClientHandshakeReq_set_remote_endpoint(grpc_gcp_StartClientHandshakeReq *msg, grpc_gcp_Endpoint* value) {
326
422
  _upb_sethas(msg, 3);
327
- *UPB_PTR_AT(msg, UPB_SIZE(28, 48), grpc_gcp_Endpoint*) = value;
423
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 56), grpc_gcp_Endpoint*) = value;
328
424
  }
329
- UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartClientHandshakeReq_mutable_remote_endpoint(grpc_gcp_StartClientHandshakeReq *msg, upb_Arena *arena) {
425
+ UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartClientHandshakeReq_mutable_remote_endpoint(grpc_gcp_StartClientHandshakeReq* msg, upb_Arena* arena) {
330
426
  struct grpc_gcp_Endpoint* sub = (struct grpc_gcp_Endpoint*)grpc_gcp_StartClientHandshakeReq_remote_endpoint(msg);
331
427
  if (sub == NULL) {
332
428
  sub = (struct grpc_gcp_Endpoint*)_upb_Message_New(&grpc_gcp_Endpoint_msginit, arena);
@@ -336,13 +432,13 @@ UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartClientHandshakeReq_mutable_re
336
432
  return sub;
337
433
  }
338
434
  UPB_INLINE void grpc_gcp_StartClientHandshakeReq_set_target_name(grpc_gcp_StartClientHandshakeReq *msg, upb_StringView value) {
339
- *UPB_PTR_AT(msg, UPB_SIZE(12, 16), upb_StringView) = value;
435
+ *UPB_PTR_AT(msg, UPB_SIZE(36, 64), upb_StringView) = value;
340
436
  }
341
437
  UPB_INLINE void grpc_gcp_StartClientHandshakeReq_set_rpc_versions(grpc_gcp_StartClientHandshakeReq *msg, struct grpc_gcp_RpcProtocolVersions* value) {
342
438
  _upb_sethas(msg, 4);
343
- *UPB_PTR_AT(msg, UPB_SIZE(32, 56), struct grpc_gcp_RpcProtocolVersions*) = value;
439
+ *UPB_PTR_AT(msg, UPB_SIZE(44, 80), struct grpc_gcp_RpcProtocolVersions*) = value;
344
440
  }
345
- UPB_INLINE struct grpc_gcp_RpcProtocolVersions* grpc_gcp_StartClientHandshakeReq_mutable_rpc_versions(grpc_gcp_StartClientHandshakeReq *msg, upb_Arena *arena) {
441
+ UPB_INLINE struct grpc_gcp_RpcProtocolVersions* grpc_gcp_StartClientHandshakeReq_mutable_rpc_versions(grpc_gcp_StartClientHandshakeReq* msg, upb_Arena* arena) {
346
442
  struct grpc_gcp_RpcProtocolVersions* sub = (struct grpc_gcp_RpcProtocolVersions*)grpc_gcp_StartClientHandshakeReq_rpc_versions(msg);
347
443
  if (sub == NULL) {
348
444
  sub = (struct grpc_gcp_RpcProtocolVersions*)_upb_Message_New(&grpc_gcp_RpcProtocolVersions_msginit, arena);
@@ -380,36 +476,50 @@ UPB_INLINE grpc_gcp_ServerHandshakeParameters* grpc_gcp_ServerHandshakeParameter
380
476
  return ret;
381
477
  }
382
478
  UPB_INLINE char* grpc_gcp_ServerHandshakeParameters_serialize(const grpc_gcp_ServerHandshakeParameters* msg, upb_Arena* arena, size_t* len) {
383
- return upb_Encode(msg, &grpc_gcp_ServerHandshakeParameters_msginit, 0, arena, len);
479
+ char* ptr;
480
+ (void)upb_Encode(msg, &grpc_gcp_ServerHandshakeParameters_msginit, 0, arena, &ptr, len);
481
+ return ptr;
384
482
  }
385
483
  UPB_INLINE char* grpc_gcp_ServerHandshakeParameters_serialize_ex(const grpc_gcp_ServerHandshakeParameters* msg, int options,
386
484
  upb_Arena* arena, size_t* len) {
387
- return upb_Encode(msg, &grpc_gcp_ServerHandshakeParameters_msginit, options, arena, len);
485
+ char* ptr;
486
+ (void)upb_Encode(msg, &grpc_gcp_ServerHandshakeParameters_msginit, options, arena, &ptr, len);
487
+ return ptr;
488
+ }
489
+ UPB_INLINE void grpc_gcp_ServerHandshakeParameters_clear_record_protocols(const grpc_gcp_ServerHandshakeParameters* msg) {
490
+ _upb_array_detach(msg, UPB_SIZE(0, 0));
491
+ }
492
+ UPB_INLINE upb_StringView const* grpc_gcp_ServerHandshakeParameters_record_protocols(const grpc_gcp_ServerHandshakeParameters* msg, size_t* len) {
493
+ return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len);
494
+ }
495
+ UPB_INLINE bool grpc_gcp_ServerHandshakeParameters_has_local_identities(const grpc_gcp_ServerHandshakeParameters* msg) {
496
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(4, 8));
497
+ }
498
+ UPB_INLINE void grpc_gcp_ServerHandshakeParameters_clear_local_identities(const grpc_gcp_ServerHandshakeParameters* msg) {
499
+ _upb_array_detach(msg, UPB_SIZE(4, 8));
500
+ }
501
+ UPB_INLINE const grpc_gcp_Identity* const* grpc_gcp_ServerHandshakeParameters_local_identities(const grpc_gcp_ServerHandshakeParameters* msg, size_t* len) {
502
+ return (const grpc_gcp_Identity* const*)_upb_array_accessor(msg, UPB_SIZE(4, 8), len);
388
503
  }
389
- UPB_INLINE upb_StringView const* grpc_gcp_ServerHandshakeParameters_record_protocols(const grpc_gcp_ServerHandshakeParameters *msg, size_t *len) { return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
390
- UPB_INLINE bool grpc_gcp_ServerHandshakeParameters_has_local_identities(const grpc_gcp_ServerHandshakeParameters *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(4, 8)); }
391
- UPB_INLINE const grpc_gcp_Identity* const* grpc_gcp_ServerHandshakeParameters_local_identities(const grpc_gcp_ServerHandshakeParameters *msg, size_t *len) { return (const grpc_gcp_Identity* const*)_upb_array_accessor(msg, UPB_SIZE(4, 8), len); }
392
504
 
393
- UPB_INLINE upb_StringView* grpc_gcp_ServerHandshakeParameters_mutable_record_protocols(grpc_gcp_ServerHandshakeParameters *msg, size_t *len) {
505
+ UPB_INLINE upb_StringView* grpc_gcp_ServerHandshakeParameters_mutable_record_protocols(grpc_gcp_ServerHandshakeParameters* msg, size_t* len) {
394
506
  return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
395
507
  }
396
- UPB_INLINE upb_StringView* grpc_gcp_ServerHandshakeParameters_resize_record_protocols(grpc_gcp_ServerHandshakeParameters *msg, size_t len, upb_Arena *arena) {
508
+ UPB_INLINE upb_StringView* grpc_gcp_ServerHandshakeParameters_resize_record_protocols(grpc_gcp_ServerHandshakeParameters* msg, size_t len, upb_Arena* arena) {
397
509
  return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(3, 4), arena);
398
510
  }
399
- UPB_INLINE bool grpc_gcp_ServerHandshakeParameters_add_record_protocols(grpc_gcp_ServerHandshakeParameters *msg, upb_StringView val, upb_Arena *arena) {
400
- return _upb_Array_Append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(3, 4), &val,
401
- arena);
511
+ UPB_INLINE bool grpc_gcp_ServerHandshakeParameters_add_record_protocols(grpc_gcp_ServerHandshakeParameters* msg, upb_StringView val, upb_Arena* arena) {
512
+ return _upb_Array_Append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(3, 4), &val, arena);
402
513
  }
403
- UPB_INLINE grpc_gcp_Identity** grpc_gcp_ServerHandshakeParameters_mutable_local_identities(grpc_gcp_ServerHandshakeParameters *msg, size_t *len) {
514
+ UPB_INLINE grpc_gcp_Identity** grpc_gcp_ServerHandshakeParameters_mutable_local_identities(grpc_gcp_ServerHandshakeParameters* msg, size_t* len) {
404
515
  return (grpc_gcp_Identity**)_upb_array_mutable_accessor(msg, UPB_SIZE(4, 8), len);
405
516
  }
406
- UPB_INLINE grpc_gcp_Identity** grpc_gcp_ServerHandshakeParameters_resize_local_identities(grpc_gcp_ServerHandshakeParameters *msg, size_t len, upb_Arena *arena) {
517
+ UPB_INLINE grpc_gcp_Identity** grpc_gcp_ServerHandshakeParameters_resize_local_identities(grpc_gcp_ServerHandshakeParameters* msg, size_t len, upb_Arena* arena) {
407
518
  return (grpc_gcp_Identity**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(4, 8), len, UPB_SIZE(2, 3), arena);
408
519
  }
409
- UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_ServerHandshakeParameters_add_local_identities(grpc_gcp_ServerHandshakeParameters *msg, upb_Arena *arena) {
520
+ UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_ServerHandshakeParameters_add_local_identities(grpc_gcp_ServerHandshakeParameters* msg, upb_Arena* arena) {
410
521
  struct grpc_gcp_Identity* sub = (struct grpc_gcp_Identity*)_upb_Message_New(&grpc_gcp_Identity_msginit, arena);
411
- bool ok = _upb_Array_Append_accessor2(
412
- msg, UPB_SIZE(4, 8), UPB_SIZE(2, 3), &sub, arena);
522
+ bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(4, 8), UPB_SIZE(2, 3), &sub, arena);
413
523
  if (!ok) return NULL;
414
524
  return sub;
415
525
  }
@@ -439,58 +549,104 @@ UPB_INLINE grpc_gcp_StartServerHandshakeReq* grpc_gcp_StartServerHandshakeReq_pa
439
549
  return ret;
440
550
  }
441
551
  UPB_INLINE char* grpc_gcp_StartServerHandshakeReq_serialize(const grpc_gcp_StartServerHandshakeReq* msg, upb_Arena* arena, size_t* len) {
442
- return upb_Encode(msg, &grpc_gcp_StartServerHandshakeReq_msginit, 0, arena, len);
552
+ char* ptr;
553
+ (void)upb_Encode(msg, &grpc_gcp_StartServerHandshakeReq_msginit, 0, arena, &ptr, len);
554
+ return ptr;
443
555
  }
444
556
  UPB_INLINE char* grpc_gcp_StartServerHandshakeReq_serialize_ex(const grpc_gcp_StartServerHandshakeReq* msg, int options,
445
557
  upb_Arena* arena, size_t* len) {
446
- return upb_Encode(msg, &grpc_gcp_StartServerHandshakeReq_msginit, options, arena, len);
558
+ char* ptr;
559
+ (void)upb_Encode(msg, &grpc_gcp_StartServerHandshakeReq_msginit, options, arena, &ptr, len);
560
+ return ptr;
561
+ }
562
+ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_clear_application_protocols(const grpc_gcp_StartServerHandshakeReq* msg) {
563
+ _upb_array_detach(msg, UPB_SIZE(8, 8));
564
+ }
565
+ UPB_INLINE upb_StringView const* grpc_gcp_StartServerHandshakeReq_application_protocols(const grpc_gcp_StartServerHandshakeReq* msg, size_t* len) {
566
+ return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(8, 8), len);
567
+ }
568
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_has_handshake_parameters(const grpc_gcp_StartServerHandshakeReq* msg) {
569
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(12, 16));
570
+ }
571
+ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_clear_handshake_parameters(const grpc_gcp_StartServerHandshakeReq* msg) {
572
+ _upb_array_detach(msg, UPB_SIZE(12, 16));
573
+ }
574
+ UPB_INLINE size_t grpc_gcp_StartServerHandshakeReq_handshake_parameters_size(const grpc_gcp_StartServerHandshakeReq* msg) {
575
+ return _upb_msg_map_size(msg, UPB_SIZE(12, 16));
576
+ }
577
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_handshake_parameters_get(const grpc_gcp_StartServerHandshakeReq* msg, int32_t key, grpc_gcp_ServerHandshakeParameters** val) {
578
+ return _upb_msg_map_get(msg, UPB_SIZE(12, 16), &key, sizeof(key), val, sizeof(*val));
579
+ }
580
+ UPB_INLINE const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry* grpc_gcp_StartServerHandshakeReq_handshake_parameters_next(const grpc_gcp_StartServerHandshakeReq* msg, size_t* iter) {
581
+ return (const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry*)_upb_msg_map_next(msg, UPB_SIZE(12, 16), iter);
582
+ }
583
+ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_clear_in_bytes(const grpc_gcp_StartServerHandshakeReq* msg) {
584
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
447
585
  }
448
- UPB_INLINE upb_StringView const* grpc_gcp_StartServerHandshakeReq_application_protocols(const grpc_gcp_StartServerHandshakeReq *msg, size_t *len) { return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(28, 48), len); }
449
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_has_handshake_parameters(const grpc_gcp_StartServerHandshakeReq *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(32, 56)); }
450
- UPB_INLINE size_t grpc_gcp_StartServerHandshakeReq_handshake_parameters_size(const grpc_gcp_StartServerHandshakeReq *msg) {return _upb_msg_map_size(msg, UPB_SIZE(32, 56)); }
451
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_handshake_parameters_get(const grpc_gcp_StartServerHandshakeReq *msg, int32_t key, grpc_gcp_ServerHandshakeParameters* *val) { return _upb_msg_map_get(msg, UPB_SIZE(32, 56), &key, sizeof(key), val, sizeof(*val)); }
452
- UPB_INLINE const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry* grpc_gcp_StartServerHandshakeReq_handshake_parameters_next(const grpc_gcp_StartServerHandshakeReq *msg, size_t* iter) { return (const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry*)_upb_msg_map_next(msg, UPB_SIZE(32, 56), iter); }
453
586
  UPB_INLINE upb_StringView grpc_gcp_StartServerHandshakeReq_in_bytes(const grpc_gcp_StartServerHandshakeReq* msg) {
454
- return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView);
587
+ return *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_StringView);
588
+ }
589
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_has_local_endpoint(const grpc_gcp_StartServerHandshakeReq* msg) {
590
+ return _upb_hasbit(msg, 1);
591
+ }
592
+ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_clear_local_endpoint(const grpc_gcp_StartServerHandshakeReq* msg) {
593
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const upb_Message*) = NULL;
455
594
  }
456
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_has_local_endpoint(const grpc_gcp_StartServerHandshakeReq *msg) { return _upb_hasbit(msg, 1); }
457
595
  UPB_INLINE const grpc_gcp_Endpoint* grpc_gcp_StartServerHandshakeReq_local_endpoint(const grpc_gcp_StartServerHandshakeReq* msg) {
458
- return *UPB_PTR_AT(msg, UPB_SIZE(16, 24), const grpc_gcp_Endpoint*);
596
+ return *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const grpc_gcp_Endpoint*);
597
+ }
598
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_has_remote_endpoint(const grpc_gcp_StartServerHandshakeReq* msg) {
599
+ return _upb_hasbit(msg, 2);
600
+ }
601
+ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_clear_remote_endpoint(const grpc_gcp_StartServerHandshakeReq* msg) {
602
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 48), const upb_Message*) = NULL;
459
603
  }
460
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_has_remote_endpoint(const grpc_gcp_StartServerHandshakeReq *msg) { return _upb_hasbit(msg, 2); }
461
604
  UPB_INLINE const grpc_gcp_Endpoint* grpc_gcp_StartServerHandshakeReq_remote_endpoint(const grpc_gcp_StartServerHandshakeReq* msg) {
462
- return *UPB_PTR_AT(msg, UPB_SIZE(20, 32), const grpc_gcp_Endpoint*);
605
+ return *UPB_PTR_AT(msg, UPB_SIZE(28, 48), const grpc_gcp_Endpoint*);
606
+ }
607
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_has_rpc_versions(const grpc_gcp_StartServerHandshakeReq* msg) {
608
+ return _upb_hasbit(msg, 3);
609
+ }
610
+ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_clear_rpc_versions(const grpc_gcp_StartServerHandshakeReq* msg) {
611
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 56), const upb_Message*) = NULL;
463
612
  }
464
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_has_rpc_versions(const grpc_gcp_StartServerHandshakeReq *msg) { return _upb_hasbit(msg, 3); }
465
613
  UPB_INLINE const struct grpc_gcp_RpcProtocolVersions* grpc_gcp_StartServerHandshakeReq_rpc_versions(const grpc_gcp_StartServerHandshakeReq* msg) {
466
- return *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const struct grpc_gcp_RpcProtocolVersions*);
614
+ return *UPB_PTR_AT(msg, UPB_SIZE(32, 56), const struct grpc_gcp_RpcProtocolVersions*);
615
+ }
616
+ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_clear_max_frame_size(const grpc_gcp_StartServerHandshakeReq* msg) {
617
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t) = 0;
467
618
  }
468
619
  UPB_INLINE uint32_t grpc_gcp_StartServerHandshakeReq_max_frame_size(const grpc_gcp_StartServerHandshakeReq* msg) {
469
620
  return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t);
470
621
  }
471
622
 
472
- UPB_INLINE upb_StringView* grpc_gcp_StartServerHandshakeReq_mutable_application_protocols(grpc_gcp_StartServerHandshakeReq *msg, size_t *len) {
473
- return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 48), len);
623
+ UPB_INLINE upb_StringView* grpc_gcp_StartServerHandshakeReq_mutable_application_protocols(grpc_gcp_StartServerHandshakeReq* msg, size_t* len) {
624
+ return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 8), len);
474
625
  }
475
- UPB_INLINE upb_StringView* grpc_gcp_StartServerHandshakeReq_resize_application_protocols(grpc_gcp_StartServerHandshakeReq *msg, size_t len, upb_Arena *arena) {
476
- return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(28, 48), len, UPB_SIZE(3, 4), arena);
626
+ UPB_INLINE upb_StringView* grpc_gcp_StartServerHandshakeReq_resize_application_protocols(grpc_gcp_StartServerHandshakeReq* msg, size_t len, upb_Arena* arena) {
627
+ return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(8, 8), len, UPB_SIZE(3, 4), arena);
477
628
  }
478
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_add_application_protocols(grpc_gcp_StartServerHandshakeReq *msg, upb_StringView val, upb_Arena *arena) {
479
- return _upb_Array_Append_accessor2(msg, UPB_SIZE(28, 48), UPB_SIZE(3, 4), &val,
480
- arena);
629
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_add_application_protocols(grpc_gcp_StartServerHandshakeReq* msg, upb_StringView val, upb_Arena* arena) {
630
+ return _upb_Array_Append_accessor2(msg, UPB_SIZE(8, 8), UPB_SIZE(3, 4), &val, arena);
631
+ }
632
+ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_handshake_parameters_clear(grpc_gcp_StartServerHandshakeReq* msg) { _upb_msg_map_clear(msg, UPB_SIZE(12, 16)); }
633
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_handshake_parameters_set(grpc_gcp_StartServerHandshakeReq* msg, int32_t key, grpc_gcp_ServerHandshakeParameters* val, upb_Arena* a) {
634
+ return _upb_msg_map_set(msg, UPB_SIZE(12, 16), &key, sizeof(key), &val, sizeof(val), a);
635
+ }
636
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_handshake_parameters_delete(grpc_gcp_StartServerHandshakeReq* msg, int32_t key) {
637
+ return _upb_msg_map_delete(msg, UPB_SIZE(12, 16), &key, sizeof(key));
638
+ }
639
+ UPB_INLINE grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry* grpc_gcp_StartServerHandshakeReq_handshake_parameters_nextmutable(grpc_gcp_StartServerHandshakeReq* msg, size_t* iter) {
640
+ return (grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry*)_upb_msg_map_next(msg, UPB_SIZE(12, 16), iter);
481
641
  }
482
- UPB_INLINE void grpc_gcp_StartServerHandshakeReq_handshake_parameters_clear(grpc_gcp_StartServerHandshakeReq *msg) { _upb_msg_map_clear(msg, UPB_SIZE(32, 56)); }
483
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_handshake_parameters_set(grpc_gcp_StartServerHandshakeReq *msg, int32_t key, grpc_gcp_ServerHandshakeParameters* val, upb_Arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(32, 56), &key, sizeof(key), &val, sizeof(val), a); }
484
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_handshake_parameters_delete(grpc_gcp_StartServerHandshakeReq *msg, int32_t key) { return _upb_msg_map_delete(msg, UPB_SIZE(32, 56), &key, sizeof(key)); }
485
- UPB_INLINE grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry* grpc_gcp_StartServerHandshakeReq_handshake_parameters_nextmutable(grpc_gcp_StartServerHandshakeReq *msg, size_t* iter) { return (grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry*)_upb_msg_map_next(msg, UPB_SIZE(32, 56), iter); }
486
642
  UPB_INLINE void grpc_gcp_StartServerHandshakeReq_set_in_bytes(grpc_gcp_StartServerHandshakeReq *msg, upb_StringView value) {
487
- *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView) = value;
643
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_StringView) = value;
488
644
  }
489
645
  UPB_INLINE void grpc_gcp_StartServerHandshakeReq_set_local_endpoint(grpc_gcp_StartServerHandshakeReq *msg, grpc_gcp_Endpoint* value) {
490
646
  _upb_sethas(msg, 1);
491
- *UPB_PTR_AT(msg, UPB_SIZE(16, 24), grpc_gcp_Endpoint*) = value;
647
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 40), grpc_gcp_Endpoint*) = value;
492
648
  }
493
- UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartServerHandshakeReq_mutable_local_endpoint(grpc_gcp_StartServerHandshakeReq *msg, upb_Arena *arena) {
649
+ UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartServerHandshakeReq_mutable_local_endpoint(grpc_gcp_StartServerHandshakeReq* msg, upb_Arena* arena) {
494
650
  struct grpc_gcp_Endpoint* sub = (struct grpc_gcp_Endpoint*)grpc_gcp_StartServerHandshakeReq_local_endpoint(msg);
495
651
  if (sub == NULL) {
496
652
  sub = (struct grpc_gcp_Endpoint*)_upb_Message_New(&grpc_gcp_Endpoint_msginit, arena);
@@ -501,9 +657,9 @@ UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartServerHandshakeReq_mutable_lo
501
657
  }
502
658
  UPB_INLINE void grpc_gcp_StartServerHandshakeReq_set_remote_endpoint(grpc_gcp_StartServerHandshakeReq *msg, grpc_gcp_Endpoint* value) {
503
659
  _upb_sethas(msg, 2);
504
- *UPB_PTR_AT(msg, UPB_SIZE(20, 32), grpc_gcp_Endpoint*) = value;
660
+ *UPB_PTR_AT(msg, UPB_SIZE(28, 48), grpc_gcp_Endpoint*) = value;
505
661
  }
506
- UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartServerHandshakeReq_mutable_remote_endpoint(grpc_gcp_StartServerHandshakeReq *msg, upb_Arena *arena) {
662
+ UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartServerHandshakeReq_mutable_remote_endpoint(grpc_gcp_StartServerHandshakeReq* msg, upb_Arena* arena) {
507
663
  struct grpc_gcp_Endpoint* sub = (struct grpc_gcp_Endpoint*)grpc_gcp_StartServerHandshakeReq_remote_endpoint(msg);
508
664
  if (sub == NULL) {
509
665
  sub = (struct grpc_gcp_Endpoint*)_upb_Message_New(&grpc_gcp_Endpoint_msginit, arena);
@@ -514,9 +670,9 @@ UPB_INLINE struct grpc_gcp_Endpoint* grpc_gcp_StartServerHandshakeReq_mutable_re
514
670
  }
515
671
  UPB_INLINE void grpc_gcp_StartServerHandshakeReq_set_rpc_versions(grpc_gcp_StartServerHandshakeReq *msg, struct grpc_gcp_RpcProtocolVersions* value) {
516
672
  _upb_sethas(msg, 3);
517
- *UPB_PTR_AT(msg, UPB_SIZE(24, 40), struct grpc_gcp_RpcProtocolVersions*) = value;
673
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 56), struct grpc_gcp_RpcProtocolVersions*) = value;
518
674
  }
519
- UPB_INLINE struct grpc_gcp_RpcProtocolVersions* grpc_gcp_StartServerHandshakeReq_mutable_rpc_versions(grpc_gcp_StartServerHandshakeReq *msg, upb_Arena *arena) {
675
+ UPB_INLINE struct grpc_gcp_RpcProtocolVersions* grpc_gcp_StartServerHandshakeReq_mutable_rpc_versions(grpc_gcp_StartServerHandshakeReq* msg, upb_Arena* arena) {
520
676
  struct grpc_gcp_RpcProtocolVersions* sub = (struct grpc_gcp_RpcProtocolVersions*)grpc_gcp_StartServerHandshakeReq_rpc_versions(msg);
521
677
  if (sub == NULL) {
522
678
  sub = (struct grpc_gcp_RpcProtocolVersions*)_upb_Message_New(&grpc_gcp_RpcProtocolVersions_msginit, arena);
@@ -531,13 +687,15 @@ UPB_INLINE void grpc_gcp_StartServerHandshakeReq_set_max_frame_size(grpc_gcp_Sta
531
687
 
532
688
  /* grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntry */
533
689
 
534
- UPB_INLINE int32_t grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry_key(const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry *msg) {
690
+ UPB_INLINE int32_t grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry_key(const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry* msg) {
535
691
  int32_t ret;
536
692
  _upb_msg_map_key(msg, &ret, sizeof(ret));
537
693
  return ret;
538
694
  }
539
- UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry_has_value(const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
540
- UPB_INLINE const grpc_gcp_ServerHandshakeParameters* grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry_value(const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry *msg) {
695
+ UPB_INLINE bool grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry_has_value(const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry* msg) {
696
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16));
697
+ }
698
+ UPB_INLINE const grpc_gcp_ServerHandshakeParameters* grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry_value(const grpc_gcp_StartServerHandshakeReq_HandshakeParametersEntry* msg) {
541
699
  grpc_gcp_ServerHandshakeParameters* ret;
542
700
  _upb_msg_map_value(msg, &ret, sizeof(ret));
543
701
  return ret;
@@ -572,11 +730,18 @@ UPB_INLINE grpc_gcp_NextHandshakeMessageReq* grpc_gcp_NextHandshakeMessageReq_pa
572
730
  return ret;
573
731
  }
574
732
  UPB_INLINE char* grpc_gcp_NextHandshakeMessageReq_serialize(const grpc_gcp_NextHandshakeMessageReq* msg, upb_Arena* arena, size_t* len) {
575
- return upb_Encode(msg, &grpc_gcp_NextHandshakeMessageReq_msginit, 0, arena, len);
733
+ char* ptr;
734
+ (void)upb_Encode(msg, &grpc_gcp_NextHandshakeMessageReq_msginit, 0, arena, &ptr, len);
735
+ return ptr;
576
736
  }
577
737
  UPB_INLINE char* grpc_gcp_NextHandshakeMessageReq_serialize_ex(const grpc_gcp_NextHandshakeMessageReq* msg, int options,
578
738
  upb_Arena* arena, size_t* len) {
579
- return upb_Encode(msg, &grpc_gcp_NextHandshakeMessageReq_msginit, options, arena, len);
739
+ char* ptr;
740
+ (void)upb_Encode(msg, &grpc_gcp_NextHandshakeMessageReq_msginit, options, arena, &ptr, len);
741
+ return ptr;
742
+ }
743
+ UPB_INLINE void grpc_gcp_NextHandshakeMessageReq_clear_in_bytes(const grpc_gcp_NextHandshakeMessageReq* msg) {
744
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
580
745
  }
581
746
  UPB_INLINE upb_StringView grpc_gcp_NextHandshakeMessageReq_in_bytes(const grpc_gcp_NextHandshakeMessageReq* msg) {
582
747
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_StringView);
@@ -611,11 +776,15 @@ UPB_INLINE grpc_gcp_HandshakerReq* grpc_gcp_HandshakerReq_parse_ex(const char* b
611
776
  return ret;
612
777
  }
613
778
  UPB_INLINE char* grpc_gcp_HandshakerReq_serialize(const grpc_gcp_HandshakerReq* msg, upb_Arena* arena, size_t* len) {
614
- return upb_Encode(msg, &grpc_gcp_HandshakerReq_msginit, 0, arena, len);
779
+ char* ptr;
780
+ (void)upb_Encode(msg, &grpc_gcp_HandshakerReq_msginit, 0, arena, &ptr, len);
781
+ return ptr;
615
782
  }
616
783
  UPB_INLINE char* grpc_gcp_HandshakerReq_serialize_ex(const grpc_gcp_HandshakerReq* msg, int options,
617
784
  upb_Arena* arena, size_t* len) {
618
- return upb_Encode(msg, &grpc_gcp_HandshakerReq_msginit, options, arena, len);
785
+ char* ptr;
786
+ (void)upb_Encode(msg, &grpc_gcp_HandshakerReq_msginit, options, arena, &ptr, len);
787
+ return ptr;
619
788
  }
620
789
  typedef enum {
621
790
  grpc_gcp_HandshakerReq_req_oneof_client_start = 1,
@@ -623,19 +792,41 @@ typedef enum {
623
792
  grpc_gcp_HandshakerReq_req_oneof_next = 3,
624
793
  grpc_gcp_HandshakerReq_req_oneof_NOT_SET = 0
625
794
  } grpc_gcp_HandshakerReq_req_oneof_oneofcases;
626
- UPB_INLINE grpc_gcp_HandshakerReq_req_oneof_oneofcases grpc_gcp_HandshakerReq_req_oneof_case(const grpc_gcp_HandshakerReq* msg) { return (grpc_gcp_HandshakerReq_req_oneof_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 8), int32_t); }
627
-
628
- UPB_INLINE bool grpc_gcp_HandshakerReq_has_client_start(const grpc_gcp_HandshakerReq *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 1; }
629
- UPB_INLINE const grpc_gcp_StartClientHandshakeReq* grpc_gcp_HandshakerReq_client_start(const grpc_gcp_HandshakerReq *msg) { return UPB_READ_ONEOF(msg, const grpc_gcp_StartClientHandshakeReq*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, NULL); }
630
- UPB_INLINE bool grpc_gcp_HandshakerReq_has_server_start(const grpc_gcp_HandshakerReq *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 2; }
631
- UPB_INLINE const grpc_gcp_StartServerHandshakeReq* grpc_gcp_HandshakerReq_server_start(const grpc_gcp_HandshakerReq *msg) { return UPB_READ_ONEOF(msg, const grpc_gcp_StartServerHandshakeReq*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 2, NULL); }
632
- UPB_INLINE bool grpc_gcp_HandshakerReq_has_next(const grpc_gcp_HandshakerReq *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 3; }
633
- UPB_INLINE const grpc_gcp_NextHandshakeMessageReq* grpc_gcp_HandshakerReq_next(const grpc_gcp_HandshakerReq *msg) { return UPB_READ_ONEOF(msg, const grpc_gcp_NextHandshakeMessageReq*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 3, NULL); }
795
+ UPB_INLINE grpc_gcp_HandshakerReq_req_oneof_oneofcases grpc_gcp_HandshakerReq_req_oneof_case(const grpc_gcp_HandshakerReq* msg) {
796
+ return (grpc_gcp_HandshakerReq_req_oneof_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
797
+ }
798
+ UPB_INLINE bool grpc_gcp_HandshakerReq_has_client_start(const grpc_gcp_HandshakerReq* msg) {
799
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 1;
800
+ }
801
+ UPB_INLINE void grpc_gcp_HandshakerReq_clear_client_start(const grpc_gcp_HandshakerReq* msg) {
802
+ UPB_WRITE_ONEOF(msg, grpc_gcp_StartClientHandshakeReq*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), grpc_gcp_HandshakerReq_req_oneof_NOT_SET);
803
+ }
804
+ UPB_INLINE const grpc_gcp_StartClientHandshakeReq* grpc_gcp_HandshakerReq_client_start(const grpc_gcp_HandshakerReq* msg) {
805
+ return UPB_READ_ONEOF(msg, const grpc_gcp_StartClientHandshakeReq*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 1, NULL);
806
+ }
807
+ UPB_INLINE bool grpc_gcp_HandshakerReq_has_server_start(const grpc_gcp_HandshakerReq* msg) {
808
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 2;
809
+ }
810
+ UPB_INLINE void grpc_gcp_HandshakerReq_clear_server_start(const grpc_gcp_HandshakerReq* msg) {
811
+ UPB_WRITE_ONEOF(msg, grpc_gcp_StartServerHandshakeReq*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), grpc_gcp_HandshakerReq_req_oneof_NOT_SET);
812
+ }
813
+ UPB_INLINE const grpc_gcp_StartServerHandshakeReq* grpc_gcp_HandshakerReq_server_start(const grpc_gcp_HandshakerReq* msg) {
814
+ return UPB_READ_ONEOF(msg, const grpc_gcp_StartServerHandshakeReq*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 2, NULL);
815
+ }
816
+ UPB_INLINE bool grpc_gcp_HandshakerReq_has_next(const grpc_gcp_HandshakerReq* msg) {
817
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 3;
818
+ }
819
+ UPB_INLINE void grpc_gcp_HandshakerReq_clear_next(const grpc_gcp_HandshakerReq* msg) {
820
+ UPB_WRITE_ONEOF(msg, grpc_gcp_NextHandshakeMessageReq*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), grpc_gcp_HandshakerReq_req_oneof_NOT_SET);
821
+ }
822
+ UPB_INLINE const grpc_gcp_NextHandshakeMessageReq* grpc_gcp_HandshakerReq_next(const grpc_gcp_HandshakerReq* msg) {
823
+ return UPB_READ_ONEOF(msg, const grpc_gcp_NextHandshakeMessageReq*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 3, NULL);
824
+ }
634
825
 
635
826
  UPB_INLINE void grpc_gcp_HandshakerReq_set_client_start(grpc_gcp_HandshakerReq *msg, grpc_gcp_StartClientHandshakeReq* value) {
636
- UPB_WRITE_ONEOF(msg, grpc_gcp_StartClientHandshakeReq*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
827
+ UPB_WRITE_ONEOF(msg, grpc_gcp_StartClientHandshakeReq*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 1);
637
828
  }
638
- UPB_INLINE struct grpc_gcp_StartClientHandshakeReq* grpc_gcp_HandshakerReq_mutable_client_start(grpc_gcp_HandshakerReq *msg, upb_Arena *arena) {
829
+ UPB_INLINE struct grpc_gcp_StartClientHandshakeReq* grpc_gcp_HandshakerReq_mutable_client_start(grpc_gcp_HandshakerReq* msg, upb_Arena* arena) {
639
830
  struct grpc_gcp_StartClientHandshakeReq* sub = (struct grpc_gcp_StartClientHandshakeReq*)grpc_gcp_HandshakerReq_client_start(msg);
640
831
  if (sub == NULL) {
641
832
  sub = (struct grpc_gcp_StartClientHandshakeReq*)_upb_Message_New(&grpc_gcp_StartClientHandshakeReq_msginit, arena);
@@ -645,9 +836,9 @@ UPB_INLINE struct grpc_gcp_StartClientHandshakeReq* grpc_gcp_HandshakerReq_mutab
645
836
  return sub;
646
837
  }
647
838
  UPB_INLINE void grpc_gcp_HandshakerReq_set_server_start(grpc_gcp_HandshakerReq *msg, grpc_gcp_StartServerHandshakeReq* value) {
648
- UPB_WRITE_ONEOF(msg, grpc_gcp_StartServerHandshakeReq*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 2);
839
+ UPB_WRITE_ONEOF(msg, grpc_gcp_StartServerHandshakeReq*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 2);
649
840
  }
650
- UPB_INLINE struct grpc_gcp_StartServerHandshakeReq* grpc_gcp_HandshakerReq_mutable_server_start(grpc_gcp_HandshakerReq *msg, upb_Arena *arena) {
841
+ UPB_INLINE struct grpc_gcp_StartServerHandshakeReq* grpc_gcp_HandshakerReq_mutable_server_start(grpc_gcp_HandshakerReq* msg, upb_Arena* arena) {
651
842
  struct grpc_gcp_StartServerHandshakeReq* sub = (struct grpc_gcp_StartServerHandshakeReq*)grpc_gcp_HandshakerReq_server_start(msg);
652
843
  if (sub == NULL) {
653
844
  sub = (struct grpc_gcp_StartServerHandshakeReq*)_upb_Message_New(&grpc_gcp_StartServerHandshakeReq_msginit, arena);
@@ -657,9 +848,9 @@ UPB_INLINE struct grpc_gcp_StartServerHandshakeReq* grpc_gcp_HandshakerReq_mutab
657
848
  return sub;
658
849
  }
659
850
  UPB_INLINE void grpc_gcp_HandshakerReq_set_next(grpc_gcp_HandshakerReq *msg, grpc_gcp_NextHandshakeMessageReq* value) {
660
- UPB_WRITE_ONEOF(msg, grpc_gcp_NextHandshakeMessageReq*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 3);
851
+ UPB_WRITE_ONEOF(msg, grpc_gcp_NextHandshakeMessageReq*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 3);
661
852
  }
662
- UPB_INLINE struct grpc_gcp_NextHandshakeMessageReq* grpc_gcp_HandshakerReq_mutable_next(grpc_gcp_HandshakerReq *msg, upb_Arena *arena) {
853
+ UPB_INLINE struct grpc_gcp_NextHandshakeMessageReq* grpc_gcp_HandshakerReq_mutable_next(grpc_gcp_HandshakerReq* msg, upb_Arena* arena) {
663
854
  struct grpc_gcp_NextHandshakeMessageReq* sub = (struct grpc_gcp_NextHandshakeMessageReq*)grpc_gcp_HandshakerReq_next(msg);
664
855
  if (sub == NULL) {
665
856
  sub = (struct grpc_gcp_NextHandshakeMessageReq*)_upb_Message_New(&grpc_gcp_NextHandshakeMessageReq_msginit, arena);
@@ -694,54 +885,88 @@ UPB_INLINE grpc_gcp_HandshakerResult* grpc_gcp_HandshakerResult_parse_ex(const c
694
885
  return ret;
695
886
  }
696
887
  UPB_INLINE char* grpc_gcp_HandshakerResult_serialize(const grpc_gcp_HandshakerResult* msg, upb_Arena* arena, size_t* len) {
697
- return upb_Encode(msg, &grpc_gcp_HandshakerResult_msginit, 0, arena, len);
888
+ char* ptr;
889
+ (void)upb_Encode(msg, &grpc_gcp_HandshakerResult_msginit, 0, arena, &ptr, len);
890
+ return ptr;
698
891
  }
699
892
  UPB_INLINE char* grpc_gcp_HandshakerResult_serialize_ex(const grpc_gcp_HandshakerResult* msg, int options,
700
893
  upb_Arena* arena, size_t* len) {
701
- return upb_Encode(msg, &grpc_gcp_HandshakerResult_msginit, options, arena, len);
894
+ char* ptr;
895
+ (void)upb_Encode(msg, &grpc_gcp_HandshakerResult_msginit, options, arena, &ptr, len);
896
+ return ptr;
897
+ }
898
+ UPB_INLINE void grpc_gcp_HandshakerResult_clear_application_protocol(const grpc_gcp_HandshakerResult* msg) {
899
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
702
900
  }
703
901
  UPB_INLINE upb_StringView grpc_gcp_HandshakerResult_application_protocol(const grpc_gcp_HandshakerResult* msg) {
704
- return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), upb_StringView);
902
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView);
903
+ }
904
+ UPB_INLINE void grpc_gcp_HandshakerResult_clear_record_protocol(const grpc_gcp_HandshakerResult* msg) {
905
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
705
906
  }
706
907
  UPB_INLINE upb_StringView grpc_gcp_HandshakerResult_record_protocol(const grpc_gcp_HandshakerResult* msg) {
707
- return *UPB_PTR_AT(msg, UPB_SIZE(20, 32), upb_StringView);
908
+ return *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_StringView);
909
+ }
910
+ UPB_INLINE void grpc_gcp_HandshakerResult_clear_key_data(const grpc_gcp_HandshakerResult* msg) {
911
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 40), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
708
912
  }
709
913
  UPB_INLINE upb_StringView grpc_gcp_HandshakerResult_key_data(const grpc_gcp_HandshakerResult* msg) {
710
- return *UPB_PTR_AT(msg, UPB_SIZE(28, 48), upb_StringView);
914
+ return *UPB_PTR_AT(msg, UPB_SIZE(24, 40), upb_StringView);
915
+ }
916
+ UPB_INLINE bool grpc_gcp_HandshakerResult_has_peer_identity(const grpc_gcp_HandshakerResult* msg) {
917
+ return _upb_hasbit(msg, 1);
918
+ }
919
+ UPB_INLINE void grpc_gcp_HandshakerResult_clear_peer_identity(const grpc_gcp_HandshakerResult* msg) {
920
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 56), const upb_Message*) = NULL;
711
921
  }
712
- UPB_INLINE bool grpc_gcp_HandshakerResult_has_peer_identity(const grpc_gcp_HandshakerResult *msg) { return _upb_hasbit(msg, 1); }
713
922
  UPB_INLINE const grpc_gcp_Identity* grpc_gcp_HandshakerResult_peer_identity(const grpc_gcp_HandshakerResult* msg) {
714
- return *UPB_PTR_AT(msg, UPB_SIZE(36, 64), const grpc_gcp_Identity*);
923
+ return *UPB_PTR_AT(msg, UPB_SIZE(32, 56), const grpc_gcp_Identity*);
924
+ }
925
+ UPB_INLINE bool grpc_gcp_HandshakerResult_has_local_identity(const grpc_gcp_HandshakerResult* msg) {
926
+ return _upb_hasbit(msg, 2);
927
+ }
928
+ UPB_INLINE void grpc_gcp_HandshakerResult_clear_local_identity(const grpc_gcp_HandshakerResult* msg) {
929
+ *UPB_PTR_AT(msg, UPB_SIZE(36, 64), const upb_Message*) = NULL;
715
930
  }
716
- UPB_INLINE bool grpc_gcp_HandshakerResult_has_local_identity(const grpc_gcp_HandshakerResult *msg) { return _upb_hasbit(msg, 2); }
717
931
  UPB_INLINE const grpc_gcp_Identity* grpc_gcp_HandshakerResult_local_identity(const grpc_gcp_HandshakerResult* msg) {
718
- return *UPB_PTR_AT(msg, UPB_SIZE(40, 72), const grpc_gcp_Identity*);
932
+ return *UPB_PTR_AT(msg, UPB_SIZE(36, 64), const grpc_gcp_Identity*);
933
+ }
934
+ UPB_INLINE void grpc_gcp_HandshakerResult_clear_keep_channel_open(const grpc_gcp_HandshakerResult* msg) {
935
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = 0;
719
936
  }
720
937
  UPB_INLINE bool grpc_gcp_HandshakerResult_keep_channel_open(const grpc_gcp_HandshakerResult* msg) {
721
- return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool);
938
+ return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool);
939
+ }
940
+ UPB_INLINE bool grpc_gcp_HandshakerResult_has_peer_rpc_versions(const grpc_gcp_HandshakerResult* msg) {
941
+ return _upb_hasbit(msg, 3);
942
+ }
943
+ UPB_INLINE void grpc_gcp_HandshakerResult_clear_peer_rpc_versions(const grpc_gcp_HandshakerResult* msg) {
944
+ *UPB_PTR_AT(msg, UPB_SIZE(40, 72), const upb_Message*) = NULL;
722
945
  }
723
- UPB_INLINE bool grpc_gcp_HandshakerResult_has_peer_rpc_versions(const grpc_gcp_HandshakerResult *msg) { return _upb_hasbit(msg, 3); }
724
946
  UPB_INLINE const struct grpc_gcp_RpcProtocolVersions* grpc_gcp_HandshakerResult_peer_rpc_versions(const grpc_gcp_HandshakerResult* msg) {
725
- return *UPB_PTR_AT(msg, UPB_SIZE(44, 80), const struct grpc_gcp_RpcProtocolVersions*);
947
+ return *UPB_PTR_AT(msg, UPB_SIZE(40, 72), const struct grpc_gcp_RpcProtocolVersions*);
948
+ }
949
+ UPB_INLINE void grpc_gcp_HandshakerResult_clear_max_frame_size(const grpc_gcp_HandshakerResult* msg) {
950
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t) = 0;
726
951
  }
727
952
  UPB_INLINE uint32_t grpc_gcp_HandshakerResult_max_frame_size(const grpc_gcp_HandshakerResult* msg) {
728
953
  return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t);
729
954
  }
730
955
 
731
956
  UPB_INLINE void grpc_gcp_HandshakerResult_set_application_protocol(grpc_gcp_HandshakerResult *msg, upb_StringView value) {
732
- *UPB_PTR_AT(msg, UPB_SIZE(12, 16), upb_StringView) = value;
957
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView) = value;
733
958
  }
734
959
  UPB_INLINE void grpc_gcp_HandshakerResult_set_record_protocol(grpc_gcp_HandshakerResult *msg, upb_StringView value) {
735
- *UPB_PTR_AT(msg, UPB_SIZE(20, 32), upb_StringView) = value;
960
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_StringView) = value;
736
961
  }
737
962
  UPB_INLINE void grpc_gcp_HandshakerResult_set_key_data(grpc_gcp_HandshakerResult *msg, upb_StringView value) {
738
- *UPB_PTR_AT(msg, UPB_SIZE(28, 48), upb_StringView) = value;
963
+ *UPB_PTR_AT(msg, UPB_SIZE(24, 40), upb_StringView) = value;
739
964
  }
740
965
  UPB_INLINE void grpc_gcp_HandshakerResult_set_peer_identity(grpc_gcp_HandshakerResult *msg, grpc_gcp_Identity* value) {
741
966
  _upb_sethas(msg, 1);
742
- *UPB_PTR_AT(msg, UPB_SIZE(36, 64), grpc_gcp_Identity*) = value;
967
+ *UPB_PTR_AT(msg, UPB_SIZE(32, 56), grpc_gcp_Identity*) = value;
743
968
  }
744
- UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_HandshakerResult_mutable_peer_identity(grpc_gcp_HandshakerResult *msg, upb_Arena *arena) {
969
+ UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_HandshakerResult_mutable_peer_identity(grpc_gcp_HandshakerResult* msg, upb_Arena* arena) {
745
970
  struct grpc_gcp_Identity* sub = (struct grpc_gcp_Identity*)grpc_gcp_HandshakerResult_peer_identity(msg);
746
971
  if (sub == NULL) {
747
972
  sub = (struct grpc_gcp_Identity*)_upb_Message_New(&grpc_gcp_Identity_msginit, arena);
@@ -752,9 +977,9 @@ UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_HandshakerResult_mutable_peer_iden
752
977
  }
753
978
  UPB_INLINE void grpc_gcp_HandshakerResult_set_local_identity(grpc_gcp_HandshakerResult *msg, grpc_gcp_Identity* value) {
754
979
  _upb_sethas(msg, 2);
755
- *UPB_PTR_AT(msg, UPB_SIZE(40, 72), grpc_gcp_Identity*) = value;
980
+ *UPB_PTR_AT(msg, UPB_SIZE(36, 64), grpc_gcp_Identity*) = value;
756
981
  }
757
- UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_HandshakerResult_mutable_local_identity(grpc_gcp_HandshakerResult *msg, upb_Arena *arena) {
982
+ UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_HandshakerResult_mutable_local_identity(grpc_gcp_HandshakerResult* msg, upb_Arena* arena) {
758
983
  struct grpc_gcp_Identity* sub = (struct grpc_gcp_Identity*)grpc_gcp_HandshakerResult_local_identity(msg);
759
984
  if (sub == NULL) {
760
985
  sub = (struct grpc_gcp_Identity*)_upb_Message_New(&grpc_gcp_Identity_msginit, arena);
@@ -764,13 +989,13 @@ UPB_INLINE struct grpc_gcp_Identity* grpc_gcp_HandshakerResult_mutable_local_ide
764
989
  return sub;
765
990
  }
766
991
  UPB_INLINE void grpc_gcp_HandshakerResult_set_keep_channel_open(grpc_gcp_HandshakerResult *msg, bool value) {
767
- *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool) = value;
992
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
768
993
  }
769
994
  UPB_INLINE void grpc_gcp_HandshakerResult_set_peer_rpc_versions(grpc_gcp_HandshakerResult *msg, struct grpc_gcp_RpcProtocolVersions* value) {
770
995
  _upb_sethas(msg, 3);
771
- *UPB_PTR_AT(msg, UPB_SIZE(44, 80), struct grpc_gcp_RpcProtocolVersions*) = value;
996
+ *UPB_PTR_AT(msg, UPB_SIZE(40, 72), struct grpc_gcp_RpcProtocolVersions*) = value;
772
997
  }
773
- UPB_INLINE struct grpc_gcp_RpcProtocolVersions* grpc_gcp_HandshakerResult_mutable_peer_rpc_versions(grpc_gcp_HandshakerResult *msg, upb_Arena *arena) {
998
+ UPB_INLINE struct grpc_gcp_RpcProtocolVersions* grpc_gcp_HandshakerResult_mutable_peer_rpc_versions(grpc_gcp_HandshakerResult* msg, upb_Arena* arena) {
774
999
  struct grpc_gcp_RpcProtocolVersions* sub = (struct grpc_gcp_RpcProtocolVersions*)grpc_gcp_HandshakerResult_peer_rpc_versions(msg);
775
1000
  if (sub == NULL) {
776
1001
  sub = (struct grpc_gcp_RpcProtocolVersions*)_upb_Message_New(&grpc_gcp_RpcProtocolVersions_msginit, arena);
@@ -808,15 +1033,25 @@ UPB_INLINE grpc_gcp_HandshakerStatus* grpc_gcp_HandshakerStatus_parse_ex(const c
808
1033
  return ret;
809
1034
  }
810
1035
  UPB_INLINE char* grpc_gcp_HandshakerStatus_serialize(const grpc_gcp_HandshakerStatus* msg, upb_Arena* arena, size_t* len) {
811
- return upb_Encode(msg, &grpc_gcp_HandshakerStatus_msginit, 0, arena, len);
1036
+ char* ptr;
1037
+ (void)upb_Encode(msg, &grpc_gcp_HandshakerStatus_msginit, 0, arena, &ptr, len);
1038
+ return ptr;
812
1039
  }
813
1040
  UPB_INLINE char* grpc_gcp_HandshakerStatus_serialize_ex(const grpc_gcp_HandshakerStatus* msg, int options,
814
1041
  upb_Arena* arena, size_t* len) {
815
- return upb_Encode(msg, &grpc_gcp_HandshakerStatus_msginit, options, arena, len);
1042
+ char* ptr;
1043
+ (void)upb_Encode(msg, &grpc_gcp_HandshakerStatus_msginit, options, arena, &ptr, len);
1044
+ return ptr;
1045
+ }
1046
+ UPB_INLINE void grpc_gcp_HandshakerStatus_clear_code(const grpc_gcp_HandshakerStatus* msg) {
1047
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), uint32_t) = 0;
816
1048
  }
817
1049
  UPB_INLINE uint32_t grpc_gcp_HandshakerStatus_code(const grpc_gcp_HandshakerStatus* msg) {
818
1050
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), uint32_t);
819
1051
  }
1052
+ UPB_INLINE void grpc_gcp_HandshakerStatus_clear_details(const grpc_gcp_HandshakerStatus* msg) {
1053
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
1054
+ }
820
1055
  UPB_INLINE upb_StringView grpc_gcp_HandshakerStatus_details(const grpc_gcp_HandshakerStatus* msg) {
821
1056
  return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_StringView);
822
1057
  }
@@ -853,23 +1088,43 @@ UPB_INLINE grpc_gcp_HandshakerResp* grpc_gcp_HandshakerResp_parse_ex(const char*
853
1088
  return ret;
854
1089
  }
855
1090
  UPB_INLINE char* grpc_gcp_HandshakerResp_serialize(const grpc_gcp_HandshakerResp* msg, upb_Arena* arena, size_t* len) {
856
- return upb_Encode(msg, &grpc_gcp_HandshakerResp_msginit, 0, arena, len);
1091
+ char* ptr;
1092
+ (void)upb_Encode(msg, &grpc_gcp_HandshakerResp_msginit, 0, arena, &ptr, len);
1093
+ return ptr;
857
1094
  }
858
1095
  UPB_INLINE char* grpc_gcp_HandshakerResp_serialize_ex(const grpc_gcp_HandshakerResp* msg, int options,
859
1096
  upb_Arena* arena, size_t* len) {
860
- return upb_Encode(msg, &grpc_gcp_HandshakerResp_msginit, options, arena, len);
1097
+ char* ptr;
1098
+ (void)upb_Encode(msg, &grpc_gcp_HandshakerResp_msginit, options, arena, &ptr, len);
1099
+ return ptr;
1100
+ }
1101
+ UPB_INLINE void grpc_gcp_HandshakerResp_clear_out_frames(const grpc_gcp_HandshakerResp* msg) {
1102
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
861
1103
  }
862
1104
  UPB_INLINE upb_StringView grpc_gcp_HandshakerResp_out_frames(const grpc_gcp_HandshakerResp* msg) {
863
1105
  return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_StringView);
864
1106
  }
1107
+ UPB_INLINE void grpc_gcp_HandshakerResp_clear_bytes_consumed(const grpc_gcp_HandshakerResp* msg) {
1108
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t) = 0;
1109
+ }
865
1110
  UPB_INLINE uint32_t grpc_gcp_HandshakerResp_bytes_consumed(const grpc_gcp_HandshakerResp* msg) {
866
1111
  return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), uint32_t);
867
1112
  }
868
- UPB_INLINE bool grpc_gcp_HandshakerResp_has_result(const grpc_gcp_HandshakerResp *msg) { return _upb_hasbit(msg, 1); }
1113
+ UPB_INLINE bool grpc_gcp_HandshakerResp_has_result(const grpc_gcp_HandshakerResp* msg) {
1114
+ return _upb_hasbit(msg, 1);
1115
+ }
1116
+ UPB_INLINE void grpc_gcp_HandshakerResp_clear_result(const grpc_gcp_HandshakerResp* msg) {
1117
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 24), const upb_Message*) = NULL;
1118
+ }
869
1119
  UPB_INLINE const grpc_gcp_HandshakerResult* grpc_gcp_HandshakerResp_result(const grpc_gcp_HandshakerResp* msg) {
870
1120
  return *UPB_PTR_AT(msg, UPB_SIZE(16, 24), const grpc_gcp_HandshakerResult*);
871
1121
  }
872
- UPB_INLINE bool grpc_gcp_HandshakerResp_has_status(const grpc_gcp_HandshakerResp *msg) { return _upb_hasbit(msg, 2); }
1122
+ UPB_INLINE bool grpc_gcp_HandshakerResp_has_status(const grpc_gcp_HandshakerResp* msg) {
1123
+ return _upb_hasbit(msg, 2);
1124
+ }
1125
+ UPB_INLINE void grpc_gcp_HandshakerResp_clear_status(const grpc_gcp_HandshakerResp* msg) {
1126
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 32), const upb_Message*) = NULL;
1127
+ }
873
1128
  UPB_INLINE const grpc_gcp_HandshakerStatus* grpc_gcp_HandshakerResp_status(const grpc_gcp_HandshakerResp* msg) {
874
1129
  return *UPB_PTR_AT(msg, UPB_SIZE(20, 32), const grpc_gcp_HandshakerStatus*);
875
1130
  }
@@ -884,7 +1139,7 @@ UPB_INLINE void grpc_gcp_HandshakerResp_set_result(grpc_gcp_HandshakerResp *msg,
884
1139
  _upb_sethas(msg, 1);
885
1140
  *UPB_PTR_AT(msg, UPB_SIZE(16, 24), grpc_gcp_HandshakerResult*) = value;
886
1141
  }
887
- UPB_INLINE struct grpc_gcp_HandshakerResult* grpc_gcp_HandshakerResp_mutable_result(grpc_gcp_HandshakerResp *msg, upb_Arena *arena) {
1142
+ UPB_INLINE struct grpc_gcp_HandshakerResult* grpc_gcp_HandshakerResp_mutable_result(grpc_gcp_HandshakerResp* msg, upb_Arena* arena) {
888
1143
  struct grpc_gcp_HandshakerResult* sub = (struct grpc_gcp_HandshakerResult*)grpc_gcp_HandshakerResp_result(msg);
889
1144
  if (sub == NULL) {
890
1145
  sub = (struct grpc_gcp_HandshakerResult*)_upb_Message_New(&grpc_gcp_HandshakerResult_msginit, arena);
@@ -897,7 +1152,7 @@ UPB_INLINE void grpc_gcp_HandshakerResp_set_status(grpc_gcp_HandshakerResp *msg,
897
1152
  _upb_sethas(msg, 2);
898
1153
  *UPB_PTR_AT(msg, UPB_SIZE(20, 32), grpc_gcp_HandshakerStatus*) = value;
899
1154
  }
900
- UPB_INLINE struct grpc_gcp_HandshakerStatus* grpc_gcp_HandshakerResp_mutable_status(grpc_gcp_HandshakerResp *msg, upb_Arena *arena) {
1155
+ UPB_INLINE struct grpc_gcp_HandshakerStatus* grpc_gcp_HandshakerResp_mutable_status(grpc_gcp_HandshakerResp* msg, upb_Arena* arena) {
901
1156
  struct grpc_gcp_HandshakerStatus* sub = (struct grpc_gcp_HandshakerStatus*)grpc_gcp_HandshakerResp_status(msg);
902
1157
  if (sub == NULL) {
903
1158
  sub = (struct grpc_gcp_HandshakerStatus*)_upb_Message_New(&grpc_gcp_HandshakerStatus_msginit, arena);