grpc 1.68.1 → 1.74.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3051) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +379 -370
  3. data/include/grpc/create_channel_from_endpoint.h +54 -0
  4. data/include/grpc/credentials.h +11 -5
  5. data/include/grpc/event_engine/endpoint_config.h +5 -5
  6. data/include/grpc/event_engine/event_engine.h +232 -16
  7. data/include/grpc/event_engine/internal/write_event.h +34 -0
  8. data/include/grpc/event_engine/memory_request.h +3 -3
  9. data/include/grpc/grpc_posix.h +20 -1
  10. data/include/grpc/impl/channel_arg_names.h +83 -55
  11. data/include/grpc/impl/compression_types.h +3 -2
  12. data/include/grpc/impl/slice_type.h +1 -1
  13. data/include/grpc/module.modulemap +1 -0
  14. data/include/grpc/status.h +1 -1
  15. data/include/grpc/support/atm.h +0 -13
  16. data/include/grpc/support/json.h +43 -37
  17. data/include/grpc/support/port_platform.h +8 -5
  18. data/include/grpc/support/workaround_list.h +1 -4
  19. data/src/core/call/call_arena_allocator.cc +27 -0
  20. data/src/core/call/call_arena_allocator.h +91 -0
  21. data/src/core/call/call_destination.h +76 -0
  22. data/src/core/call/call_filters.cc +148 -0
  23. data/src/core/call/call_filters.h +1976 -0
  24. data/src/core/call/call_finalization.h +88 -0
  25. data/src/core/call/call_spine.cc +90 -0
  26. data/src/core/call/call_spine.h +646 -0
  27. data/src/core/call/call_state.cc +39 -0
  28. data/src/core/call/call_state.h +1154 -0
  29. data/src/core/call/client_call.cc +458 -0
  30. data/src/core/call/client_call.h +192 -0
  31. data/src/core/call/custom_metadata.h +30 -0
  32. data/src/core/call/interception_chain.cc +155 -0
  33. data/src/core/call/interception_chain.h +278 -0
  34. data/src/core/call/message.cc +44 -0
  35. data/src/core/call/message.h +70 -0
  36. data/src/core/call/metadata.cc +61 -0
  37. data/src/core/call/metadata.h +218 -0
  38. data/src/core/call/metadata_batch.cc +383 -0
  39. data/src/core/call/metadata_batch.h +1668 -0
  40. data/src/core/call/metadata_compression_traits.h +66 -0
  41. data/src/core/call/metadata_info.cc +73 -0
  42. data/src/core/call/metadata_info.h +85 -0
  43. data/src/core/call/parsed_metadata.cc +35 -0
  44. data/src/core/call/parsed_metadata.h +429 -0
  45. data/src/core/call/request_buffer.cc +224 -0
  46. data/src/core/call/request_buffer.h +192 -0
  47. data/src/core/call/security_context.cc +125 -0
  48. data/src/core/call/security_context.h +114 -0
  49. data/src/core/call/server_call.cc +259 -0
  50. data/src/core/call/server_call.h +169 -0
  51. data/src/core/call/simple_slice_based_metadata.h +53 -0
  52. data/src/core/call/status_util.cc +153 -0
  53. data/src/core/call/status_util.h +80 -0
  54. data/src/core/channelz/channel_trace.cc +217 -111
  55. data/src/core/channelz/channel_trace.h +389 -64
  56. data/src/core/channelz/channelz.cc +480 -178
  57. data/src/core/channelz/channelz.h +429 -93
  58. data/src/core/channelz/channelz_registry.cc +323 -124
  59. data/src/core/channelz/channelz_registry.h +203 -21
  60. data/src/core/channelz/property_list.cc +357 -0
  61. data/src/core/channelz/property_list.h +202 -0
  62. data/src/core/channelz/ztrace_collector.h +316 -0
  63. data/src/core/client_channel/backup_poller.cc +18 -3
  64. data/src/core/client_channel/client_channel.cc +86 -99
  65. data/src/core/client_channel/client_channel.h +6 -5
  66. data/src/core/client_channel/client_channel_args.h +21 -0
  67. data/src/core/client_channel/client_channel_filter.cc +102 -198
  68. data/src/core/client_channel/client_channel_filter.h +12 -12
  69. data/src/core/client_channel/client_channel_internal.h +1 -1
  70. data/src/core/client_channel/client_channel_plugin.cc +3 -2
  71. data/src/core/client_channel/client_channel_service_config.cc +1 -1
  72. data/src/core/client_channel/client_channel_service_config.h +6 -6
  73. data/src/core/client_channel/config_selector.h +10 -4
  74. data/src/core/client_channel/connector.h +0 -3
  75. data/src/core/client_channel/direct_channel.cc +5 -5
  76. data/src/core/client_channel/direct_channel.h +1 -1
  77. data/src/core/client_channel/dynamic_filters.cc +5 -7
  78. data/src/core/client_channel/dynamic_filters.h +1 -2
  79. data/src/core/client_channel/global_subchannel_pool.cc +71 -7
  80. data/src/core/client_channel/global_subchannel_pool.h +37 -4
  81. data/src/core/client_channel/lb_metadata.cc +7 -8
  82. data/src/core/client_channel/lb_metadata.h +4 -4
  83. data/src/core/client_channel/load_balanced_call_destination.cc +6 -6
  84. data/src/core/client_channel/load_balanced_call_destination.h +1 -1
  85. data/src/core/client_channel/retry_filter.cc +22 -28
  86. data/src/core/client_channel/retry_filter.h +11 -8
  87. data/src/core/client_channel/retry_filter_legacy_call_data.cc +58 -56
  88. data/src/core/client_channel/retry_filter_legacy_call_data.h +14 -12
  89. data/src/core/client_channel/retry_interceptor.cc +394 -0
  90. data/src/core/client_channel/retry_interceptor.h +158 -0
  91. data/src/core/client_channel/retry_service_config.cc +3 -3
  92. data/src/core/client_channel/retry_service_config.h +18 -5
  93. data/src/core/client_channel/retry_throttle.cc +69 -73
  94. data/src/core/client_channel/retry_throttle.h +23 -37
  95. data/src/core/client_channel/subchannel.cc +93 -105
  96. data/src/core/client_channel/subchannel.h +15 -14
  97. data/src/core/client_channel/subchannel_pool_interface.cc +5 -6
  98. data/src/core/client_channel/subchannel_pool_interface.h +11 -1
  99. data/src/core/client_channel/subchannel_stream_client.cc +14 -12
  100. data/src/core/client_channel/subchannel_stream_client.h +5 -5
  101. data/src/core/config/config_vars.cc +164 -0
  102. data/src/core/config/config_vars.h +137 -0
  103. data/src/core/config/config_vars_non_generated.cc +49 -0
  104. data/src/core/config/core_configuration.cc +151 -0
  105. data/src/core/config/core_configuration.h +335 -0
  106. data/src/core/config/load_config.cc +78 -0
  107. data/src/core/config/load_config.h +54 -0
  108. data/src/core/credentials/call/call_credentials.h +157 -0
  109. data/src/core/credentials/call/call_creds_registry.h +125 -0
  110. data/src/core/credentials/call/call_creds_registry_init.cc +91 -0
  111. data/src/core/credentials/call/call_creds_util.cc +97 -0
  112. data/src/core/credentials/call/call_creds_util.h +43 -0
  113. data/src/core/credentials/call/composite/composite_call_credentials.cc +115 -0
  114. data/src/core/credentials/call/composite/composite_call_credentials.h +82 -0
  115. data/src/core/credentials/call/external/aws_external_account_credentials.cc +528 -0
  116. data/src/core/credentials/call/external/aws_external_account_credentials.h +117 -0
  117. data/src/core/credentials/call/external/aws_request_signer.cc +231 -0
  118. data/src/core/credentials/call/external/aws_request_signer.h +72 -0
  119. data/src/core/credentials/call/external/external_account_credentials.cc +641 -0
  120. data/src/core/credentials/call/external/external_account_credentials.h +207 -0
  121. data/src/core/credentials/call/external/file_external_account_credentials.cc +174 -0
  122. data/src/core/credentials/call/external/file_external_account_credentials.h +80 -0
  123. data/src/core/credentials/call/external/url_external_account_credentials.cc +222 -0
  124. data/src/core/credentials/call/external/url_external_account_credentials.h +73 -0
  125. data/src/core/credentials/call/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +154 -0
  126. data/src/core/credentials/call/gcp_service_account_identity/gcp_service_account_identity_credentials.h +90 -0
  127. data/src/core/credentials/call/iam/iam_credentials.cc +78 -0
  128. data/src/core/credentials/call/iam/iam_credentials.h +66 -0
  129. data/src/core/credentials/call/json_util.cc +69 -0
  130. data/src/core/credentials/call/json_util.h +43 -0
  131. data/src/core/credentials/call/jwt/json_token.cc +318 -0
  132. data/src/core/credentials/call/jwt/json_token.h +78 -0
  133. data/src/core/credentials/call/jwt/jwt_credentials.cc +181 -0
  134. data/src/core/credentials/call/jwt/jwt_credentials.h +106 -0
  135. data/src/core/credentials/call/jwt/jwt_verifier.cc +988 -0
  136. data/src/core/credentials/call/jwt/jwt_verifier.h +122 -0
  137. data/src/core/credentials/call/jwt_token_file/jwt_token_file_call_credentials.cc +86 -0
  138. data/src/core/credentials/call/jwt_token_file/jwt_token_file_call_credentials.h +74 -0
  139. data/src/core/credentials/call/jwt_util.cc +70 -0
  140. data/src/core/credentials/call/jwt_util.h +32 -0
  141. data/src/core/credentials/call/oauth2/oauth2_credentials.cc +656 -0
  142. data/src/core/credentials/call/oauth2/oauth2_credentials.h +197 -0
  143. data/src/core/credentials/call/plugin/plugin_credentials.cc +201 -0
  144. data/src/core/credentials/call/plugin/plugin_credentials.h +123 -0
  145. data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.cc +304 -0
  146. data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.h +181 -0
  147. data/src/core/credentials/transport/alts/alts_credentials.cc +116 -0
  148. data/src/core/credentials/transport/alts/alts_credentials.h +127 -0
  149. data/src/core/credentials/transport/alts/alts_security_connector.cc +304 -0
  150. data/src/core/credentials/transport/alts/alts_security_connector.h +78 -0
  151. data/src/core/credentials/transport/alts/check_gcp_environment.cc +71 -0
  152. data/src/core/credentials/transport/alts/check_gcp_environment.h +57 -0
  153. data/src/core/credentials/transport/alts/check_gcp_environment_linux.cc +67 -0
  154. data/src/core/credentials/transport/alts/check_gcp_environment_no_op.cc +32 -0
  155. data/src/core/credentials/transport/alts/check_gcp_environment_windows.cc +101 -0
  156. data/src/core/credentials/transport/alts/grpc_alts_credentials_client_options.cc +123 -0
  157. data/src/core/credentials/transport/alts/grpc_alts_credentials_options.cc +45 -0
  158. data/src/core/credentials/transport/alts/grpc_alts_credentials_options.h +74 -0
  159. data/src/core/credentials/transport/alts/grpc_alts_credentials_server_options.cc +55 -0
  160. data/src/core/credentials/transport/channel_creds_registry.h +126 -0
  161. data/src/core/credentials/transport/channel_creds_registry_init.cc +245 -0
  162. data/src/core/credentials/transport/composite/composite_channel_credentials.cc +68 -0
  163. data/src/core/credentials/transport/composite/composite_channel_credentials.h +89 -0
  164. data/src/core/credentials/transport/fake/fake_credentials.cc +81 -0
  165. data/src/core/credentials/transport/fake/fake_credentials.h +92 -0
  166. data/src/core/credentials/transport/fake/fake_security_connector.cc +314 -0
  167. data/src/core/credentials/transport/fake/fake_security_connector.h +42 -0
  168. data/src/core/credentials/transport/google_default/credentials_generic.cc +38 -0
  169. data/src/core/credentials/transport/google_default/google_default_credentials.cc +510 -0
  170. data/src/core/credentials/transport/google_default/google_default_credentials.h +101 -0
  171. data/src/core/credentials/transport/insecure/insecure_credentials.cc +71 -0
  172. data/src/core/credentials/transport/insecure/insecure_credentials.h +61 -0
  173. data/src/core/credentials/transport/insecure/insecure_security_connector.cc +118 -0
  174. data/src/core/credentials/transport/insecure/insecure_security_connector.h +102 -0
  175. data/src/core/credentials/transport/local/local_credentials.cc +68 -0
  176. data/src/core/credentials/transport/local/local_credentials.h +77 -0
  177. data/src/core/credentials/transport/local/local_security_connector.cc +306 -0
  178. data/src/core/credentials/transport/local/local_security_connector.h +62 -0
  179. data/src/core/credentials/transport/security_connector.cc +123 -0
  180. data/src/core/credentials/transport/security_connector.h +197 -0
  181. data/src/core/credentials/transport/ssl/ssl_credentials.cc +473 -0
  182. data/src/core/credentials/transport/ssl/ssl_credentials.h +144 -0
  183. data/src/core/credentials/transport/ssl/ssl_security_connector.cc +433 -0
  184. data/src/core/credentials/transport/ssl/ssl_security_connector.h +82 -0
  185. data/src/core/credentials/transport/tls/certificate_provider_factory.h +69 -0
  186. data/src/core/credentials/transport/tls/certificate_provider_registry.cc +50 -0
  187. data/src/core/credentials/transport/tls/certificate_provider_registry.h +75 -0
  188. data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.cc +337 -0
  189. data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.h +215 -0
  190. data/src/core/credentials/transport/tls/grpc_tls_certificate_match.cc +84 -0
  191. data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.cc +490 -0
  192. data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h +206 -0
  193. data/src/core/credentials/transport/tls/grpc_tls_certificate_verifier.cc +237 -0
  194. data/src/core/credentials/transport/tls/grpc_tls_certificate_verifier.h +169 -0
  195. data/src/core/credentials/transport/tls/grpc_tls_credentials_options.cc +161 -0
  196. data/src/core/credentials/transport/tls/grpc_tls_credentials_options.h +145 -0
  197. data/src/core/credentials/transport/tls/grpc_tls_crl_provider.cc +257 -0
  198. data/src/core/credentials/transport/tls/grpc_tls_crl_provider.h +129 -0
  199. data/src/core/credentials/transport/tls/load_system_roots.h +35 -0
  200. data/src/core/credentials/transport/tls/load_system_roots_fallback.cc +36 -0
  201. data/src/core/credentials/transport/tls/load_system_roots_supported.cc +166 -0
  202. data/src/core/credentials/transport/tls/load_system_roots_supported.h +44 -0
  203. data/src/core/credentials/transport/tls/load_system_roots_windows.cc +85 -0
  204. data/src/core/credentials/transport/tls/ssl_utils.cc +646 -0
  205. data/src/core/credentials/transport/tls/ssl_utils.h +193 -0
  206. data/src/core/credentials/transport/tls/tls_credentials.cc +170 -0
  207. data/src/core/credentials/transport/tls/tls_credentials.h +75 -0
  208. data/src/core/credentials/transport/tls/tls_security_connector.cc +817 -0
  209. data/src/core/credentials/transport/tls/tls_security_connector.h +285 -0
  210. data/src/core/credentials/transport/tls/tls_utils.cc +127 -0
  211. data/src/core/credentials/transport/tls/tls_utils.h +50 -0
  212. data/src/core/credentials/transport/transport_credentials.cc +158 -0
  213. data/src/core/credentials/transport/transport_credentials.h +182 -0
  214. data/src/core/credentials/transport/xds/xds_credentials.cc +228 -0
  215. data/src/core/credentials/transport/xds/xds_credentials.h +110 -0
  216. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +6 -13
  217. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +7 -7
  218. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +17 -11
  219. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +11 -18
  220. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +6 -6
  221. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +2 -2
  222. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +1 -1
  223. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +11 -18
  224. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +21 -21
  225. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.cc +1 -1
  226. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.h +2 -2
  227. data/src/core/ext/filters/http/client/http_client_filter.cc +1 -6
  228. data/src/core/ext/filters/http/client/http_client_filter.h +5 -5
  229. data/src/core/ext/filters/http/client_authority_filter.cc +5 -12
  230. data/src/core/ext/filters/http/client_authority_filter.h +6 -6
  231. data/src/core/ext/filters/http/http_filters_plugin.cc +1 -1
  232. data/src/core/ext/filters/http/message_compress/compression_filter.cc +21 -25
  233. data/src/core/ext/filters/http/message_compress/compression_filter.h +56 -18
  234. data/src/core/ext/filters/http/server/http_server_filter.cc +5 -10
  235. data/src/core/ext/filters/http/server/http_server_filter.h +22 -10
  236. data/src/core/ext/filters/message_size/message_size_filter.cc +15 -27
  237. data/src/core/ext/filters/message_size/message_size_filter.h +21 -22
  238. data/src/core/ext/filters/rbac/rbac_filter.cc +3 -10
  239. data/src/core/ext/filters/rbac/rbac_filter.h +6 -6
  240. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +3 -3
  241. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +1 -1
  242. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +3 -8
  243. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +4 -4
  244. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +1 -1
  245. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
  246. data/src/core/ext/transport/chttp2/chttp2_plugin.cc +40 -0
  247. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +134 -153
  248. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +7 -3
  249. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +356 -769
  250. data/src/core/ext/transport/chttp2/server/chttp2_server.h +197 -13
  251. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +4 -3
  252. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +3 -3
  253. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.cc +2 -2
  254. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.h +5 -7
  255. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +402 -167
  256. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +7 -13
  257. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +1239 -3514
  258. data/src/core/ext/transport/chttp2/transport/decode_huff.h +1008 -1486
  259. data/src/core/ext/transport/chttp2/transport/flow_control.cc +3 -3
  260. data/src/core/ext/transport/chttp2/transport/flow_control.h +26 -3
  261. data/src/core/ext/transport/chttp2/transport/frame.cc +326 -167
  262. data/src/core/ext/transport/chttp2/transport/frame.h +126 -8
  263. data/src/core/ext/transport/chttp2/transport/frame_data.cc +25 -8
  264. data/src/core/ext/transport/chttp2/transport/frame_data.h +2 -0
  265. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +23 -11
  266. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +5 -3
  267. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +2 -0
  268. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +17 -7
  269. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +3 -1
  270. data/src/core/ext/transport/chttp2/transport/frame_security.cc +80 -0
  271. data/src/core/ext/transport/chttp2/transport/frame_security.h +44 -0
  272. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +43 -8
  273. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +21 -0
  274. data/src/core/ext/transport/chttp2/transport/header_assembler.h +299 -0
  275. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +12 -5
  276. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +7 -5
  277. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +3 -3
  278. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +3 -3
  279. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +36 -35
  280. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +7 -8
  281. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +11 -5
  282. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +14 -3
  283. data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +1017 -0
  284. data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +593 -0
  285. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +21 -10
  286. data/src/core/ext/transport/chttp2/transport/http2_settings.h +36 -5
  287. data/src/core/ext/transport/chttp2/transport/http2_stats_collector.cc +30 -0
  288. data/src/core/ext/transport/chttp2/transport/http2_stats_collector.h +33 -0
  289. data/src/core/ext/transport/chttp2/transport/http2_status.h +414 -0
  290. data/src/core/ext/transport/chttp2/transport/http2_transport.cc +43 -0
  291. data/src/core/ext/transport/chttp2/transport/http2_transport.h +65 -0
  292. data/src/core/ext/transport/chttp2/transport/http2_ztrace_collector.h +223 -0
  293. data/src/core/ext/transport/chttp2/transport/internal.h +90 -23
  294. data/src/core/ext/transport/chttp2/transport/internal_channel_arg_names.h +24 -0
  295. data/src/core/ext/transport/chttp2/transport/keepalive.cc +105 -0
  296. data/src/core/ext/transport/chttp2/transport/keepalive.h +138 -0
  297. data/src/core/ext/transport/chttp2/transport/legacy_frame.h +1 -0
  298. data/src/core/ext/transport/chttp2/transport/message_assembler.h +185 -0
  299. data/src/core/ext/transport/chttp2/transport/parsing.cc +91 -43
  300. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +1 -1
  301. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +2 -2
  302. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +21 -2
  303. data/src/core/ext/transport/chttp2/transport/ping_promise.cc +151 -0
  304. data/src/core/ext/transport/chttp2/transport/ping_promise.h +180 -0
  305. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +17 -20
  306. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +19 -2
  307. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +40 -1
  308. data/src/core/ext/transport/chttp2/transport/transport_common.cc +19 -0
  309. data/src/core/ext/transport/chttp2/transport/transport_common.h +27 -0
  310. data/src/core/ext/transport/chttp2/transport/varint.cc +4 -4
  311. data/src/core/ext/transport/chttp2/transport/write_size_policy.h +1 -1
  312. data/src/core/ext/transport/chttp2/transport/writing.cc +109 -77
  313. data/src/core/ext/transport/inproc/inproc_transport.cc +10 -7
  314. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +23 -14
  315. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +7 -3
  316. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +8 -8
  317. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.h +3 -3
  318. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +68 -68
  319. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +34 -34
  320. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.h +3 -3
  321. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +3 -3
  322. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +10 -10
  323. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.h +3 -3
  324. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +20 -18
  325. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +44 -44
  326. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.h +3 -3
  327. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +3 -3
  328. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +2 -2
  329. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.h +3 -3
  330. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +3 -3
  331. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +4 -4
  332. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.h +3 -3
  333. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +3 -3
  334. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.h +3 -3
  335. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +9 -9
  336. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +4 -4
  337. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.h +3 -3
  338. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +3 -3
  339. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.h +3 -3
  340. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +149 -133
  341. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +76 -75
  342. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.h +3 -3
  343. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +3 -3
  344. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +2 -2
  345. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.h +3 -3
  346. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +3 -3
  347. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.h +3 -3
  348. data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +5 -5
  349. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +1 -1
  350. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.h +3 -3
  351. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +41 -29
  352. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +29 -29
  353. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.h +3 -3
  354. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +231 -243
  355. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +104 -104
  356. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.h +3 -3
  357. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +30 -30
  358. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +15 -15
  359. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.h +3 -3
  360. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +367 -349
  361. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +152 -150
  362. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.h +3 -3
  363. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +3 -3
  364. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +2 -2
  365. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.h +3 -3
  366. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +61 -61
  367. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +16 -16
  368. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.h +3 -3
  369. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +53 -49
  370. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +31 -31
  371. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.h +3 -3
  372. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +44 -32
  373. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +26 -26
  374. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.h +3 -3
  375. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +3 -3
  376. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +2 -2
  377. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.h +3 -3
  378. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +329 -262
  379. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +126 -100
  380. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.h +5 -3
  381. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +61 -57
  382. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +31 -31
  383. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.h +3 -3
  384. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +7 -3
  385. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +2 -2
  386. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.h +3 -3
  387. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +3 -3
  388. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +2 -2
  389. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.h +3 -3
  390. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +3 -3
  391. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +2 -2
  392. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.h +3 -3
  393. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +91 -95
  394. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +35 -35
  395. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.h +3 -3
  396. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +115 -103
  397. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +44 -44
  398. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.h +3 -3
  399. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb.h +3 -3
  400. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.c +2 -2
  401. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.h +3 -3
  402. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +19 -15
  403. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +7 -7
  404. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.h +3 -3
  405. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +216 -117
  406. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +71 -65
  407. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.h +3 -3
  408. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +3 -3
  409. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +2 -2
  410. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +3 -3
  411. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +3 -3
  412. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +2 -2
  413. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.h +3 -3
  414. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb.h +151 -0
  415. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.c +60 -0
  416. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.h +32 -0
  417. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +232 -21
  418. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +65 -17
  419. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.h +9 -3
  420. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +34 -30
  421. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +12 -12
  422. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.h +3 -3
  423. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +3 -3
  424. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +2 -2
  425. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.h +3 -3
  426. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +15 -40
  427. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +10 -10
  428. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.h +3 -3
  429. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +52 -44
  430. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +30 -30
  431. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +3 -3
  432. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +27 -27
  433. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +15 -15
  434. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.h +3 -3
  435. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +3 -3
  436. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +2 -2
  437. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.h +3 -3
  438. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +150 -142
  439. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +56 -56
  440. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +3 -3
  441. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +80 -167
  442. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +37 -58
  443. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.h +3 -5
  444. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +88 -3
  445. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +26 -4
  446. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.h +3 -3
  447. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +3 -3
  448. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +2 -2
  449. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.h +3 -3
  450. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +9 -9
  451. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +6 -6
  452. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.h +3 -3
  453. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +56 -36
  454. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +26 -26
  455. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.h +3 -3
  456. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +17 -4
  457. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +14 -14
  458. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.h +3 -3
  459. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +175 -39
  460. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +60 -30
  461. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.h +5 -3
  462. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +55 -80
  463. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +16 -16
  464. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.h +3 -3
  465. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +927 -686
  466. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +366 -309
  467. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +7 -3
  468. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +20 -16
  469. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +8 -8
  470. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.h +3 -3
  471. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +18 -6
  472. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +20 -20
  473. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.h +3 -3
  474. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +3 -3
  475. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +4 -4
  476. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.h +3 -3
  477. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +3 -3
  478. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +2 -2
  479. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.h +3 -3
  480. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +7 -3
  481. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +4 -4
  482. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.h +3 -3
  483. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +3 -3
  484. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +2 -2
  485. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.h +3 -3
  486. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +10 -10
  487. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +5 -5
  488. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.h +3 -3
  489. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +3 -3
  490. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +2 -2
  491. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.h +3 -3
  492. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +22 -18
  493. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +11 -11
  494. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.h +3 -3
  495. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb.h +3 -5
  496. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.c +0 -1
  497. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.h +3 -4
  498. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +10 -10
  499. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +7 -7
  500. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.h +3 -3
  501. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +19 -19
  502. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +12 -12
  503. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.h +3 -3
  504. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +313 -410
  505. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +114 -114
  506. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.h +3 -3
  507. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +3 -3
  508. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +3 -3
  509. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +11 -3
  510. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +4 -4
  511. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.h +3 -3
  512. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +68 -64
  513. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +31 -31
  514. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.h +3 -3
  515. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb.h +22 -22
  516. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.c +10 -10
  517. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.h +3 -3
  518. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +28 -28
  519. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +13 -13
  520. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.h +3 -3
  521. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +37 -37
  522. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +13 -13
  523. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.h +3 -3
  524. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +10 -6
  525. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +6 -6
  526. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.h +3 -3
  527. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +338 -294
  528. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +144 -143
  529. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +3 -3
  530. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +3 -3
  531. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +2 -2
  532. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.h +3 -3
  533. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +63 -3
  534. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +15 -4
  535. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.h +3 -3
  536. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +10 -6
  537. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +9 -9
  538. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +3 -3
  539. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +3 -3
  540. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.h +3 -3
  541. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +26 -26
  542. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +10 -10
  543. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.h +3 -3
  544. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +3 -3
  545. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +2 -2
  546. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.h +3 -3
  547. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb.h +3 -4
  548. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.c +2 -3
  549. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.h +3 -3
  550. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +3 -3
  551. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.h +3 -3
  552. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +91 -87
  553. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +38 -38
  554. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.h +3 -3
  555. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +7 -3
  556. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +6 -6
  557. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +3 -3
  558. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +167 -77
  559. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +58 -49
  560. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.h +3 -3
  561. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +40 -10
  562. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +10 -8
  563. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.h +3 -3
  564. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +35 -27
  565. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +13 -13
  566. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +3 -3
  567. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +3 -3
  568. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.h +3 -3
  569. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +367 -164
  570. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +94 -69
  571. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.h +5 -3
  572. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +9 -9
  573. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +6 -6
  574. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.h +3 -3
  575. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +69 -64
  576. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +36 -36
  577. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.h +3 -3
  578. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +10 -10
  579. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +5 -5
  580. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +3 -3
  581. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +7 -3
  582. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +4 -4
  583. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.h +3 -3
  584. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb.h +142 -0
  585. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.c +55 -0
  586. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.h +32 -0
  587. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +40 -3
  588. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +8 -5
  589. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.h +3 -3
  590. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +3 -3
  591. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.h +3 -3
  592. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +13 -9
  593. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +4 -4
  594. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.h +3 -3
  595. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +3 -3
  596. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +2 -2
  597. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.h +3 -3
  598. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +7 -3
  599. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +2 -2
  600. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.h +3 -3
  601. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +7 -3
  602. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +2 -2
  603. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.h +3 -3
  604. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +14 -10
  605. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +9 -9
  606. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.h +3 -3
  607. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +3 -3
  608. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.h +3 -3
  609. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +7 -3
  610. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +4 -4
  611. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.h +3 -3
  612. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +7 -3
  613. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +2 -2
  614. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.h +3 -3
  615. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +11 -3
  616. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +6 -6
  617. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.h +3 -3
  618. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +11 -3
  619. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +4 -4
  620. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.h +3 -3
  621. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +18 -14
  622. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +8 -8
  623. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.h +3 -3
  624. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +7 -3
  625. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +2 -2
  626. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.h +3 -3
  627. data/src/core/ext/upb-gen/envoy/type/v3/http.upb.h +3 -3
  628. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.h +3 -3
  629. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +3 -3
  630. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.h +3 -3
  631. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +3 -3
  632. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.h +3 -3
  633. data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +3 -3
  634. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.h +3 -3
  635. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +7 -3
  636. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +2 -2
  637. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.h +3 -3
  638. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb.h +3 -3
  639. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.h +3 -3
  640. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +3 -3
  641. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.h +3 -3
  642. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +3 -3
  643. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +2 -2
  644. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.h +3 -3
  645. data/src/core/ext/upb-gen/google/api/annotations.upb.h +5 -5
  646. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +1 -1
  647. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.h +3 -3
  648. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +96 -136
  649. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +46 -46
  650. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.h +3 -3
  651. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +95 -126
  652. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +51 -51
  653. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +3 -3
  654. data/src/core/ext/upb-gen/google/api/http.upb.h +59 -54
  655. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +26 -26
  656. data/src/core/ext/upb-gen/google/api/http.upb_minitable.h +3 -3
  657. data/src/core/ext/upb-gen/google/api/httpbody.upb.h +3 -3
  658. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +2 -2
  659. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.h +3 -3
  660. data/src/core/ext/upb-gen/google/protobuf/any.upb.h +4 -3
  661. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.h +3 -3
  662. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +520 -320
  663. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +267 -217
  664. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +25 -20
  665. data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +4 -3
  666. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.h +3 -3
  667. data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +4 -3
  668. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.h +3 -3
  669. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +17 -36
  670. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +8 -8
  671. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.h +3 -3
  672. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +4 -3
  673. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.h +3 -3
  674. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +4 -3
  675. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.h +3 -3
  676. data/src/core/ext/upb-gen/google/rpc/status.upb.h +3 -3
  677. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +2 -2
  678. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.h +3 -3
  679. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb.h +571 -0
  680. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb_minitable.c +120 -0
  681. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/channelz.upb_minitable.h +36 -0
  682. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb.h +1272 -0
  683. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb_minitable.c +312 -0
  684. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/promise.upb_minitable.h +50 -0
  685. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb.h +984 -0
  686. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb_minitable.c +226 -0
  687. data/src/core/ext/upb-gen/src/proto/grpc/channelz/v2/property_list.upb_minitable.h +44 -0
  688. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +12 -31
  689. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +2 -2
  690. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.h +3 -3
  691. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +202 -145
  692. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +50 -44
  693. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.h +3 -3
  694. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +158 -3
  695. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +42 -4
  696. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.h +7 -3
  697. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +4 -3
  698. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.h +3 -3
  699. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +17 -9
  700. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +14 -14
  701. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.h +3 -3
  702. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +25 -43
  703. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +5 -5
  704. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.h +3 -3
  705. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +73 -111
  706. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +25 -25
  707. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.h +3 -3
  708. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +13 -13
  709. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +5 -5
  710. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.h +3 -3
  711. data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +5 -5
  712. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +1 -1
  713. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.h +3 -3
  714. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +3 -3
  715. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.h +3 -3
  716. data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +5 -5
  717. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +1 -1
  718. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.h +3 -3
  719. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +5 -5
  720. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +1 -1
  721. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.h +3 -3
  722. data/src/core/ext/upb-gen/validate/validate.upb.h +385 -373
  723. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +133 -133
  724. data/src/core/ext/upb-gen/validate/validate.upb_minitable.h +4 -4
  725. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +13 -13
  726. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +5 -5
  727. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.h +3 -3
  728. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +5 -5
  729. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +1 -1
  730. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.h +3 -3
  731. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +3 -3
  732. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.h +3 -3
  733. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +9 -9
  734. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +3 -3
  735. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.h +3 -3
  736. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +5 -5
  737. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +1 -1
  738. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.h +3 -3
  739. data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +3 -3
  740. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.h +3 -3
  741. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +3 -3
  742. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +2 -2
  743. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.h +3 -3
  744. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +7 -3
  745. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +4 -4
  746. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.h +3 -3
  747. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +12 -31
  748. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +2 -2
  749. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.h +3 -3
  750. data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +3 -3
  751. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +2 -2
  752. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.h +3 -3
  753. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +10 -10
  754. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +5 -5
  755. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.h +3 -3
  756. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +23 -15
  757. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +6 -6
  758. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.h +3 -3
  759. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +3 -3
  760. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +2 -2
  761. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.h +3 -3
  762. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +30 -87
  763. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +2 -2
  764. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.h +3 -3
  765. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +3 -3
  766. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +2 -2
  767. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.h +3 -3
  768. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +10 -10
  769. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +5 -5
  770. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.h +3 -3
  771. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +3 -3
  772. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +4 -4
  773. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.h +3 -3
  774. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +3 -3
  775. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.h +3 -3
  776. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +6 -6
  777. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +5 -5
  778. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.h +3 -3
  779. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +45 -49
  780. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +23 -23
  781. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.h +3 -3
  782. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +3 -3
  783. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +12 -12
  784. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.h +3 -3
  785. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +7 -3
  786. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +2 -2
  787. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.h +3 -3
  788. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +7 -3
  789. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +4 -4
  790. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.h +3 -3
  791. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +7 -3
  792. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +4 -4
  793. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.h +3 -3
  794. data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +4 -3
  795. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.h +3 -3
  796. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +3 -3
  797. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +2 -2
  798. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.h +3 -3
  799. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.c +123 -62
  800. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.h +8 -4
  801. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.c +200 -101
  802. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.h +8 -4
  803. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.c +152 -77
  804. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.h +8 -4
  805. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.c +524 -254
  806. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.h +8 -4
  807. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.c +44 -23
  808. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.h +8 -4
  809. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.c +66 -34
  810. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.h +8 -4
  811. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.c +54 -28
  812. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.h +8 -4
  813. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.c +46 -25
  814. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.h +8 -4
  815. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.c +47 -25
  816. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.h +8 -4
  817. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.c +256 -124
  818. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.h +8 -4
  819. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.c +50 -28
  820. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.h +8 -4
  821. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.c +55 -28
  822. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.h +8 -4
  823. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.c +34 -18
  824. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.h +8 -4
  825. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.c +414 -206
  826. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.h +8 -4
  827. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +831 -413
  828. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +8 -4
  829. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +143 -73
  830. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +8 -4
  831. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.c +1132 -552
  832. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.h +8 -4
  833. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.c +63 -34
  834. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.h +8 -4
  835. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.c +255 -127
  836. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.h +8 -4
  837. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.c +363 -178
  838. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.h +8 -4
  839. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.c +227 -114
  840. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.h +8 -4
  841. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.c +57 -31
  842. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.h +8 -4
  843. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.c +596 -287
  844. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.h +13 -4
  845. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.c +271 -137
  846. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.h +8 -4
  847. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.c +56 -30
  848. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.h +8 -4
  849. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.c +45 -25
  850. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.h +8 -4
  851. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.c +59 -31
  852. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.h +8 -4
  853. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.c +438 -217
  854. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.h +8 -4
  855. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.c +441 -221
  856. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.h +8 -4
  857. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.c +55 -30
  858. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.h +8 -4
  859. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.c +57 -31
  860. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.h +8 -4
  861. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.c +619 -294
  862. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.h +8 -4
  863. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.c +70 -36
  864. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +8 -4
  865. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.c +62 -33
  866. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.h +8 -4
  867. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_cmsg_headers.upbdefs.c +68 -0
  868. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_cmsg_headers.upbdefs.h +37 -0
  869. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.c +97 -39
  870. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.h +23 -4
  871. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.c +97 -51
  872. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.h +8 -4
  873. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.c +51 -27
  874. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.h +8 -4
  875. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.c +147 -76
  876. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.h +8 -4
  877. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +230 -116
  878. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +8 -4
  879. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.c +277 -138
  880. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.h +8 -4
  881. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.c +48 -26
  882. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.h +8 -4
  883. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.c +388 -197
  884. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +8 -4
  885. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.c +304 -160
  886. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.h +8 -9
  887. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.c +175 -82
  888. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.h +8 -4
  889. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.c +90 -47
  890. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.h +8 -4
  891. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.c +98 -51
  892. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.h +8 -4
  893. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.c +196 -99
  894. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.h +8 -4
  895. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.c +237 -117
  896. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.h +8 -4
  897. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.c +418 -193
  898. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.h +13 -4
  899. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.c +194 -99
  900. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.h +8 -4
  901. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.c +2004 -955
  902. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +18 -4
  903. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.c +101 -53
  904. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.h +8 -4
  905. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.c +352 -176
  906. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.h +8 -4
  907. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.c +79 -42
  908. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.h +8 -4
  909. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.c +67 -37
  910. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.h +8 -4
  911. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.c +63 -34
  912. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.h +8 -4
  913. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.c +88 -47
  914. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.h +8 -4
  915. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.c +80 -43
  916. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.h +8 -4
  917. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.c +53 -29
  918. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.h +8 -4
  919. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.c +86 -46
  920. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.h +8 -4
  921. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.c +56 -36
  922. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.h +8 -4
  923. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.c +91 -49
  924. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.h +8 -4
  925. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.c +105 -55
  926. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.h +8 -4
  927. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.c +775 -379
  928. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.h +8 -4
  929. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +52 -28
  930. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +8 -4
  931. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +134 -68
  932. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +8 -4
  933. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +189 -96
  934. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +8 -4
  935. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.c +116 -61
  936. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.h +8 -4
  937. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +112 -58
  938. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +8 -4
  939. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.c +160 -82
  940. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.h +8 -4
  941. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +75 -39
  942. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +8 -4
  943. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +1161 -567
  944. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +8 -4
  945. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +52 -28
  946. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +8 -4
  947. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upbdefs.c +56 -33
  948. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upbdefs.h +8 -4
  949. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +48 -26
  950. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +8 -4
  951. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +390 -194
  952. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +8 -4
  953. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +126 -65
  954. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +8 -4
  955. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +498 -235
  956. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +8 -4
  957. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +74 -36
  958. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +8 -4
  959. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.c +221 -110
  960. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +8 -4
  961. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.c +68 -36
  962. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.h +8 -4
  963. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.c +378 -174
  964. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.h +13 -4
  965. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.c +100 -52
  966. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.h +8 -4
  967. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.c +257 -128
  968. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.h +8 -4
  969. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.c +44 -24
  970. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +8 -4
  971. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.c +68 -35
  972. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.h +8 -4
  973. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.c +59 -0
  974. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.h +37 -0
  975. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.c +61 -27
  976. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.h +8 -4
  977. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.c +65 -34
  978. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.h +8 -4
  979. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.c +72 -38
  980. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.h +8 -4
  981. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.c +57 -31
  982. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.h +8 -4
  983. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.c +52 -29
  984. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.h +8 -4
  985. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.c +51 -28
  986. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.h +8 -4
  987. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.c +89 -47
  988. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.h +8 -4
  989. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.c +37 -20
  990. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.h +8 -4
  991. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.c +89 -47
  992. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.h +8 -4
  993. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.c +67 -35
  994. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.h +8 -4
  995. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.c +112 -58
  996. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.h +8 -4
  997. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.c +110 -56
  998. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.h +8 -4
  999. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.c +123 -62
  1000. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.h +8 -4
  1001. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.c +59 -31
  1002. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.h +8 -4
  1003. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.c +30 -16
  1004. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.h +8 -4
  1005. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.c +143 -72
  1006. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.h +8 -4
  1007. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.c +61 -32
  1008. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.h +8 -4
  1009. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.c +51 -27
  1010. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.h +8 -4
  1011. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.c +85 -45
  1012. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.h +8 -4
  1013. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.c +35 -19
  1014. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.h +8 -4
  1015. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.c +44 -23
  1016. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.h +8 -4
  1017. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.c +61 -33
  1018. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.h +8 -4
  1019. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.c +35 -19
  1020. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.h +8 -4
  1021. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.c +272 -133
  1022. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.h +8 -4
  1023. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.c +315 -154
  1024. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +8 -4
  1025. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.c +64 -33
  1026. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.h +8 -4
  1027. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.c +35 -19
  1028. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.h +8 -4
  1029. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.c +26 -15
  1030. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.h +8 -4
  1031. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +1106 -496
  1032. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.h +13 -4
  1033. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.c +28 -16
  1034. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.h +8 -4
  1035. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.c +23 -13
  1036. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.h +8 -4
  1037. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.c +69 -35
  1038. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.h +8 -4
  1039. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.c +29 -16
  1040. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.h +8 -4
  1041. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.c +51 -26
  1042. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.h +8 -4
  1043. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.c +32 -17
  1044. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.h +8 -4
  1045. data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/promise.upbdefs.c +175 -0
  1046. data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/promise.upbdefs.h +82 -0
  1047. data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/property_list.upbdefs.c +135 -0
  1048. data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/v2/property_list.upbdefs.h +67 -0
  1049. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +161 -79
  1050. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +8 -4
  1051. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.c +84 -42
  1052. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.h +8 -4
  1053. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.c +48 -26
  1054. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.h +8 -4
  1055. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.c +26 -14
  1056. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.h +8 -4
  1057. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.c +50 -26
  1058. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.h +8 -4
  1059. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.c +36 -19
  1060. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.h +8 -4
  1061. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.c +538 -261
  1062. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.h +8 -4
  1063. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.c +86 -43
  1064. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.h +8 -4
  1065. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.c +49 -26
  1066. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.h +8 -4
  1067. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.c +27 -15
  1068. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.h +8 -4
  1069. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.c +87 -44
  1070. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.h +8 -4
  1071. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.c +37 -20
  1072. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.h +8 -4
  1073. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.c +30 -17
  1074. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.h +8 -4
  1075. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.c +41 -23
  1076. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.h +8 -4
  1077. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.c +62 -33
  1078. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.h +8 -4
  1079. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.c +36 -19
  1080. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.h +8 -4
  1081. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.c +36 -20
  1082. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.h +8 -4
  1083. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.c +42 -23
  1084. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.h +8 -4
  1085. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.c +76 -39
  1086. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.h +8 -4
  1087. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.c +45 -24
  1088. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.h +8 -4
  1089. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.c +41 -23
  1090. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.h +8 -4
  1091. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.c +53 -29
  1092. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.h +8 -4
  1093. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.c +29 -16
  1094. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.h +8 -4
  1095. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.c +58 -32
  1096. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.h +8 -4
  1097. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.c +207 -103
  1098. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.h +8 -4
  1099. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.c +95 -49
  1100. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.h +8 -4
  1101. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.c +38 -20
  1102. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.h +8 -4
  1103. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.c +60 -31
  1104. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.h +8 -4
  1105. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.c +67 -36
  1106. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.h +8 -4
  1107. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.c +31 -17
  1108. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.h +8 -4
  1109. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.c +31 -17
  1110. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.h +8 -4
  1111. data/src/core/filter/auth/auth_filters.h +208 -0
  1112. data/src/core/filter/auth/client_auth_filter.cc +192 -0
  1113. data/src/core/filter/auth/server_auth_filter.cc +208 -0
  1114. data/src/core/filter/blackboard.cc +2 -2
  1115. data/src/core/filter/filter_args.h +98 -0
  1116. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.h +1 -1
  1117. data/src/core/handshaker/handshaker.cc +23 -25
  1118. data/src/core/handshaker/handshaker.h +3 -0
  1119. data/src/core/handshaker/http_connect/http_connect_handshaker.cc +13 -7
  1120. data/src/core/handshaker/http_connect/http_connect_handshaker.h +1 -1
  1121. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +36 -52
  1122. data/src/core/handshaker/http_connect/http_proxy_mapper.h +5 -5
  1123. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.cc +5 -5
  1124. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.h +6 -6
  1125. data/src/core/handshaker/proxy_mapper.h +4 -4
  1126. data/src/core/handshaker/proxy_mapper_registry.cc +5 -6
  1127. data/src/core/handshaker/proxy_mapper_registry.h +4 -4
  1128. data/src/core/handshaker/security/legacy_secure_endpoint.cc +597 -0
  1129. data/src/core/handshaker/security/secure_endpoint.cc +813 -311
  1130. data/src/core/handshaker/security/secure_endpoint.h +17 -0
  1131. data/src/core/handshaker/security/security_handshaker.cc +12 -11
  1132. data/src/core/handshaker/security/security_handshaker.h +2 -2
  1133. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +14 -6
  1134. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.h +1 -1
  1135. data/src/core/lib/address_utils/sockaddr_utils.cc +5 -5
  1136. data/src/core/lib/channel/channel_args.cc +28 -13
  1137. data/src/core/lib/channel/channel_args.h +65 -39
  1138. data/src/core/lib/channel/channel_args_preconditioning.h +1 -1
  1139. data/src/core/lib/channel/channel_stack.cc +32 -4
  1140. data/src/core/lib/channel/channel_stack.h +16 -6
  1141. data/src/core/lib/channel/channel_stack_builder_impl.cc +2 -2
  1142. data/src/core/lib/channel/channel_stack_builder_impl.h +2 -7
  1143. data/src/core/lib/channel/connected_channel.cc +4 -4
  1144. data/src/core/lib/channel/promise_based_filter.cc +10 -10
  1145. data/src/core/lib/channel/promise_based_filter.h +749 -416
  1146. data/src/core/lib/compression/compression.cc +3 -2
  1147. data/src/core/lib/compression/compression_internal.cc +9 -9
  1148. data/src/core/lib/compression/compression_internal.h +3 -3
  1149. data/src/core/lib/debug/trace.cc +1 -1
  1150. data/src/core/lib/debug/trace_flags.cc +7 -6
  1151. data/src/core/lib/debug/trace_flags.h +3 -3
  1152. data/src/core/lib/debug/trace_impl.h +0 -1
  1153. data/src/core/lib/event_engine/ares_resolver.cc +175 -60
  1154. data/src/core/lib/event_engine/ares_resolver.h +54 -12
  1155. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +10 -6
  1156. data/src/core/lib/event_engine/cf_engine/cf_engine.h +3 -8
  1157. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +10 -11
  1158. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +12 -10
  1159. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +2 -4
  1160. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +9 -10
  1161. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +2 -4
  1162. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +5 -7
  1163. data/src/core/lib/event_engine/channel_args_endpoint_config.h +6 -7
  1164. data/src/core/lib/event_engine/common_closures.h +2 -4
  1165. data/src/core/lib/event_engine/default_event_engine.cc +63 -34
  1166. data/src/core/lib/event_engine/default_event_engine.h +25 -34
  1167. data/src/core/lib/event_engine/default_event_engine_factory.cc +12 -18
  1168. data/src/core/lib/event_engine/default_event_engine_factory.h +3 -5
  1169. data/src/core/lib/event_engine/endpoint_channel_arg_wrapper.cc +40 -0
  1170. data/src/core/lib/event_engine/endpoint_channel_arg_wrapper.h +60 -0
  1171. data/src/core/lib/event_engine/event_engine.cc +9 -4
  1172. data/src/core/lib/event_engine/extensions/blocking_dns.h +46 -0
  1173. data/src/core/lib/event_engine/extensions/can_track_errors.h +2 -4
  1174. data/src/core/lib/event_engine/extensions/channelz.h +66 -0
  1175. data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +2 -4
  1176. data/src/core/lib/event_engine/extensions/iomgr_compatible.h +39 -0
  1177. data/src/core/lib/event_engine/extensions/supports_fd.h +2 -4
  1178. data/src/core/lib/event_engine/extensions/supports_win_sockets.h +48 -0
  1179. data/src/core/lib/event_engine/extensions/tcp_trace.h +4 -6
  1180. data/src/core/lib/event_engine/grpc_polled_fd.h +7 -4
  1181. data/src/core/lib/event_engine/handle_containers.h +2 -4
  1182. data/src/core/lib/event_engine/memory_allocator_factory.h +2 -4
  1183. data/src/core/lib/event_engine/nameser.h +1 -1
  1184. data/src/core/lib/event_engine/poller.h +2 -4
  1185. data/src/core/lib/event_engine/posix.h +2 -4
  1186. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +134 -212
  1187. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +13 -19
  1188. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +83 -172
  1189. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +9 -13
  1190. data/src/core/lib/event_engine/posix_engine/event_poller.h +20 -19
  1191. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +3 -23
  1192. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +2 -4
  1193. data/src/core/lib/event_engine/posix_engine/file_descriptor_collection.cc +124 -0
  1194. data/src/core/lib/event_engine/posix_engine/file_descriptor_collection.h +243 -0
  1195. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +31 -23
  1196. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +8 -6
  1197. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +8 -5
  1198. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +2 -4
  1199. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +2 -4
  1200. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +6 -11
  1201. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +5 -4
  1202. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +170 -110
  1203. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +31 -37
  1204. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +344 -104
  1205. data/src/core/lib/event_engine/posix_engine/posix_engine.h +74 -35
  1206. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +2 -4
  1207. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +49 -43
  1208. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +8 -8
  1209. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +60 -146
  1210. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +12 -9
  1211. data/src/core/lib/event_engine/posix_engine/posix_interface.h +211 -0
  1212. data/src/core/lib/event_engine/posix_engine/posix_interface_posix.cc +1083 -0
  1213. data/src/core/lib/event_engine/posix_engine/posix_interface_windows.cc +281 -0
  1214. data/src/core/lib/event_engine/posix_engine/posix_write_event_sink.cc +154 -0
  1215. data/src/core/lib/event_engine/posix_engine/posix_write_event_sink.h +174 -0
  1216. data/src/core/lib/event_engine/posix_engine/set_socket_dualstack.cc +64 -0
  1217. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +8 -736
  1218. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +12 -174
  1219. data/src/core/lib/event_engine/posix_engine/timer.cc +4 -6
  1220. data/src/core/lib/event_engine/posix_engine/timer.h +4 -6
  1221. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +3 -5
  1222. data/src/core/lib/event_engine/posix_engine/timer_heap.h +2 -4
  1223. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +38 -29
  1224. data/src/core/lib/event_engine/posix_engine/timer_manager.h +17 -17
  1225. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +119 -157
  1226. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +30 -99
  1227. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +28 -29
  1228. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +8 -6
  1229. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +38 -58
  1230. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +8 -6
  1231. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +9 -10
  1232. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +14 -10
  1233. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +5 -5
  1234. data/src/core/lib/event_engine/query_extensions.h +12 -25
  1235. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +2 -4
  1236. data/src/core/lib/event_engine/resolved_address.cc +2 -4
  1237. data/src/core/lib/event_engine/resolved_address_internal.h +2 -4
  1238. data/src/core/lib/event_engine/shim.cc +18 -18
  1239. data/src/core/lib/event_engine/shim.h +16 -4
  1240. data/src/core/lib/event_engine/slice.cc +2 -4
  1241. data/src/core/lib/event_engine/slice_buffer.cc +2 -4
  1242. data/src/core/lib/event_engine/tcp_socket_utils.cc +16 -23
  1243. data/src/core/lib/event_engine/tcp_socket_utils.h +5 -7
  1244. data/src/core/lib/event_engine/thread_local.cc +2 -4
  1245. data/src/core/lib/event_engine/thread_local.h +2 -4
  1246. data/src/core/lib/event_engine/thread_pool/thread_count.cc +2 -4
  1247. data/src/core/lib/event_engine/thread_pool/thread_count.h +4 -18
  1248. data/src/core/lib/event_engine/thread_pool/thread_pool.h +9 -7
  1249. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +2 -21
  1250. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +23 -15
  1251. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +7 -7
  1252. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +2 -4
  1253. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +2 -4
  1254. data/src/core/lib/event_engine/time_util.cc +2 -4
  1255. data/src/core/lib/event_engine/time_util.h +2 -4
  1256. data/src/core/lib/event_engine/utils.cc +36 -4
  1257. data/src/core/lib/event_engine/utils.h +5 -4
  1258. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +7 -5
  1259. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.h +6 -4
  1260. data/src/core/lib/event_engine/windows/iocp.cc +2 -4
  1261. data/src/core/lib/event_engine/windows/iocp.h +2 -4
  1262. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +2 -4
  1263. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.h +2 -4
  1264. data/src/core/lib/event_engine/windows/win_socket.cc +13 -4
  1265. data/src/core/lib/event_engine/windows/win_socket.h +5 -4
  1266. data/src/core/lib/event_engine/windows/windows_endpoint.cc +32 -25
  1267. data/src/core/lib/event_engine/windows/windows_endpoint.h +9 -8
  1268. data/src/core/lib/event_engine/windows/windows_engine.cc +44 -4
  1269. data/src/core/lib/event_engine/windows/windows_engine.h +10 -8
  1270. data/src/core/lib/event_engine/windows/windows_listener.cc +21 -12
  1271. data/src/core/lib/event_engine/windows/windows_listener.h +11 -8
  1272. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +2 -4
  1273. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +2 -4
  1274. data/src/core/lib/event_engine/work_queue/work_queue.h +2 -4
  1275. data/src/core/lib/experiments/config.cc +1 -1
  1276. data/src/core/lib/experiments/experiments.cc +515 -187
  1277. data/src/core/lib/experiments/experiments.h +190 -91
  1278. data/src/core/lib/iomgr/buffer_list.cc +1 -1
  1279. data/src/core/lib/iomgr/buffer_list.h +22 -21
  1280. data/src/core/lib/iomgr/call_combiner.h +1 -1
  1281. data/src/core/lib/iomgr/cfstream_handle.cc +0 -2
  1282. data/src/core/lib/iomgr/closure.h +1 -2
  1283. data/src/core/lib/iomgr/combiner.cc +3 -3
  1284. data/src/core/lib/iomgr/combiner.h +1 -1
  1285. data/src/core/lib/iomgr/endpoint.cc +4 -3
  1286. data/src/core/lib/iomgr/endpoint.h +7 -4
  1287. data/src/core/lib/iomgr/endpoint_cfstream.cc +3 -2
  1288. data/src/core/lib/iomgr/endpoint_pair_posix.cc +43 -16
  1289. data/src/core/lib/iomgr/endpoint_pair_windows.cc +43 -8
  1290. data/src/core/lib/iomgr/error.cc +28 -44
  1291. data/src/core/lib/iomgr/ev_apple.cc +1 -1
  1292. data/src/core/lib/iomgr/ev_epoll1_linux.cc +20 -3
  1293. data/src/core/lib/iomgr/ev_poll_posix.cc +22 -0
  1294. data/src/core/lib/iomgr/ev_posix.cc +1 -1
  1295. data/src/core/lib/iomgr/event_engine_shims/closure.cc +0 -1
  1296. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +12 -13
  1297. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +0 -1
  1298. data/src/core/lib/iomgr/exec_ctx.cc +1 -7
  1299. data/src/core/lib/iomgr/exec_ctx.h +1 -132
  1300. data/src/core/lib/iomgr/fork_posix.cc +0 -7
  1301. data/src/core/lib/iomgr/iomgr.cc +1 -4
  1302. data/src/core/lib/iomgr/iomgr_posix.cc +2 -1
  1303. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +3 -0
  1304. data/src/core/lib/iomgr/iomgr_windows.cc +3 -1
  1305. data/src/core/lib/iomgr/nameser.h +1 -1
  1306. data/src/core/lib/iomgr/polling_entity.cc +2 -7
  1307. data/src/core/lib/iomgr/resolve_address_posix.cc +37 -49
  1308. data/src/core/lib/iomgr/resolve_address_posix.h +15 -0
  1309. data/src/core/lib/iomgr/resolve_address_windows.cc +22 -47
  1310. data/src/core/lib/iomgr/resolve_address_windows.h +15 -2
  1311. data/src/core/lib/iomgr/socket_utils_common_posix.cc +1 -0
  1312. data/src/core/lib/iomgr/socket_utils_posix.cc +23 -11
  1313. data/src/core/lib/iomgr/socket_utils_posix.h +12 -2
  1314. data/src/core/lib/iomgr/tcp_client_cfstream.cc +8 -9
  1315. data/src/core/lib/iomgr/tcp_client_posix.cc +27 -23
  1316. data/src/core/lib/iomgr/tcp_client_posix.h +1 -1
  1317. data/src/core/lib/iomgr/tcp_client_windows.cc +3 -3
  1318. data/src/core/lib/iomgr/tcp_posix.cc +84 -48
  1319. data/src/core/lib/iomgr/tcp_posix.h +10 -2
  1320. data/src/core/lib/iomgr/tcp_server_posix.cc +10 -4
  1321. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +1 -4
  1322. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +2 -2
  1323. data/src/core/lib/iomgr/tcp_server_windows.cc +44 -22
  1324. data/src/core/lib/iomgr/tcp_windows.cc +3 -2
  1325. data/src/core/lib/iomgr/timer_generic.cc +1 -1
  1326. data/src/core/lib/iomgr/timer_heap.cc +1 -1
  1327. data/src/core/lib/iomgr/timer_manager.cc +1 -9
  1328. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +11 -3
  1329. data/src/core/lib/promise/activity.cc +2 -0
  1330. data/src/core/lib/promise/activity.h +35 -13
  1331. data/src/core/lib/promise/all_ok.h +68 -0
  1332. data/src/core/lib/promise/arena_promise.h +23 -7
  1333. data/src/core/lib/promise/detail/basic_seq.h +32 -18
  1334. data/src/core/lib/promise/detail/join_state.h +16 -68
  1335. data/src/core/lib/promise/detail/promise_factory.h +96 -26
  1336. data/src/core/lib/promise/detail/promise_like.h +163 -12
  1337. data/src/core/lib/promise/detail/promise_variant.h +50 -0
  1338. data/src/core/lib/promise/detail/seq_state.h +1162 -495
  1339. data/src/core/lib/promise/for_each.h +14 -5
  1340. data/src/core/lib/promise/if.h +68 -20
  1341. data/src/core/lib/promise/inter_activity_latch.h +147 -0
  1342. data/src/core/lib/promise/inter_activity_mutex.h +547 -0
  1343. data/src/core/lib/promise/interceptor_list.h +9 -9
  1344. data/src/core/lib/promise/latch.h +14 -6
  1345. data/src/core/lib/promise/loop.h +131 -17
  1346. data/src/core/lib/promise/map.h +269 -18
  1347. data/src/core/lib/promise/match_promise.h +103 -0
  1348. data/src/core/lib/promise/mpsc.cc +425 -0
  1349. data/src/core/lib/promise/mpsc.h +490 -0
  1350. data/src/core/lib/promise/party.cc +144 -68
  1351. data/src/core/lib/promise/party.h +340 -54
  1352. data/src/core/lib/promise/pipe.h +12 -12
  1353. data/src/core/lib/promise/poll.h +34 -16
  1354. data/src/core/lib/promise/prioritized_race.h +16 -22
  1355. data/src/core/lib/promise/promise.h +6 -5
  1356. data/src/core/lib/promise/race.h +35 -12
  1357. data/src/core/lib/promise/seq.h +52 -35
  1358. data/src/core/lib/promise/sleep.cc +9 -6
  1359. data/src/core/lib/promise/sleep.h +15 -1
  1360. data/src/core/lib/promise/status_flag.h +54 -12
  1361. data/src/core/lib/promise/try_join.h +119 -5
  1362. data/src/core/lib/promise/try_seq.h +79 -49
  1363. data/src/core/lib/promise/wait_set.cc +28 -0
  1364. data/src/core/lib/promise/wait_set.h +86 -0
  1365. data/src/core/lib/resource_quota/api.h +1 -1
  1366. data/src/core/lib/resource_quota/arena.h +106 -0
  1367. data/src/core/lib/resource_quota/connection_quota.h +4 -0
  1368. data/src/core/lib/resource_quota/memory_quota.cc +78 -54
  1369. data/src/core/lib/resource_quota/memory_quota.h +10 -8
  1370. data/src/core/lib/resource_quota/periodic_update.cc +1 -1
  1371. data/src/core/lib/security/authorization/evaluate_args.cc +4 -4
  1372. data/src/core/lib/security/authorization/evaluate_args.h +4 -4
  1373. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +1 -8
  1374. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +7 -7
  1375. data/src/core/lib/security/authorization/matchers.h +3 -3
  1376. data/src/core/lib/security/authorization/rbac_policy.cc +1 -1
  1377. data/src/core/lib/security/authorization/rbac_policy.h +3 -3
  1378. data/src/core/lib/slice/slice.h +11 -0
  1379. data/src/core/lib/slice/slice_buffer.cc +3 -2
  1380. data/src/core/lib/slice/slice_buffer.h +8 -2
  1381. data/src/core/lib/surface/call.cc +24 -22
  1382. data/src/core/lib/surface/call.h +4 -3
  1383. data/src/core/lib/surface/call_utils.cc +5 -5
  1384. data/src/core/lib/surface/call_utils.h +17 -7
  1385. data/src/core/lib/surface/channel.cc +6 -14
  1386. data/src/core/lib/surface/channel.h +5 -5
  1387. data/src/core/lib/surface/channel_create.cc +140 -5
  1388. data/src/core/lib/surface/channel_create.h +4 -0
  1389. data/src/core/lib/surface/channel_init.cc +165 -48
  1390. data/src/core/lib/surface/channel_init.h +67 -4
  1391. data/src/core/lib/surface/completion_queue.cc +88 -67
  1392. data/src/core/lib/surface/completion_queue.h +1 -1
  1393. data/src/core/lib/surface/connection_context.cc +77 -0
  1394. data/src/core/lib/surface/connection_context.h +156 -0
  1395. data/src/core/lib/surface/event_string.cc +7 -1
  1396. data/src/core/lib/surface/filter_stack_call.cc +60 -40
  1397. data/src/core/lib/surface/filter_stack_call.h +3 -3
  1398. data/src/core/lib/surface/init.cc +12 -14
  1399. data/src/core/lib/surface/init_internally.h +13 -2
  1400. data/src/core/lib/surface/lame_client.cc +2 -2
  1401. data/src/core/lib/surface/legacy_channel.cc +41 -37
  1402. data/src/core/lib/surface/legacy_channel.h +6 -4
  1403. data/src/core/lib/surface/version.cc +2 -2
  1404. data/src/core/lib/transport/bdp_estimator.cc +1 -1
  1405. data/src/core/lib/transport/call_final_info.h +1 -1
  1406. data/src/core/lib/transport/connectivity_state.cc +8 -9
  1407. data/src/core/lib/transport/connectivity_state.h +2 -4
  1408. data/src/core/lib/transport/error_utils.cc +65 -11
  1409. data/src/core/lib/transport/error_utils.h +2 -2
  1410. data/src/core/lib/transport/promise_endpoint.cc +110 -0
  1411. data/src/core/lib/transport/promise_endpoint.h +307 -0
  1412. data/src/core/lib/transport/status_conversion.cc +11 -36
  1413. data/src/core/lib/transport/status_conversion.h +5 -4
  1414. data/src/core/lib/transport/timeout_encoding.cc +19 -19
  1415. data/src/core/lib/transport/timeout_encoding.h +3 -2
  1416. data/src/core/lib/transport/transport.cc +2 -3
  1417. data/src/core/lib/transport/transport.h +20 -12
  1418. data/src/core/lib/transport/transport_framing_endpoint_extension.h +47 -0
  1419. data/src/core/lib/transport/transport_op_string.cc +1 -1
  1420. data/src/core/load_balancing/backend_metric_parser.cc +12 -25
  1421. data/src/core/load_balancing/child_policy_handler.cc +3 -5
  1422. data/src/core/load_balancing/delegating_helper.h +3 -4
  1423. data/src/core/load_balancing/endpoint_list.cc +12 -2
  1424. data/src/core/load_balancing/endpoint_list.h +20 -13
  1425. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +2 -7
  1426. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +4 -4
  1427. data/src/core/load_balancing/grpclb/grpclb.cc +25 -43
  1428. data/src/core/load_balancing/health_check_client.cc +19 -57
  1429. data/src/core/load_balancing/health_check_client_internal.h +7 -7
  1430. data/src/core/load_balancing/lb_policy.cc +4 -6
  1431. data/src/core/load_balancing/lb_policy.h +6 -16
  1432. data/src/core/load_balancing/lb_policy_registry.cc +10 -8
  1433. data/src/core/load_balancing/oob_backend_metric.cc +3 -9
  1434. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +63 -73
  1435. data/src/core/load_balancing/outlier_detection/outlier_detection.h +4 -3
  1436. data/src/core/load_balancing/pick_first/pick_first.cc +74 -990
  1437. data/src/core/load_balancing/priority/priority.cc +9 -14
  1438. data/src/core/load_balancing/ring_hash/ring_hash.cc +211 -159
  1439. data/src/core/load_balancing/ring_hash/ring_hash.h +4 -11
  1440. data/src/core/load_balancing/rls/rls.cc +139 -233
  1441. data/src/core/load_balancing/rls/rls.h +97 -1
  1442. data/src/core/load_balancing/round_robin/round_robin.cc +17 -23
  1443. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +6 -6
  1444. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h +3 -3
  1445. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +25 -34
  1446. data/src/core/load_balancing/weighted_target/weighted_target.cc +12 -26
  1447. data/src/core/load_balancing/xds/cds.cc +25 -27
  1448. data/src/core/load_balancing/xds/xds_cluster_impl.cc +17 -20
  1449. data/src/core/load_balancing/xds/xds_cluster_manager.cc +11 -19
  1450. data/src/core/load_balancing/xds/xds_override_host.cc +99 -125
  1451. data/src/core/load_balancing/xds/xds_wrr_locality.cc +11 -13
  1452. data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -1
  1453. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +3 -3
  1454. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +14 -16
  1455. data/src/core/resolver/dns/c_ares/dns_resolver_ares.h +1 -1
  1456. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +1 -1
  1457. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +4 -0
  1458. data/src/core/resolver/dns/dns_resolver_plugin.cc +1 -1
  1459. data/src/core/resolver/dns/dns_resolver_plugin.h +1 -1
  1460. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +10 -15
  1461. data/src/core/resolver/dns/native/dns_resolver.cc +2 -2
  1462. data/src/core/resolver/dns/native/dns_resolver.h +1 -1
  1463. data/src/core/resolver/fake/fake_resolver.cc +11 -12
  1464. data/src/core/resolver/fake/fake_resolver.h +2 -2
  1465. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +11 -14
  1466. data/src/core/resolver/polling_resolver.cc +2 -5
  1467. data/src/core/resolver/polling_resolver.h +3 -3
  1468. data/src/core/resolver/resolver_registry.cc +4 -3
  1469. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +3 -2
  1470. data/src/core/resolver/xds/xds_config.cc +12 -9
  1471. data/src/core/resolver/xds/xds_config.h +11 -6
  1472. data/src/core/resolver/xds/xds_dependency_manager.cc +220 -193
  1473. data/src/core/resolver/xds/xds_dependency_manager.h +30 -19
  1474. data/src/core/resolver/xds/xds_resolver.cc +116 -136
  1475. data/src/core/server/add_port.cc +87 -0
  1476. data/src/core/server/server.cc +459 -131
  1477. data/src/core/server/server.h +237 -72
  1478. data/src/core/server/server_call_tracer_filter.cc +5 -9
  1479. data/src/core/server/server_call_tracer_filter.h +1 -1
  1480. data/src/core/server/server_config_selector.h +1 -1
  1481. data/src/core/server/server_config_selector_filter.cc +9 -16
  1482. data/src/core/server/xds_channel_stack_modifier.cc +1 -1
  1483. data/src/core/server/xds_server_config_fetcher.cc +159 -187
  1484. data/src/core/service_config/service_config.h +1 -1
  1485. data/src/core/service_config/service_config_channel_arg_filter.cc +9 -21
  1486. data/src/core/service_config/service_config_impl.cc +4 -4
  1487. data/src/core/service_config/service_config_impl.h +1 -1
  1488. data/src/core/telemetry/call_tracer.cc +12 -14
  1489. data/src/core/telemetry/call_tracer.h +10 -9
  1490. data/src/core/telemetry/context_list_entry.cc +38 -0
  1491. data/src/core/telemetry/context_list_entry.h +112 -0
  1492. data/src/core/telemetry/default_tcp_tracer.cc +26 -0
  1493. data/src/core/telemetry/default_tcp_tracer.h +44 -0
  1494. data/src/core/telemetry/histogram_view.cc +3 -3
  1495. data/src/core/telemetry/metrics.cc +44 -23
  1496. data/src/core/telemetry/metrics.h +24 -14
  1497. data/src/core/telemetry/stats.h +0 -5
  1498. data/src/core/telemetry/stats_data.cc +564 -329
  1499. data/src/core/telemetry/stats_data.h +474 -180
  1500. data/src/core/telemetry/tcp_tracer.cc +38 -0
  1501. data/src/core/telemetry/tcp_tracer.h +104 -100
  1502. data/src/core/transport/auth_context.cc +235 -0
  1503. data/src/core/transport/auth_context.h +139 -0
  1504. data/src/core/transport/endpoint_transport.h +90 -0
  1505. data/src/core/transport/endpoint_transport_client_channel_factory.cc +61 -0
  1506. data/src/core/transport/endpoint_transport_client_channel_factory.h +57 -0
  1507. data/src/core/tsi/alts/frame_protector/alts_counter.h +1 -1
  1508. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +1 -1
  1509. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +1 -1
  1510. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +36 -4
  1511. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +3 -1
  1512. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +74 -20
  1513. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +9 -3
  1514. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +2 -2
  1515. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +12 -4
  1516. data/src/core/tsi/fake_transport_security.cc +22 -0
  1517. data/src/core/tsi/ssl_transport_security.cc +203 -76
  1518. data/src/core/tsi/ssl_transport_security.h +8 -3
  1519. data/src/core/tsi/ssl_transport_security_utils.h +1 -1
  1520. data/src/core/tsi/transport_security.h +3 -0
  1521. data/src/core/tsi/transport_security_grpc.cc +8 -0
  1522. data/src/core/tsi/transport_security_grpc.h +22 -3
  1523. data/src/core/tsi/transport_security_interface.h +32 -27
  1524. data/src/core/util/backoff.cc +3 -3
  1525. data/src/core/util/backoff.h +1 -1
  1526. data/src/core/util/check_class_size.h +48 -0
  1527. data/src/core/util/down_cast.h +1 -1
  1528. data/src/core/util/dual_ref_counted.h +48 -0
  1529. data/src/core/util/dump_args.h +1 -9
  1530. data/src/core/util/env.h +3 -4
  1531. data/src/core/util/examine_stack.cc +2 -2
  1532. data/src/core/util/examine_stack.h +3 -4
  1533. data/src/core/util/fork.cc +1 -1
  1534. data/src/core/util/fork.h +2 -2
  1535. data/src/core/util/function_signature.h +80 -0
  1536. data/src/core/util/gcp_metadata_query.cc +4 -3
  1537. data/src/core/util/gpr_time.cc +4 -6
  1538. data/src/core/util/http_client/httpcli.cc +97 -36
  1539. data/src/core/util/http_client/httpcli.h +22 -9
  1540. data/src/core/util/http_client/httpcli_security_connector.cc +7 -6
  1541. data/src/core/util/json/json_channel_args.h +2 -1
  1542. data/src/core/util/json/json_object_loader.cc +4 -4
  1543. data/src/core/util/json/json_object_loader.h +19 -19
  1544. data/src/core/util/json/json_reader.cc +4 -4
  1545. data/src/core/util/json/json_writer.cc +4 -4
  1546. data/src/core/util/latent_see.cc +123 -76
  1547. data/src/core/util/latent_see.h +34 -36
  1548. data/src/core/util/linux/env.cc +6 -5
  1549. data/src/core/util/load_file.cc +26 -14
  1550. data/src/core/util/log.cc +5 -1
  1551. data/src/core/util/lru_cache.h +4 -4
  1552. data/src/core/util/match.h +7 -7
  1553. data/src/core/util/matchers.cc +1 -2
  1554. data/src/core/util/matchers.h +7 -12
  1555. data/src/core/util/memory_usage.h +268 -0
  1556. data/src/core/util/per_cpu.cc +2 -0
  1557. data/src/core/util/per_cpu.h +7 -0
  1558. data/src/core/util/posix/env.cc +2 -2
  1559. data/src/core/util/posix/sync.cc +0 -1
  1560. data/src/core/util/posix/time.cc +0 -1
  1561. data/src/core/util/ref_counted.h +1 -0
  1562. data/src/core/util/ref_counted_ptr.h +27 -1
  1563. data/src/core/util/ring_buffer.h +4 -5
  1564. data/src/core/util/shared_bit_gen.cc +21 -0
  1565. data/src/core/util/shared_bit_gen.h +64 -0
  1566. data/src/core/util/single_set_ptr.h +35 -4
  1567. data/src/core/util/status_helper.cc +98 -79
  1568. data/src/core/util/status_helper.h +13 -30
  1569. data/src/core/util/string.cc +2 -2
  1570. data/src/core/util/sync_abseil.cc +0 -1
  1571. data/src/core/util/table.h +6 -21
  1572. data/src/core/util/time.cc +5 -5
  1573. data/src/core/util/time.h +5 -5
  1574. data/src/core/util/time_precise.cc +0 -1
  1575. data/src/core/util/type_list.h +56 -0
  1576. data/src/core/util/upb_utils.h +42 -0
  1577. data/src/core/util/uri.cc +91 -24
  1578. data/src/core/util/uri.h +23 -7
  1579. data/src/core/util/useful.h +66 -17
  1580. data/src/core/util/validation_errors.cc +5 -5
  1581. data/src/core/util/wait_for_single_owner.cc +31 -0
  1582. data/src/core/util/wait_for_single_owner.h +86 -0
  1583. data/src/core/util/windows/env.cc +3 -3
  1584. data/src/core/util/windows/sync.cc +0 -1
  1585. data/src/core/util/windows/time.cc +0 -1
  1586. data/src/core/util/work_serializer.cc +27 -267
  1587. data/src/core/util/work_serializer.h +3 -27
  1588. data/src/core/xds/grpc/certificate_provider_store.cc +14 -19
  1589. data/src/core/xds/grpc/certificate_provider_store.h +4 -4
  1590. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +6 -6
  1591. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +1 -1
  1592. data/src/core/xds/grpc/xds_audit_logger_registry.cc +1 -1
  1593. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +22 -20
  1594. data/src/core/xds/grpc/xds_bootstrap_grpc.h +7 -2
  1595. data/src/core/xds/grpc/xds_certificate_provider.cc +16 -16
  1596. data/src/core/xds/grpc/xds_certificate_provider.h +2 -2
  1597. data/src/core/xds/grpc/xds_client_grpc.cc +20 -16
  1598. data/src/core/xds/grpc/xds_client_grpc.h +4 -2
  1599. data/src/core/xds/grpc/xds_cluster.h +7 -7
  1600. data/src/core/xds/grpc/xds_cluster_parser.cc +29 -28
  1601. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +4 -4
  1602. data/src/core/xds/grpc/xds_common_types.cc +2 -2
  1603. data/src/core/xds/grpc/xds_common_types.h +4 -4
  1604. data/src/core/xds/grpc/xds_common_types_parser.cc +167 -89
  1605. data/src/core/xds/grpc/xds_common_types_parser.h +20 -7
  1606. data/src/core/xds/grpc/xds_endpoint.cc +3 -4
  1607. data/src/core/xds/grpc/xds_endpoint_parser.cc +68 -37
  1608. data/src/core/xds/grpc/xds_health_status.cc +4 -4
  1609. data/src/core/xds/grpc/xds_health_status.h +4 -3
  1610. data/src/core/xds/grpc/xds_http_fault_filter.cc +19 -21
  1611. data/src/core/xds/grpc/xds_http_fault_filter.h +4 -3
  1612. data/src/core/xds/grpc/xds_http_filter.h +11 -4
  1613. data/src/core/xds/grpc/xds_http_filter_registry.cc +8 -10
  1614. data/src/core/xds/grpc/xds_http_filter_registry.h +4 -4
  1615. data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +31 -9
  1616. data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +7 -3
  1617. data/src/core/xds/grpc/xds_http_rbac_filter.cc +21 -21
  1618. data/src/core/xds/grpc/xds_http_rbac_filter.h +4 -3
  1619. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +10 -10
  1620. data/src/core/xds/grpc/xds_http_stateful_session_filter.h +4 -3
  1621. data/src/core/xds/grpc/xds_lb_policy_registry.cc +5 -5
  1622. data/src/core/xds/grpc/xds_lb_policy_registry.h +1 -1
  1623. data/src/core/xds/grpc/xds_listener.cc +4 -6
  1624. data/src/core/xds/grpc/xds_listener.h +10 -10
  1625. data/src/core/xds/grpc/xds_listener_parser.cc +58 -51
  1626. data/src/core/xds/grpc/xds_listener_parser.h +2 -1
  1627. data/src/core/xds/grpc/xds_metadata.cc +5 -5
  1628. data/src/core/xds/grpc/xds_metadata.h +8 -0
  1629. data/src/core/xds/grpc/xds_metadata_parser.cc +26 -37
  1630. data/src/core/xds/grpc/xds_metadata_parser.h +0 -2
  1631. data/src/core/xds/grpc/xds_route_config.cc +10 -15
  1632. data/src/core/xds/grpc/xds_route_config.h +10 -10
  1633. data/src/core/xds/grpc/xds_route_config_parser.cc +85 -132
  1634. data/src/core/xds/grpc/xds_route_config_parser.h +5 -5
  1635. data/src/core/xds/grpc/xds_routing.cc +6 -6
  1636. data/src/core/xds/grpc/xds_routing.h +6 -6
  1637. data/src/core/xds/grpc/xds_server_grpc.cc +133 -50
  1638. data/src/core/xds/grpc/xds_server_grpc.h +34 -13
  1639. data/src/core/xds/grpc/xds_server_grpc_interface.h +37 -0
  1640. data/src/core/xds/grpc/xds_transport_grpc.cc +29 -12
  1641. data/src/core/xds/grpc/xds_transport_grpc.h +5 -3
  1642. data/src/core/xds/xds_client/lrs_client.cc +77 -88
  1643. data/src/core/xds/xds_client/lrs_client.h +15 -15
  1644. data/src/core/xds/xds_client/xds_api.cc +5 -228
  1645. data/src/core/xds/xds_client/xds_api.h +1 -133
  1646. data/src/core/xds/xds_client/xds_bootstrap.cc +11 -1
  1647. data/src/core/xds/xds_client/xds_bootstrap.h +25 -1
  1648. data/src/core/xds/xds_client/xds_client.cc +1076 -727
  1649. data/src/core/xds/xds_client/xds_client.h +138 -30
  1650. data/src/core/xds/xds_client/xds_resource_type.h +3 -5
  1651. data/src/core/xds/xds_client/xds_resource_type_impl.h +13 -8
  1652. data/src/core/xds/xds_client/xds_transport.h +1 -1
  1653. data/src/ruby/ext/grpc/extconf.rb +5 -2
  1654. data/src/ruby/ext/grpc/rb_call.c +1 -8
  1655. data/src/ruby/ext/grpc/rb_channel.c +70 -557
  1656. data/src/ruby/ext/grpc/rb_channel.h +0 -3
  1657. data/src/ruby/ext/grpc/rb_completion_queue.c +26 -14
  1658. data/src/ruby/ext/grpc/rb_completion_queue.h +1 -7
  1659. data/src/ruby/ext/grpc/rb_grpc.c +9 -5
  1660. data/src/ruby/ext/grpc/rb_grpc.h +1 -1
  1661. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +1 -1
  1662. data/src/ruby/ext/grpc/rb_loader.c +0 -4
  1663. data/src/ruby/ext/grpc/rb_server.c +31 -50
  1664. data/src/ruby/lib/grpc/generic/client_stub.rb +4 -4
  1665. data/src/ruby/lib/grpc/version.rb +1 -1
  1666. data/src/ruby/spec/core_spec.rb +22 -0
  1667. data/src/ruby/spec/generic/active_call_spec.rb +1 -1
  1668. data/src/ruby/spec/generic/client_stub_spec.rb +2 -6
  1669. data/src/ruby/spec/generic/rpc_server_spec.rb +1 -1
  1670. data/third_party/abseil-cpp/absl/algorithm/algorithm.h +2 -2
  1671. data/third_party/abseil-cpp/absl/algorithm/container.h +81 -67
  1672. data/third_party/abseil-cpp/absl/base/attributes.h +142 -23
  1673. data/third_party/abseil-cpp/absl/base/call_once.h +18 -16
  1674. data/third_party/abseil-cpp/absl/base/config.h +23 -132
  1675. data/third_party/abseil-cpp/absl/base/fast_type_id.h +45 -0
  1676. data/third_party/abseil-cpp/absl/base/internal/cycleclock.cc +0 -5
  1677. data/third_party/abseil-cpp/absl/base/internal/cycleclock_config.h +7 -7
  1678. data/third_party/abseil-cpp/absl/base/internal/endian.h +34 -38
  1679. data/third_party/abseil-cpp/absl/base/internal/iterator_traits.h +71 -0
  1680. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +6 -5
  1681. data/third_party/abseil-cpp/absl/base/internal/nullability_deprecated.h +106 -0
  1682. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +1 -1
  1683. data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +0 -9
  1684. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +3 -13
  1685. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +14 -0
  1686. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +5 -1
  1687. data/third_party/abseil-cpp/absl/base/internal/tracing.cc +39 -0
  1688. data/third_party/abseil-cpp/absl/base/internal/tracing.h +81 -0
  1689. data/third_party/abseil-cpp/absl/base/internal/unaligned_access.h +6 -6
  1690. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +0 -10
  1691. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +17 -0
  1692. data/third_party/abseil-cpp/absl/base/macros.h +35 -4
  1693. data/third_party/abseil-cpp/absl/base/no_destructor.h +11 -32
  1694. data/third_party/abseil-cpp/absl/base/nullability.h +124 -56
  1695. data/third_party/abseil-cpp/absl/base/optimization.h +8 -12
  1696. data/third_party/abseil-cpp/absl/base/options.h +7 -81
  1697. data/third_party/abseil-cpp/absl/base/policy_checks.h +9 -7
  1698. data/third_party/abseil-cpp/absl/cleanup/cleanup.h +1 -3
  1699. data/third_party/abseil-cpp/absl/cleanup/internal/cleanup.h +3 -4
  1700. data/third_party/abseil-cpp/absl/container/btree_map.h +891 -0
  1701. data/third_party/abseil-cpp/absl/container/btree_set.h +826 -0
  1702. data/third_party/abseil-cpp/absl/container/fixed_array.h +9 -15
  1703. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +22 -3
  1704. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +23 -4
  1705. data/third_party/abseil-cpp/absl/container/inlined_vector.h +10 -6
  1706. data/third_party/abseil-cpp/absl/container/internal/btree.h +3149 -0
  1707. data/third_party/abseil-cpp/absl/container/internal/btree_container.h +867 -0
  1708. data/third_party/abseil-cpp/absl/container/internal/common.h +43 -0
  1709. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +10 -2
  1710. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +10 -10
  1711. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +1 -8
  1712. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +0 -4
  1713. data/third_party/abseil-cpp/absl/container/internal/hashtable_control_bytes.h +527 -0
  1714. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +20 -4
  1715. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +31 -12
  1716. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +6 -9
  1717. data/third_party/abseil-cpp/absl/container/internal/layout.h +27 -43
  1718. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +199 -68
  1719. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +1462 -263
  1720. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1170 -1547
  1721. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set_resize_impl.h +80 -0
  1722. data/third_party/abseil-cpp/absl/crc/crc32c.cc +0 -4
  1723. data/third_party/abseil-cpp/absl/crc/crc32c.h +7 -5
  1724. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +56 -0
  1725. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +0 -22
  1726. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +45 -74
  1727. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +21 -7
  1728. data/third_party/abseil-cpp/absl/debugging/internal/addresses.h +57 -0
  1729. data/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.cc +1 -1
  1730. data/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.h +5 -5
  1731. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +12 -37
  1732. data/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.cc +16 -16
  1733. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +1 -1
  1734. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +40 -21
  1735. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +16 -7
  1736. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +7 -0
  1737. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +14 -5
  1738. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +10 -4
  1739. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +27 -16
  1740. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +20 -8
  1741. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc +4 -3
  1742. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +15 -28
  1743. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +19 -9
  1744. data/third_party/abseil-cpp/absl/debugging/leak_check.cc +73 -0
  1745. data/third_party/abseil-cpp/absl/debugging/leak_check.h +150 -0
  1746. data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +144 -27
  1747. data/third_party/abseil-cpp/absl/debugging/stacktrace.h +73 -5
  1748. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +3 -2
  1749. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +67 -18
  1750. data/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +3 -2
  1751. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +25 -6
  1752. data/third_party/abseil-cpp/absl/flags/commandlineflag.cc +1 -0
  1753. data/third_party/abseil-cpp/absl/flags/commandlineflag.h +9 -2
  1754. data/third_party/abseil-cpp/absl/flags/flag.h +18 -15
  1755. data/third_party/abseil-cpp/absl/flags/internal/commandlineflag.h +2 -2
  1756. data/third_party/abseil-cpp/absl/flags/internal/flag.cc +14 -5
  1757. data/third_party/abseil-cpp/absl/flags/internal/flag.h +23 -11
  1758. data/third_party/abseil-cpp/absl/flags/internal/private_handle_accessor.cc +4 -0
  1759. data/third_party/abseil-cpp/absl/flags/internal/private_handle_accessor.h +3 -0
  1760. data/third_party/abseil-cpp/absl/flags/internal/program_name.cc +13 -12
  1761. data/third_party/abseil-cpp/absl/flags/internal/registry.h +4 -3
  1762. data/third_party/abseil-cpp/absl/flags/reflection.cc +2 -3
  1763. data/third_party/abseil-cpp/absl/flags/usage_config.cc +9 -4
  1764. data/third_party/abseil-cpp/absl/functional/any_invocable.h +8 -10
  1765. data/third_party/abseil-cpp/absl/functional/function_ref.h +2 -9
  1766. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +110 -226
  1767. data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +10 -12
  1768. data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +2 -5
  1769. data/third_party/abseil-cpp/absl/hash/hash.h +44 -2
  1770. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +14 -18
  1771. data/third_party/abseil-cpp/absl/hash/internal/hash.h +257 -127
  1772. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +27 -72
  1773. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.h +2 -6
  1774. data/third_party/abseil-cpp/absl/hash/internal/weakly_mixed_integer.h +38 -0
  1775. data/third_party/abseil-cpp/absl/log/absl_vlog_is_on.h +2 -0
  1776. data/third_party/abseil-cpp/absl/log/check.h +2 -1
  1777. data/third_party/abseil-cpp/absl/log/globals.h +4 -5
  1778. data/third_party/abseil-cpp/absl/log/internal/append_truncated.h +28 -0
  1779. data/third_party/abseil-cpp/absl/log/internal/check_op.cc +43 -38
  1780. data/third_party/abseil-cpp/absl/log/internal/check_op.h +124 -99
  1781. data/third_party/abseil-cpp/absl/log/internal/conditions.cc +5 -3
  1782. data/third_party/abseil-cpp/absl/log/internal/conditions.h +7 -2
  1783. data/third_party/abseil-cpp/absl/log/internal/log_message.cc +158 -64
  1784. data/third_party/abseil-cpp/absl/log/internal/log_message.h +140 -83
  1785. data/third_party/abseil-cpp/absl/log/internal/nullstream.h +1 -0
  1786. data/third_party/abseil-cpp/absl/log/internal/proto.cc +3 -5
  1787. data/third_party/abseil-cpp/absl/log/internal/proto.h +28 -18
  1788. data/third_party/abseil-cpp/absl/log/internal/strip.h +4 -12
  1789. data/third_party/abseil-cpp/absl/log/internal/structured_proto.cc +115 -0
  1790. data/third_party/abseil-cpp/absl/log/internal/structured_proto.h +107 -0
  1791. data/third_party/abseil-cpp/absl/log/internal/vlog_config.cc +8 -1
  1792. data/third_party/abseil-cpp/absl/log/internal/vlog_config.h +8 -6
  1793. data/third_party/abseil-cpp/absl/log/internal/voidify.h +10 -4
  1794. data/third_party/abseil-cpp/absl/log/log.h +48 -35
  1795. data/third_party/abseil-cpp/absl/log/log_sink_registry.h +5 -2
  1796. data/third_party/abseil-cpp/absl/log/vlog_is_on.h +2 -0
  1797. data/third_party/abseil-cpp/absl/meta/type_traits.h +62 -181
  1798. data/third_party/abseil-cpp/absl/numeric/bits.h +68 -2
  1799. data/third_party/abseil-cpp/absl/numeric/int128.cc +0 -52
  1800. data/third_party/abseil-cpp/absl/numeric/int128.h +15 -3
  1801. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +6 -4
  1802. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +6 -3
  1803. data/third_party/abseil-cpp/absl/numeric/internal/bits.h +7 -3
  1804. data/third_party/abseil-cpp/absl/profiling/internal/exponential_biased.cc +1 -1
  1805. data/third_party/abseil-cpp/absl/random/bernoulli_distribution.h +3 -1
  1806. data/third_party/abseil-cpp/absl/random/beta_distribution.h +3 -1
  1807. data/third_party/abseil-cpp/absl/random/bit_gen_ref.h +12 -12
  1808. data/third_party/abseil-cpp/absl/random/discrete_distribution.cc +10 -0
  1809. data/third_party/abseil-cpp/absl/random/discrete_distribution.h +4 -2
  1810. data/third_party/abseil-cpp/absl/random/distributions.h +6 -8
  1811. data/third_party/abseil-cpp/absl/random/exponential_distribution.h +1 -0
  1812. data/third_party/abseil-cpp/absl/random/gaussian_distribution.h +3 -2
  1813. data/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +8 -7
  1814. data/third_party/abseil-cpp/absl/random/internal/entropy_pool.cc +185 -0
  1815. data/third_party/abseil-cpp/absl/random/internal/entropy_pool.h +35 -0
  1816. data/third_party/abseil-cpp/absl/random/internal/iostream_state_saver.h +5 -2
  1817. data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +5 -6
  1818. data/third_party/abseil-cpp/absl/random/internal/platform.h +12 -12
  1819. data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +57 -6
  1820. data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +2 -1
  1821. data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +20 -12
  1822. data/third_party/abseil-cpp/absl/random/internal/seed_material.h +5 -5
  1823. data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +2 -2
  1824. data/third_party/abseil-cpp/absl/random/internal/wide_multiply.h +0 -1
  1825. data/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h +1 -4
  1826. data/third_party/abseil-cpp/absl/random/poisson_distribution.h +4 -3
  1827. data/third_party/abseil-cpp/absl/random/random.h +88 -53
  1828. data/third_party/abseil-cpp/absl/random/seed_gen_exception.cc +2 -3
  1829. data/third_party/abseil-cpp/absl/random/seed_sequences.cc +6 -2
  1830. data/third_party/abseil-cpp/absl/random/seed_sequences.h +1 -2
  1831. data/third_party/abseil-cpp/absl/random/uniform_int_distribution.h +2 -1
  1832. data/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +2 -0
  1833. data/third_party/abseil-cpp/absl/random/zipf_distribution.h +5 -4
  1834. data/third_party/abseil-cpp/absl/status/internal/status_internal.cc +10 -7
  1835. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +3 -4
  1836. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +4 -3
  1837. data/third_party/abseil-cpp/absl/status/status.cc +4 -8
  1838. data/third_party/abseil-cpp/absl/status/status.h +8 -8
  1839. data/third_party/abseil-cpp/absl/status/status_payload_printer.h +2 -2
  1840. data/third_party/abseil-cpp/absl/status/statusor.cc +2 -2
  1841. data/third_party/abseil-cpp/absl/status/statusor.h +6 -6
  1842. data/third_party/abseil-cpp/absl/strings/ascii.cc +44 -29
  1843. data/third_party/abseil-cpp/absl/strings/ascii.h +62 -22
  1844. data/third_party/abseil-cpp/absl/strings/charconv.cc +25 -29
  1845. data/third_party/abseil-cpp/absl/strings/charconv.h +5 -5
  1846. data/third_party/abseil-cpp/absl/strings/charset.h +3 -4
  1847. data/third_party/abseil-cpp/absl/strings/cord.cc +54 -58
  1848. data/third_party/abseil-cpp/absl/strings/cord.h +99 -102
  1849. data/third_party/abseil-cpp/absl/strings/cord_analysis.cc +11 -11
  1850. data/third_party/abseil-cpp/absl/strings/cord_analysis.h +3 -3
  1851. data/third_party/abseil-cpp/absl/strings/escaping.cc +186 -197
  1852. data/third_party/abseil-cpp/absl/strings/escaping.h +9 -10
  1853. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +1 -1
  1854. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +1 -1
  1855. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +53 -22
  1856. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +0 -4
  1857. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +0 -4
  1858. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +7 -63
  1859. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +1 -11
  1860. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +0 -22
  1861. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +3 -2
  1862. data/third_party/abseil-cpp/absl/strings/internal/str_format/output.cc +5 -3
  1863. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +4 -2
  1864. data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +3 -3
  1865. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +35 -0
  1866. data/third_party/abseil-cpp/absl/strings/internal/string_constant.h +0 -5
  1867. data/third_party/abseil-cpp/absl/strings/internal/utf8.cc +96 -1
  1868. data/third_party/abseil-cpp/absl/strings/internal/utf8.h +15 -1
  1869. data/third_party/abseil-cpp/absl/strings/match.h +21 -11
  1870. data/third_party/abseil-cpp/absl/strings/numbers.cc +55 -33
  1871. data/third_party/abseil-cpp/absl/strings/numbers.h +87 -58
  1872. data/third_party/abseil-cpp/absl/strings/str_cat.cc +6 -7
  1873. data/third_party/abseil-cpp/absl/strings/str_cat.h +41 -30
  1874. data/third_party/abseil-cpp/absl/strings/str_format.h +18 -18
  1875. data/third_party/abseil-cpp/absl/strings/str_replace.cc +3 -3
  1876. data/third_party/abseil-cpp/absl/strings/str_replace.h +6 -6
  1877. data/third_party/abseil-cpp/absl/strings/str_split.h +18 -1
  1878. data/third_party/abseil-cpp/absl/strings/string_view.cc +4 -9
  1879. data/third_party/abseil-cpp/absl/strings/string_view.h +46 -50
  1880. data/third_party/abseil-cpp/absl/strings/strip.h +11 -8
  1881. data/third_party/abseil-cpp/absl/strings/substitute.cc +5 -4
  1882. data/third_party/abseil-cpp/absl/strings/substitute.h +66 -64
  1883. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +16 -10
  1884. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +6 -0
  1885. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +5 -1
  1886. data/third_party/abseil-cpp/absl/synchronization/internal/futex_waiter.cc +0 -4
  1887. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.cc +0 -5
  1888. data/third_party/abseil-cpp/absl/synchronization/internal/pthread_waiter.cc +0 -4
  1889. data/third_party/abseil-cpp/absl/synchronization/internal/sem_waiter.cc +0 -4
  1890. data/third_party/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.cc +0 -4
  1891. data/third_party/abseil-cpp/absl/synchronization/internal/waiter_base.cc +0 -4
  1892. data/third_party/abseil-cpp/absl/synchronization/internal/win32_waiter.cc +0 -4
  1893. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +39 -13
  1894. data/third_party/abseil-cpp/absl/synchronization/mutex.h +97 -69
  1895. data/third_party/abseil-cpp/absl/synchronization/notification.cc +10 -2
  1896. data/third_party/abseil-cpp/absl/synchronization/notification.h +12 -2
  1897. data/third_party/abseil-cpp/absl/time/civil_time.cc +1 -0
  1898. data/third_party/abseil-cpp/absl/time/duration.cc +18 -58
  1899. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +1 -1
  1900. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +1 -1
  1901. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1 -1
  1902. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.cc +3 -3
  1903. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +2 -2
  1904. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +2 -2
  1905. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +3 -3
  1906. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +2 -2
  1907. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +1 -1
  1908. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h +1 -1
  1909. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +92 -112
  1910. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.cc +1 -1
  1911. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +6 -4
  1912. data/third_party/abseil-cpp/absl/time/time.h +89 -23
  1913. data/third_party/abseil-cpp/absl/types/internal/span.h +3 -2
  1914. data/third_party/abseil-cpp/absl/types/optional.h +7 -745
  1915. data/third_party/abseil-cpp/absl/types/span.h +98 -54
  1916. data/third_party/abseil-cpp/absl/types/variant.h +5 -784
  1917. data/third_party/abseil-cpp/absl/utility/utility.h +10 -185
  1918. data/third_party/boringssl-with-bazel/src/crypto/aes/aes.cc +41 -0
  1919. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.cc +259 -0
  1920. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.cc +53 -0
  1921. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.cc +47 -0
  1922. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.cc +42 -0
  1923. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.cc +109 -0
  1924. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.cc +43 -0
  1925. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.cc +439 -0
  1926. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.cc +239 -0
  1927. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.cc +193 -0
  1928. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.cc +32 -0
  1929. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.cc +415 -0
  1930. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.cc +206 -0
  1931. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.cc +224 -0
  1932. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.cc +172 -0
  1933. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.cc +109 -0
  1934. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.cc +355 -0
  1935. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.cc +61 -0
  1936. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.cc +56 -0
  1937. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.cc +63 -0
  1938. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.cc +52 -0
  1939. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +33 -61
  1940. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.cc +241 -0
  1941. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.cc +963 -0
  1942. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.cc +661 -0
  1943. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.cc +164 -0
  1944. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.cc +276 -0
  1945. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.cc +80 -0
  1946. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.cc +229 -0
  1947. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.cc +434 -0
  1948. data/third_party/boringssl-with-bazel/src/crypto/bcm_support.h +19 -48
  1949. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.cc +658 -0
  1950. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.cc +268 -0
  1951. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.cc +509 -0
  1952. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.cc +50 -0
  1953. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.cc +193 -0
  1954. data/third_party/boringssl-with-bazel/src/crypto/bio/file.cc +292 -0
  1955. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.cc +152 -0
  1956. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +17 -61
  1957. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.cc +446 -0
  1958. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.cc +59 -0
  1959. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.cc +144 -0
  1960. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.cc +131 -0
  1961. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.cc +169 -0
  1962. data/third_party/boringssl-with-bazel/src/crypto/bn/bn_asn1.cc +57 -0
  1963. data/third_party/boringssl-with-bazel/src/crypto/bn/convert.cc +407 -0
  1964. data/third_party/boringssl-with-bazel/src/crypto/bn/div.cc +100 -0
  1965. data/third_party/boringssl-with-bazel/src/crypto/bn/exponentiation.cc +166 -0
  1966. data/third_party/boringssl-with-bazel/src/crypto/bn/sqrt.cc +93 -0
  1967. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.cc +118 -0
  1968. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.cc +53 -0
  1969. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.cc +266 -0
  1970. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.cc +708 -0
  1971. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.cc +912 -0
  1972. data/third_party/boringssl-with-bazel/src/crypto/bytestring/internal.h +16 -16
  1973. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.cc +156 -0
  1974. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.cc +224 -0
  1975. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +23 -23
  1976. data/third_party/boringssl-with-bazel/src/crypto/cipher/derive_key.cc +108 -0
  1977. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aesctrhmac.cc +279 -0
  1978. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aeseax.cc +289 -0
  1979. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aesgcmsiv.cc +922 -0
  1980. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_chacha20poly1305.cc +341 -0
  1981. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_des.cc +198 -0
  1982. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_null.cc +51 -0
  1983. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc2.cc +417 -0
  1984. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc4.cc +54 -0
  1985. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_tls.cc +599 -0
  1986. data/third_party/boringssl-with-bazel/src/crypto/cipher/get_cipher.cc +85 -0
  1987. data/third_party/boringssl-with-bazel/src/crypto/cipher/internal.h +240 -0
  1988. data/third_party/boringssl-with-bazel/src/crypto/cipher/tls_cbc.cc +476 -0
  1989. data/third_party/boringssl-with-bazel/src/crypto/cms/cms.cc +172 -0
  1990. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.cc +631 -0
  1991. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +13 -13
  1992. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.cc +73 -0
  1993. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.cc +53 -0
  1994. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.cc +60 -0
  1995. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.cc +59 -0
  1996. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.cc +92 -0
  1997. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.cc +39 -0
  1998. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.cc +53 -0
  1999. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.cc +173 -0
  2000. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.h +24 -22
  2001. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.cc +281 -0
  2002. data/third_party/boringssl-with-bazel/src/crypto/crypto.cc +181 -0
  2003. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.cc +2154 -0
  2004. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.cc +18 -0
  2005. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +13 -13
  2006. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +17 -17
  2007. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.cc +529 -0
  2008. data/third_party/boringssl-with-bazel/src/crypto/des/des.cc +829 -0
  2009. data/third_party/boringssl-with-bazel/src/crypto/des/internal.h +31 -73
  2010. data/third_party/boringssl-with-bazel/src/crypto/dh/dh_asn1.cc +123 -0
  2011. data/third_party/boringssl-with-bazel/src/crypto/dh/params.cc +408 -0
  2012. data/third_party/boringssl-with-bazel/src/crypto/digest/digest_extra.cc +314 -0
  2013. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.cc +941 -0
  2014. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.cc +367 -0
  2015. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +17 -19
  2016. data/third_party/boringssl-with-bazel/src/crypto/ec/ec_asn1.cc +554 -0
  2017. data/third_party/boringssl-with-bazel/src/crypto/ec/ec_derive.cc +96 -0
  2018. data/third_party/boringssl-with-bazel/src/crypto/ec/hash_to_curve.cc +502 -0
  2019. data/third_party/boringssl-with-bazel/src/crypto/ec/internal.h +78 -0
  2020. data/third_party/boringssl-with-bazel/src/crypto/ecdh/ecdh.cc +73 -0
  2021. data/third_party/boringssl-with-bazel/src/crypto/ecdsa/ecdsa_asn1.cc +351 -0
  2022. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.cc +95 -0
  2023. data/third_party/boringssl-with-bazel/src/crypto/err/err.cc +808 -0
  2024. data/third_party/boringssl-with-bazel/src/crypto/err/internal.h +13 -13
  2025. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.cc +379 -0
  2026. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.cc +470 -0
  2027. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.cc +439 -0
  2028. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +17 -59
  2029. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.cc +153 -0
  2030. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.cc +142 -0
  2031. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.cc +279 -0
  2032. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.cc +230 -0
  2033. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.cc +286 -0
  2034. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.cc +103 -0
  2035. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.cc +225 -0
  2036. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.cc +236 -0
  2037. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.cc +609 -0
  2038. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.cc +198 -0
  2039. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.cc +109 -0
  2040. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.cc +237 -0
  2041. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.cc +98 -0
  2042. data/third_party/boringssl-with-bazel/src/crypto/evp/print.cc +342 -0
  2043. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.cc +216 -0
  2044. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.cc +95 -0
  2045. data/third_party/boringssl-with-bazel/src/crypto/ex_data.cc +141 -0
  2046. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.cc.inc +202 -0
  2047. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.cc.inc +1281 -0
  2048. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/cbc.cc.inc +130 -0
  2049. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/cfb.cc.inc +166 -0
  2050. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ctr.cc.inc +100 -0
  2051. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/gcm.cc.inc +604 -0
  2052. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/gcm_nohw.cc.inc +302 -0
  2053. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +396 -76
  2054. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.cc.inc +209 -0
  2055. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.cc.inc +93 -0
  2056. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ofb.cc.inc +53 -0
  2057. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.cc +282 -0
  2058. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm_interface.h +765 -29
  2059. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.cc.inc +269 -0
  2060. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +554 -0
  2061. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.cc.inc +374 -0
  2062. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.cc.inc +225 -0
  2063. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.cc.inc +159 -0
  2064. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.cc.inc +191 -0
  2065. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.cc.inc +734 -0
  2066. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.cc.inc +87 -0
  2067. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.cc.inc +739 -0
  2068. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.cc.inc +278 -0
  2069. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.cc.inc +323 -0
  2070. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.cc.inc +582 -0
  2071. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +53 -160
  2072. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.cc.inc +99 -0
  2073. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.cc.inc +409 -0
  2074. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.cc.inc +222 -0
  2075. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.cc.inc +698 -0
  2076. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.cc.inc +928 -0
  2077. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.cc.inc +260 -0
  2078. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.cc.inc +142 -0
  2079. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.h +24 -21
  2080. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.cc.inc +315 -0
  2081. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.cc.inc +382 -0
  2082. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.cc.inc +295 -0
  2083. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.cc.inc +672 -0
  2084. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.cc.inc +1235 -0
  2085. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.cc.inc +409 -0
  2086. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +18 -69
  2087. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.cc.inc +288 -0
  2088. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +36 -25
  2089. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.cc.inc +190 -0
  2090. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.cc.inc +424 -0
  2091. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/internal.h +13 -15
  2092. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.cc.inc +244 -0
  2093. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.cc.inc +178 -0
  2094. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/internal.h +17 -59
  2095. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +17 -51
  2096. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.cc.inc +226 -0
  2097. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/builtin_curves.h +91 -91
  2098. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.cc.inc +971 -0
  2099. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.cc.inc +494 -0
  2100. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.cc.inc +439 -0
  2101. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.cc.inc +104 -0
  2102. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +23 -70
  2103. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.cc.inc +295 -0
  2104. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.cc.inc +1163 -0
  2105. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz-table.h +15 -10
  2106. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.cc.inc +741 -0
  2107. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.h +26 -21
  2108. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.cc.inc +749 -0
  2109. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +13 -13
  2110. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.cc.inc +179 -0
  2111. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.cc.inc +279 -0
  2112. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.cc.inc +269 -0
  2113. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.cc.inc +255 -0
  2114. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.cc.inc +221 -0
  2115. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.cc.inc +88 -0
  2116. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +278 -0
  2117. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +13 -13
  2118. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.cc +28 -0
  2119. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.cc.inc +112 -0
  2120. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.cc.inc +215 -0
  2121. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/keccak/internal.h +70 -0
  2122. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/keccak/keccak.cc.inc +279 -0
  2123. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mldsa/fips_known_values.inc +1345 -0
  2124. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mldsa/mldsa.cc.inc +2300 -0
  2125. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mlkem/fips_known_values.inc +411 -0
  2126. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mlkem/mlkem.cc.inc +1397 -0
  2127. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.cc.inc +214 -0
  2128. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +22 -28
  2129. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.cc.inc +483 -0
  2130. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.cc.inc +147 -0
  2131. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +17 -60
  2132. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.cc.inc +372 -0
  2133. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.cc.inc +983 -0
  2134. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1279 -0
  2135. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  2136. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.cc.inc +1055 -0
  2137. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/internal.h +38 -38
  2138. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +327 -0
  2139. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +52 -78
  2140. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.cc.inc +390 -0
  2141. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.cc.inc +299 -0
  2142. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  2143. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/address.h +119 -0
  2144. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fips_known_values.inc +674 -0
  2145. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.cc.inc +169 -0
  2146. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.h +58 -0
  2147. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.cc.inc +161 -0
  2148. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.h +70 -0
  2149. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/params.h +78 -0
  2150. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +504 -0
  2151. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.cc.inc +173 -0
  2152. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.h +85 -0
  2153. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.cc.inc +171 -0
  2154. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.h +50 -0
  2155. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +13 -13
  2156. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  2157. data/third_party/boringssl-with-bazel/src/crypto/fuzzer_mode.cc +30 -0
  2158. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.cc +1095 -0
  2159. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.cc +2185 -0
  2160. data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +16 -16
  2161. data/third_party/boringssl-with-bazel/src/crypto/internal.h +283 -457
  2162. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +13 -13
  2163. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.cc +869 -0
  2164. data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +34 -78
  2165. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.cc +309 -0
  2166. data/third_party/boringssl-with-bazel/src/crypto/md4/md4.cc +194 -0
  2167. data/third_party/boringssl-with-bazel/src/crypto/md5/internal.h +37 -0
  2168. data/third_party/boringssl-with-bazel/src/crypto/md5/md5.cc +243 -0
  2169. data/third_party/boringssl-with-bazel/src/crypto/mem.cc +581 -0
  2170. data/third_party/boringssl-with-bazel/src/crypto/mldsa/mldsa.cc +90 -0
  2171. data/third_party/boringssl-with-bazel/src/crypto/mlkem/mlkem.cc +97 -1042
  2172. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.cc +513 -0
  2173. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +14 -56
  2174. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.cc +80 -0
  2175. data/third_party/boringssl-with-bazel/src/crypto/pem/internal.h +44 -0
  2176. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.cc +149 -0
  2177. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.cc +254 -0
  2178. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.cc +736 -0
  2179. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.cc +45 -0
  2180. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.cc +208 -0
  2181. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.cc +141 -0
  2182. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.cc +22 -0
  2183. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.cc +22 -0
  2184. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +36 -22
  2185. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.cc +195 -0
  2186. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.cc +524 -0
  2187. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +28 -63
  2188. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.cc +279 -0
  2189. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.cc +471 -0
  2190. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.cc +1322 -0
  2191. data/third_party/boringssl-with-bazel/src/crypto/poly1305/internal.h +17 -17
  2192. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.cc +314 -0
  2193. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.cc +310 -0
  2194. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.cc +850 -0
  2195. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +17 -17
  2196. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.cc +262 -0
  2197. data/third_party/boringssl-with-bazel/src/crypto/rand/deterministic.cc +65 -0
  2198. data/third_party/boringssl-with-bazel/src/crypto/rand/fork_detect.cc +194 -0
  2199. data/third_party/boringssl-with-bazel/src/crypto/rand/forkunsafe.cc +44 -0
  2200. data/third_party/boringssl-with-bazel/src/crypto/rand/getentropy.cc +60 -0
  2201. data/third_party/boringssl-with-bazel/src/crypto/rand/getrandom_fillin.h +64 -0
  2202. data/third_party/boringssl-with-bazel/src/crypto/rand/internal.h +55 -0
  2203. data/third_party/boringssl-with-bazel/src/crypto/rand/ios.cc +42 -0
  2204. data/third_party/boringssl-with-bazel/src/crypto/rand/passive.cc +178 -0
  2205. data/third_party/boringssl-with-bazel/src/crypto/rand/rand.cc +77 -0
  2206. data/third_party/boringssl-with-bazel/src/crypto/rand/trusty.cc +46 -0
  2207. data/third_party/boringssl-with-bazel/src/crypto/rand/urandom.cc +328 -0
  2208. data/third_party/boringssl-with-bazel/src/crypto/rand/windows.cc +98 -0
  2209. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.cc +56 -0
  2210. data/third_party/boringssl-with-bazel/src/crypto/refcount.cc +59 -0
  2211. data/third_party/boringssl-with-bazel/src/crypto/rsa/internal.h +36 -0
  2212. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_asn1.cc +283 -0
  2213. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_crypt.cc +523 -0
  2214. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_extra.cc +19 -0
  2215. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_print.cc +27 -0
  2216. data/third_party/boringssl-with-bazel/src/crypto/sha/sha1.cc +52 -0
  2217. data/third_party/boringssl-with-bazel/src/crypto/sha/sha256.cc +87 -0
  2218. data/third_party/boringssl-with-bazel/src/crypto/sha/sha512.cc +104 -0
  2219. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.cc +79 -0
  2220. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/slhdsa.cc +113 -0
  2221. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/internal.h +204 -0
  2222. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/spake2plus.cc +501 -0
  2223. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.cc +496 -0
  2224. data/third_party/boringssl-with-bazel/src/crypto/thread.cc +68 -0
  2225. data/third_party/boringssl-with-bazel/src/crypto/thread_none.cc +51 -0
  2226. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.cc +151 -0
  2227. data/third_party/boringssl-with-bazel/src/crypto/thread_win.cc +238 -0
  2228. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +17 -17
  2229. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.cc +1656 -0
  2230. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.cc +685 -0
  2231. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.cc +1263 -0
  2232. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.cc +52 -0
  2233. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.cc +95 -0
  2234. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.cc +74 -0
  2235. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.cc +136 -0
  2236. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.cc +538 -0
  2237. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.cc +355 -0
  2238. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.cc +227 -0
  2239. data/third_party/boringssl-with-bazel/src/crypto/x509/ext_dat.h +13 -55
  2240. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.cc +37 -0
  2241. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +29 -61
  2242. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.cc +185 -0
  2243. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.cc +796 -0
  2244. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.cc +364 -0
  2245. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.cc +103 -0
  2246. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.cc +203 -0
  2247. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.cc +287 -0
  2248. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.cc +79 -0
  2249. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.cc +181 -0
  2250. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.cc +31 -0
  2251. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.cc +593 -0
  2252. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.cc +95 -0
  2253. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.cc +102 -0
  2254. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.cc +366 -0
  2255. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.cc +444 -0
  2256. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.cc +557 -0
  2257. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.cc +73 -0
  2258. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.cc +114 -0
  2259. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.cc +228 -0
  2260. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.cc +79 -0
  2261. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.cc +161 -0
  2262. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.cc +81 -0
  2263. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.cc +304 -0
  2264. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.cc +514 -0
  2265. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.cc +89 -0
  2266. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.cc +101 -0
  2267. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.cc +109 -0
  2268. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.cc +183 -0
  2269. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.cc +590 -0
  2270. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.cc +131 -0
  2271. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.cc +1342 -0
  2272. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.cc +47 -0
  2273. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.cc +186 -0
  2274. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.cc +238 -0
  2275. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.cc +66 -0
  2276. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.cc +44 -0
  2277. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.cc +139 -0
  2278. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.cc +554 -0
  2279. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.cc +164 -0
  2280. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.cc +257 -0
  2281. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.cc +198 -0
  2282. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.cc +118 -0
  2283. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.cc +147 -0
  2284. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.cc +249 -0
  2285. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.cc +1607 -0
  2286. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.cc +440 -0
  2287. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.cc +235 -0
  2288. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.cc +365 -0
  2289. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.cc +67 -0
  2290. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.cc +91 -0
  2291. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.cc +116 -0
  2292. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.cc +318 -0
  2293. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.cc +55 -0
  2294. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.cc +342 -0
  2295. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.cc +36 -0
  2296. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.cc +501 -0
  2297. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.cc +170 -0
  2298. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.cc +74 -0
  2299. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.cc +51 -0
  2300. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.cc +34 -0
  2301. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.cc +28 -0
  2302. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.cc +485 -0
  2303. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.cc +153 -0
  2304. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.cc +1538 -0
  2305. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +29 -21
  2306. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +14 -48
  2307. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +16 -76
  2308. data/third_party/boringssl-with-bazel/src/include/openssl/asm_base.h +14 -14
  2309. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +29 -116
  2310. data/third_party/boringssl-with-bazel/src/include/openssl/asn1_mac.h +13 -13
  2311. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +248 -328
  2312. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +31 -58
  2313. data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +14 -56
  2314. data/third_party/boringssl-with-bazel/src/include/openssl/bcm_public.h +82 -0
  2315. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +14 -56
  2316. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +14 -14
  2317. data/third_party/boringssl-with-bazel/src/include/openssl/blowfish.h +14 -56
  2318. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +15 -122
  2319. data/third_party/boringssl-with-bazel/src/include/openssl/buf.h +14 -56
  2320. data/third_party/boringssl-with-bazel/src/include/openssl/buffer.h +13 -13
  2321. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +38 -17
  2322. data/third_party/boringssl-with-bazel/src/include/openssl/cast.h +14 -56
  2323. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +14 -14
  2324. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +32 -60
  2325. data/third_party/boringssl-with-bazel/src/include/openssl/cmac.h +14 -14
  2326. data/third_party/boringssl-with-bazel/src/include/openssl/cms.h +146 -0
  2327. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +14 -56
  2328. data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +13 -13
  2329. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +48 -17
  2330. data/third_party/boringssl-with-bazel/src/include/openssl/ctrdrbg.h +14 -14
  2331. data/third_party/boringssl-with-bazel/src/include/openssl/curve25519.h +14 -14
  2332. data/third_party/boringssl-with-bazel/src/include/openssl/des.h +14 -56
  2333. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +18 -56
  2334. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +38 -63
  2335. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +18 -59
  2336. data/third_party/boringssl-with-bazel/src/include/openssl/dtls1.h +13 -13
  2337. data/third_party/boringssl-with-bazel/src/include/openssl/e_os2.h +14 -14
  2338. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +15 -67
  2339. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +32 -73
  2340. data/third_party/boringssl-with-bazel/src/include/openssl/ecdh.h +15 -66
  2341. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +14 -52
  2342. data/third_party/boringssl-with-bazel/src/include/openssl/engine.h +14 -14
  2343. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +15 -108
  2344. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +15 -57
  2345. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +13 -55
  2346. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +14 -108
  2347. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/kyber.h +14 -14
  2348. data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +14 -14
  2349. data/third_party/boringssl-with-bazel/src/include/openssl/hmac.h +14 -56
  2350. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +18 -18
  2351. data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +14 -14
  2352. data/third_party/boringssl-with-bazel/src/include/openssl/is_boringssl.h +13 -13
  2353. data/third_party/boringssl-with-bazel/src/include/openssl/kdf.h +14 -14
  2354. data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +14 -56
  2355. data/third_party/boringssl-with-bazel/src/include/openssl/md4.h +14 -56
  2356. data/third_party/boringssl-with-bazel/src/include/openssl/md5.h +14 -56
  2357. data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +14 -56
  2358. data/third_party/boringssl-with-bazel/src/include/openssl/mldsa.h +21 -27
  2359. data/third_party/boringssl-with-bazel/src/include/openssl/mlkem.h +14 -38
  2360. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +28 -70
  2361. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +14 -56
  2362. data/third_party/boringssl-with-bazel/src/include/openssl/obj_mac.h +14 -14
  2363. data/third_party/boringssl-with-bazel/src/include/openssl/objects.h +13 -13
  2364. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +23 -17
  2365. data/third_party/boringssl-with-bazel/src/include/openssl/opensslv.h +13 -13
  2366. data/third_party/boringssl-with-bazel/src/include/openssl/ossl_typ.h +13 -13
  2367. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +22 -60
  2368. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs12.h +13 -13
  2369. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +14 -14
  2370. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +32 -61
  2371. data/third_party/boringssl-with-bazel/src/include/openssl/poly1305.h +14 -14
  2372. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +14 -14
  2373. data/third_party/boringssl-with-bazel/src/include/openssl/posix_time.h +14 -14
  2374. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +15 -15
  2375. data/third_party/boringssl-with-bazel/src/include/openssl/rc4.h +14 -56
  2376. data/third_party/boringssl-with-bazel/src/include/openssl/ripemd.h +14 -56
  2377. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +24 -64
  2378. data/third_party/boringssl-with-bazel/src/include/openssl/safestack.h +13 -13
  2379. data/third_party/boringssl-with-bazel/src/include/openssl/service_indicator.h +14 -14
  2380. data/third_party/boringssl-with-bazel/src/include/openssl/sha.h +16 -96
  2381. data/third_party/boringssl-with-bazel/src/include/openssl/siphash.h +14 -14
  2382. data/third_party/boringssl-with-bazel/src/include/openssl/slhdsa.h +174 -0
  2383. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +25 -33
  2384. data/third_party/boringssl-with-bazel/src/include/openssl/srtp.h +13 -13
  2385. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +628 -309
  2386. data/third_party/boringssl-with-bazel/src/include/openssl/ssl3.h +15 -114
  2387. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +14 -56
  2388. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +23 -18
  2389. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +16 -58
  2390. data/third_party/boringssl-with-bazel/src/include/openssl/time.h +13 -13
  2391. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +36 -157
  2392. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +16 -16
  2393. data/third_party/boringssl-with-bazel/src/include/openssl/type_check.h +14 -56
  2394. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +21 -65
  2395. data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +13 -13
  2396. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +13 -13
  2397. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3_errors.h +13 -53
  2398. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +15 -14
  2399. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +680 -434
  2400. data/third_party/boringssl-with-bazel/src/ssl/d1_lib.cc +129 -174
  2401. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +176 -131
  2402. data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +21 -127
  2403. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +109 -104
  2404. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +321 -316
  2405. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +101 -94
  2406. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +920 -519
  2407. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +78 -85
  2408. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +67 -157
  2409. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +201 -333
  2410. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +113 -245
  2411. data/third_party/boringssl-with-bazel/src/ssl/internal.h +1054 -540
  2412. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +47 -157
  2413. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +29 -159
  2414. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +18 -112
  2415. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +108 -207
  2416. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +70 -149
  2417. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +15 -20
  2418. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +117 -157
  2419. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +229 -365
  2420. data/third_party/boringssl-with-bazel/src/ssl/ssl_credential.cc +294 -32
  2421. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +13 -109
  2422. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +35 -34
  2423. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +352 -354
  2424. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +43 -101
  2425. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +127 -249
  2426. data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +17 -91
  2427. data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +109 -157
  2428. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +44 -30
  2429. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +66 -195
  2430. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +46 -177
  2431. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +88 -48
  2432. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +160 -96
  2433. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +251 -184
  2434. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +250 -119
  2435. data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +64 -117
  2436. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +54 -139
  2437. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_32.h +6 -0
  2438. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64.h +6 -0
  2439. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64_adx.h +4 -1
  2440. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_32.h +1 -1
  2441. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64.h +3 -0
  2442. data/third_party/upb/upb/base/internal/log2.h +3 -1
  2443. data/third_party/upb/upb/base/string_view.h +10 -0
  2444. data/third_party/upb/upb/hash/common.c +312 -187
  2445. data/third_party/upb/upb/hash/common.h +44 -43
  2446. data/third_party/upb/upb/hash/int_table.h +29 -5
  2447. data/third_party/upb/upb/hash/str_table.h +6 -0
  2448. data/third_party/upb/upb/json/decode.c +39 -10
  2449. data/third_party/upb/upb/json/decode.h +25 -3
  2450. data/third_party/upb/upb/mem/alloc.h +5 -0
  2451. data/third_party/upb/upb/mem/arena.c +438 -161
  2452. data/third_party/upb/upb/mem/arena.h +57 -11
  2453. data/third_party/upb/upb/mem/arena.hpp +4 -20
  2454. data/third_party/upb/upb/mem/internal/arena.h +65 -29
  2455. data/third_party/upb/upb/message/accessors.c +1 -5
  2456. data/third_party/upb/upb/message/accessors.h +49 -0
  2457. data/third_party/upb/upb/message/array.c +7 -6
  2458. data/third_party/upb/upb/message/array.h +4 -4
  2459. data/third_party/upb/upb/message/compat.c +11 -14
  2460. data/third_party/upb/upb/message/compat.h +4 -3
  2461. data/third_party/upb/upb/message/copy.c +35 -30
  2462. data/third_party/upb/upb/message/internal/accessors.h +151 -15
  2463. data/third_party/upb/upb/message/internal/extension.c +16 -25
  2464. data/third_party/upb/upb/message/internal/extension.h +17 -5
  2465. data/third_party/upb/upb/message/internal/iterator.c +58 -0
  2466. data/third_party/upb/upb/message/internal/iterator.h +29 -0
  2467. data/third_party/upb/upb/message/internal/map.h +76 -22
  2468. data/third_party/upb/upb/message/internal/map_sorter.h +13 -4
  2469. data/third_party/upb/upb/message/internal/message.c +48 -29
  2470. data/third_party/upb/upb/message/internal/message.h +203 -25
  2471. data/third_party/upb/upb/message/map.c +68 -20
  2472. data/third_party/upb/upb/message/map.h +8 -1
  2473. data/third_party/upb/upb/message/map_gencode_util.h +3 -45
  2474. data/third_party/upb/upb/message/map_sorter.c +52 -16
  2475. data/third_party/upb/upb/message/merge.h +3 -3
  2476. data/third_party/upb/upb/message/message.c +200 -42
  2477. data/third_party/upb/upb/message/message.h +69 -4
  2478. data/third_party/upb/upb/message/value.h +9 -0
  2479. data/third_party/upb/upb/mini_descriptor/build_enum.c +16 -6
  2480. data/third_party/upb/upb/mini_descriptor/decode.c +115 -138
  2481. data/third_party/upb/upb/mini_descriptor/decode.h +4 -3
  2482. data/third_party/upb/upb/mini_descriptor/internal/encode.hpp +1 -1
  2483. data/third_party/upb/upb/mini_descriptor/link.c +4 -0
  2484. data/third_party/upb/upb/mini_table/extension.h +8 -1
  2485. data/third_party/upb/upb/mini_table/extension_registry.c +25 -13
  2486. data/third_party/upb/upb/mini_table/extension_registry.h +13 -6
  2487. data/third_party/upb/upb/mini_table/internal/enum.h +1 -1
  2488. data/third_party/upb/upb/mini_table/internal/extension.h +24 -1
  2489. data/third_party/upb/upb/mini_table/internal/field.h +4 -4
  2490. data/third_party/upb/upb/mini_table/internal/message.h +1 -1
  2491. data/third_party/upb/upb/mini_table/message.c +21 -13
  2492. data/third_party/upb/upb/port/atomic.h +134 -7
  2493. data/third_party/upb/upb/port/def.inc +184 -47
  2494. data/third_party/upb/upb/port/undef.inc +14 -0
  2495. data/third_party/upb/upb/reflection/common.h +1 -11
  2496. data/third_party/upb/upb/reflection/def.hpp +5 -1
  2497. data/third_party/upb/upb/reflection/def_pool.c +10 -3
  2498. data/third_party/upb/upb/reflection/def_pool.h +2 -2
  2499. data/third_party/upb/upb/reflection/descriptor_bootstrap.h +19 -0
  2500. data/third_party/upb/upb/reflection/enum_def.c +4 -4
  2501. data/third_party/upb/upb/reflection/enum_reserved_range.c +1 -1
  2502. data/third_party/upb/upb/reflection/enum_value_def.c +9 -8
  2503. data/third_party/upb/upb/reflection/extension_range.c +1 -2
  2504. data/third_party/upb/upb/reflection/field_def.c +6 -22
  2505. data/third_party/upb/upb/reflection/field_def.h +1 -1
  2506. data/third_party/upb/upb/reflection/file_def.c +16 -10
  2507. data/third_party/upb/upb/reflection/internal/def_builder.c +1 -1
  2508. data/third_party/upb/upb/reflection/internal/def_builder.h +35 -10
  2509. data/third_party/upb/upb/reflection/internal/enum_value_def.h +1 -1
  2510. data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +1 -1
  2511. data/third_party/upb/upb/reflection/message.c +19 -16
  2512. data/third_party/upb/upb/reflection/message.h +3 -1
  2513. data/third_party/upb/upb/reflection/message_def.c +4 -7
  2514. data/third_party/upb/upb/reflection/message_reserved_range.c +1 -1
  2515. data/third_party/upb/upb/reflection/method_def.c +1 -1
  2516. data/third_party/upb/upb/reflection/oneof_def.c +3 -3
  2517. data/third_party/upb/upb/reflection/service_def.c +2 -5
  2518. data/third_party/upb/upb/text/encode.c +17 -20
  2519. data/third_party/upb/upb/text/internal/encode.c +25 -6
  2520. data/third_party/upb/upb/text/internal/encode.h +6 -1
  2521. data/third_party/upb/upb/wire/decode.c +154 -107
  2522. data/third_party/upb/upb/wire/decode.h +5 -3
  2523. data/third_party/upb/upb/wire/encode.c +114 -55
  2524. data/third_party/upb/upb/wire/encode.h +2 -0
  2525. data/third_party/upb/upb/wire/eps_copy_input_stream.h +18 -20
  2526. data/third_party/upb/upb/wire/internal/decode_fast.c +2 -2
  2527. data/third_party/upb/upb/wire/internal/decode_fast.h +4 -0
  2528. data/third_party/upb/upb/wire/internal/decoder.h +4 -11
  2529. data/third_party/utf8_range/utf8_range.c +15 -275
  2530. data/third_party/utf8_range/utf8_range_neon.inc +117 -0
  2531. data/third_party/utf8_range/utf8_range_sse.inc +272 -0
  2532. data/third_party/zlib/deflate.c +40 -15
  2533. data/third_party/zlib/deflate.h +33 -2
  2534. data/third_party/zlib/gzguts.h +2 -6
  2535. data/third_party/zlib/inflate.c +1 -1
  2536. data/third_party/zlib/inftrees.c +3 -3
  2537. data/third_party/zlib/inftrees.h +2 -2
  2538. data/third_party/zlib/trees.c +18 -4
  2539. data/third_party/zlib/zconf.h +1 -9
  2540. data/third_party/zlib/zlib.h +12 -12
  2541. data/third_party/zlib/zutil.h +4 -25
  2542. metadata +631 -521
  2543. data/include/grpc/grpc_cronet.h +0 -37
  2544. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +0 -82
  2545. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb.h +0 -426
  2546. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.c +0 -87
  2547. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.h +0 -32
  2548. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb.h +0 -407
  2549. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.c +0 -124
  2550. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.h +0 -38
  2551. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.c +0 -108
  2552. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.h +0 -33
  2553. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.c +0 -67
  2554. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.h +0 -48
  2555. data/src/core/lib/channel/call_finalization.h +0 -88
  2556. data/src/core/lib/channel/status_util.cc +0 -153
  2557. data/src/core/lib/channel/status_util.h +0 -80
  2558. data/src/core/lib/config/config_vars.cc +0 -151
  2559. data/src/core/lib/config/config_vars.h +0 -128
  2560. data/src/core/lib/config/config_vars_non_generated.cc +0 -49
  2561. data/src/core/lib/config/core_configuration.cc +0 -111
  2562. data/src/core/lib/config/core_configuration.h +0 -242
  2563. data/src/core/lib/config/load_config.cc +0 -77
  2564. data/src/core/lib/config/load_config.h +0 -54
  2565. data/src/core/lib/event_engine/forkable.cc +0 -107
  2566. data/src/core/lib/event_engine/forkable.h +0 -69
  2567. data/src/core/lib/iomgr/executor.cc +0 -452
  2568. data/src/core/lib/iomgr/executor.h +0 -119
  2569. data/src/core/lib/iomgr/python_util.h +0 -46
  2570. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +0 -69
  2571. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +0 -50
  2572. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +0 -75
  2573. data/src/core/lib/security/context/security_context.cc +0 -331
  2574. data/src/core/lib/security/context/security_context.h +0 -202
  2575. data/src/core/lib/security/credentials/alts/alts_credentials.cc +0 -116
  2576. data/src/core/lib/security/credentials/alts/alts_credentials.h +0 -127
  2577. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +0 -71
  2578. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +0 -57
  2579. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +0 -67
  2580. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +0 -32
  2581. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +0 -101
  2582. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +0 -123
  2583. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +0 -45
  2584. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +0 -74
  2585. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +0 -55
  2586. data/src/core/lib/security/credentials/call_creds_util.cc +0 -97
  2587. data/src/core/lib/security/credentials/call_creds_util.h +0 -43
  2588. data/src/core/lib/security/credentials/channel_creds_registry.h +0 -126
  2589. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +0 -241
  2590. data/src/core/lib/security/credentials/composite/composite_credentials.cc +0 -168
  2591. data/src/core/lib/security/credentials/composite/composite_credentials.h +0 -134
  2592. data/src/core/lib/security/credentials/credentials.cc +0 -160
  2593. data/src/core/lib/security/credentials/credentials.h +0 -298
  2594. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +0 -529
  2595. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +0 -117
  2596. data/src/core/lib/security/credentials/external/aws_request_signer.cc +0 -230
  2597. data/src/core/lib/security/credentials/external/aws_request_signer.h +0 -72
  2598. data/src/core/lib/security/credentials/external/external_account_credentials.cc +0 -642
  2599. data/src/core/lib/security/credentials/external/external_account_credentials.h +0 -207
  2600. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +0 -175
  2601. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +0 -80
  2602. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +0 -221
  2603. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +0 -73
  2604. data/src/core/lib/security/credentials/fake/fake_credentials.cc +0 -103
  2605. data/src/core/lib/security/credentials/fake/fake_credentials.h +0 -124
  2606. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +0 -195
  2607. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.h +0 -90
  2608. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +0 -38
  2609. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +0 -430
  2610. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +0 -101
  2611. data/src/core/lib/security/credentials/iam/iam_credentials.cc +0 -78
  2612. data/src/core/lib/security/credentials/iam/iam_credentials.h +0 -66
  2613. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +0 -71
  2614. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +0 -61
  2615. data/src/core/lib/security/credentials/jwt/json_token.cc +0 -318
  2616. data/src/core/lib/security/credentials/jwt/json_token.h +0 -78
  2617. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +0 -182
  2618. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +0 -106
  2619. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +0 -988
  2620. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +0 -122
  2621. data/src/core/lib/security/credentials/local/local_credentials.cc +0 -68
  2622. data/src/core/lib/security/credentials/local/local_credentials.h +0 -77
  2623. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +0 -653
  2624. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +0 -197
  2625. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +0 -202
  2626. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +0 -123
  2627. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +0 -474
  2628. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +0 -144
  2629. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +0 -338
  2630. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +0 -215
  2631. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_match.cc +0 -84
  2632. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +0 -482
  2633. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +0 -206
  2634. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +0 -237
  2635. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +0 -169
  2636. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +0 -161
  2637. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +0 -145
  2638. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +0 -258
  2639. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.h +0 -130
  2640. data/src/core/lib/security/credentials/tls/tls_credentials.cc +0 -170
  2641. data/src/core/lib/security/credentials/tls/tls_credentials.h +0 -75
  2642. data/src/core/lib/security/credentials/tls/tls_utils.cc +0 -127
  2643. data/src/core/lib/security/credentials/tls/tls_utils.h +0 -50
  2644. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.cc +0 -298
  2645. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.h +0 -175
  2646. data/src/core/lib/security/credentials/xds/xds_credentials.cc +0 -230
  2647. data/src/core/lib/security/credentials/xds/xds_credentials.h +0 -110
  2648. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +0 -303
  2649. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +0 -78
  2650. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +0 -314
  2651. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +0 -42
  2652. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +0 -118
  2653. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +0 -102
  2654. data/src/core/lib/security/security_connector/load_system_roots.h +0 -35
  2655. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +0 -36
  2656. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +0 -165
  2657. data/src/core/lib/security/security_connector/load_system_roots_supported.h +0 -44
  2658. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +0 -85
  2659. data/src/core/lib/security/security_connector/local/local_security_connector.cc +0 -306
  2660. data/src/core/lib/security/security_connector/local/local_security_connector.h +0 -62
  2661. data/src/core/lib/security/security_connector/security_connector.cc +0 -123
  2662. data/src/core/lib/security/security_connector/security_connector.h +0 -197
  2663. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +0 -403
  2664. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +0 -81
  2665. data/src/core/lib/security/security_connector/ssl_utils.cc +0 -628
  2666. data/src/core/lib/security/security_connector/ssl_utils.h +0 -188
  2667. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +0 -816
  2668. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +0 -285
  2669. data/src/core/lib/security/transport/auth_filters.h +0 -144
  2670. data/src/core/lib/security/transport/client_auth_filter.cc +0 -219
  2671. data/src/core/lib/security/transport/server_auth_filter.cc +0 -215
  2672. data/src/core/lib/security/util/json_util.cc +0 -69
  2673. data/src/core/lib/security/util/json_util.h +0 -43
  2674. data/src/core/lib/surface/client_call.cc +0 -427
  2675. data/src/core/lib/surface/client_call.h +0 -179
  2676. data/src/core/lib/surface/server_call.cc +0 -221
  2677. data/src/core/lib/surface/server_call.h +0 -168
  2678. data/src/core/lib/transport/call_arena_allocator.cc +0 -27
  2679. data/src/core/lib/transport/call_arena_allocator.h +0 -91
  2680. data/src/core/lib/transport/call_destination.h +0 -76
  2681. data/src/core/lib/transport/call_filters.cc +0 -142
  2682. data/src/core/lib/transport/call_filters.h +0 -1899
  2683. data/src/core/lib/transport/call_spine.cc +0 -131
  2684. data/src/core/lib/transport/call_spine.h +0 -435
  2685. data/src/core/lib/transport/call_state.cc +0 -39
  2686. data/src/core/lib/transport/call_state.h +0 -1061
  2687. data/src/core/lib/transport/custom_metadata.h +0 -30
  2688. data/src/core/lib/transport/http2_errors.h +0 -41
  2689. data/src/core/lib/transport/interception_chain.cc +0 -147
  2690. data/src/core/lib/transport/interception_chain.h +0 -253
  2691. data/src/core/lib/transport/message.cc +0 -44
  2692. data/src/core/lib/transport/message.h +0 -66
  2693. data/src/core/lib/transport/metadata.cc +0 -61
  2694. data/src/core/lib/transport/metadata.h +0 -113
  2695. data/src/core/lib/transport/metadata_batch.cc +0 -374
  2696. data/src/core/lib/transport/metadata_batch.h +0 -1599
  2697. data/src/core/lib/transport/metadata_compression_traits.h +0 -66
  2698. data/src/core/lib/transport/metadata_info.cc +0 -55
  2699. data/src/core/lib/transport/metadata_info.h +0 -85
  2700. data/src/core/lib/transport/parsed_metadata.cc +0 -35
  2701. data/src/core/lib/transport/parsed_metadata.h +0 -429
  2702. data/src/core/lib/transport/simple_slice_based_metadata.h +0 -53
  2703. data/src/core/util/atm.cc +0 -34
  2704. data/third_party/abseil-cpp/absl/base/internal/fast_type_id.h +0 -50
  2705. data/third_party/abseil-cpp/absl/base/internal/inline_variable.h +0 -108
  2706. data/third_party/abseil-cpp/absl/base/internal/invoke.h +0 -241
  2707. data/third_party/abseil-cpp/absl/base/internal/nullability_impl.h +0 -108
  2708. data/third_party/abseil-cpp/absl/log/log_entry.cc +0 -41
  2709. data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +0 -253
  2710. data/third_party/abseil-cpp/absl/random/internal/pool_urbg.h +0 -131
  2711. data/third_party/abseil-cpp/absl/strings/cord_buffer.cc +0 -30
  2712. data/third_party/abseil-cpp/absl/types/bad_optional_access.cc +0 -66
  2713. data/third_party/abseil-cpp/absl/types/bad_optional_access.h +0 -78
  2714. data/third_party/abseil-cpp/absl/types/bad_variant_access.cc +0 -82
  2715. data/third_party/abseil-cpp/absl/types/bad_variant_access.h +0 -82
  2716. data/third_party/abseil-cpp/absl/types/internal/optional.h +0 -352
  2717. data/third_party/abseil-cpp/absl/types/internal/variant.h +0 -1622
  2718. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +0 -284
  2719. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +0 -95
  2720. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +0 -89
  2721. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.c +0 -84
  2722. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +0 -151
  2723. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.c +0 -85
  2724. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +0 -465
  2725. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +0 -279
  2726. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +0 -235
  2727. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c +0 -74
  2728. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +0 -457
  2729. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +0 -245
  2730. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +0 -259
  2731. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +0 -214
  2732. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +0 -183
  2733. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +0 -397
  2734. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +0 -103
  2735. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +0 -98
  2736. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +0 -105
  2737. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +0 -94
  2738. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.c +0 -241
  2739. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +0 -973
  2740. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +0 -708
  2741. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +0 -212
  2742. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +0 -317
  2743. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +0 -126
  2744. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +0 -268
  2745. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +0 -479
  2746. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +0 -726
  2747. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +0 -309
  2748. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +0 -544
  2749. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.c +0 -92
  2750. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +0 -235
  2751. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +0 -334
  2752. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.c +0 -192
  2753. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +0 -480
  2754. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.c +0 -102
  2755. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +0 -189
  2756. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +0 -133
  2757. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +0 -169
  2758. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/bn_asn1.c +0 -57
  2759. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/convert.c +0 -465
  2760. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.c +0 -158
  2761. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.c +0 -53
  2762. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +0 -266
  2763. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +0 -718
  2764. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +0 -911
  2765. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.c +0 -156
  2766. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +0 -224
  2767. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +0 -127
  2768. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/derive_key.c +0 -152
  2769. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesctrhmac.c +0 -284
  2770. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesgcmsiv.c +0 -841
  2771. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_chacha20poly1305.c +0 -348
  2772. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_des.c +0 -228
  2773. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +0 -90
  2774. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +0 -455
  2775. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +0 -94
  2776. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +0 -598
  2777. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +0 -280
  2778. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +0 -514
  2779. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +0 -672
  2780. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.c +0 -75
  2781. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.c +0 -55
  2782. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.c +0 -62
  2783. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.c +0 -61
  2784. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.c +0 -93
  2785. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.c +0 -41
  2786. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.c +0 -54
  2787. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.c +0 -151
  2788. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.c +0 -326
  2789. data/third_party/boringssl-with-bazel/src/crypto/crypto.c +0 -188
  2790. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +0 -2157
  2791. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.c +0 -18
  2792. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.c +0 -523
  2793. data/third_party/boringssl-with-bazel/src/crypto/des/des.c +0 -871
  2794. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +0 -165
  2795. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +0 -480
  2796. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +0 -266
  2797. data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +0 -1539
  2798. data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +0 -58
  2799. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +0 -997
  2800. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -419
  2801. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +0 -572
  2802. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_derive.c +0 -96
  2803. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +0 -508
  2804. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +0 -78
  2805. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.c +0 -124
  2806. data/third_party/boringssl-with-bazel/src/crypto/ecdsa_extra/ecdsa_asn1.c +0 -411
  2807. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.c +0 -91
  2808. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +0 -903
  2809. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +0 -430
  2810. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +0 -547
  2811. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.c +0 -483
  2812. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.c +0 -137
  2813. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.c +0 -120
  2814. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +0 -338
  2815. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +0 -274
  2816. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +0 -332
  2817. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +0 -100
  2818. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.c +0 -224
  2819. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.c +0 -232
  2820. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +0 -646
  2821. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +0 -241
  2822. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +0 -106
  2823. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.c +0 -236
  2824. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.c +0 -146
  2825. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +0 -381
  2826. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +0 -209
  2827. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.c +0 -156
  2828. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +0 -236
  2829. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.c.inc +0 -127
  2830. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.c.inc +0 -1281
  2831. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.c.inc +0 -242
  2832. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c.inc +0 -124
  2833. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +0 -279
  2834. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.c.inc +0 -310
  2835. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.c.inc +0 -541
  2836. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.c.inc +0 -428
  2837. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c.inc +0 -267
  2838. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.c.inc +0 -201
  2839. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.c.inc +0 -234
  2840. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c.inc +0 -876
  2841. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c.inc +0 -87
  2842. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c.inc +0 -1320
  2843. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c.inc +0 -397
  2844. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c.inc +0 -331
  2845. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.c.inc +0 -624
  2846. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.c.inc +0 -146
  2847. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c.inc +0 -532
  2848. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c.inc +0 -222
  2849. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c.inc +0 -744
  2850. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c.inc +0 -1077
  2851. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c.inc +0 -354
  2852. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c.inc +0 -137
  2853. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.c.inc +0 -363
  2854. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c.inc +0 -499
  2855. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.c.inc +0 -287
  2856. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c.inc +0 -717
  2857. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c.inc +0 -1464
  2858. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.c.inc +0 -446
  2859. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.c.inc +0 -322
  2860. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c.inc +0 -245
  2861. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c.inc +0 -489
  2862. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c.inc +0 -288
  2863. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.c.inc +0 -304
  2864. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.c.inc +0 -267
  2865. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c.inc +0 -1043
  2866. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c.inc +0 -561
  2867. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c.inc +0 -491
  2868. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.c.inc +0 -104
  2869. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c.inc +0 -359
  2870. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c.inc +0 -1163
  2871. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.c.inc +0 -734
  2872. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c.inc +0 -749
  2873. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c.inc +0 -173
  2874. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c.inc +0 -336
  2875. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c.inc +0 -269
  2876. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.c.inc +0 -255
  2877. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c.inc +0 -264
  2878. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c.inc +0 -130
  2879. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c.inc +0 -317
  2880. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +0 -29
  2881. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.c.inc +0 -112
  2882. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.c.inc +0 -256
  2883. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c.inc +0 -240
  2884. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/internal.h +0 -37
  2885. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c.inc +0 -284
  2886. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c.inc +0 -164
  2887. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c.inc +0 -200
  2888. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c.inc +0 -196
  2889. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c.inc +0 -743
  2890. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c.inc +0 -302
  2891. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +0 -428
  2892. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c.inc +0 -87
  2893. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/polyval.c.inc +0 -90
  2894. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.c.inc +0 -220
  2895. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c.inc +0 -479
  2896. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.c.inc +0 -241
  2897. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c.inc +0 -420
  2898. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c.inc +0 -1038
  2899. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c.inc +0 -1351
  2900. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c.inc +0 -121
  2901. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c.inc +0 -1038
  2902. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c.inc +0 -328
  2903. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c.inc +0 -439
  2904. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c.inc +0 -359
  2905. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c.inc +0 -543
  2906. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c.inc +0 -218
  2907. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +0 -1092
  2908. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +0 -2234
  2909. data/third_party/boringssl-with-bazel/src/crypto/keccak/internal.h +0 -70
  2910. data/third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c +0 -279
  2911. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +0 -845
  2912. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c +0 -350
  2913. data/third_party/boringssl-with-bazel/src/crypto/mem.c +0 -613
  2914. data/third_party/boringssl-with-bazel/src/crypto/mldsa/internal.h +0 -73
  2915. data/third_party/boringssl-with-bazel/src/crypto/mldsa/mldsa.c +0 -1687
  2916. data/third_party/boringssl-with-bazel/src/crypto/mlkem/internal.h +0 -90
  2917. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +0 -564
  2918. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.c +0 -122
  2919. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +0 -243
  2920. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +0 -294
  2921. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +0 -789
  2922. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.c +0 -87
  2923. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +0 -250
  2924. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +0 -183
  2925. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.c +0 -64
  2926. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.c +0 -64
  2927. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +0 -193
  2928. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +0 -523
  2929. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.c +0 -316
  2930. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +0 -527
  2931. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +0 -1352
  2932. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +0 -314
  2933. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.c +0 -308
  2934. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.c +0 -847
  2935. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +0 -261
  2936. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +0 -65
  2937. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/fork_detect.c +0 -195
  2938. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.c +0 -44
  2939. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getentropy.c +0 -60
  2940. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getrandom_fillin.h +0 -64
  2941. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/ios.c +0 -42
  2942. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +0 -174
  2943. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +0 -77
  2944. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/sysrand_internal.h +0 -37
  2945. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/trusty.c +0 -46
  2946. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/urandom.c +0 -328
  2947. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +0 -102
  2948. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.c +0 -98
  2949. data/third_party/boringssl-with-bazel/src/crypto/refcount.c +0 -59
  2950. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/internal.h +0 -79
  2951. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_asn1.c +0 -324
  2952. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c +0 -570
  2953. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c +0 -22
  2954. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +0 -79
  2955. data/third_party/boringssl-with-bazel/src/crypto/spx/address.c +0 -101
  2956. data/third_party/boringssl-with-bazel/src/crypto/spx/address.h +0 -50
  2957. data/third_party/boringssl-with-bazel/src/crypto/spx/fors.c +0 -133
  2958. data/third_party/boringssl-with-bazel/src/crypto/spx/fors.h +0 -54
  2959. data/third_party/boringssl-with-bazel/src/crypto/spx/merkle.c +0 -150
  2960. data/third_party/boringssl-with-bazel/src/crypto/spx/merkle.h +0 -61
  2961. data/third_party/boringssl-with-bazel/src/crypto/spx/params.h +0 -71
  2962. data/third_party/boringssl-with-bazel/src/crypto/spx/spx.c +0 -140
  2963. data/third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c +0 -53
  2964. data/third_party/boringssl-with-bazel/src/crypto/spx/spx_util.h +0 -44
  2965. data/third_party/boringssl-with-bazel/src/crypto/spx/thash.c +0 -136
  2966. data/third_party/boringssl-with-bazel/src/crypto/spx/thash.h +0 -70
  2967. data/third_party/boringssl-with-bazel/src/crypto/spx/wots.c +0 -135
  2968. data/third_party/boringssl-with-bazel/src/crypto/spx/wots.h +0 -45
  2969. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +0 -534
  2970. data/third_party/boringssl-with-bazel/src/crypto/thread.c +0 -110
  2971. data/third_party/boringssl-with-bazel/src/crypto/thread_none.c +0 -51
  2972. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +0 -150
  2973. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +0 -236
  2974. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +0 -1668
  2975. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +0 -687
  2976. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +0 -1267
  2977. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c +0 -94
  2978. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +0 -136
  2979. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +0 -116
  2980. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +0 -178
  2981. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +0 -585
  2982. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +0 -400
  2983. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +0 -269
  2984. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c +0 -79
  2985. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +0 -227
  2986. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +0 -786
  2987. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +0 -401
  2988. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +0 -145
  2989. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +0 -245
  2990. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +0 -329
  2991. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +0 -121
  2992. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c +0 -221
  2993. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c +0 -73
  2994. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c +0 -634
  2995. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c +0 -135
  2996. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c +0 -141
  2997. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c +0 -416
  2998. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c +0 -482
  2999. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c +0 -598
  3000. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c +0 -112
  3001. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c +0 -154
  3002. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c +0 -270
  3003. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c +0 -122
  3004. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c +0 -211
  3005. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c +0 -121
  3006. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c +0 -344
  3007. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c +0 -555
  3008. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c +0 -81
  3009. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c +0 -142
  3010. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c +0 -150
  3011. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c +0 -224
  3012. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c +0 -624
  3013. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c +0 -170
  3014. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +0 -1390
  3015. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +0 -89
  3016. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +0 -227
  3017. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +0 -280
  3018. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +0 -108
  3019. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.c +0 -86
  3020. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +0 -181
  3021. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -599
  3022. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +0 -206
  3023. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +0 -299
  3024. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +0 -240
  3025. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +0 -160
  3026. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +0 -189
  3027. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +0 -291
  3028. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +0 -1638
  3029. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +0 -440
  3030. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +0 -277
  3031. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +0 -407
  3032. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +0 -109
  3033. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +0 -133
  3034. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +0 -149
  3035. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +0 -356
  3036. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +0 -97
  3037. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +0 -384
  3038. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +0 -78
  3039. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +0 -527
  3040. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +0 -210
  3041. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +0 -116
  3042. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +0 -93
  3043. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.c +0 -79
  3044. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +0 -70
  3045. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +0 -544
  3046. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +0 -209
  3047. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.c +0 -1514
  3048. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +0 -129
  3049. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/spx.h +0 -90
  3050. data/third_party/upb/upb/message/internal/compare_unknown.c +0 -289
  3051. data/third_party/upb/upb/message/internal/compare_unknown.h +0 -49
@@ -1,1599 +0,0 @@
1
- //
2
- //
3
- // Copyright 2015 gRPC authors.
4
- //
5
- // Licensed under the Apache License, Version 2.0 (the "License");
6
- // you may not use this file except in compliance with the License.
7
- // You may obtain a copy of the License at
8
- //
9
- // http://www.apache.org/licenses/LICENSE-2.0
10
- //
11
- // Unless required by applicable law or agreed to in writing, software
12
- // distributed under the License is distributed on an "AS IS" BASIS,
13
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- // See the License for the specific language governing permissions and
15
- // limitations under the License.
16
- //
17
- //
18
-
19
- #ifndef GRPC_SRC_CORE_LIB_TRANSPORT_METADATA_BATCH_H
20
- #define GRPC_SRC_CORE_LIB_TRANSPORT_METADATA_BATCH_H
21
-
22
- #include <grpc/impl/compression_types.h>
23
- #include <grpc/status.h>
24
- #include <grpc/support/port_platform.h>
25
- #include <stdlib.h>
26
-
27
- #include <cstdint>
28
- #include <string>
29
- #include <type_traits>
30
- #include <utility>
31
-
32
- #include "absl/container/inlined_vector.h"
33
- #include "absl/functional/function_ref.h"
34
- #include "absl/log/check.h"
35
- #include "absl/meta/type_traits.h"
36
- #include "absl/strings/numbers.h"
37
- #include "absl/strings/string_view.h"
38
- #include "absl/types/optional.h"
39
- #include "src/core/lib/compression/compression_internal.h"
40
- #include "src/core/lib/experiments/experiments.h"
41
- #include "src/core/lib/promise/poll.h"
42
- #include "src/core/lib/slice/slice.h"
43
- #include "src/core/lib/transport/custom_metadata.h"
44
- #include "src/core/lib/transport/metadata_compression_traits.h"
45
- #include "src/core/lib/transport/parsed_metadata.h"
46
- #include "src/core/lib/transport/simple_slice_based_metadata.h"
47
- #include "src/core/util/chunked_vector.h"
48
- #include "src/core/util/if_list.h"
49
- #include "src/core/util/packed_table.h"
50
- #include "src/core/util/time.h"
51
- #include "src/core/util/type_list.h"
52
-
53
- namespace grpc_core {
54
-
55
- ///////////////////////////////////////////////////////////////////////////////
56
- // Metadata traits
57
-
58
- // Given a metadata key and a value, return the encoded size.
59
- // Defaults to calling the key's Encode() method and then calculating the size
60
- // of that, but can be overridden for specific keys if there's a better way of
61
- // doing this.
62
- // May return 0 if the size is unknown/unknowable.
63
- template <typename Key>
64
- size_t EncodedSizeOfKey(Key, const typename Key::ValueType& value) {
65
- return Key::Encode(value).size();
66
- }
67
-
68
- // grpc-timeout metadata trait.
69
- // ValueType is defined as Timestamp - an absolute timestamp (i.e. a
70
- // deadline!), that is converted to a duration by transports before being
71
- // sent.
72
- // TODO(ctiller): Move this elsewhere. During the transition we need to be able
73
- // to name this in MetadataMap, but ultimately once the transition is done we
74
- // should not need to.
75
- struct GrpcTimeoutMetadata {
76
- static constexpr bool kRepeatable = false;
77
- static constexpr bool kTransferOnTrailersOnly = false;
78
- using ValueType = Timestamp;
79
- using MementoType = Duration;
80
- using CompressionTraits = TimeoutCompressor;
81
- static absl::string_view key() { return "grpc-timeout"; }
82
- static MementoType ParseMemento(Slice value,
83
- bool will_keep_past_request_lifetime,
84
- MetadataParseErrorFn on_error);
85
- static ValueType MementoToValue(MementoType timeout);
86
- static Slice Encode(ValueType x);
87
- static std::string DisplayValue(ValueType x) { return x.ToString(); }
88
- static std::string DisplayMemento(MementoType x) { return x.ToString(); }
89
- };
90
-
91
- // TE metadata trait.
92
- struct TeMetadata {
93
- static constexpr bool kRepeatable = false;
94
- static constexpr bool kTransferOnTrailersOnly = false;
95
- // HTTP2 says that TE can either be empty or "trailers".
96
- // Empty means this trait is not included, "trailers" means kTrailers, and
97
- // kInvalid is used to remember an invalid value.
98
- enum ValueType : uint8_t {
99
- kTrailers,
100
- kInvalid,
101
- };
102
- using MementoType = ValueType;
103
- using CompressionTraits = KnownValueCompressor<ValueType, kTrailers>;
104
- static absl::string_view key() { return "te"; }
105
- static MementoType ParseMemento(Slice value,
106
- bool will_keep_past_request_lifetime,
107
- MetadataParseErrorFn on_error);
108
- static ValueType MementoToValue(MementoType te) { return te; }
109
- static StaticSlice Encode(ValueType x) {
110
- CHECK(x == kTrailers);
111
- return StaticSlice::FromStaticString("trailers");
112
- }
113
- static const char* DisplayValue(ValueType te);
114
- static const char* DisplayMemento(MementoType te) { return DisplayValue(te); }
115
- };
116
-
117
- inline size_t EncodedSizeOfKey(TeMetadata, TeMetadata::ValueType x) {
118
- return x == TeMetadata::kTrailers ? 8 : 0;
119
- }
120
-
121
- // content-type metadata trait.
122
- struct ContentTypeMetadata {
123
- static constexpr bool kRepeatable = false;
124
- static constexpr bool kTransferOnTrailersOnly = true;
125
- // gRPC says that content-type can be application/grpc[;something]
126
- // Core has only ever verified the prefix.
127
- // IF we want to start verifying more, we can expand this type.
128
- enum ValueType : uint8_t {
129
- kApplicationGrpc,
130
- kEmpty,
131
- kInvalid,
132
- };
133
- using MementoType = ValueType;
134
- using CompressionTraits = KnownValueCompressor<ValueType, kApplicationGrpc>;
135
- static absl::string_view key() { return "content-type"; }
136
- static MementoType ParseMemento(Slice value,
137
- bool will_keep_past_request_lifetime,
138
- MetadataParseErrorFn on_error);
139
- static ValueType MementoToValue(MementoType content_type) {
140
- return content_type;
141
- }
142
-
143
- static StaticSlice Encode(ValueType x);
144
- static const char* DisplayValue(ValueType content_type);
145
- static const char* DisplayMemento(ValueType content_type) {
146
- return DisplayValue(content_type);
147
- }
148
- };
149
-
150
- // scheme metadata trait.
151
- struct HttpSchemeMetadata {
152
- static constexpr bool kRepeatable = false;
153
- static constexpr bool kTransferOnTrailersOnly = false;
154
- enum ValueType : uint8_t {
155
- kHttp,
156
- kHttps,
157
- kInvalid,
158
- };
159
- using MementoType = ValueType;
160
- using CompressionTraits = HttpSchemeCompressor;
161
- static absl::string_view key() { return ":scheme"; }
162
- static MementoType ParseMemento(Slice value, bool,
163
- MetadataParseErrorFn on_error) {
164
- return Parse(value.as_string_view(), on_error);
165
- }
166
- static ValueType Parse(absl::string_view value,
167
- MetadataParseErrorFn on_error);
168
- static ValueType MementoToValue(MementoType content_type) {
169
- return content_type;
170
- }
171
- static StaticSlice Encode(ValueType x);
172
- static const char* DisplayValue(ValueType content_type);
173
- static const char* DisplayMemento(MementoType content_type) {
174
- return DisplayValue(content_type);
175
- }
176
- };
177
-
178
- size_t EncodedSizeOfKey(HttpSchemeMetadata, HttpSchemeMetadata::ValueType x);
179
-
180
- // method metadata trait.
181
- struct HttpMethodMetadata {
182
- static constexpr bool kRepeatable = false;
183
- static constexpr bool kTransferOnTrailersOnly = false;
184
- enum ValueType : uint8_t {
185
- kPost,
186
- kGet,
187
- kPut,
188
- kInvalid,
189
- };
190
- using MementoType = ValueType;
191
- using CompressionTraits = HttpMethodCompressor;
192
- static absl::string_view key() { return ":method"; }
193
- static MementoType ParseMemento(Slice value,
194
- bool will_keep_past_request_lifetime,
195
- MetadataParseErrorFn on_error);
196
- static ValueType MementoToValue(MementoType content_type) {
197
- return content_type;
198
- }
199
- static StaticSlice Encode(ValueType x);
200
- static const char* DisplayValue(ValueType content_type);
201
- static const char* DisplayMemento(MementoType content_type) {
202
- return DisplayValue(content_type);
203
- }
204
- };
205
-
206
- // Base type for metadata pertaining to a single compression algorithm
207
- // (e.g., "grpc-encoding").
208
- struct CompressionAlgorithmBasedMetadata {
209
- using ValueType = grpc_compression_algorithm;
210
- using MementoType = ValueType;
211
- static MementoType ParseMemento(Slice value,
212
- bool will_keep_past_request_lifetime,
213
- MetadataParseErrorFn on_error);
214
- static ValueType MementoToValue(MementoType x) { return x; }
215
- static Slice Encode(ValueType x) {
216
- CHECK(x != GRPC_COMPRESS_ALGORITHMS_COUNT);
217
- return Slice::FromStaticString(CompressionAlgorithmAsString(x));
218
- }
219
- static const char* DisplayValue(ValueType x) {
220
- if (const char* p = CompressionAlgorithmAsString(x)) {
221
- return p;
222
- } else {
223
- return "<discarded-invalid-value>";
224
- }
225
- }
226
- static const char* DisplayMemento(MementoType x) { return DisplayValue(x); }
227
- };
228
-
229
- // grpc-encoding metadata trait.
230
- struct GrpcEncodingMetadata : public CompressionAlgorithmBasedMetadata {
231
- static constexpr bool kRepeatable = false;
232
- static constexpr bool kTransferOnTrailersOnly = false;
233
- using CompressionTraits =
234
- SmallIntegralValuesCompressor<GRPC_COMPRESS_ALGORITHMS_COUNT>;
235
- static absl::string_view key() { return "grpc-encoding"; }
236
- };
237
-
238
- // grpc-internal-encoding-request metadata trait.
239
- struct GrpcInternalEncodingRequest : public CompressionAlgorithmBasedMetadata {
240
- static constexpr bool kRepeatable = false;
241
- static constexpr bool kTransferOnTrailersOnly = false;
242
- using CompressionTraits = NoCompressionCompressor;
243
- static absl::string_view key() { return "grpc-internal-encoding-request"; }
244
- };
245
-
246
- // grpc-accept-encoding metadata trait.
247
- struct GrpcAcceptEncodingMetadata {
248
- static constexpr bool kRepeatable = false;
249
- static constexpr bool kTransferOnTrailersOnly = false;
250
- static absl::string_view key() { return "grpc-accept-encoding"; }
251
- using ValueType = CompressionAlgorithmSet;
252
- using MementoType = ValueType;
253
- using CompressionTraits = StableValueCompressor;
254
- static MementoType ParseMemento(Slice value, bool, MetadataParseErrorFn) {
255
- return CompressionAlgorithmSet::FromString(value.as_string_view());
256
- }
257
- static ValueType MementoToValue(MementoType x) { return x; }
258
- static Slice Encode(ValueType x) { return x.ToSlice(); }
259
- static absl::string_view DisplayValue(ValueType x) { return x.ToString(); }
260
- static absl::string_view DisplayMemento(MementoType x) {
261
- return DisplayValue(x);
262
- }
263
- };
264
-
265
- // user-agent metadata trait.
266
- struct UserAgentMetadata : public SimpleSliceBasedMetadata {
267
- static constexpr bool kRepeatable = false;
268
- static constexpr bool kTransferOnTrailersOnly = false;
269
- using CompressionTraits = StableValueCompressor;
270
- static absl::string_view key() { return "user-agent"; }
271
- };
272
-
273
- // grpc-message metadata trait.
274
- struct GrpcMessageMetadata : public SimpleSliceBasedMetadata {
275
- static constexpr bool kRepeatable = false;
276
- static constexpr bool kTransferOnTrailersOnly = false;
277
- using CompressionTraits = NoCompressionCompressor;
278
- static absl::string_view key() { return "grpc-message"; }
279
- };
280
-
281
- // host metadata trait.
282
- struct HostMetadata : public SimpleSliceBasedMetadata {
283
- static constexpr bool kRepeatable = false;
284
- static constexpr bool kTransferOnTrailersOnly = false;
285
- using CompressionTraits = NoCompressionCompressor;
286
- static absl::string_view key() { return "host"; }
287
- };
288
-
289
- // endpoint-load-metrics-bin metadata trait.
290
- struct EndpointLoadMetricsBinMetadata : public SimpleSliceBasedMetadata {
291
- static constexpr bool kRepeatable = false;
292
- static constexpr bool kTransferOnTrailersOnly = false;
293
- using CompressionTraits = NoCompressionCompressor;
294
- static absl::string_view key() { return "endpoint-load-metrics-bin"; }
295
- };
296
-
297
- // grpc-server-stats-bin metadata trait.
298
- struct GrpcServerStatsBinMetadata : public SimpleSliceBasedMetadata {
299
- static constexpr bool kRepeatable = false;
300
- static constexpr bool kTransferOnTrailersOnly = false;
301
- using CompressionTraits = NoCompressionCompressor;
302
- static absl::string_view key() { return "grpc-server-stats-bin"; }
303
- };
304
-
305
- // grpc-trace-bin metadata trait.
306
- struct GrpcTraceBinMetadata : public SimpleSliceBasedMetadata {
307
- static constexpr bool kRepeatable = false;
308
- static constexpr bool kTransferOnTrailersOnly = false;
309
- using CompressionTraits = FrequentKeyWithNoValueCompressionCompressor;
310
- static absl::string_view key() { return "grpc-trace-bin"; }
311
- };
312
-
313
- // grpc-tags-bin metadata trait.
314
- struct GrpcTagsBinMetadata : public SimpleSliceBasedMetadata {
315
- static constexpr bool kRepeatable = false;
316
- static constexpr bool kTransferOnTrailersOnly = false;
317
- using CompressionTraits = FrequentKeyWithNoValueCompressionCompressor;
318
- static absl::string_view key() { return "grpc-tags-bin"; }
319
- };
320
-
321
- // XEnvoyPeerMetadata
322
- struct XEnvoyPeerMetadata : public SimpleSliceBasedMetadata {
323
- static constexpr bool kRepeatable = false;
324
- static constexpr bool kTransferOnTrailersOnly = true;
325
- using CompressionTraits = StableValueCompressor;
326
- static absl::string_view key() { return "x-envoy-peer-metadata"; }
327
- };
328
-
329
- // :authority metadata trait.
330
- struct HttpAuthorityMetadata : public SimpleSliceBasedMetadata {
331
- static constexpr bool kRepeatable = false;
332
- static constexpr bool kTransferOnTrailersOnly = false;
333
- using CompressionTraits = SmallSetOfValuesCompressor;
334
- static absl::string_view key() { return ":authority"; }
335
- };
336
-
337
- // :path metadata trait.
338
- struct HttpPathMetadata : public SimpleSliceBasedMetadata {
339
- static constexpr bool kRepeatable = false;
340
- static constexpr bool kTransferOnTrailersOnly = false;
341
- using CompressionTraits = SmallSetOfValuesCompressor;
342
- static absl::string_view key() { return ":path"; }
343
- };
344
-
345
- // We separate SimpleIntBasedMetadata into two pieces: one that does not
346
- // depend on the invalid value, and one that does. This allows the compiler to
347
- // easily see the functions that are shared, and helps reduce code bloat here.
348
- template <typename Int>
349
- struct SimpleIntBasedMetadataBase {
350
- using ValueType = Int;
351
- using MementoType = Int;
352
- static ValueType MementoToValue(MementoType value) { return value; }
353
- static Slice Encode(ValueType x) { return Slice::FromInt64(x); }
354
- static Int DisplayValue(ValueType x) { return x; }
355
- static Int DisplayMemento(MementoType x) { return x; }
356
- };
357
-
358
- template <typename Int, Int kInvalidValue>
359
- struct SimpleIntBasedMetadata : public SimpleIntBasedMetadataBase<Int> {
360
- static constexpr Int invalid_value() { return kInvalidValue; }
361
- static Int ParseMemento(Slice value, bool, MetadataParseErrorFn on_error) {
362
- Int out;
363
- if (!absl::SimpleAtoi(value.as_string_view(), &out)) {
364
- on_error("not an integer", value);
365
- out = kInvalidValue;
366
- }
367
- return out;
368
- }
369
- };
370
-
371
- // grpc-status metadata trait.
372
- struct GrpcStatusMetadata
373
- : public SimpleIntBasedMetadata<grpc_status_code, GRPC_STATUS_UNKNOWN> {
374
- static constexpr bool kRepeatable = false;
375
- static constexpr bool kTransferOnTrailersOnly = false;
376
- using CompressionTraits = SmallIntegralValuesCompressor<16>;
377
- static absl::string_view key() { return "grpc-status"; }
378
- };
379
-
380
- // grpc-previous-rpc-attempts metadata trait.
381
- struct GrpcPreviousRpcAttemptsMetadata
382
- : public SimpleIntBasedMetadata<uint32_t, 0> {
383
- static constexpr bool kRepeatable = false;
384
- static constexpr bool kTransferOnTrailersOnly = false;
385
- using CompressionTraits = NoCompressionCompressor;
386
- static absl::string_view key() { return "grpc-previous-rpc-attempts"; }
387
- };
388
-
389
- // grpc-retry-pushback-ms metadata trait.
390
- struct GrpcRetryPushbackMsMetadata {
391
- static constexpr bool kRepeatable = false;
392
- static constexpr bool kTransferOnTrailersOnly = false;
393
- static absl::string_view key() { return "grpc-retry-pushback-ms"; }
394
- using ValueType = Duration;
395
- using MementoType = Duration;
396
- using CompressionTraits = NoCompressionCompressor;
397
- static ValueType MementoToValue(MementoType x) { return x; }
398
- static Slice Encode(Duration x) { return Slice::FromInt64(x.millis()); }
399
- static int64_t DisplayValue(Duration x) { return x.millis(); }
400
- static int64_t DisplayMemento(Duration x) { return DisplayValue(x); }
401
- static Duration ParseMemento(Slice value,
402
- bool will_keep_past_request_lifetime,
403
- MetadataParseErrorFn on_error);
404
- };
405
-
406
- // :status metadata trait.
407
- // TODO(ctiller): consider moving to uint16_t
408
- struct HttpStatusMetadata : public SimpleIntBasedMetadata<uint32_t, 0> {
409
- static constexpr bool kRepeatable = false;
410
- static constexpr bool kTransferOnTrailersOnly = true;
411
- using CompressionTraits = HttpStatusCompressor;
412
- static absl::string_view key() { return ":status"; }
413
- };
414
-
415
- // "secret" metadata trait used to pass load balancing token between filters.
416
- // This should not be exposed outside of gRPC core.
417
- class GrpcLbClientStats;
418
-
419
- struct GrpcLbClientStatsMetadata {
420
- static constexpr bool kRepeatable = false;
421
- static constexpr bool kTransferOnTrailersOnly = false;
422
- static absl::string_view key() { return "grpclb_client_stats"; }
423
- using ValueType = GrpcLbClientStats*;
424
- using MementoType = ValueType;
425
- using CompressionTraits = NoCompressionCompressor;
426
- static ValueType MementoToValue(MementoType value) { return value; }
427
- static Slice Encode(ValueType) { abort(); }
428
- static const char* DisplayValue(ValueType) { return "<internal-lb-stats>"; }
429
- static const char* DisplayMemento(MementoType) {
430
- return "<internal-lb-stats>";
431
- }
432
- static MementoType ParseMemento(Slice, bool, MetadataParseErrorFn error) {
433
- error("not a valid value for grpclb_client_stats", Slice());
434
- return nullptr;
435
- }
436
- };
437
-
438
- inline size_t EncodedSizeOfKey(GrpcLbClientStatsMetadata,
439
- GrpcLbClientStatsMetadata::ValueType) {
440
- return 0;
441
- }
442
-
443
- // lb-token metadata
444
- struct LbTokenMetadata : public SimpleSliceBasedMetadata {
445
- static constexpr bool kRepeatable = false;
446
- static constexpr bool kTransferOnTrailersOnly = false;
447
- using CompressionTraits = NoCompressionCompressor;
448
- static absl::string_view key() { return "lb-token"; }
449
- };
450
-
451
- // lb-cost-bin metadata
452
- struct LbCostBinMetadata {
453
- static constexpr bool kRepeatable = true;
454
- static constexpr bool kTransferOnTrailersOnly = false;
455
- static absl::string_view key() { return "lb-cost-bin"; }
456
- struct ValueType {
457
- double cost;
458
- std::string name;
459
- };
460
- using MementoType = ValueType;
461
- using CompressionTraits = NoCompressionCompressor;
462
- static ValueType MementoToValue(MementoType value) { return value; }
463
- static Slice Encode(const ValueType& x);
464
- static std::string DisplayValue(ValueType x);
465
- static std::string DisplayMemento(MementoType x) { return DisplayValue(x); }
466
- static MementoType ParseMemento(Slice value,
467
- bool will_keep_past_request_lifetime,
468
- MetadataParseErrorFn on_error);
469
- };
470
-
471
- // Annotation added by a transport to note whether a failed request was never
472
- // placed on the wire, or never seen by a server.
473
- struct GrpcStreamNetworkState {
474
- static absl::string_view DebugKey() { return "GrpcStreamNetworkState"; }
475
- static constexpr bool kRepeatable = false;
476
- static constexpr bool kTransferOnTrailersOnly = false;
477
- enum ValueType : uint8_t {
478
- kNotSentOnWire,
479
- kNotSeenByServer,
480
- };
481
- static std::string DisplayValue(ValueType x);
482
- };
483
-
484
- // Annotation added by a server transport to note the peer making a request.
485
- struct PeerString {
486
- static absl::string_view DebugKey() { return "PeerString"; }
487
- static constexpr bool kRepeatable = false;
488
- using ValueType = Slice;
489
- static std::string DisplayValue(const ValueType& x);
490
- };
491
-
492
- // Annotation added by various systems to describe the reason for a failure.
493
- struct GrpcStatusContext {
494
- static absl::string_view DebugKey() { return "GrpcStatusContext"; }
495
- static constexpr bool kRepeatable = true;
496
- using ValueType = std::string;
497
- static const std::string& DisplayValue(const std::string& x);
498
- };
499
-
500
- // Annotation added by a transport to note that the status came from the wire.
501
- struct GrpcStatusFromWire {
502
- static absl::string_view DebugKey() { return "GrpcStatusFromWire"; }
503
- static constexpr bool kRepeatable = false;
504
- using ValueType = bool;
505
- static absl::string_view DisplayValue(bool x) { return x ? "true" : "false"; }
506
- };
507
-
508
- // Annotation to denote that this call qualifies for cancelled=1 for the
509
- // RECV_CLOSE_ON_SERVER op
510
- struct GrpcCallWasCancelled {
511
- static absl::string_view DebugKey() { return "GrpcCallWasCancelled"; }
512
- static constexpr bool kRepeatable = false;
513
- using ValueType = bool;
514
- static absl::string_view DisplayValue(bool x) { return x ? "true" : "false"; }
515
- };
516
-
517
- // Annotation added by client surface code to denote wait-for-ready state
518
- struct WaitForReady {
519
- struct ValueType {
520
- bool value = false;
521
- bool explicitly_set = false;
522
- };
523
- static absl::string_view DebugKey() { return "WaitForReady"; }
524
- static constexpr bool kRepeatable = false;
525
- static std::string DisplayValue(ValueType x);
526
- };
527
-
528
- // Annotation added by retry code to indicate a transparent retry.
529
- struct IsTransparentRetry {
530
- static absl::string_view DebugKey() { return "IsTransparentRetry"; }
531
- static constexpr bool kRepeatable = false;
532
- using ValueType = bool;
533
- static std::string DisplayValue(ValueType x) { return x ? "true" : "false"; }
534
- };
535
-
536
- // Annotation added by a transport to note that server trailing metadata
537
- // is a Trailers-Only response.
538
- struct GrpcTrailersOnly {
539
- static absl::string_view DebugKey() { return "GrpcTrailersOnly"; }
540
- static constexpr bool kRepeatable = false;
541
- using ValueType = bool;
542
- static absl::string_view DisplayValue(bool x) { return x ? "true" : "false"; }
543
- };
544
-
545
- // On the client-side, the value is a uintptr_t with a value of 1 if the call
546
- // has a registered/known method, or 0, if it's not known. On the server side,
547
- // the value is a (ChannelRegisteredMethod*).
548
- struct GrpcRegisteredMethod {
549
- static absl::string_view DebugKey() { return "GrpcRegisteredMethod"; }
550
- static constexpr bool kRepeatable = false;
551
- using ValueType = void*;
552
- static std::string DisplayValue(void* x);
553
- };
554
-
555
- // Annotation added by filters to inform the transport to tarpit this
556
- // response: add some random delay to thwart certain kinds of attacks.
557
- struct GrpcTarPit {
558
- static absl::string_view DebugKey() { return "GrpcTarPit"; }
559
- static constexpr bool kRepeatable = false;
560
- using ValueType = Empty;
561
- static absl::string_view DisplayValue(Empty) { return "tarpit"; }
562
- };
563
-
564
- namespace metadata_detail {
565
-
566
- // Build a key/value formatted debug string.
567
- // Output looks like 'key1: value1, key2: value2'
568
- // The string is expected to be readable, but not necessarily parsable.
569
- class DebugStringBuilder {
570
- public:
571
- // Add one key/value pair to the output if it is allow listed.
572
- // Redact only the value if it is not allow listed.
573
- void AddAfterRedaction(absl::string_view key, absl::string_view value);
574
-
575
- // Finalize the output and return the string.
576
- // Subsequent Add calls are UB.
577
- std::string TakeOutput() { return std::move(out_); }
578
-
579
- private:
580
- bool IsAllowListed(absl::string_view key) const;
581
- void Add(absl::string_view key, absl::string_view value);
582
- std::string out_;
583
- };
584
-
585
- // IsEncodable: Given a trait, determine if that trait is encodable, or is
586
- // just a value attached to a MetadataMap. We use the presence of the key()
587
- // static method to determine if a trait is encodable or not - encodable
588
- // traits have string names, and non-encodable traits do not.
589
- template <typename Trait, typename Ignored = void>
590
- struct IsEncodableTrait {
591
- static const bool value = false;
592
- };
593
-
594
- template <typename Trait>
595
- struct IsEncodableTrait<Trait, absl::void_t<decltype(Trait::key())>> {
596
- static const bool value = true;
597
- };
598
-
599
- template <typename MustBeVoid, typename... Traits>
600
- struct EncodableTraits;
601
-
602
- template <typename Trait, typename... Traits>
603
- struct EncodableTraits<absl::enable_if_t<IsEncodableTrait<Trait>::value, void>,
604
- Trait, Traits...> {
605
- using List =
606
- typename EncodableTraits<void,
607
- Traits...>::List::template PushFront<Trait>;
608
- };
609
-
610
- template <typename Trait, typename... Traits>
611
- struct EncodableTraits<absl::enable_if_t<!IsEncodableTrait<Trait>::value, void>,
612
- Trait, Traits...> {
613
- using List = typename EncodableTraits<void, Traits...>::List;
614
- };
615
-
616
- template <>
617
- struct EncodableTraits<void> {
618
- using List = Typelist<>;
619
- };
620
-
621
- template <typename Trait>
622
- struct EncodableNameLookupKeyComparison {
623
- bool operator()(absl::string_view key) { return key == Trait::key(); }
624
- };
625
-
626
- template <typename Trait, typename Op>
627
- struct EncodableNameLookupOnFound {
628
- auto operator()(Op* op) { return op->Found(Trait()); }
629
- };
630
-
631
- template <typename... Traits>
632
- struct EncodableNameLookup {
633
- template <typename Op>
634
- static auto Lookup(absl::string_view key, Op* op) {
635
- return IfList(
636
- key, op, [key](Op* op) { return op->NotFound(key); },
637
- EncodableNameLookupKeyComparison<Traits>()...,
638
- EncodableNameLookupOnFound<Traits, Op>()...);
639
- }
640
- };
641
-
642
- template <typename... Traits>
643
- using NameLookup = typename EncodableTraits<
644
- void, Traits...>::List::template Instantiate<EncodableNameLookup>;
645
-
646
- // Helper to take a slice to a memento to a value.
647
- // By splitting this part out we can scale code size as the number of
648
- // (memento, value) types, rather than as the number of traits.
649
- template <typename ParseMementoFn, typename MementoToValueFn>
650
- struct ParseValue {
651
- template <ParseMementoFn parse_memento, MementoToValueFn memento_to_value>
652
- static GPR_ATTRIBUTE_NOINLINE auto Parse(Slice* value,
653
- MetadataParseErrorFn on_error)
654
- -> decltype(memento_to_value(parse_memento(std::move(*value), false,
655
- on_error))) {
656
- return memento_to_value(parse_memento(std::move(*value), false, on_error));
657
- }
658
- };
659
-
660
- // This is an "Op" type for NameLookup.
661
- // Used for MetadataMap::Parse, its Found/NotFound methods turn a slice into a
662
- // ParsedMetadata object.
663
- template <typename Container>
664
- class ParseHelper {
665
- public:
666
- ParseHelper(Slice value, bool will_keep_past_request_lifetime,
667
- MetadataParseErrorFn on_error, size_t transport_size)
668
- : value_(std::move(value)),
669
- will_keep_past_request_lifetime_(will_keep_past_request_lifetime),
670
- on_error_(on_error),
671
- transport_size_(transport_size) {}
672
-
673
- template <typename Trait>
674
- GPR_ATTRIBUTE_NOINLINE ParsedMetadata<Container> Found(Trait trait) {
675
- return ParsedMetadata<Container>(
676
- trait,
677
- ParseValueToMemento<typename Trait::MementoType, Trait::ParseMemento>(),
678
- static_cast<uint32_t>(transport_size_));
679
- }
680
-
681
- GPR_ATTRIBUTE_NOINLINE ParsedMetadata<Container> NotFound(
682
- absl::string_view key) {
683
- return ParsedMetadata<Container>(
684
- typename ParsedMetadata<Container>::FromSlicePair{},
685
- Slice::FromCopiedString(key),
686
- will_keep_past_request_lifetime_ ? value_.TakeUniquelyOwned()
687
- : std::move(value_),
688
- transport_size_);
689
- }
690
-
691
- private:
692
- template <typename T, T (*parse_memento)(Slice, bool, MetadataParseErrorFn)>
693
- GPR_ATTRIBUTE_NOINLINE T ParseValueToMemento() {
694
- return parse_memento(std::move(value_), will_keep_past_request_lifetime_,
695
- on_error_);
696
- }
697
-
698
- Slice value_;
699
- const bool will_keep_past_request_lifetime_;
700
- MetadataParseErrorFn on_error_;
701
- const size_t transport_size_;
702
- };
703
-
704
- // This is an "Op" type for NameLookup.
705
- // Used for MetadataMap::Append, its Found/NotFound methods turn a slice into
706
- // a value and add it to a container.
707
- template <typename Container>
708
- class AppendHelper {
709
- public:
710
- AppendHelper(Container* container, Slice value, MetadataParseErrorFn on_error)
711
- : container_(container), value_(std::move(value)), on_error_(on_error) {}
712
-
713
- template <typename Trait>
714
- GPR_ATTRIBUTE_NOINLINE void Found(Trait trait) {
715
- container_->Set(
716
- trait, ParseValue<decltype(Trait::ParseMemento),
717
- decltype(Trait::MementoToValue)>::
718
- template Parse<Trait::ParseMemento, Trait::MementoToValue>(
719
- &value_, on_error_));
720
- }
721
-
722
- GPR_ATTRIBUTE_NOINLINE void NotFound(absl::string_view key) {
723
- container_->unknown_.Append(key, std::move(value_));
724
- }
725
-
726
- private:
727
- Container* const container_;
728
- Slice value_;
729
- MetadataParseErrorFn on_error_;
730
- };
731
-
732
- // This is an "Op" type for NameLookup.
733
- // Used for MetadataMap::Remove, its Found/NotFound methods remove a key from
734
- // the container.
735
- template <typename Container>
736
- class RemoveHelper {
737
- public:
738
- explicit RemoveHelper(Container* container) : container_(container) {}
739
-
740
- template <typename Trait>
741
- GPR_ATTRIBUTE_NOINLINE void Found(Trait trait) {
742
- container_->Remove(trait);
743
- }
744
-
745
- GPR_ATTRIBUTE_NOINLINE void NotFound(absl::string_view key) {
746
- container_->unknown_.Remove(key);
747
- }
748
-
749
- private:
750
- Container* const container_;
751
- };
752
-
753
- // This is an "Op" type for NameLookup.
754
- // Used for MetadataMap::GetStringValue, its Found/NotFound methods generated
755
- // a string value from the container.
756
- template <typename Container>
757
- class GetStringValueHelper {
758
- public:
759
- explicit GetStringValueHelper(const Container* container,
760
- std::string* backing)
761
- : container_(container), backing_(backing) {}
762
-
763
- template <typename Trait>
764
- GPR_ATTRIBUTE_NOINLINE absl::enable_if_t<
765
- Trait::kRepeatable == false &&
766
- std::is_same<Slice, typename Trait::ValueType>::value,
767
- absl::optional<absl::string_view>>
768
- Found(Trait) {
769
- const auto* value = container_->get_pointer(Trait());
770
- if (value == nullptr) return absl::nullopt;
771
- return value->as_string_view();
772
- }
773
-
774
- template <typename Trait>
775
- GPR_ATTRIBUTE_NOINLINE absl::enable_if_t<
776
- Trait::kRepeatable == true &&
777
- !std::is_same<Slice, typename Trait::ValueType>::value,
778
- absl::optional<absl::string_view>>
779
- Found(Trait) {
780
- const auto* value = container_->get_pointer(Trait());
781
- if (value == nullptr) return absl::nullopt;
782
- backing_->clear();
783
- for (const auto& v : *value) {
784
- if (!backing_->empty()) backing_->push_back(',');
785
- auto new_segment = Trait::Encode(v);
786
- backing_->append(new_segment.begin(), new_segment.end());
787
- }
788
- return *backing_;
789
- }
790
-
791
- template <typename Trait>
792
- GPR_ATTRIBUTE_NOINLINE absl::enable_if_t<
793
- Trait::kRepeatable == false &&
794
- !std::is_same<Slice, typename Trait::ValueType>::value,
795
- absl::optional<absl::string_view>>
796
- Found(Trait) {
797
- const auto* value = container_->get_pointer(Trait());
798
- if (value == nullptr) return absl::nullopt;
799
- *backing_ = std::string(Trait::Encode(*value).as_string_view());
800
- return *backing_;
801
- }
802
-
803
- GPR_ATTRIBUTE_NOINLINE absl::optional<absl::string_view> NotFound(
804
- absl::string_view key) {
805
- return container_->unknown_.GetStringValue(key, backing_);
806
- }
807
-
808
- private:
809
- const Container* const container_;
810
- std::string* backing_;
811
- };
812
-
813
- // Sink for key value logs
814
- using LogFn = absl::FunctionRef<void(absl::string_view, absl::string_view)>;
815
-
816
- template <typename T>
817
- struct AdaptDisplayValueToLog {
818
- static std::string ToString(const T& value) { return std::to_string(value); }
819
- };
820
-
821
- template <>
822
- struct AdaptDisplayValueToLog<std::string> {
823
- static std::string ToString(const std::string& value) { return value; }
824
- };
825
-
826
- template <>
827
- struct AdaptDisplayValueToLog<const std::string&> {
828
- static std::string ToString(const std::string& value) { return value; }
829
- };
830
-
831
- template <>
832
- struct AdaptDisplayValueToLog<absl::string_view> {
833
- static std::string ToString(absl::string_view value) {
834
- return std::string(value);
835
- }
836
- };
837
-
838
- template <>
839
- struct AdaptDisplayValueToLog<Slice> {
840
- static std::string ToString(Slice value) {
841
- return std::string(value.as_string_view());
842
- }
843
- };
844
-
845
- template <>
846
- struct AdaptDisplayValueToLog<const char*> {
847
- static std::string ToString(const char* value) { return std::string(value); }
848
- };
849
-
850
- template <>
851
- struct AdaptDisplayValueToLog<StaticSlice> {
852
- static absl::string_view ToString(StaticSlice value) {
853
- return value.as_string_view();
854
- }
855
- };
856
-
857
- template <typename T, typename U, typename V>
858
- GPR_ATTRIBUTE_NOINLINE void LogKeyValueTo(absl::string_view key, const T& value,
859
- V (*display_value)(U), LogFn log_fn) {
860
- log_fn(key, AdaptDisplayValueToLog<V>::ToString(display_value(value)));
861
- }
862
-
863
- // Generate a strong type for metadata values per trait.
864
- template <typename Which, typename Ignored = void>
865
- struct Value;
866
-
867
- template <typename Which>
868
- struct Value<Which, absl::enable_if_t<Which::kRepeatable == false &&
869
- IsEncodableTrait<Which>::value,
870
- void>> {
871
- Value() = default;
872
- explicit Value(const typename Which::ValueType& value) : value(value) {}
873
- explicit Value(typename Which::ValueType&& value)
874
- : value(std::forward<typename Which::ValueType>(value)) {}
875
- Value(const Value&) = delete;
876
- Value& operator=(const Value&) = delete;
877
- Value(Value&&) noexcept = default;
878
- Value& operator=(Value&& other) noexcept {
879
- value = std::move(other.value);
880
- return *this;
881
- }
882
- template <typename Encoder>
883
- void EncodeTo(Encoder* encoder) const {
884
- encoder->Encode(Which(), value);
885
- }
886
- template <typename Encoder>
887
- void VisitWith(Encoder* encoder) const {
888
- return EncodeTo(encoder);
889
- }
890
- void LogTo(LogFn log_fn) const {
891
- LogKeyValueTo(Which::key(), value, Which::DisplayValue, log_fn);
892
- }
893
- using StorageType = typename Which::ValueType;
894
- GPR_NO_UNIQUE_ADDRESS StorageType value;
895
- };
896
-
897
- template <typename Which>
898
- struct Value<Which, absl::enable_if_t<Which::kRepeatable == false &&
899
- !IsEncodableTrait<Which>::value,
900
- void>> {
901
- Value() = default;
902
- explicit Value(const typename Which::ValueType& value) : value(value) {}
903
- explicit Value(typename Which::ValueType&& value)
904
- : value(std::forward<typename Which::ValueType>(value)) {}
905
- Value(const Value&) = delete;
906
- Value& operator=(const Value&) = delete;
907
- Value(Value&&) noexcept = default;
908
- Value& operator=(Value&& other) noexcept {
909
- value = std::move(other.value);
910
- return *this;
911
- }
912
- template <typename Encoder>
913
- void EncodeTo(Encoder*) const {}
914
- template <typename Encoder>
915
- void VisitWith(Encoder* encoder) const {
916
- encoder->Encode(Which(), value);
917
- }
918
- void LogTo(LogFn log_fn) const {
919
- LogKeyValueTo(Which::DebugKey(), value, Which::DisplayValue, log_fn);
920
- }
921
- using StorageType = typename Which::ValueType;
922
- GPR_NO_UNIQUE_ADDRESS StorageType value;
923
- };
924
-
925
- template <typename Which>
926
- struct Value<Which, absl::enable_if_t<Which::kRepeatable == true &&
927
- IsEncodableTrait<Which>::value,
928
- void>> {
929
- Value() = default;
930
- explicit Value(const typename Which::ValueType& value) {
931
- this->value.push_back(value);
932
- }
933
- explicit Value(typename Which::ValueType&& value) {
934
- this->value.emplace_back(std::forward<typename Which::ValueType>(value));
935
- }
936
- Value(const Value&) = delete;
937
- Value& operator=(const Value&) = delete;
938
- Value(Value&& other) noexcept : value(std::move(other.value)) {}
939
- Value& operator=(Value&& other) noexcept {
940
- value = std::move(other.value);
941
- return *this;
942
- }
943
- template <typename Encoder>
944
- void EncodeTo(Encoder* encoder) const {
945
- for (const auto& v : value) {
946
- encoder->Encode(Which(), v);
947
- }
948
- }
949
- template <typename Encoder>
950
- void VisitWith(Encoder* encoder) const {
951
- return EncodeTo(encoder);
952
- }
953
- void LogTo(LogFn log_fn) const {
954
- for (const auto& v : value) {
955
- LogKeyValueTo(Which::key(), v, Which::Encode, log_fn);
956
- }
957
- }
958
- using StorageType = absl::InlinedVector<typename Which::ValueType, 1>;
959
- StorageType value;
960
- };
961
-
962
- template <typename Which>
963
- struct Value<Which, absl::enable_if_t<Which::kRepeatable == true &&
964
- !IsEncodableTrait<Which>::value,
965
- void>> {
966
- Value() = default;
967
- explicit Value(const typename Which::ValueType& value) {
968
- this->value.push_back(value);
969
- }
970
- explicit Value(typename Which::ValueType&& value) {
971
- this->value.emplace_back(std::forward<typename Which::ValueType>(value));
972
- }
973
- Value(const Value&) = delete;
974
- Value& operator=(const Value&) = delete;
975
- Value(Value&& other) noexcept : value(std::move(other.value)) {}
976
- Value& operator=(Value&& other) noexcept {
977
- value = std::move(other.value);
978
- return *this;
979
- }
980
- template <typename Encoder>
981
- void EncodeTo(Encoder*) const {}
982
- template <typename Encoder>
983
- void VisitWith(Encoder* encoder) const {
984
- for (const auto& v : value) {
985
- encoder->Encode(Which(), v);
986
- }
987
- }
988
- void LogTo(LogFn log_fn) const {
989
- for (const auto& v : value) {
990
- LogKeyValueTo(Which::DebugKey(), v, Which::DisplayValue, log_fn);
991
- }
992
- }
993
- using StorageType = absl::InlinedVector<typename Which::ValueType, 1>;
994
- StorageType value;
995
- };
996
-
997
- // Encoder to copy some metadata
998
- template <typename Output>
999
- class CopySink {
1000
- public:
1001
- explicit CopySink(Output* dst) : dst_(dst) {}
1002
-
1003
- template <class T, class V>
1004
- void Encode(T trait, V value) {
1005
- dst_->Set(trait, value);
1006
- }
1007
-
1008
- template <class T>
1009
- void Encode(T trait, const Slice& value) {
1010
- dst_->Set(trait, std::move(value.AsOwned()));
1011
- }
1012
-
1013
- void Encode(const Slice& key, const Slice& value) {
1014
- dst_->unknown_.Append(key.as_string_view(), value.Ref());
1015
- }
1016
-
1017
- private:
1018
- Output* dst_;
1019
- };
1020
-
1021
- // Callable for the ForEach in Encode() -- for each value, call the
1022
- // appropriate encoder method.
1023
- template <typename Encoder>
1024
- struct EncodeWrapper {
1025
- Encoder* encoder;
1026
- template <typename Which>
1027
- void operator()(const Value<Which>& which) {
1028
- which.EncodeTo(encoder);
1029
- }
1030
- };
1031
-
1032
- // Callable for the table ForEach in ForEach() -- for each value, call the
1033
- // appropriate visitor method.
1034
- template <typename Encoder>
1035
- struct ForEachWrapper {
1036
- Encoder* encoder;
1037
- template <typename Which>
1038
- void operator()(const Value<Which>& which) {
1039
- which.VisitWith(encoder);
1040
- }
1041
- };
1042
-
1043
- // Callable for the ForEach in Log()
1044
- struct LogWrapper {
1045
- LogFn log_fn;
1046
- template <typename Which>
1047
- void operator()(const Value<Which>& which) {
1048
- which.LogTo(log_fn);
1049
- }
1050
- };
1051
-
1052
- // Callable for the table FilterIn -- for each value, call the
1053
- // appropriate filter method to determine of the value should be kept or
1054
- // removed.
1055
- template <typename Filterer>
1056
- struct FilterWrapper {
1057
- Filterer filter_fn;
1058
-
1059
- template <typename Which,
1060
- absl::enable_if_t<IsEncodableTrait<Which>::value, bool> = true>
1061
- bool operator()(const Value<Which>& /*which*/) {
1062
- return filter_fn(Which());
1063
- }
1064
-
1065
- template <typename Which,
1066
- absl::enable_if_t<!IsEncodableTrait<Which>::value, bool> = true>
1067
- bool operator()(const Value<Which>& /*which*/) {
1068
- return true;
1069
- }
1070
- };
1071
-
1072
- // Encoder to compute TransportSize
1073
- class TransportSizeEncoder {
1074
- public:
1075
- void Encode(const Slice& key, const Slice& value) {
1076
- size_ += key.length() + value.length() + 32;
1077
- }
1078
-
1079
- template <typename Which>
1080
- void Encode(Which, const typename Which::ValueType& value) {
1081
- Add(Which(), value);
1082
- }
1083
-
1084
- void Encode(ContentTypeMetadata,
1085
- const typename ContentTypeMetadata::ValueType& value) {
1086
- if (value == ContentTypeMetadata::kInvalid) return;
1087
- Add(ContentTypeMetadata(), value);
1088
- }
1089
-
1090
- size_t size() const { return size_; }
1091
-
1092
- private:
1093
- template <typename Which>
1094
- void Add(Which, const typename Which::ValueType& value) {
1095
- size_ += Which::key().length() + Which::Encode(value).length() + 32;
1096
- }
1097
-
1098
- uint32_t size_ = 0;
1099
- };
1100
-
1101
- // Handle unknown (non-trait-based) fields in the metadata map.
1102
- class UnknownMap {
1103
- public:
1104
- using BackingType = std::vector<std::pair<Slice, Slice>>;
1105
-
1106
- void Append(absl::string_view key, Slice value);
1107
- void Remove(absl::string_view key);
1108
- absl::optional<absl::string_view> GetStringValue(absl::string_view key,
1109
- std::string* backing) const;
1110
-
1111
- BackingType::const_iterator begin() const { return unknown_.cbegin(); }
1112
- BackingType::const_iterator end() const { return unknown_.cend(); }
1113
-
1114
- template <typename Filterer>
1115
- void Filter(Filterer* filter_fn) {
1116
- unknown_.erase(
1117
- std::remove_if(unknown_.begin(), unknown_.end(),
1118
- [&](auto& pair) {
1119
- return !(*filter_fn)(pair.first.as_string_view());
1120
- }),
1121
- unknown_.end());
1122
- }
1123
-
1124
- bool empty() const { return unknown_.empty(); }
1125
- size_t size() const { return unknown_.size(); }
1126
- void Clear() { unknown_.clear(); }
1127
-
1128
- private:
1129
- // Backing store for added metadata.
1130
- BackingType unknown_;
1131
- };
1132
-
1133
- // Given a factory template Factory, construct a type that derives from
1134
- // Factory<MetadataTrait, MetadataTrait::CompressionTraits> for all
1135
- // MetadataTraits. Useful for transports in defining the stateful parts of their
1136
- // compression algorithm.
1137
- template <template <typename, typename> class Factory,
1138
- typename... MetadataTraits>
1139
- struct StatefulCompressor;
1140
-
1141
- template <template <typename, typename> class Factory, typename MetadataTrait,
1142
- bool kEncodable = IsEncodableTrait<MetadataTrait>::value>
1143
- struct SpecificStatefulCompressor;
1144
-
1145
- template <template <typename, typename> class Factory, typename MetadataTrait>
1146
- struct SpecificStatefulCompressor<Factory, MetadataTrait, true>
1147
- : public Factory<MetadataTrait, typename MetadataTrait::CompressionTraits> {
1148
- };
1149
-
1150
- template <template <typename, typename> class Factory, typename MetadataTrait>
1151
- struct SpecificStatefulCompressor<Factory, MetadataTrait, false> {};
1152
-
1153
- template <template <typename, typename> class Factory, typename MetadataTrait,
1154
- typename... MetadataTraits>
1155
- struct StatefulCompressor<Factory, MetadataTrait, MetadataTraits...>
1156
- : public SpecificStatefulCompressor<Factory, MetadataTrait>,
1157
- public StatefulCompressor<Factory, MetadataTraits...> {};
1158
-
1159
- template <template <typename, typename> class Factory>
1160
- struct StatefulCompressor<Factory> {};
1161
-
1162
- } // namespace metadata_detail
1163
-
1164
- // Helper function for encoders
1165
- // Given a metadata trait, convert the value to a slice.
1166
- template <typename Which>
1167
- absl::enable_if_t<std::is_same<typename Which::ValueType, Slice>::value,
1168
- const Slice&>
1169
- MetadataValueAsSlice(const Slice& slice) {
1170
- return slice;
1171
- }
1172
-
1173
- template <typename Which>
1174
- absl::enable_if_t<!std::is_same<typename Which::ValueType, Slice>::value, Slice>
1175
- MetadataValueAsSlice(typename Which::ValueType value) {
1176
- return Slice(Which::Encode(value));
1177
- }
1178
-
1179
- // MetadataMap encodes the mapping of metadata keys to metadata values.
1180
- //
1181
- // MetadataMap takes a derived class and list of traits. Each of these trait
1182
- // objects defines one metadata field that is used by core, and so should have
1183
- // more specialized handling than just using the generic APIs.
1184
- //
1185
- // MetadataMap is the backing type for some derived type via the curiously
1186
- // recursive template pattern. This is because many types consumed by
1187
- // MetadataMap require the container type to operate on, and many of those
1188
- // types are instantiated one per trait. A naive implementation without the
1189
- // Derived type would, for traits A,B,C, then instantiate for some
1190
- // T<Container, Trait>:
1191
- // - T<MetadataMap<A,B,C>, A>,
1192
- // - T<MetadataMap<A,B,C>, B>,
1193
- // - T<MetadataMap<A,B,C>, C>.
1194
- // Since these types ultimately need to be recorded in the .dynstr segment
1195
- // for dynamic linkers (if gRPC is linked as a static library) this would
1196
- // create O(N^2) bytes of symbols even in stripped libraries. To avoid this
1197
- // we use the derived type (e.g. grpc_metadata_batch right now) to capture
1198
- // the container type, and we would write T<grpc_metadata_batch, A>, etc...
1199
- // Note that now the container type uses a number of bytes that is independent
1200
- // of the number of traits, and so we return to a linear symbol table growth
1201
- // function.
1202
- //
1203
- // Each trait object has one of two possible signatures, depending on whether
1204
- // that traits field is encodable or not.
1205
- // Non-encodable traits are carried in a MetadataMap, but are never passed to
1206
- // the application nor serialized to wire.
1207
- //
1208
- // Encodable traits have the following signature:
1209
- // // Traits for the "grpc-xyz" metadata field:
1210
- // struct GrpcXyzMetadata {
1211
- // // Can this metadata field be repeated?
1212
- // static constexpr bool kRepeatable = ...;
1213
- // // Should this metadata be transferred from server headers to trailers on
1214
- // // Trailers-Only response?
1215
- // static constexpr bool kTransferOnTrailersOnly = ...;
1216
- // // The type that's stored on MetadataBatch
1217
- // using ValueType = ...;
1218
- // // The type that's stored in compression/decompression tables
1219
- // using MementoType = ...;
1220
- // // The string key for this metadata type (for transports that require it)
1221
- // static absl::string_view key() { return "grpc-xyz"; }
1222
- // // Parse a memento from a slice
1223
- // // Takes ownership of value
1224
- // // If will_keep_past_request_lifetime is true, expect that the returned
1225
- // // memento will be kept for a long time, and so try not to keep a ref to
1226
- // // the input slice.
1227
- // // Calls fn in the case of an error that should be reported to the user
1228
- // static MementoType ParseMemento(
1229
- // Slice value,
1230
- // bool will_keep_past_request_lifetime,
1231
- // MementoParseErrorFn fn) {
1232
- // ...
1233
- // }
1234
- // // Convert a memento to a value
1235
- // static ValueType MementoToValue(MementoType memento) { ... }
1236
- // // Convert a value to its canonical text wire format (the format that
1237
- // // ParseMemento will accept!)
1238
- // static Slice Encode(const ValueType& value);
1239
- // // Convert a value to something that can be passed to StrCat and
1240
- // displayed
1241
- // // for debugging
1242
- // static SomeStrCatableType DisplayValue(ValueType value) { ... }
1243
- // static SomeStrCatableType DisplayMemento(MementoType value) { ... }
1244
- // };
1245
- //
1246
- // Non-encodable traits are determined by missing the key() method, and have
1247
- // the following signature (and by convention omit the Metadata part of the
1248
- // type name):
1249
- // // Traits for the GrpcXyz field:
1250
- // struct GrpcXyz {
1251
- // // The string key that should be used for debug dumps - should not be a
1252
- // // valid http2 key (ie all lower case)
1253
- // static absl::string_view DebugKey() { return "GRPC_XYZ"; }
1254
- // // Can this metadata field be repeated?
1255
- // static constexpr bool kRepeatable = ...;
1256
- // // The type that's stored on MetadataBatch
1257
- // using ValueType = ...;
1258
- // // Convert a value to something that can be passed to StrCat and
1259
- // displayed
1260
- // // for debugging
1261
- // static SomeStrCatableType DisplayValue(ValueType value) { ... }
1262
- // };
1263
- //
1264
- // About parsing and mementos:
1265
- //
1266
- // Many gRPC transports exchange metadata as key/value strings, but also allow
1267
- // for a more efficient representation as a single integer. We can use this
1268
- // integer representation to avoid reparsing too, by storing the parsed value
1269
- // in the compression table. This is what mementos are used for.
1270
- //
1271
- // A trait offers the capability to turn a slice into a memento via
1272
- // ParseMemento. This is exposed to users of MetadataMap via the Parse()
1273
- // method, that returns a ParsedMetadata object. That ParsedMetadata object
1274
- // can in turn be used to set the same value on many different MetadataMaps
1275
- // without having to reparse.
1276
- //
1277
- // Implementation wise, ParsedMetadata is a type erased wrapper around
1278
- // MementoType. When we set a value on MetadataMap, we first turn that memento
1279
- // into a value. For most types, this is going to be a no-op, but for example
1280
- // for grpc-timeout we make the memento the timeout expressed on the wire, but
1281
- // we make the value the timestamp of when the timeout will expire (i.e. the
1282
- // deadline).
1283
- template <class Derived, typename... Traits>
1284
- class MetadataMap {
1285
- public:
1286
- MetadataMap() = default;
1287
- ~MetadataMap();
1288
-
1289
- // Given a compressor factory - template taking <MetadataTrait,
1290
- // CompressionTrait>, StatefulCompressor<Factory> provides a type
1291
- // derived from all Encodable traits in this MetadataMap.
1292
- // This can be used by transports to delegate compression to the appropriate
1293
- // compression algorithm.
1294
- template <template <typename, typename> class Factory>
1295
- using StatefulCompressor =
1296
- metadata_detail::StatefulCompressor<Factory, Traits...>;
1297
-
1298
- MetadataMap(const MetadataMap&) = delete;
1299
- MetadataMap& operator=(const MetadataMap&) = delete;
1300
- MetadataMap(MetadataMap&&) noexcept;
1301
- // We never create MetadataMap directly, instead we create Derived, but we
1302
- // want to be able to move it without redeclaring this.
1303
- // NOLINTNEXTLINE(misc-unconventional-assign-operator)
1304
- Derived& operator=(MetadataMap&&) noexcept;
1305
-
1306
- // Encode this metadata map into some encoder.
1307
- // For each field that is set in the MetadataMap, call
1308
- // encoder->Encode.
1309
- //
1310
- // For fields for which we have traits, this will be a method with
1311
- // the signature:
1312
- // void Encode(TraitsType, typename TraitsType::ValueType value);
1313
- // For fields for which we do not have traits, this will be a method
1314
- // with the signature:
1315
- // void Encode(string_view key, Slice value);
1316
- template <typename Encoder>
1317
- void Encode(Encoder* encoder) const {
1318
- table_.template ForEachIn<metadata_detail::EncodeWrapper<Encoder>,
1319
- Value<Traits>...>(
1320
- metadata_detail::EncodeWrapper<Encoder>{encoder});
1321
- for (const auto& unk : unknown_) {
1322
- encoder->Encode(unk.first, unk.second);
1323
- }
1324
- }
1325
-
1326
- // Like Encode, but also visit the non-encodable fields.
1327
- template <typename Encoder>
1328
- void ForEach(Encoder* encoder) const {
1329
- table_.ForEach(metadata_detail::ForEachWrapper<Encoder>{encoder});
1330
- for (const auto& unk : unknown_) {
1331
- encoder->Encode(unk.first, unk.second);
1332
- }
1333
- }
1334
-
1335
- // Similar to Encode, but targeted at logging: for each metadatum,
1336
- // call f(key, value) as absl::string_views.
1337
- void Log(metadata_detail::LogFn log_fn) const {
1338
- table_.ForEach(metadata_detail::LogWrapper{log_fn});
1339
- for (const auto& unk : unknown_) {
1340
- log_fn(unk.first.as_string_view(), unk.second.as_string_view());
1341
- }
1342
- }
1343
-
1344
- // Filter the metadata map.
1345
- // Iterates over all encodable and unknown headers and calls the filter_fn
1346
- // for each of them. If the function returns true, the header is kept.
1347
- template <typename Filterer>
1348
- void Filter(Filterer filter_fn) {
1349
- table_.template FilterIn<metadata_detail::FilterWrapper<Filterer>,
1350
- Value<Traits>...>(
1351
- metadata_detail::FilterWrapper<Filterer>{filter_fn});
1352
- unknown_.Filter<Filterer>(&filter_fn);
1353
- }
1354
-
1355
- std::string DebugString() const {
1356
- metadata_detail::DebugStringBuilder builder;
1357
- Log([&builder](absl::string_view key, absl::string_view value) {
1358
- builder.AddAfterRedaction(key, value);
1359
- });
1360
- return builder.TakeOutput();
1361
- }
1362
-
1363
- template <typename Sink>
1364
- friend void AbslStringify(Sink& sink, const MetadataMap& map) {
1365
- sink.Append(map.DebugString());
1366
- }
1367
-
1368
- // Get the pointer to the value of some known metadata.
1369
- // Returns nullptr if the metadata is not present.
1370
- // Causes a compilation error if Which is not an element of Traits.
1371
- template <typename Which>
1372
- const typename metadata_detail::Value<Which>::StorageType* get_pointer(
1373
- Which) const {
1374
- if (auto* p = table_.template get<Value<Which>>()) return &p->value;
1375
- return nullptr;
1376
- }
1377
-
1378
- // Get the pointer to the value of some known metadata.
1379
- // Returns nullptr if the metadata is not present.
1380
- // Causes a compilation error if Which is not an element of Traits.
1381
- template <typename Which>
1382
- typename metadata_detail::Value<Which>::StorageType* get_pointer(Which) {
1383
- if (auto* p = table_.template get<Value<Which>>()) return &p->value;
1384
- return nullptr;
1385
- }
1386
-
1387
- // Get the pointer to the value of some known metadata.
1388
- // Adds the default value for the metadata is not present.
1389
- // Causes a compilation error if Which is not an element of Traits.
1390
- template <typename Which>
1391
- typename metadata_detail::Value<Which>::StorageType* GetOrCreatePointer(
1392
- Which) {
1393
- return &table_.template get_or_create<Value<Which>>()->value;
1394
- }
1395
-
1396
- // Get the value of some known metadata.
1397
- // Returns nullopt if the metadata is not present.
1398
- // Causes a compilation error if Which is not an element of Traits.
1399
- template <typename Which>
1400
- absl::optional<typename Which::ValueType> get(Which) const {
1401
- if (auto* p = table_.template get<Value<Which>>()) return p->value;
1402
- return absl::nullopt;
1403
- }
1404
-
1405
- // Set the value of some known metadata.
1406
- // Returns a pointer to the new value.
1407
- template <typename Which, typename... Args>
1408
- absl::enable_if_t<Which::kRepeatable == false, void> Set(Which,
1409
- Args&&... args) {
1410
- table_.template set<Value<Which>>(std::forward<Args>(args)...);
1411
- }
1412
- template <typename Which, typename... Args>
1413
- absl::enable_if_t<Which::kRepeatable == true, void> Set(Which,
1414
- Args&&... args) {
1415
- GetOrCreatePointer(Which())->emplace_back(std::forward<Args>(args)...);
1416
- }
1417
-
1418
- // Remove a specific piece of known metadata.
1419
- template <typename Which>
1420
- void Remove(Which) {
1421
- table_.template clear<Value<Which>>();
1422
- }
1423
-
1424
- // Remove some metadata by name
1425
- void Remove(absl::string_view key) {
1426
- metadata_detail::RemoveHelper<Derived> helper(static_cast<Derived*>(this));
1427
- metadata_detail::NameLookup<Traits...>::Lookup(key, &helper);
1428
- }
1429
-
1430
- void Remove(const char* key) { Remove(absl::string_view(key)); }
1431
-
1432
- // Retrieve some metadata by name
1433
- absl::optional<absl::string_view> GetStringValue(absl::string_view name,
1434
- std::string* buffer) const {
1435
- metadata_detail::GetStringValueHelper<Derived> helper(
1436
- static_cast<const Derived*>(this), buffer);
1437
- return metadata_detail::NameLookup<Traits...>::Lookup(name, &helper);
1438
- }
1439
-
1440
- // Extract a piece of known metadata.
1441
- // Returns nullopt if the metadata was not present, or the value if it was.
1442
- // The same as:
1443
- // auto value = m.get(T());
1444
- // m.Remove(T());
1445
- template <typename Which>
1446
- absl::enable_if_t<Which::kRepeatable == false,
1447
- absl::optional<typename Which::ValueType>>
1448
- Take(Which which) {
1449
- if (auto* p = get_pointer(which)) {
1450
- absl::optional<typename Which::ValueType> value(std::move(*p));
1451
- Remove(which);
1452
- return value;
1453
- }
1454
- return {};
1455
- }
1456
-
1457
- // Extract repeated known metadata.
1458
- // Returns an empty vector if the metadata was not present.
1459
- template <typename Which>
1460
- absl::enable_if_t<Which::kRepeatable == true,
1461
- typename metadata_detail::Value<Which>::StorageType>
1462
- Take(Which which) {
1463
- if (auto* p = get_pointer(which)) {
1464
- typename Value<Which>::StorageType value = std::move(*p);
1465
- Remove(which);
1466
- return value;
1467
- }
1468
- return {};
1469
- }
1470
-
1471
- // Parse metadata from a key/value pair, and return an object representing
1472
- // that result.
1473
- static ParsedMetadata<Derived> Parse(absl::string_view key, Slice value,
1474
- bool will_keep_past_request_lifetime,
1475
- uint32_t transport_size,
1476
- MetadataParseErrorFn on_error) {
1477
- metadata_detail::ParseHelper<Derived> helper(
1478
- value.TakeOwned(), will_keep_past_request_lifetime, on_error,
1479
- transport_size);
1480
- return metadata_detail::NameLookup<Traits...>::Lookup(key, &helper);
1481
- }
1482
-
1483
- // Set a value from a parsed metadata object.
1484
- void Set(const ParsedMetadata<Derived>& m) {
1485
- m.SetOnContainer(static_cast<Derived*>(this));
1486
- }
1487
-
1488
- // Append a key/value pair - takes ownership of value
1489
- void Append(absl::string_view key, Slice value,
1490
- MetadataParseErrorFn on_error) {
1491
- metadata_detail::AppendHelper<Derived> helper(static_cast<Derived*>(this),
1492
- value.TakeOwned(), on_error);
1493
- metadata_detail::NameLookup<Traits...>::Lookup(key, &helper);
1494
- }
1495
-
1496
- void Clear();
1497
- size_t TransportSize() const;
1498
- Derived Copy() const;
1499
- bool empty() const { return table_.empty() && unknown_.empty(); }
1500
- size_t count() const { return table_.count() + unknown_.size(); }
1501
-
1502
- private:
1503
- friend class metadata_detail::AppendHelper<Derived>;
1504
- friend class metadata_detail::GetStringValueHelper<Derived>;
1505
- friend class metadata_detail::RemoveHelper<Derived>;
1506
- friend class metadata_detail::CopySink<Derived>;
1507
- friend class ParsedMetadata<Derived>;
1508
-
1509
- template <typename Which>
1510
- using Value = metadata_detail::Value<Which>;
1511
-
1512
- // Table of known metadata types.
1513
- PackedTable<Value<Traits>...> table_;
1514
- metadata_detail::UnknownMap unknown_;
1515
- };
1516
-
1517
- // Ok/not-ok check for metadata maps that contain GrpcStatusMetadata, so that
1518
- // they can be used as result types for TrySeq.
1519
- template <typename Derived, typename... Args>
1520
- inline bool IsStatusOk(const MetadataMap<Derived, Args...>& m) {
1521
- return m.get(GrpcStatusMetadata()).value_or(GRPC_STATUS_UNKNOWN) ==
1522
- GRPC_STATUS_OK;
1523
- }
1524
-
1525
- template <typename Derived, typename... Traits>
1526
- MetadataMap<Derived, Traits...>::MetadataMap(MetadataMap&& other) noexcept
1527
- : table_(std::move(other.table_)), unknown_(std::move(other.unknown_)) {}
1528
-
1529
- // We never create MetadataMap directly, instead we create Derived, but we
1530
- // want to be able to move it without redeclaring this.
1531
- // NOLINTNEXTLINE(misc-unconventional-assign-operator)
1532
- template <typename Derived, typename... Traits>
1533
- Derived& MetadataMap<Derived, Traits...>::operator=(
1534
- MetadataMap&& other) noexcept {
1535
- table_ = std::move(other.table_);
1536
- unknown_ = std::move(other.unknown_);
1537
- return static_cast<Derived&>(*this);
1538
- }
1539
-
1540
- template <typename Derived, typename... Traits>
1541
- MetadataMap<Derived, Traits...>::~MetadataMap() = default;
1542
-
1543
- template <typename Derived, typename... Traits>
1544
- void MetadataMap<Derived, Traits...>::Clear() {
1545
- table_.ClearAll();
1546
- unknown_.Clear();
1547
- }
1548
-
1549
- template <typename Derived, typename... Traits>
1550
- size_t MetadataMap<Derived, Traits...>::TransportSize() const {
1551
- metadata_detail::TransportSizeEncoder enc;
1552
- Encode(&enc);
1553
- return enc.size();
1554
- }
1555
-
1556
- template <typename Derived, typename... Traits>
1557
- Derived MetadataMap<Derived, Traits...>::Copy() const {
1558
- Derived out;
1559
- metadata_detail::CopySink<Derived> sink(&out);
1560
- ForEach(&sink);
1561
- return out;
1562
- }
1563
-
1564
- } // namespace grpc_core
1565
-
1566
- struct grpc_metadata_batch;
1567
-
1568
- using grpc_metadata_batch_base = grpc_core::MetadataMap<
1569
- grpc_metadata_batch,
1570
- // Colon prefixed headers first
1571
- grpc_core::HttpPathMetadata, grpc_core::HttpAuthorityMetadata,
1572
- grpc_core::HttpMethodMetadata, grpc_core::HttpStatusMetadata,
1573
- grpc_core::HttpSchemeMetadata,
1574
- // Non-colon prefixed headers begin here
1575
- grpc_core::ContentTypeMetadata, grpc_core::TeMetadata,
1576
- grpc_core::GrpcEncodingMetadata, grpc_core::GrpcInternalEncodingRequest,
1577
- grpc_core::GrpcAcceptEncodingMetadata, grpc_core::GrpcStatusMetadata,
1578
- grpc_core::GrpcTimeoutMetadata, grpc_core::GrpcPreviousRpcAttemptsMetadata,
1579
- grpc_core::GrpcRetryPushbackMsMetadata, grpc_core::UserAgentMetadata,
1580
- grpc_core::GrpcMessageMetadata, grpc_core::HostMetadata,
1581
- grpc_core::EndpointLoadMetricsBinMetadata,
1582
- grpc_core::GrpcServerStatsBinMetadata, grpc_core::GrpcTraceBinMetadata,
1583
- grpc_core::GrpcTagsBinMetadata, grpc_core::GrpcLbClientStatsMetadata,
1584
- grpc_core::LbCostBinMetadata, grpc_core::LbTokenMetadata,
1585
- grpc_core::XEnvoyPeerMetadata,
1586
- // Non-encodable things
1587
- grpc_core::GrpcStreamNetworkState, grpc_core::PeerString,
1588
- grpc_core::GrpcStatusContext, grpc_core::GrpcStatusFromWire,
1589
- grpc_core::GrpcCallWasCancelled, grpc_core::WaitForReady,
1590
- grpc_core::IsTransparentRetry, grpc_core::GrpcTrailersOnly,
1591
- grpc_core::GrpcTarPit,
1592
- grpc_core::GrpcRegisteredMethod GRPC_CUSTOM_CLIENT_METADATA
1593
- GRPC_CUSTOM_SERVER_METADATA>;
1594
-
1595
- struct grpc_metadata_batch : public grpc_metadata_batch_base {
1596
- using grpc_metadata_batch_base::grpc_metadata_batch_base;
1597
- };
1598
-
1599
- #endif // GRPC_SRC_CORE_LIB_TRANSPORT_METADATA_BATCH_H