grpc 1.67.0 → 1.72.0

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 (3236) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +378 -397
  3. data/include/grpc/compression.h +1 -2
  4. data/include/grpc/credentials.h +1 -2
  5. data/include/grpc/event_engine/endpoint_config.h +7 -7
  6. data/include/grpc/event_engine/event_engine.h +56 -14
  7. data/include/grpc/event_engine/extensible.h +2 -2
  8. data/include/grpc/event_engine/internal/memory_allocator_impl.h +4 -4
  9. data/include/grpc/event_engine/memory_allocator.h +3 -4
  10. data/include/grpc/event_engine/memory_request.h +4 -5
  11. data/include/grpc/event_engine/slice.h +3 -4
  12. data/include/grpc/event_engine/slice_buffer.h +6 -7
  13. data/include/grpc/grpc.h +1 -2
  14. data/include/grpc/grpc_audit_logging.h +3 -3
  15. data/include/grpc/grpc_crl_provider.h +4 -4
  16. data/include/grpc/grpc_posix.h +1 -2
  17. data/include/grpc/grpc_security.h +1 -2
  18. data/include/grpc/impl/call.h +2 -2
  19. data/include/grpc/impl/channel_arg_names.h +72 -50
  20. data/include/grpc/impl/grpc_types.h +1 -2
  21. data/include/grpc/impl/slice_type.h +1 -2
  22. data/include/grpc/passive_listener.h +2 -2
  23. data/include/grpc/status.h +1 -1
  24. data/include/grpc/support/alloc.h +1 -2
  25. data/include/grpc/support/atm.h +0 -13
  26. data/include/grpc/support/json.h +17 -18
  27. data/include/grpc/support/log.h +1 -2
  28. data/include/grpc/support/metrics.h +7 -3
  29. data/include/grpc/support/port_platform.h +6 -1
  30. data/include/grpc/support/sync_posix.h +1 -2
  31. data/include/grpc/support/time.h +1 -2
  32. data/include/grpc/support/workaround_list.h +1 -4
  33. data/src/core/call/call_arena_allocator.cc +27 -0
  34. data/src/core/call/call_arena_allocator.h +91 -0
  35. data/src/core/call/call_destination.h +76 -0
  36. data/src/core/call/call_filters.cc +148 -0
  37. data/src/core/call/call_filters.h +1967 -0
  38. data/src/core/call/call_finalization.h +88 -0
  39. data/src/core/call/call_spine.cc +90 -0
  40. data/src/core/call/call_spine.h +644 -0
  41. data/src/core/call/call_state.cc +39 -0
  42. data/src/core/call/call_state.h +1154 -0
  43. data/src/core/call/client_call.cc +458 -0
  44. data/src/core/call/client_call.h +192 -0
  45. data/src/core/call/custom_metadata.h +30 -0
  46. data/src/core/call/interception_chain.cc +155 -0
  47. data/src/core/call/interception_chain.h +282 -0
  48. data/src/core/call/message.cc +44 -0
  49. data/src/core/call/message.h +70 -0
  50. data/src/core/call/metadata.cc +61 -0
  51. data/src/core/call/metadata.h +201 -0
  52. data/src/core/call/metadata_batch.cc +383 -0
  53. data/src/core/call/metadata_batch.h +1668 -0
  54. data/src/core/call/metadata_compression_traits.h +66 -0
  55. data/src/core/call/metadata_info.cc +73 -0
  56. data/src/core/call/metadata_info.h +85 -0
  57. data/src/core/call/parsed_metadata.cc +35 -0
  58. data/src/core/call/parsed_metadata.h +429 -0
  59. data/src/core/call/request_buffer.cc +224 -0
  60. data/src/core/call/request_buffer.h +192 -0
  61. data/src/core/call/security_context.cc +125 -0
  62. data/src/core/call/security_context.h +114 -0
  63. data/src/core/call/server_call.cc +259 -0
  64. data/src/core/call/server_call.h +169 -0
  65. data/src/core/call/simple_slice_based_metadata.h +53 -0
  66. data/src/core/call/status_util.cc +153 -0
  67. data/src/core/call/status_util.h +80 -0
  68. data/src/core/channelz/channel_trace.cc +5 -6
  69. data/src/core/channelz/channel_trace.h +5 -7
  70. data/src/core/channelz/channelz.cc +7 -8
  71. data/src/core/channelz/channelz.h +11 -32
  72. data/src/core/channelz/channelz_registry.cc +6 -14
  73. data/src/core/channelz/channelz_registry.h +4 -5
  74. data/src/core/client_channel/backup_poller.cc +21 -11
  75. data/src/core/client_channel/client_channel.cc +66 -65
  76. data/src/core/client_channel/client_channel.h +10 -7
  77. data/src/core/client_channel/client_channel_args.h +21 -0
  78. data/src/core/client_channel/client_channel_factory.cc +2 -2
  79. data/src/core/client_channel/client_channel_factory.h +1 -2
  80. data/src/core/client_channel/client_channel_filter.cc +91 -175
  81. data/src/core/client_channel/client_channel_filter.h +23 -21
  82. data/src/core/client_channel/client_channel_internal.h +3 -4
  83. data/src/core/client_channel/client_channel_plugin.cc +3 -4
  84. data/src/core/client_channel/client_channel_service_config.cc +3 -4
  85. data/src/core/client_channel/client_channel_service_config.h +9 -11
  86. data/src/core/client_channel/config_selector.h +6 -9
  87. data/src/core/client_channel/connector.h +3 -3
  88. data/src/core/client_channel/direct_channel.cc +6 -6
  89. data/src/core/client_channel/direct_channel.h +1 -1
  90. data/src/core/client_channel/dynamic_filters.cc +10 -9
  91. data/src/core/client_channel/dynamic_filters.h +8 -8
  92. data/src/core/client_channel/global_subchannel_pool.cc +2 -2
  93. data/src/core/client_channel/global_subchannel_pool.h +2 -3
  94. data/src/core/client_channel/lb_metadata.cc +7 -8
  95. data/src/core/client_channel/lb_metadata.h +6 -7
  96. data/src/core/client_channel/load_balanced_call_destination.cc +7 -8
  97. data/src/core/client_channel/load_balanced_call_destination.h +1 -2
  98. data/src/core/client_channel/local_subchannel_pool.cc +2 -3
  99. data/src/core/client_channel/local_subchannel_pool.h +1 -1
  100. data/src/core/client_channel/retry_filter.cc +6 -8
  101. data/src/core/client_channel/retry_filter.h +5 -8
  102. data/src/core/client_channel/retry_filter_legacy_call_data.cc +62 -62
  103. data/src/core/client_channel/retry_filter_legacy_call_data.h +22 -23
  104. data/src/core/client_channel/retry_interceptor.cc +408 -0
  105. data/src/core/client_channel/retry_interceptor.h +157 -0
  106. data/src/core/client_channel/retry_service_config.cc +8 -10
  107. data/src/core/client_channel/retry_service_config.h +20 -9
  108. data/src/core/client_channel/retry_throttle.cc +60 -50
  109. data/src/core/client_channel/retry_throttle.h +16 -11
  110. data/src/core/client_channel/subchannel.cc +62 -99
  111. data/src/core/client_channel/subchannel.h +22 -22
  112. data/src/core/client_channel/subchannel_interface_internal.h +1 -1
  113. data/src/core/client_channel/subchannel_pool_interface.cc +1 -3
  114. data/src/core/client_channel/subchannel_pool_interface.h +2 -3
  115. data/src/core/client_channel/subchannel_stream_client.cc +20 -21
  116. data/src/core/client_channel/subchannel_stream_client.h +13 -15
  117. data/src/core/config/config_vars.cc +152 -0
  118. data/src/core/config/config_vars.h +129 -0
  119. data/src/core/config/config_vars_non_generated.cc +49 -0
  120. data/src/core/config/core_configuration.cc +111 -0
  121. data/src/core/config/core_configuration.h +242 -0
  122. data/src/core/config/load_config.cc +78 -0
  123. data/src/core/config/load_config.h +54 -0
  124. data/src/core/credentials/call/call_credentials.h +157 -0
  125. data/src/core/credentials/call/call_creds_util.cc +97 -0
  126. data/src/core/credentials/call/call_creds_util.h +43 -0
  127. data/src/core/credentials/call/composite/composite_call_credentials.cc +115 -0
  128. data/src/core/credentials/call/composite/composite_call_credentials.h +82 -0
  129. data/src/core/credentials/call/external/aws_external_account_credentials.cc +528 -0
  130. data/src/core/credentials/call/external/aws_external_account_credentials.h +117 -0
  131. data/src/core/credentials/call/external/aws_request_signer.cc +230 -0
  132. data/src/core/credentials/call/external/aws_request_signer.h +72 -0
  133. data/src/core/credentials/call/external/external_account_credentials.cc +641 -0
  134. data/src/core/credentials/call/external/external_account_credentials.h +207 -0
  135. data/src/core/credentials/call/external/file_external_account_credentials.cc +174 -0
  136. data/src/core/credentials/call/external/file_external_account_credentials.h +80 -0
  137. data/src/core/credentials/call/external/url_external_account_credentials.cc +222 -0
  138. data/src/core/credentials/call/external/url_external_account_credentials.h +73 -0
  139. data/src/core/credentials/call/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +196 -0
  140. data/src/core/credentials/call/gcp_service_account_identity/gcp_service_account_identity_credentials.h +90 -0
  141. data/src/core/credentials/call/iam/iam_credentials.cc +78 -0
  142. data/src/core/credentials/call/iam/iam_credentials.h +66 -0
  143. data/src/core/credentials/call/json_util.cc +69 -0
  144. data/src/core/credentials/call/json_util.h +43 -0
  145. data/src/core/credentials/call/jwt/json_token.cc +318 -0
  146. data/src/core/credentials/call/jwt/json_token.h +78 -0
  147. data/src/core/credentials/call/jwt/jwt_credentials.cc +181 -0
  148. data/src/core/credentials/call/jwt/jwt_credentials.h +106 -0
  149. data/src/core/credentials/call/jwt/jwt_verifier.cc +988 -0
  150. data/src/core/credentials/call/jwt/jwt_verifier.h +122 -0
  151. data/src/core/credentials/call/oauth2/oauth2_credentials.cc +654 -0
  152. data/src/core/credentials/call/oauth2/oauth2_credentials.h +197 -0
  153. data/src/core/credentials/call/plugin/plugin_credentials.cc +201 -0
  154. data/src/core/credentials/call/plugin/plugin_credentials.h +123 -0
  155. data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.cc +304 -0
  156. data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.h +181 -0
  157. data/src/core/credentials/transport/alts/alts_credentials.cc +116 -0
  158. data/src/core/credentials/transport/alts/alts_credentials.h +127 -0
  159. data/src/core/credentials/transport/alts/alts_security_connector.cc +303 -0
  160. data/src/core/credentials/transport/alts/alts_security_connector.h +78 -0
  161. data/src/core/credentials/transport/alts/check_gcp_environment.cc +71 -0
  162. data/src/core/credentials/transport/alts/check_gcp_environment.h +57 -0
  163. data/src/core/credentials/transport/alts/check_gcp_environment_linux.cc +67 -0
  164. data/src/core/credentials/transport/alts/check_gcp_environment_no_op.cc +32 -0
  165. data/src/core/credentials/transport/alts/check_gcp_environment_windows.cc +101 -0
  166. data/src/core/credentials/transport/alts/grpc_alts_credentials_client_options.cc +123 -0
  167. data/src/core/credentials/transport/alts/grpc_alts_credentials_options.cc +45 -0
  168. data/src/core/credentials/transport/alts/grpc_alts_credentials_options.h +74 -0
  169. data/src/core/credentials/transport/alts/grpc_alts_credentials_server_options.cc +55 -0
  170. data/src/core/credentials/transport/channel_creds_registry.h +126 -0
  171. data/src/core/credentials/transport/channel_creds_registry_init.cc +245 -0
  172. data/src/core/credentials/transport/composite/composite_channel_credentials.cc +68 -0
  173. data/src/core/credentials/transport/composite/composite_channel_credentials.h +89 -0
  174. data/src/core/credentials/transport/fake/fake_credentials.cc +81 -0
  175. data/src/core/credentials/transport/fake/fake_credentials.h +92 -0
  176. data/src/core/credentials/transport/fake/fake_security_connector.cc +314 -0
  177. data/src/core/credentials/transport/fake/fake_security_connector.h +42 -0
  178. data/src/core/credentials/transport/google_default/credentials_generic.cc +38 -0
  179. data/src/core/credentials/transport/google_default/google_default_credentials.cc +442 -0
  180. data/src/core/credentials/transport/google_default/google_default_credentials.h +101 -0
  181. data/src/core/credentials/transport/insecure/insecure_credentials.cc +71 -0
  182. data/src/core/credentials/transport/insecure/insecure_credentials.h +61 -0
  183. data/src/core/credentials/transport/insecure/insecure_security_connector.cc +118 -0
  184. data/src/core/credentials/transport/insecure/insecure_security_connector.h +102 -0
  185. data/src/core/credentials/transport/local/local_credentials.cc +68 -0
  186. data/src/core/credentials/transport/local/local_credentials.h +77 -0
  187. data/src/core/credentials/transport/local/local_security_connector.cc +306 -0
  188. data/src/core/credentials/transport/local/local_security_connector.h +62 -0
  189. data/src/core/credentials/transport/security_connector.cc +123 -0
  190. data/src/core/credentials/transport/security_connector.h +197 -0
  191. data/src/core/credentials/transport/ssl/ssl_credentials.cc +474 -0
  192. data/src/core/credentials/transport/ssl/ssl_credentials.h +144 -0
  193. data/src/core/credentials/transport/ssl/ssl_security_connector.cc +403 -0
  194. data/src/core/credentials/transport/ssl/ssl_security_connector.h +81 -0
  195. data/src/core/credentials/transport/tls/certificate_provider_factory.h +69 -0
  196. data/src/core/credentials/transport/tls/certificate_provider_registry.cc +50 -0
  197. data/src/core/credentials/transport/tls/certificate_provider_registry.h +75 -0
  198. data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.cc +337 -0
  199. data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.h +215 -0
  200. data/src/core/credentials/transport/tls/grpc_tls_certificate_match.cc +84 -0
  201. data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.cc +490 -0
  202. data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h +206 -0
  203. data/src/core/credentials/transport/tls/grpc_tls_certificate_verifier.cc +237 -0
  204. data/src/core/credentials/transport/tls/grpc_tls_certificate_verifier.h +169 -0
  205. data/src/core/credentials/transport/tls/grpc_tls_credentials_options.cc +161 -0
  206. data/src/core/credentials/transport/tls/grpc_tls_credentials_options.h +145 -0
  207. data/src/core/credentials/transport/tls/grpc_tls_crl_provider.cc +257 -0
  208. data/src/core/credentials/transport/tls/grpc_tls_crl_provider.h +129 -0
  209. data/src/core/credentials/transport/tls/load_system_roots.h +35 -0
  210. data/src/core/credentials/transport/tls/load_system_roots_fallback.cc +36 -0
  211. data/src/core/credentials/transport/tls/load_system_roots_supported.cc +165 -0
  212. data/src/core/credentials/transport/tls/load_system_roots_supported.h +44 -0
  213. data/src/core/credentials/transport/tls/load_system_roots_windows.cc +85 -0
  214. data/src/core/credentials/transport/tls/ssl_utils.cc +628 -0
  215. data/src/core/credentials/transport/tls/ssl_utils.h +188 -0
  216. data/src/core/credentials/transport/tls/tls_credentials.cc +170 -0
  217. data/src/core/credentials/transport/tls/tls_credentials.h +75 -0
  218. data/src/core/credentials/transport/tls/tls_security_connector.cc +816 -0
  219. data/src/core/credentials/transport/tls/tls_security_connector.h +285 -0
  220. data/src/core/credentials/transport/tls/tls_utils.cc +127 -0
  221. data/src/core/credentials/transport/tls/tls_utils.h +50 -0
  222. data/src/core/credentials/transport/transport_credentials.cc +158 -0
  223. data/src/core/credentials/transport/transport_credentials.h +182 -0
  224. data/src/core/credentials/transport/xds/xds_credentials.cc +231 -0
  225. data/src/core/credentials/transport/xds/xds_credentials.h +110 -0
  226. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +14 -21
  227. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +7 -8
  228. data/src/core/ext/filters/census/grpc_context.cc +1 -2
  229. data/src/core/ext/filters/channel_idle/idle_filter_state.cc +1 -2
  230. data/src/core/ext/filters/channel_idle/idle_filter_state.h +0 -1
  231. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +25 -24
  232. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +6 -8
  233. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +19 -23
  234. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +7 -9
  235. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +4 -5
  236. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +4 -7
  237. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +56 -25
  238. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +35 -20
  239. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.cc +3 -4
  240. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.h +3 -4
  241. data/src/core/ext/filters/http/client/http_client_filter.cc +13 -13
  242. data/src/core/ext/filters/http/client/http_client_filter.h +5 -6
  243. data/src/core/ext/filters/http/client_authority_filter.cc +15 -19
  244. data/src/core/ext/filters/http/client_authority_filter.h +6 -7
  245. data/src/core/ext/filters/http/http_filters_plugin.cc +1 -2
  246. data/src/core/ext/filters/http/message_compress/compression_filter.cc +43 -33
  247. data/src/core/ext/filters/http/message_compress/compression_filter.h +20 -18
  248. data/src/core/ext/filters/http/server/http_server_filter.cc +15 -15
  249. data/src/core/ext/filters/http/server/http_server_filter.h +4 -5
  250. data/src/core/ext/filters/message_size/message_size_filter.cc +27 -33
  251. data/src/core/ext/filters/message_size/message_size_filter.h +22 -25
  252. data/src/core/ext/filters/rbac/rbac_filter.cc +8 -15
  253. data/src/core/ext/filters/rbac/rbac_filter.h +6 -8
  254. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +17 -11
  255. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +2 -4
  256. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +13 -13
  257. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +6 -8
  258. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +3 -4
  259. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +5 -7
  260. data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -2
  261. data/src/core/ext/transport/chttp2/alpn/alpn.h +1 -2
  262. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +24 -29
  263. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +7 -7
  264. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +765 -189
  265. data/src/core/ext/transport/chttp2/server/chttp2_server.h +195 -15
  266. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +7 -7
  267. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +2 -3
  268. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +4 -6
  269. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +1 -2
  270. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.cc +53 -0
  271. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.h +70 -0
  272. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +277 -193
  273. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +12 -13
  274. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +4 -5
  275. data/src/core/ext/transport/chttp2/transport/decode_huff.h +4 -4
  276. data/src/core/ext/transport/chttp2/transport/flow_control.cc +4 -6
  277. data/src/core/ext/transport/chttp2/transport/flow_control.h +5 -7
  278. data/src/core/ext/transport/chttp2/transport/frame.cc +109 -70
  279. data/src/core/ext/transport/chttp2/transport/frame.h +52 -7
  280. data/src/core/ext/transport/chttp2/transport/frame_data.cc +19 -13
  281. data/src/core/ext/transport/chttp2/transport/frame_data.h +2 -4
  282. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +11 -13
  283. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -2
  284. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +2 -4
  285. data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -2
  286. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +10 -8
  287. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -2
  288. data/src/core/ext/transport/chttp2/transport/frame_security.cc +80 -0
  289. data/src/core/ext/transport/chttp2/transport/frame_security.h +44 -0
  290. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +28 -12
  291. data/src/core/ext/transport/chttp2/transport/frame_settings.h +3 -4
  292. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +21 -3
  293. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +1 -2
  294. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +2 -2
  295. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +10 -11
  296. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +8 -10
  297. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +2 -2
  298. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +4 -5
  299. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +2 -4
  300. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +7 -9
  301. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +38 -39
  302. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +10 -13
  303. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +1 -3
  304. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +4 -6
  305. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +22 -12
  306. data/src/core/ext/transport/chttp2/transport/http2_settings.h +14 -8
  307. data/src/core/ext/transport/chttp2/transport/http2_status.h +52 -0
  308. data/src/core/ext/transport/chttp2/transport/internal.h +58 -112
  309. data/src/core/ext/transport/chttp2/transport/legacy_frame.h +1 -0
  310. data/src/core/ext/transport/chttp2/transport/parsing.cc +90 -42
  311. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +4 -4
  312. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.h +3 -3
  313. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +4 -4
  314. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +5 -7
  315. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +6 -7
  316. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +4 -6
  317. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +5 -3
  318. data/src/core/ext/transport/chttp2/transport/stream_lists.h +65 -0
  319. data/src/core/ext/transport/chttp2/transport/varint.cc +6 -6
  320. data/src/core/ext/transport/chttp2/transport/varint.h +1 -2
  321. data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +2 -2
  322. data/src/core/ext/transport/chttp2/transport/write_size_policy.h +3 -4
  323. data/src/core/ext/transport/chttp2/transport/writing.cc +40 -45
  324. data/src/core/ext/transport/inproc/inproc_transport.cc +8 -11
  325. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +28 -25
  326. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +35 -4
  327. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +25 -18
  328. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.h +10 -4
  329. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +101 -69
  330. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +52 -46
  331. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.h +9 -4
  332. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +39 -4
  333. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +29 -22
  334. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.h +10 -4
  335. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +154 -19
  336. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +111 -90
  337. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.h +24 -4
  338. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +10 -4
  339. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +8 -4
  340. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.h +7 -4
  341. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +17 -4
  342. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +12 -8
  343. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.h +7 -4
  344. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +5 -4
  345. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +4 -1
  346. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.h +6 -4
  347. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +11 -10
  348. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +8 -5
  349. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.h +6 -4
  350. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +5 -4
  351. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +4 -1
  352. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.h +6 -4
  353. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +165 -134
  354. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +88 -83
  355. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.h +7 -4
  356. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +7 -4
  357. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +7 -4
  358. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.h +6 -4
  359. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +5 -4
  360. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +7 -1
  361. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.h +5 -4
  362. data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +7 -6
  363. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +10 -6
  364. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.h +6 -4
  365. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +87 -30
  366. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +73 -55
  367. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.h +21 -4
  368. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +397 -220
  369. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +197 -172
  370. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.h +28 -4
  371. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +58 -31
  372. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +31 -26
  373. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.h +8 -4
  374. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +535 -326
  375. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +259 -230
  376. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.h +30 -4
  377. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +9 -4
  378. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +8 -5
  379. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.h +6 -4
  380. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +114 -62
  381. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +44 -41
  382. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.h +6 -4
  383. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +116 -26
  384. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +83 -66
  385. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.h +20 -4
  386. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +73 -33
  387. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +52 -42
  388. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.h +13 -4
  389. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +9 -4
  390. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +8 -5
  391. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.h +6 -4
  392. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +405 -190
  393. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +192 -135
  394. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.h +36 -4
  395. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +100 -58
  396. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +57 -48
  397. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.h +12 -4
  398. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +7 -4
  399. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +7 -4
  400. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.h +6 -4
  401. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +7 -4
  402. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +7 -4
  403. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.h +6 -4
  404. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +10 -4
  405. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +8 -4
  406. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.h +7 -4
  407. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +128 -63
  408. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +76 -60
  409. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.h +19 -4
  410. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +192 -104
  411. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +89 -78
  412. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.h +14 -4
  413. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb.h +12 -4
  414. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.c +8 -5
  415. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.h +6 -4
  416. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +19 -16
  417. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +12 -9
  418. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.h +6 -4
  419. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +304 -118
  420. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +138 -114
  421. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.h +21 -4
  422. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +7 -4
  423. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +8 -4
  424. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +7 -4
  425. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +12 -4
  426. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +9 -5
  427. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.h +7 -4
  428. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb.h +151 -0
  429. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.c +60 -0
  430. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.h +32 -0
  431. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +235 -22
  432. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +71 -19
  433. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.h +13 -4
  434. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +43 -31
  435. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +21 -17
  436. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.h +7 -4
  437. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +9 -4
  438. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +8 -5
  439. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.h +6 -4
  440. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +45 -16
  441. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +25 -19
  442. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.h +9 -4
  443. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +89 -45
  444. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +57 -48
  445. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +12 -4
  446. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +68 -28
  447. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +36 -28
  448. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.h +11 -4
  449. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +7 -4
  450. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +7 -4
  451. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.h +6 -4
  452. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +222 -143
  453. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +99 -87
  454. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +15 -4
  455. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +127 -164
  456. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +67 -79
  457. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.h +11 -5
  458. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +112 -4
  459. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +41 -16
  460. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.h +6 -4
  461. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +11 -4
  462. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +10 -6
  463. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.h +7 -4
  464. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +15 -10
  465. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +12 -9
  466. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.h +6 -4
  467. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +66 -37
  468. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +48 -38
  469. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.h +13 -4
  470. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +53 -5
  471. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +41 -29
  472. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.h +15 -4
  473. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +258 -16
  474. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +108 -65
  475. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.h +18 -4
  476. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +102 -56
  477. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +34 -29
  478. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.h +8 -4
  479. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +1289 -615
  480. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +582 -465
  481. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +67 -4
  482. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +27 -17
  483. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +17 -12
  484. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.h +8 -4
  485. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +72 -7
  486. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +61 -47
  487. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.h +17 -4
  488. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +9 -4
  489. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +11 -7
  490. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.h +7 -4
  491. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +7 -4
  492. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +7 -4
  493. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.h +6 -4
  494. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +9 -4
  495. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +11 -7
  496. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.h +7 -4
  497. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +7 -4
  498. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +7 -4
  499. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.h +6 -4
  500. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +23 -11
  501. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +13 -10
  502. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.h +6 -4
  503. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +7 -4
  504. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +7 -4
  505. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.h +6 -4
  506. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +26 -19
  507. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +19 -15
  508. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.h +7 -4
  509. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb.h +5 -6
  510. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.c +3 -2
  511. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.h +5 -5
  512. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +20 -11
  513. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +16 -12
  514. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.h +7 -4
  515. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +23 -20
  516. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +17 -14
  517. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.h +6 -4
  518. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +402 -310
  519. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +168 -150
  520. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.h +21 -4
  521. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +5 -4
  522. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +4 -1
  523. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +6 -4
  524. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +17 -4
  525. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +18 -11
  526. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.h +10 -4
  527. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +85 -65
  528. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +45 -40
  529. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.h +8 -4
  530. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb.h +36 -23
  531. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.c +23 -17
  532. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.h +9 -4
  533. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +40 -29
  534. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +23 -19
  535. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.h +7 -4
  536. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +55 -38
  537. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +23 -19
  538. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.h +7 -4
  539. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +12 -7
  540. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +13 -9
  541. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.h +7 -4
  542. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +488 -295
  543. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +240 -216
  544. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +26 -4
  545. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +7 -4
  546. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +7 -4
  547. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.h +6 -4
  548. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +77 -4
  549. 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 +25 -11
  550. 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 +6 -4
  551. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +24 -7
  552. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +25 -18
  553. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +10 -4
  554. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +5 -4
  555. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +4 -1
  556. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.h +6 -4
  557. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +38 -27
  558. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +19 -16
  559. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.h +6 -4
  560. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +7 -4
  561. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +7 -4
  562. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.h +6 -4
  563. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb.h +105 -0
  564. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.c +51 -0
  565. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.h +32 -0
  566. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +5 -4
  567. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.c +3 -1
  568. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.h +5 -4
  569. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +143 -88
  570. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +70 -60
  571. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.h +13 -4
  572. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +17 -4
  573. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +18 -13
  574. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +8 -4
  575. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +229 -78
  576. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +98 -80
  577. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.h +12 -4
  578. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +49 -11
  579. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +17 -11
  580. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.h +7 -4
  581. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +66 -28
  582. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +37 -31
  583. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +9 -4
  584. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +5 -4
  585. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +4 -1
  586. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.h +6 -4
  587. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +440 -127
  588. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +137 -96
  589. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.h +21 -4
  590. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +20 -10
  591. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +14 -10
  592. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.h +7 -4
  593. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +107 -65
  594. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +58 -51
  595. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.h +10 -4
  596. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +14 -11
  597. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +10 -7
  598. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +6 -4
  599. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +14 -4
  600. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +14 -8
  601. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.h +9 -4
  602. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb.h +142 -0
  603. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.c +55 -0
  604. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.h +32 -0
  605. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +40 -4
  606. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +13 -7
  607. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.h +6 -4
  608. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +5 -4
  609. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +8 -1
  610. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.h +10 -4
  611. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +18 -10
  612. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +11 -7
  613. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.h +7 -4
  614. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +12 -4
  615. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +8 -5
  616. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.h +6 -4
  617. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +7 -4
  618. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +7 -4
  619. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.h +6 -4
  620. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +7 -4
  621. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +7 -4
  622. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.h +6 -4
  623. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +18 -11
  624. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +18 -13
  625. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.h +8 -4
  626. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +5 -4
  627. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +5 -1
  628. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.h +7 -4
  629. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +14 -4
  630. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +12 -8
  631. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.h +7 -4
  632. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +12 -4
  633. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +9 -5
  634. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.h +7 -4
  635. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +22 -4
  636. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +20 -14
  637. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.h +9 -4
  638. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +18 -4
  639. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +19 -10
  640. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.h +12 -4
  641. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +28 -15
  642. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +22 -15
  643. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.h +10 -4
  644. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +9 -4
  645. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +10 -5
  646. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.h +8 -4
  647. data/src/core/ext/upb-gen/envoy/type/v3/http.upb.h +5 -4
  648. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.c +3 -1
  649. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.h +5 -4
  650. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +5 -4
  651. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +4 -1
  652. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.h +6 -4
  653. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +5 -4
  654. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +5 -1
  655. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.h +7 -4
  656. data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +5 -4
  657. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +6 -1
  658. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.h +8 -4
  659. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +9 -4
  660. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +9 -5
  661. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.h +7 -4
  662. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb.h +5 -4
  663. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.c +3 -1
  664. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.h +5 -4
  665. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +5 -4
  666. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +4 -1
  667. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.h +6 -4
  668. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +9 -4
  669. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +8 -5
  670. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.h +6 -4
  671. data/src/core/ext/upb-gen/google/api/annotations.upb.h +7 -6
  672. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +5 -2
  673. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.h +5 -4
  674. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +168 -89
  675. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +89 -74
  676. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.h +18 -4
  677. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +162 -84
  678. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +98 -80
  679. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +21 -4
  680. data/src/core/ext/upb-gen/google/api/http.upb.h +69 -55
  681. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +35 -30
  682. data/src/core/ext/upb-gen/google/api/http.upb_minitable.h +8 -4
  683. data/src/core/ext/upb-gen/google/api/httpbody.upb.h +10 -4
  684. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +7 -4
  685. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.h +6 -4
  686. data/src/core/ext/upb-gen/google/protobuf/any.upb.h +6 -4
  687. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +4 -1
  688. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.h +6 -4
  689. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +529 -305
  690. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +337 -290
  691. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +56 -21
  692. data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +6 -4
  693. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +4 -1
  694. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.h +6 -4
  695. data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +6 -4
  696. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +4 -1
  697. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.h +6 -4
  698. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +34 -13
  699. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +20 -14
  700. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.h +9 -4
  701. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +6 -4
  702. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +4 -1
  703. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.h +6 -4
  704. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +6 -4
  705. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +12 -1
  706. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.h +14 -4
  707. data/src/core/ext/upb-gen/google/rpc/status.upb.h +10 -4
  708. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +7 -4
  709. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.h +6 -4
  710. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +21 -13
  711. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +9 -5
  712. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.h +7 -4
  713. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +170 -114
  714. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +76 -62
  715. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.h +17 -4
  716. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +10 -4
  717. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +9 -5
  718. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.h +7 -4
  719. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +6 -4
  720. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +5 -1
  721. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.h +7 -4
  722. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +35 -10
  723. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +35 -24
  724. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.h +14 -4
  725. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +32 -25
  726. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +12 -7
  727. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.h +8 -4
  728. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +125 -74
  729. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +50 -39
  730. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.h +14 -4
  731. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +15 -14
  732. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +22 -12
  733. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.h +8 -4
  734. data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +7 -6
  735. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +10 -6
  736. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.h +6 -4
  737. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +5 -4
  738. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +4 -1
  739. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.h +5 -4
  740. data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +7 -6
  741. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +10 -6
  742. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.h +6 -4
  743. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +7 -6
  744. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +10 -6
  745. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.h +6 -4
  746. data/src/core/ext/upb-gen/validate/validate.upb.h +457 -374
  747. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +233 -204
  748. data/src/core/ext/upb-gen/validate/validate.upb_minitable.h +29 -5
  749. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +15 -14
  750. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +22 -12
  751. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.h +8 -4
  752. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +7 -6
  753. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +10 -6
  754. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.h +6 -4
  755. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +5 -4
  756. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +4 -1
  757. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.h +5 -4
  758. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +11 -10
  759. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +20 -11
  760. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.h +9 -4
  761. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +7 -6
  762. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +10 -6
  763. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.h +6 -4
  764. data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +5 -4
  765. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +4 -1
  766. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.h +6 -4
  767. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +7 -4
  768. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +7 -4
  769. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.h +6 -4
  770. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +11 -4
  771. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +12 -8
  772. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.h +7 -4
  773. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +19 -13
  774. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +8 -4
  775. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.h +7 -4
  776. data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +7 -4
  777. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +7 -4
  778. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.h +6 -4
  779. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +16 -11
  780. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +11 -8
  781. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.h +6 -4
  782. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +26 -16
  783. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +14 -10
  784. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.h +7 -4
  785. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +7 -4
  786. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +7 -4
  787. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.h +6 -4
  788. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +47 -31
  789. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +12 -6
  790. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.h +9 -4
  791. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +7 -4
  792. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +7 -4
  793. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.h +6 -4
  794. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +14 -11
  795. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +10 -7
  796. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.h +6 -4
  797. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +12 -4
  798. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +11 -7
  799. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.h +7 -4
  800. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +5 -4
  801. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +4 -1
  802. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.h +6 -4
  803. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +20 -7
  804. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +13 -9
  805. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.h +7 -4
  806. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +83 -26
  807. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +58 -46
  808. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.h +15 -4
  809. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +41 -4
  810. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +30 -22
  811. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.h +11 -4
  812. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +7 -4
  813. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +8 -4
  814. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.h +7 -4
  815. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +12 -4
  816. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +11 -7
  817. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.h +7 -4
  818. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +13 -4
  819. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +13 -9
  820. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.h +7 -4
  821. data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +6 -4
  822. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +6 -1
  823. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.h +8 -4
  824. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +7 -4
  825. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +7 -4
  826. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.h +6 -4
  827. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.c +2 -1
  828. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.h +5 -4
  829. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.c +2 -1
  830. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.h +5 -4
  831. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.c +2 -1
  832. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.h +5 -4
  833. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.c +13 -11
  834. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.h +5 -4
  835. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.c +2 -1
  836. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.h +5 -4
  837. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.c +2 -1
  838. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.h +5 -4
  839. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.c +2 -1
  840. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.h +5 -4
  841. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.c +2 -1
  842. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.h +5 -4
  843. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.c +2 -1
  844. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.h +5 -4
  845. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.c +8 -5
  846. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.h +5 -4
  847. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.c +2 -1
  848. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.h +5 -4
  849. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.c +2 -1
  850. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.h +5 -4
  851. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.c +2 -1
  852. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.h +5 -4
  853. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.c +2 -1
  854. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.h +5 -4
  855. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +2 -1
  856. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +5 -4
  857. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +2 -1
  858. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +5 -4
  859. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.c +420 -414
  860. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.h +5 -4
  861. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.c +2 -1
  862. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.h +5 -4
  863. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.c +2 -1
  864. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.h +5 -4
  865. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.c +2 -1
  866. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.h +5 -4
  867. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.c +2 -1
  868. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.h +5 -4
  869. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.c +2 -1
  870. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.h +5 -4
  871. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.c +163 -154
  872. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.h +10 -4
  873. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.c +2 -1
  874. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.h +5 -4
  875. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.c +2 -1
  876. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.h +5 -4
  877. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.c +2 -1
  878. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.h +5 -4
  879. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.c +2 -1
  880. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.h +5 -4
  881. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.c +2 -1
  882. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.h +5 -4
  883. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.c +2 -1
  884. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.h +5 -4
  885. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.c +2 -1
  886. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.h +5 -4
  887. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.c +2 -1
  888. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.h +5 -4
  889. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.c +272 -262
  890. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.h +5 -4
  891. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.c +2 -1
  892. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +5 -4
  893. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.c +2 -1
  894. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.h +5 -4
  895. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_cmsg_headers.upbdefs.c +46 -0
  896. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_cmsg_headers.upbdefs.h +33 -0
  897. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.c +31 -20
  898. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.h +20 -4
  899. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.c +2 -1
  900. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.h +5 -4
  901. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.c +2 -1
  902. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.h +5 -4
  903. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.c +2 -1
  904. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.h +5 -4
  905. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +2 -1
  906. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +5 -4
  907. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.c +2 -1
  908. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.h +5 -4
  909. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.c +2 -1
  910. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.h +5 -4
  911. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.c +2 -1
  912. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +5 -4
  913. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.c +60 -66
  914. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.h +5 -9
  915. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.c +75 -64
  916. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.h +5 -4
  917. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.c +2 -1
  918. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.h +5 -4
  919. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.c +2 -1
  920. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.h +5 -4
  921. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.c +2 -1
  922. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.h +5 -4
  923. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.c +51 -49
  924. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.h +5 -4
  925. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.c +119 -101
  926. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.h +10 -4
  927. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.c +2 -1
  928. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.h +5 -4
  929. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.c +919 -899
  930. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +15 -4
  931. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.c +2 -1
  932. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.h +5 -4
  933. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.c +2 -1
  934. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.h +5 -4
  935. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.c +2 -1
  936. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.h +5 -4
  937. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.c +2 -1
  938. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.h +5 -4
  939. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.c +2 -1
  940. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.h +5 -4
  941. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.c +2 -1
  942. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.h +5 -4
  943. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.c +2 -1
  944. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.h +5 -4
  945. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.c +2 -1
  946. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.h +5 -4
  947. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.c +2 -1
  948. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.h +5 -4
  949. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.c +17 -19
  950. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.h +5 -4
  951. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.c +2 -1
  952. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.h +5 -4
  953. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.c +2 -1
  954. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.h +5 -4
  955. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.c +2 -1
  956. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.h +5 -4
  957. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +2 -1
  958. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +5 -4
  959. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +2 -1
  960. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +5 -4
  961. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +2 -1
  962. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +5 -4
  963. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.c +2 -1
  964. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.h +5 -4
  965. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +35 -34
  966. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +5 -4
  967. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.c +2 -1
  968. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.h +5 -4
  969. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +2 -1
  970. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +5 -4
  971. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +462 -458
  972. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +5 -4
  973. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +2 -1
  974. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +5 -4
  975. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upbdefs.c +50 -0
  976. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upbdefs.h +33 -0
  977. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +2 -1
  978. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +5 -4
  979. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +97 -96
  980. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +5 -4
  981. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +2 -1
  982. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +5 -4
  983. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +204 -192
  984. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +5 -4
  985. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +21 -18
  986. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +5 -4
  987. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.c +2 -1
  988. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +5 -4
  989. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.c +2 -1
  990. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.h +5 -4
  991. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.c +150 -136
  992. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.h +10 -4
  993. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.c +2 -1
  994. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.h +5 -4
  995. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.c +25 -23
  996. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.h +5 -4
  997. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.c +2 -1
  998. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +5 -4
  999. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.c +2 -1
  1000. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.h +5 -4
  1001. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.c +41 -0
  1002. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.h +33 -0
  1003. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.c +28 -20
  1004. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.h +5 -4
  1005. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.c +2 -1
  1006. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.h +5 -4
  1007. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.c +2 -1
  1008. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.h +5 -4
  1009. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.c +2 -1
  1010. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.h +5 -4
  1011. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.c +2 -1
  1012. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.h +5 -4
  1013. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.c +2 -1
  1014. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.h +5 -4
  1015. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.c +2 -1
  1016. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.h +5 -4
  1017. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.c +2 -1
  1018. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.h +5 -4
  1019. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.c +2 -1
  1020. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.h +5 -4
  1021. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.c +2 -1
  1022. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.h +5 -4
  1023. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.c +2 -1
  1024. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.h +5 -4
  1025. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.c +2 -1
  1026. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.h +5 -4
  1027. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.c +2 -1
  1028. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.h +5 -4
  1029. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.c +2 -1
  1030. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.h +5 -4
  1031. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.c +2 -1
  1032. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.h +5 -4
  1033. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.c +2 -1
  1034. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.h +5 -4
  1035. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.c +2 -1
  1036. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.h +5 -4
  1037. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.c +2 -1
  1038. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.h +5 -4
  1039. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.c +2 -1
  1040. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.h +5 -4
  1041. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.c +2 -1
  1042. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.h +5 -4
  1043. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.c +2 -1
  1044. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.h +5 -4
  1045. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.c +2 -1
  1046. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.h +5 -4
  1047. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.c +2 -1
  1048. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.h +5 -4
  1049. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.c +2 -1
  1050. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.h +5 -4
  1051. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.c +2 -1
  1052. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +5 -4
  1053. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.c +2 -1
  1054. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.h +5 -4
  1055. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.c +2 -1
  1056. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.h +5 -4
  1057. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.c +2 -1
  1058. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.h +5 -4
  1059. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +497 -484
  1060. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.h +5 -4
  1061. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.c +2 -1
  1062. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.h +5 -4
  1063. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.c +2 -1
  1064. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.h +5 -4
  1065. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.c +2 -1
  1066. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.h +5 -4
  1067. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.c +2 -1
  1068. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.h +5 -4
  1069. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.c +2 -1
  1070. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.h +5 -4
  1071. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.c +2 -1
  1072. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.h +5 -4
  1073. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +2 -1
  1074. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +5 -4
  1075. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.c +2 -1
  1076. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.h +5 -4
  1077. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.c +2 -1
  1078. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.h +5 -4
  1079. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.c +2 -1
  1080. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.h +5 -4
  1081. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.c +2 -1
  1082. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.h +5 -4
  1083. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.c +2 -1
  1084. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.h +5 -4
  1085. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.c +2 -1
  1086. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.h +5 -4
  1087. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.c +2 -1
  1088. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.h +5 -4
  1089. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.c +2 -1
  1090. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.h +5 -4
  1091. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.c +2 -1
  1092. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.h +5 -4
  1093. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.c +2 -1
  1094. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.h +5 -4
  1095. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.c +2 -1
  1096. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.h +5 -4
  1097. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.c +2 -1
  1098. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.h +5 -4
  1099. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.c +2 -1
  1100. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.h +5 -4
  1101. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.c +2 -1
  1102. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.h +5 -4
  1103. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.c +2 -1
  1104. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.h +5 -4
  1105. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.c +2 -1
  1106. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.h +5 -4
  1107. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.c +2 -1
  1108. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.h +5 -4
  1109. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.c +2 -1
  1110. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.h +5 -4
  1111. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.c +2 -1
  1112. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.h +5 -4
  1113. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.c +2 -1
  1114. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.h +5 -4
  1115. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.c +2 -1
  1116. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.h +5 -4
  1117. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.c +2 -1
  1118. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.h +5 -4
  1119. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.c +2 -1
  1120. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.h +5 -4
  1121. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.c +2 -1
  1122. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.h +5 -4
  1123. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.c +2 -1
  1124. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.h +5 -4
  1125. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.c +2 -1
  1126. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.h +5 -4
  1127. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.c +2 -1
  1128. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.h +5 -4
  1129. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.c +2 -1
  1130. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.h +5 -4
  1131. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.c +2 -1
  1132. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.h +5 -4
  1133. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.c +2 -1
  1134. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.h +5 -4
  1135. data/src/core/filter/auth/auth_filters.h +233 -0
  1136. data/src/core/filter/auth/client_auth_filter.cc +310 -0
  1137. data/src/core/filter/auth/server_auth_filter.cc +208 -0
  1138. data/src/core/filter/blackboard.cc +33 -0
  1139. data/src/core/filter/blackboard.h +70 -0
  1140. data/src/core/filter/filter_args.h +112 -0
  1141. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.cc +4 -5
  1142. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.h +1 -1
  1143. data/src/core/handshaker/handshaker.cc +8 -22
  1144. data/src/core/handshaker/handshaker.h +8 -10
  1145. data/src/core/handshaker/handshaker_registry.cc +1 -2
  1146. data/src/core/handshaker/handshaker_registry.h +2 -2
  1147. data/src/core/handshaker/http_connect/http_connect_handshaker.cc +17 -16
  1148. data/src/core/handshaker/http_connect/http_connect_handshaker.h +1 -1
  1149. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +38 -41
  1150. data/src/core/handshaker/http_connect/http_proxy_mapper.h +7 -8
  1151. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.cc +57 -0
  1152. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.h +46 -0
  1153. data/src/core/handshaker/proxy_mapper.h +6 -7
  1154. data/src/core/handshaker/proxy_mapper_registry.cc +7 -8
  1155. data/src/core/handshaker/proxy_mapper_registry.h +6 -7
  1156. data/src/core/handshaker/security/secure_endpoint.cc +14 -16
  1157. data/src/core/handshaker/security/secure_endpoint.h +2 -3
  1158. data/src/core/handshaker/security/security_handshaker.cc +19 -27
  1159. data/src/core/handshaker/security/security_handshaker.h +4 -5
  1160. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +16 -15
  1161. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.h +1 -1
  1162. data/src/core/lib/address_utils/parse_address.cc +3 -4
  1163. data/src/core/lib/address_utils/parse_address.h +2 -4
  1164. data/src/core/lib/address_utils/sockaddr_utils.cc +4 -6
  1165. data/src/core/lib/address_utils/sockaddr_utils.h +1 -3
  1166. data/src/core/lib/channel/channel_args.cc +17 -19
  1167. data/src/core/lib/channel/channel_args.h +68 -51
  1168. data/src/core/lib/channel/channel_args_preconditioning.cc +2 -2
  1169. data/src/core/lib/channel/channel_args_preconditioning.h +4 -4
  1170. data/src/core/lib/channel/channel_stack.cc +5 -4
  1171. data/src/core/lib/channel/channel_stack.h +18 -19
  1172. data/src/core/lib/channel/channel_stack_builder.cc +2 -2
  1173. data/src/core/lib/channel/channel_stack_builder.h +3 -4
  1174. data/src/core/lib/channel/channel_stack_builder_impl.cc +6 -8
  1175. data/src/core/lib/channel/channel_stack_builder_impl.h +15 -3
  1176. data/src/core/lib/channel/connected_channel.cc +12 -14
  1177. data/src/core/lib/channel/promise_based_filter.cc +42 -33
  1178. data/src/core/lib/channel/promise_based_filter.h +101 -147
  1179. data/src/core/lib/compression/compression.cc +5 -6
  1180. data/src/core/lib/compression/compression_internal.cc +14 -16
  1181. data/src/core/lib/compression/compression_internal.h +6 -8
  1182. data/src/core/lib/compression/message_compress.cc +3 -6
  1183. data/src/core/lib/debug/trace.cc +5 -6
  1184. data/src/core/lib/debug/trace_flags.cc +6 -6
  1185. data/src/core/lib/debug/trace_flags.h +2 -2
  1186. data/src/core/lib/debug/trace_impl.h +2 -2
  1187. data/src/core/lib/event_engine/ares_resolver.cc +20 -26
  1188. data/src/core/lib/event_engine/ares_resolver.h +13 -20
  1189. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +4 -8
  1190. data/src/core/lib/event_engine/cf_engine/cf_engine.h +3 -5
  1191. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +7 -9
  1192. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +6 -10
  1193. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +2 -4
  1194. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +11 -13
  1195. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +5 -9
  1196. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +7 -10
  1197. data/src/core/lib/event_engine/channel_args_endpoint_config.h +7 -9
  1198. data/src/core/lib/event_engine/common_closures.h +5 -7
  1199. data/src/core/lib/event_engine/default_event_engine.cc +69 -41
  1200. data/src/core/lib/event_engine/default_event_engine.h +27 -36
  1201. data/src/core/lib/event_engine/default_event_engine_factory.cc +14 -20
  1202. data/src/core/lib/event_engine/default_event_engine_factory.h +5 -7
  1203. data/src/core/lib/event_engine/event_engine.cc +4 -6
  1204. data/src/core/lib/event_engine/extensions/can_track_errors.h +4 -6
  1205. data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +3 -6
  1206. data/src/core/lib/event_engine/extensions/iomgr_compatible.h +39 -0
  1207. data/src/core/lib/event_engine/extensions/supports_fd.h +22 -7
  1208. data/src/core/lib/event_engine/extensions/supports_win_sockets.h +48 -0
  1209. data/src/core/lib/event_engine/extensions/tcp_trace.h +3 -6
  1210. data/src/core/lib/event_engine/forkable.cc +5 -7
  1211. data/src/core/lib/event_engine/forkable.h +4 -6
  1212. data/src/core/lib/event_engine/grpc_polled_fd.h +5 -8
  1213. data/src/core/lib/event_engine/handle_containers.h +4 -7
  1214. data/src/core/lib/event_engine/memory_allocator_factory.h +5 -8
  1215. data/src/core/lib/event_engine/nameser.h +1 -1
  1216. data/src/core/lib/event_engine/poller.h +4 -6
  1217. data/src/core/lib/event_engine/posix.h +2 -4
  1218. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +14 -62
  1219. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +6 -9
  1220. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +21 -71
  1221. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +6 -9
  1222. data/src/core/lib/event_engine/posix_engine/event_poller.h +5 -8
  1223. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +6 -9
  1224. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +4 -6
  1225. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +6 -10
  1226. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +4 -7
  1227. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +3 -6
  1228. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +7 -10
  1229. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +4 -7
  1230. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +4 -7
  1231. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +4 -7
  1232. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +35 -29
  1233. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +10 -13
  1234. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +54 -37
  1235. data/src/core/lib/event_engine/posix_engine/posix_engine.h +18 -20
  1236. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +5 -7
  1237. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +10 -14
  1238. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +14 -15
  1239. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +32 -10
  1240. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +7 -6
  1241. data/src/core/lib/event_engine/posix_engine/set_socket_dualstack.cc +64 -0
  1242. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +13 -28
  1243. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +9 -12
  1244. data/src/core/lib/event_engine/posix_engine/timer.cc +8 -10
  1245. data/src/core/lib/event_engine/posix_engine/timer.h +9 -13
  1246. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +4 -7
  1247. data/src/core/lib/event_engine/posix_engine/timer_heap.h +4 -6
  1248. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +8 -11
  1249. data/src/core/lib/event_engine/posix_engine/timer_manager.h +9 -13
  1250. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +9 -15
  1251. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +27 -30
  1252. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +7 -10
  1253. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +4 -7
  1254. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +16 -11
  1255. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +4 -7
  1256. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +4 -6
  1257. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +4 -7
  1258. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +4 -6
  1259. data/src/core/lib/event_engine/query_extensions.h +4 -6
  1260. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +5 -9
  1261. data/src/core/lib/event_engine/resolved_address.cc +7 -8
  1262. data/src/core/lib/event_engine/resolved_address_internal.h +2 -4
  1263. data/src/core/lib/event_engine/shim.cc +11 -20
  1264. data/src/core/lib/event_engine/shim.h +13 -4
  1265. data/src/core/lib/event_engine/slice.cc +5 -9
  1266. data/src/core/lib/event_engine/slice_buffer.cc +3 -6
  1267. data/src/core/lib/event_engine/tcp_socket_utils.cc +9 -18
  1268. data/src/core/lib/event_engine/tcp_socket_utils.h +8 -10
  1269. data/src/core/lib/event_engine/thread_local.cc +2 -4
  1270. data/src/core/lib/event_engine/thread_local.h +2 -4
  1271. data/src/core/lib/event_engine/thread_pool/thread_count.cc +4 -8
  1272. data/src/core/lib/event_engine/thread_pool/thread_count.h +9 -24
  1273. data/src/core/lib/event_engine/thread_pool/thread_pool.h +4 -8
  1274. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +4 -7
  1275. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +27 -23
  1276. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +11 -14
  1277. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +7 -9
  1278. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +7 -9
  1279. data/src/core/lib/event_engine/time_util.cc +4 -6
  1280. data/src/core/lib/event_engine/time_util.h +3 -6
  1281. data/src/core/lib/event_engine/utils.cc +21 -9
  1282. data/src/core/lib/event_engine/utils.h +12 -8
  1283. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +7 -12
  1284. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.h +6 -10
  1285. data/src/core/lib/event_engine/windows/iocp.cc +6 -9
  1286. data/src/core/lib/event_engine/windows/iocp.h +3 -6
  1287. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +6 -10
  1288. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.h +2 -4
  1289. data/src/core/lib/event_engine/windows/win_socket.cc +17 -9
  1290. data/src/core/lib/event_engine/windows/win_socket.h +9 -9
  1291. data/src/core/lib/event_engine/windows/windows_endpoint.cc +35 -29
  1292. data/src/core/lib/event_engine/windows/windows_endpoint.h +4 -6
  1293. data/src/core/lib/event_engine/windows/windows_engine.cc +55 -15
  1294. data/src/core/lib/event_engine/windows/windows_engine.h +18 -15
  1295. data/src/core/lib/event_engine/windows/windows_listener.cc +9 -13
  1296. data/src/core/lib/event_engine/windows/windows_listener.h +15 -13
  1297. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +5 -7
  1298. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +5 -9
  1299. data/src/core/lib/event_engine/work_queue/work_queue.h +4 -7
  1300. data/src/core/lib/experiments/config.cc +9 -12
  1301. data/src/core/lib/experiments/config.h +1 -2
  1302. data/src/core/lib/experiments/experiments.cc +442 -174
  1303. data/src/core/lib/experiments/experiments.h +187 -86
  1304. data/src/core/lib/iomgr/buffer_list.cc +4 -5
  1305. data/src/core/lib/iomgr/buffer_list.h +23 -23
  1306. data/src/core/lib/iomgr/call_combiner.cc +2 -4
  1307. data/src/core/lib/iomgr/call_combiner.h +6 -8
  1308. data/src/core/lib/iomgr/cfstream_handle.cc +2 -6
  1309. data/src/core/lib/iomgr/cfstream_handle.h +1 -1
  1310. data/src/core/lib/iomgr/closure.cc +2 -2
  1311. data/src/core/lib/iomgr/closure.h +7 -10
  1312. data/src/core/lib/iomgr/combiner.cc +4 -7
  1313. data/src/core/lib/iomgr/combiner.h +2 -3
  1314. data/src/core/lib/iomgr/endpoint.h +1 -2
  1315. data/src/core/lib/iomgr/endpoint_cfstream.cc +2 -4
  1316. data/src/core/lib/iomgr/endpoint_pair_posix.cc +45 -20
  1317. data/src/core/lib/iomgr/endpoint_pair_windows.cc +44 -10
  1318. data/src/core/lib/iomgr/error.cc +34 -52
  1319. data/src/core/lib/iomgr/error.h +6 -8
  1320. data/src/core/lib/iomgr/error_cfstream.cc +1 -3
  1321. data/src/core/lib/iomgr/ev_apple.cc +3 -4
  1322. data/src/core/lib/iomgr/ev_epoll1_linux.cc +20 -10
  1323. data/src/core/lib/iomgr/ev_poll_posix.cc +16 -5
  1324. data/src/core/lib/iomgr/ev_posix.cc +4 -6
  1325. data/src/core/lib/iomgr/ev_posix.h +1 -2
  1326. data/src/core/lib/iomgr/event_engine_shims/closure.cc +3 -5
  1327. data/src/core/lib/iomgr/event_engine_shims/closure.h +1 -2
  1328. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +11 -14
  1329. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +2 -2
  1330. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +2 -4
  1331. data/src/core/lib/iomgr/exec_ctx.cc +5 -12
  1332. data/src/core/lib/iomgr/exec_ctx.h +7 -140
  1333. data/src/core/lib/iomgr/executor.cc +6 -19
  1334. data/src/core/lib/iomgr/executor.h +1 -1
  1335. data/src/core/lib/iomgr/fork_posix.cc +5 -7
  1336. data/src/core/lib/iomgr/fork_windows.cc +2 -2
  1337. data/src/core/lib/iomgr/internal_errqueue.cc +2 -3
  1338. data/src/core/lib/iomgr/iocp_windows.cc +4 -6
  1339. data/src/core/lib/iomgr/iomgr.cc +7 -9
  1340. data/src/core/lib/iomgr/iomgr.h +1 -2
  1341. data/src/core/lib/iomgr/iomgr_internal.cc +1 -2
  1342. data/src/core/lib/iomgr/iomgr_internal.h +1 -2
  1343. data/src/core/lib/iomgr/iomgr_posix.cc +2 -1
  1344. data/src/core/lib/iomgr/iomgr_windows.cc +4 -3
  1345. data/src/core/lib/iomgr/lockfree_event.cc +3 -4
  1346. data/src/core/lib/iomgr/nameser.h +1 -1
  1347. data/src/core/lib/iomgr/polling_entity.cc +5 -11
  1348. data/src/core/lib/iomgr/pollset_set_windows.cc +1 -2
  1349. data/src/core/lib/iomgr/pollset_windows.cc +2 -2
  1350. data/src/core/lib/iomgr/port.h +2 -2
  1351. data/src/core/lib/iomgr/resolve_address.cc +3 -4
  1352. data/src/core/lib/iomgr/resolve_address.h +4 -6
  1353. data/src/core/lib/iomgr/resolve_address_impl.h +1 -2
  1354. data/src/core/lib/iomgr/resolve_address_posix.cc +6 -9
  1355. data/src/core/lib/iomgr/resolve_address_posix.h +2 -2
  1356. data/src/core/lib/iomgr/resolve_address_windows.cc +8 -12
  1357. data/src/core/lib/iomgr/resolve_address_windows.h +2 -2
  1358. data/src/core/lib/iomgr/resolved_address.h +1 -2
  1359. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +3 -5
  1360. data/src/core/lib/iomgr/socket_mutator.cc +1 -1
  1361. data/src/core/lib/iomgr/socket_mutator.h +1 -2
  1362. data/src/core/lib/iomgr/socket_utils.h +1 -2
  1363. data/src/core/lib/iomgr/socket_utils_common_posix.cc +6 -7
  1364. data/src/core/lib/iomgr/socket_utils_linux.cc +1 -1
  1365. data/src/core/lib/iomgr/socket_utils_posix.cc +23 -13
  1366. data/src/core/lib/iomgr/socket_utils_posix.h +12 -2
  1367. data/src/core/lib/iomgr/socket_utils_windows.cc +1 -1
  1368. data/src/core/lib/iomgr/socket_windows.cc +3 -5
  1369. data/src/core/lib/iomgr/socket_windows.h +1 -2
  1370. data/src/core/lib/iomgr/tcp_client_cfstream.cc +13 -16
  1371. data/src/core/lib/iomgr/tcp_client_posix.cc +16 -22
  1372. data/src/core/lib/iomgr/tcp_client_posix.h +1 -1
  1373. data/src/core/lib/iomgr/tcp_client_windows.cc +6 -8
  1374. data/src/core/lib/iomgr/tcp_posix.cc +70 -45
  1375. data/src/core/lib/iomgr/tcp_posix.h +10 -2
  1376. data/src/core/lib/iomgr/tcp_server.h +2 -2
  1377. data/src/core/lib/iomgr/tcp_server_posix.cc +19 -15
  1378. data/src/core/lib/iomgr/tcp_server_utils_posix.h +2 -3
  1379. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +4 -9
  1380. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +4 -6
  1381. data/src/core/lib/iomgr/tcp_server_windows.cc +38 -30
  1382. data/src/core/lib/iomgr/tcp_windows.cc +4 -6
  1383. data/src/core/lib/iomgr/timer.h +2 -2
  1384. data/src/core/lib/iomgr/timer_generic.cc +9 -11
  1385. data/src/core/lib/iomgr/timer_heap.cc +2 -3
  1386. data/src/core/lib/iomgr/timer_manager.cc +5 -15
  1387. data/src/core/lib/iomgr/timer_manager.h +1 -2
  1388. data/src/core/lib/iomgr/unix_sockets_posix.cc +3 -4
  1389. data/src/core/lib/iomgr/unix_sockets_posix.h +3 -4
  1390. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +0 -2
  1391. data/src/core/lib/iomgr/vsock.cc +2 -4
  1392. data/src/core/lib/iomgr/vsock.h +3 -4
  1393. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +2 -2
  1394. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +13 -6
  1395. data/src/core/lib/promise/activity.cc +4 -4
  1396. data/src/core/lib/promise/activity.h +43 -24
  1397. data/src/core/lib/promise/all_ok.h +71 -4
  1398. data/src/core/lib/promise/arena_promise.h +2 -4
  1399. data/src/core/lib/promise/cancel_callback.h +4 -4
  1400. data/src/core/lib/promise/context.h +7 -8
  1401. data/src/core/lib/promise/detail/basic_seq.h +33 -19
  1402. data/src/core/lib/promise/detail/join_state.h +20 -73
  1403. data/src/core/lib/promise/detail/promise_factory.h +92 -33
  1404. data/src/core/lib/promise/detail/promise_like.h +34 -15
  1405. data/src/core/lib/promise/detail/seq_state.h +285 -500
  1406. data/src/core/lib/promise/detail/status.h +5 -5
  1407. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +2 -3
  1408. data/src/core/lib/promise/for_each.h +23 -15
  1409. data/src/core/lib/promise/if.h +56 -28
  1410. data/src/core/lib/promise/interceptor_list.h +12 -14
  1411. data/src/core/lib/promise/latch.h +15 -9
  1412. data/src/core/lib/promise/loop.h +73 -22
  1413. data/src/core/lib/promise/map.h +230 -21
  1414. data/src/core/lib/promise/observable.h +3 -4
  1415. data/src/core/lib/promise/party.cc +119 -84
  1416. data/src/core/lib/promise/party.h +286 -65
  1417. data/src/core/lib/promise/pipe.h +15 -17
  1418. data/src/core/lib/promise/poll.h +40 -23
  1419. data/src/core/lib/promise/prioritized_race.h +17 -23
  1420. data/src/core/lib/promise/promise.h +8 -10
  1421. data/src/core/lib/promise/race.h +6 -14
  1422. data/src/core/lib/promise/seq.h +58 -45
  1423. data/src/core/lib/promise/sleep.cc +6 -6
  1424. data/src/core/lib/promise/sleep.h +19 -6
  1425. data/src/core/lib/promise/status_flag.h +51 -17
  1426. data/src/core/lib/promise/try_join.h +124 -10
  1427. data/src/core/lib/promise/try_seq.h +84 -59
  1428. data/src/core/lib/resource_quota/api.cc +4 -6
  1429. data/src/core/lib/resource_quota/api.h +2 -3
  1430. data/src/core/lib/resource_quota/arena.cc +3 -4
  1431. data/src/core/lib/resource_quota/arena.h +91 -5
  1432. data/src/core/lib/resource_quota/connection_quota.cc +2 -2
  1433. data/src/core/lib/resource_quota/connection_quota.h +9 -6
  1434. data/src/core/lib/resource_quota/memory_quota.cc +73 -60
  1435. data/src/core/lib/resource_quota/memory_quota.h +25 -17
  1436. data/src/core/lib/resource_quota/periodic_update.cc +4 -4
  1437. data/src/core/lib/resource_quota/periodic_update.h +2 -4
  1438. data/src/core/lib/resource_quota/resource_quota.h +7 -8
  1439. data/src/core/lib/resource_quota/thread_quota.cc +2 -2
  1440. data/src/core/lib/resource_quota/thread_quota.h +5 -6
  1441. data/src/core/lib/security/authorization/audit_logging.cc +5 -6
  1442. data/src/core/lib/security/authorization/audit_logging.h +5 -6
  1443. data/src/core/lib/security/authorization/authorization_engine.h +3 -3
  1444. data/src/core/lib/security/authorization/authorization_policy_provider.h +3 -4
  1445. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -1
  1446. data/src/core/lib/security/authorization/evaluate_args.cc +8 -10
  1447. data/src/core/lib/security/authorization/evaluate_args.h +7 -8
  1448. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +2 -3
  1449. data/src/core/lib/security/authorization/grpc_authorization_engine.h +2 -3
  1450. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +6 -11
  1451. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +9 -10
  1452. data/src/core/lib/security/authorization/matchers.cc +2 -4
  1453. data/src/core/lib/security/authorization/matchers.h +5 -7
  1454. data/src/core/lib/security/authorization/rbac_policy.cc +3 -3
  1455. data/src/core/lib/security/authorization/rbac_policy.h +6 -8
  1456. data/src/core/lib/security/authorization/stdout_logger.cc +4 -4
  1457. data/src/core/lib/security/authorization/stdout_logger.h +4 -4
  1458. data/src/core/lib/slice/percent_encoding.cc +2 -4
  1459. data/src/core/lib/slice/slice.cc +4 -6
  1460. data/src/core/lib/slice/slice.h +11 -7
  1461. data/src/core/lib/slice/slice_buffer.cc +7 -8
  1462. data/src/core/lib/slice/slice_buffer.h +5 -6
  1463. data/src/core/lib/slice/slice_internal.h +3 -5
  1464. data/src/core/lib/slice/slice_refcount.h +2 -3
  1465. data/src/core/lib/slice/slice_string_helpers.h +1 -2
  1466. data/src/core/lib/surface/byte_buffer.cc +1 -2
  1467. data/src/core/lib/surface/byte_buffer_reader.cc +3 -5
  1468. data/src/core/lib/surface/call.cc +42 -46
  1469. data/src/core/lib/surface/call.h +10 -11
  1470. data/src/core/lib/surface/call_log_batch.cc +3 -5
  1471. data/src/core/lib/surface/call_test_only.h +1 -2
  1472. data/src/core/lib/surface/call_utils.cc +21 -64
  1473. data/src/core/lib/surface/call_utils.h +70 -26
  1474. data/src/core/lib/surface/channel.cc +7 -16
  1475. data/src/core/lib/surface/channel.h +16 -17
  1476. data/src/core/lib/surface/channel_create.cc +2 -3
  1477. data/src/core/lib/surface/channel_create.h +2 -3
  1478. data/src/core/lib/surface/channel_init.cc +5 -7
  1479. data/src/core/lib/surface/channel_init.h +6 -8
  1480. data/src/core/lib/surface/completion_queue.cc +99 -80
  1481. data/src/core/lib/surface/completion_queue.h +4 -5
  1482. data/src/core/lib/surface/completion_queue_factory.cc +1 -2
  1483. data/src/core/lib/surface/connection_context.cc +77 -0
  1484. data/src/core/lib/surface/connection_context.h +156 -0
  1485. data/src/core/lib/surface/event_string.cc +9 -3
  1486. data/src/core/lib/surface/event_string.h +2 -2
  1487. data/src/core/lib/surface/filter_stack_call.cc +60 -51
  1488. data/src/core/lib/surface/filter_stack_call.h +18 -20
  1489. data/src/core/lib/surface/init.cc +46 -21
  1490. data/src/core/lib/surface/init.h +5 -0
  1491. data/src/core/lib/surface/init_internally.h +13 -2
  1492. data/src/core/lib/surface/lame_client.cc +11 -12
  1493. data/src/core/lib/surface/lame_client.h +4 -5
  1494. data/src/core/lib/surface/legacy_channel.cc +47 -42
  1495. data/src/core/lib/surface/legacy_channel.h +8 -9
  1496. data/src/core/lib/surface/metadata_array.cc +1 -2
  1497. data/src/core/lib/surface/validate_metadata.cc +3 -4
  1498. data/src/core/lib/surface/validate_metadata.h +2 -4
  1499. data/src/core/lib/surface/version.cc +2 -2
  1500. data/src/core/lib/transport/bdp_estimator.cc +2 -3
  1501. data/src/core/lib/transport/bdp_estimator.h +3 -5
  1502. data/src/core/lib/transport/call_final_info.cc +2 -2
  1503. data/src/core/lib/transport/call_final_info.h +3 -3
  1504. data/src/core/lib/transport/connectivity_state.cc +11 -13
  1505. data/src/core/lib/transport/connectivity_state.h +7 -10
  1506. data/src/core/lib/transport/error_utils.cc +68 -15
  1507. data/src/core/lib/transport/error_utils.h +6 -7
  1508. data/src/core/lib/transport/status_conversion.cc +16 -14
  1509. data/src/core/lib/transport/status_conversion.h +6 -5
  1510. data/src/core/lib/transport/timeout_encoding.cc +22 -22
  1511. data/src/core/lib/transport/timeout_encoding.h +4 -5
  1512. data/src/core/lib/transport/transport.cc +4 -7
  1513. data/src/core/lib/transport/transport.h +24 -21
  1514. data/src/core/lib/transport/transport_framing_endpoint_extension.h +47 -0
  1515. data/src/core/lib/transport/transport_op_string.cc +5 -6
  1516. data/src/core/load_balancing/address_filtering.cc +2 -4
  1517. data/src/core/load_balancing/address_filtering.h +4 -5
  1518. data/src/core/load_balancing/backend_metric_data.h +2 -2
  1519. data/src/core/load_balancing/backend_metric_parser.cc +22 -30
  1520. data/src/core/load_balancing/backend_metric_parser.h +1 -3
  1521. data/src/core/load_balancing/child_policy_handler.cc +5 -6
  1522. data/src/core/load_balancing/child_policy_handler.h +4 -5
  1523. data/src/core/load_balancing/delegating_helper.h +7 -8
  1524. data/src/core/load_balancing/endpoint_list.cc +18 -10
  1525. data/src/core/load_balancing/endpoint_list.h +26 -21
  1526. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +12 -11
  1527. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +5 -6
  1528. data/src/core/load_balancing/grpclb/grpclb.cc +42 -62
  1529. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +1 -2
  1530. data/src/core/load_balancing/grpclb/grpclb_client_stats.cc +2 -3
  1531. data/src/core/load_balancing/grpclb/grpclb_client_stats.h +5 -7
  1532. data/src/core/load_balancing/grpclb/load_balancer_api.cc +4 -6
  1533. data/src/core/load_balancing/grpclb/load_balancer_api.h +4 -6
  1534. data/src/core/load_balancing/health_check_client.cc +36 -68
  1535. data/src/core/load_balancing/health_check_client.h +3 -3
  1536. data/src/core/load_balancing/health_check_client_internal.h +15 -16
  1537. data/src/core/load_balancing/lb_policy.cc +4 -6
  1538. data/src/core/load_balancing/lb_policy.h +17 -27
  1539. data/src/core/load_balancing/lb_policy_factory.h +4 -5
  1540. data/src/core/load_balancing/lb_policy_registry.cc +13 -12
  1541. data/src/core/load_balancing/lb_policy_registry.h +4 -5
  1542. data/src/core/load_balancing/oob_backend_metric.cc +14 -16
  1543. data/src/core/load_balancing/oob_backend_metric.h +3 -3
  1544. data/src/core/load_balancing/oob_backend_metric_internal.h +8 -9
  1545. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +88 -94
  1546. data/src/core/load_balancing/outlier_detection/outlier_detection.h +6 -7
  1547. data/src/core/load_balancing/pick_first/pick_first.cc +78 -997
  1548. data/src/core/load_balancing/priority/priority.cc +20 -27
  1549. data/src/core/load_balancing/ring_hash/ring_hash.cc +223 -173
  1550. data/src/core/load_balancing/ring_hash/ring_hash.h +7 -15
  1551. data/src/core/load_balancing/rls/rls.cc +159 -256
  1552. data/src/core/load_balancing/rls/rls.h +97 -1
  1553. data/src/core/load_balancing/round_robin/round_robin.cc +23 -34
  1554. data/src/core/load_balancing/subchannel_interface.h +13 -6
  1555. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +8 -8
  1556. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h +4 -5
  1557. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +35 -48
  1558. data/src/core/load_balancing/weighted_target/weighted_target.cc +19 -29
  1559. data/src/core/load_balancing/xds/cds.cc +37 -45
  1560. data/src/core/load_balancing/xds/xds_cluster_impl.cc +58 -64
  1561. data/src/core/load_balancing/xds/xds_cluster_manager.cc +20 -30
  1562. data/src/core/load_balancing/xds/xds_override_host.cc +59 -108
  1563. data/src/core/load_balancing/xds/xds_override_host.h +3 -4
  1564. data/src/core/load_balancing/xds/xds_wrr_locality.cc +21 -24
  1565. data/src/core/plugin_registry/grpc_plugin_registry.cc +3 -7
  1566. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +3 -3
  1567. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +25 -30
  1568. data/src/core/resolver/dns/c_ares/dns_resolver_ares.h +2 -3
  1569. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h +4 -6
  1570. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +2 -4
  1571. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +8 -11
  1572. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +15 -19
  1573. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +7 -6
  1574. data/src/core/resolver/dns/dns_resolver_plugin.cc +4 -5
  1575. data/src/core/resolver/dns/dns_resolver_plugin.h +1 -1
  1576. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +19 -26
  1577. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h +3 -4
  1578. data/src/core/resolver/dns/event_engine/service_config_helper.cc +3 -5
  1579. data/src/core/resolver/dns/event_engine/service_config_helper.h +2 -2
  1580. data/src/core/resolver/dns/native/dns_resolver.cc +11 -12
  1581. data/src/core/resolver/dns/native/dns_resolver.h +1 -1
  1582. data/src/core/resolver/endpoint_addresses.cc +1 -3
  1583. data/src/core/resolver/endpoint_addresses.h +2 -3
  1584. data/src/core/resolver/fake/fake_resolver.cc +17 -19
  1585. data/src/core/resolver/fake/fake_resolver.h +9 -10
  1586. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +21 -25
  1587. data/src/core/resolver/polling_resolver.cc +8 -13
  1588. data/src/core/resolver/polling_resolver.h +10 -11
  1589. data/src/core/resolver/resolver.h +4 -5
  1590. data/src/core/resolver/resolver_factory.h +4 -5
  1591. data/src/core/resolver/resolver_registry.cc +6 -5
  1592. data/src/core/resolver/resolver_registry.h +4 -5
  1593. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +5 -6
  1594. data/src/core/resolver/xds/xds_config.cc +7 -8
  1595. data/src/core/resolver/xds/xds_config.h +3 -4
  1596. data/src/core/resolver/xds/xds_dependency_manager.cc +200 -191
  1597. data/src/core/resolver/xds/xds_dependency_manager.h +29 -20
  1598. data/src/core/resolver/xds/xds_resolver.cc +98 -141
  1599. data/src/core/resolver/xds/xds_resolver_attributes.h +2 -3
  1600. data/src/core/server/server.cc +376 -92
  1601. data/src/core/server/server.h +228 -82
  1602. data/src/core/server/server_call_tracer_filter.cc +15 -12
  1603. data/src/core/server/server_call_tracer_filter.h +1 -1
  1604. data/src/core/server/server_config_selector.h +6 -7
  1605. data/src/core/server/server_config_selector_filter.cc +17 -22
  1606. data/src/core/server/xds_channel_stack_modifier.cc +3 -3
  1607. data/src/core/server/xds_channel_stack_modifier.h +5 -6
  1608. data/src/core/server/xds_server_config_fetcher.cc +121 -188
  1609. data/src/core/service_config/service_config.h +3 -5
  1610. data/src/core/service_config/service_config_call_data.h +5 -6
  1611. data/src/core/service_config/service_config_channel_arg_filter.cc +16 -26
  1612. data/src/core/service_config/service_config_impl.cc +7 -9
  1613. data/src/core/service_config/service_config_impl.h +4 -6
  1614. data/src/core/service_config/service_config_parser.cc +1 -2
  1615. data/src/core/service_config/service_config_parser.h +2 -4
  1616. data/src/core/telemetry/call_tracer.cc +12 -15
  1617. data/src/core/telemetry/call_tracer.h +13 -13
  1618. data/src/core/telemetry/histogram_view.cc +3 -3
  1619. data/src/core/telemetry/histogram_view.h +1 -2
  1620. data/src/core/telemetry/metrics.cc +47 -27
  1621. data/src/core/telemetry/metrics.h +30 -21
  1622. data/src/core/telemetry/stats.cc +1 -2
  1623. data/src/core/telemetry/stats.h +2 -4
  1624. data/src/core/telemetry/stats_data.cc +187 -2
  1625. data/src/core/telemetry/stats_data.h +124 -4
  1626. data/src/core/telemetry/tcp_tracer.h +92 -87
  1627. data/src/core/transport/auth_context.cc +236 -0
  1628. data/src/core/transport/auth_context.h +140 -0
  1629. data/src/core/tsi/alts/crypt/aes_gcm.cc +5 -8
  1630. data/src/core/tsi/alts/crypt/gsec.cc +2 -3
  1631. data/src/core/tsi/alts/crypt/gsec.h +3 -4
  1632. data/src/core/tsi/alts/frame_protector/alts_counter.cc +1 -2
  1633. data/src/core/tsi/alts/frame_protector/alts_counter.h +3 -4
  1634. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +1 -2
  1635. data/src/core/tsi/alts/frame_protector/alts_crypter.h +2 -3
  1636. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +4 -5
  1637. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +1 -2
  1638. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +1 -1
  1639. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +1 -1
  1640. data/src/core/tsi/alts/frame_protector/frame_handler.cc +4 -6
  1641. data/src/core/tsi/alts/frame_protector/frame_handler.h +1 -2
  1642. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +14 -15
  1643. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +2 -3
  1644. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +1 -1
  1645. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +33 -31
  1646. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +1 -1
  1647. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -3
  1648. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -2
  1649. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +3 -3
  1650. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +3 -5
  1651. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +1 -2
  1652. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +2 -3
  1653. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +1 -2
  1654. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +3 -5
  1655. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +3 -4
  1656. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +1 -2
  1657. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +3 -5
  1658. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +1 -2
  1659. data/src/core/tsi/fake_transport_security.cc +9 -7
  1660. data/src/core/tsi/local_transport_security.cc +4 -6
  1661. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +4 -5
  1662. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +8 -10
  1663. data/src/core/tsi/ssl/session_cache/ssl_session.h +4 -5
  1664. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +4 -5
  1665. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +7 -8
  1666. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +2 -4
  1667. data/src/core/tsi/ssl_transport_security.cc +30 -18
  1668. data/src/core/tsi/ssl_transport_security.h +6 -8
  1669. data/src/core/tsi/ssl_transport_security_utils.cc +1 -3
  1670. data/src/core/tsi/ssl_transport_security_utils.h +3 -5
  1671. data/src/core/tsi/ssl_types.h +1 -2
  1672. data/src/core/tsi/transport_security.cc +2 -3
  1673. data/src/core/tsi/transport_security.h +1 -2
  1674. data/src/core/tsi/transport_security_interface.h +3 -4
  1675. data/src/core/util/alloc.cc +2 -5
  1676. data/src/core/util/atomic_utils.h +47 -0
  1677. data/src/core/util/avl.h +324 -0
  1678. data/src/core/util/backoff.cc +57 -0
  1679. data/src/core/util/backoff.h +86 -0
  1680. data/src/core/util/bitset.h +224 -0
  1681. data/src/core/util/check_class_size.h +48 -0
  1682. data/src/core/util/chunked_vector.h +256 -0
  1683. data/src/core/util/construct_destruct.h +41 -0
  1684. data/src/core/util/cpp_impl_of.h +49 -0
  1685. data/src/core/util/crash.cc +40 -0
  1686. data/src/core/util/crash.h +36 -0
  1687. data/src/core/util/debug_location.h +106 -0
  1688. data/src/core/util/directory_reader.h +48 -0
  1689. data/src/core/util/down_cast.h +48 -0
  1690. data/src/core/util/dual_ref_counted.h +376 -0
  1691. data/src/core/util/dump_args.cc +54 -0
  1692. data/src/core/util/dump_args.h +114 -0
  1693. data/src/core/util/env.h +52 -0
  1694. data/src/core/util/event_log.cc +87 -0
  1695. data/src/core/util/event_log.h +79 -0
  1696. data/src/core/util/examine_stack.cc +43 -0
  1697. data/src/core/util/examine_stack.h +44 -0
  1698. data/src/core/util/fork.cc +241 -0
  1699. data/src/core/util/fork.h +98 -0
  1700. data/src/core/util/gcp_metadata_query.cc +9 -12
  1701. data/src/core/util/gcp_metadata_query.h +2 -3
  1702. data/src/core/util/gethostname.h +26 -0
  1703. data/src/core/util/gethostname_fallback.cc +30 -0
  1704. data/src/core/util/gethostname_host_name_max.cc +39 -0
  1705. data/src/core/util/gethostname_sysconf.cc +39 -0
  1706. data/src/core/util/glob.h +29 -0
  1707. data/src/core/util/gpr_time.cc +266 -0
  1708. data/src/core/util/grpc_if_nametoindex.h +29 -0
  1709. data/src/core/util/grpc_if_nametoindex_posix.cc +41 -0
  1710. data/src/core/util/grpc_if_nametoindex_unsupported.cc +36 -0
  1711. data/src/core/util/host_port.cc +114 -0
  1712. data/src/core/util/host_port.h +57 -0
  1713. data/src/core/util/http_client/format_request.cc +2 -5
  1714. data/src/core/util/http_client/format_request.h +1 -2
  1715. data/src/core/util/http_client/httpcli.cc +91 -40
  1716. data/src/core/util/http_client/httpcli.h +26 -19
  1717. data/src/core/util/http_client/httpcli_security_connector.cc +14 -17
  1718. data/src/core/util/http_client/httpcli_ssl_credentials.h +2 -3
  1719. data/src/core/util/http_client/parser.cc +2 -4
  1720. data/src/core/util/http_client/parser.h +1 -3
  1721. data/src/core/util/if_list.h +4530 -0
  1722. data/src/core/util/iphone/cpu.cc +1 -2
  1723. data/src/core/util/json/json.h +1 -2
  1724. data/src/core/util/json/json_channel_args.h +2 -2
  1725. data/src/core/util/json/json_object_loader.cc +7 -8
  1726. data/src/core/util/json/json_object_loader.h +20 -21
  1727. data/src/core/util/json/json_reader.cc +6 -9
  1728. data/src/core/util/json/json_reader.h +0 -1
  1729. data/src/core/util/json/json_util.cc +4 -4
  1730. data/src/core/util/json/json_util.h +1 -2
  1731. data/src/core/util/json/json_writer.cc +4 -6
  1732. data/src/core/util/latent_see.cc +100 -70
  1733. data/src/core/util/latent_see.h +45 -20
  1734. data/src/core/util/linux/cpu.cc +4 -6
  1735. data/src/core/util/linux/env.cc +61 -0
  1736. data/src/core/util/load_file.cc +87 -0
  1737. data/src/core/util/load_file.h +33 -0
  1738. data/src/core/util/log.cc +10 -13
  1739. data/src/core/util/lru_cache.h +31 -13
  1740. data/src/core/util/manual_constructor.h +145 -0
  1741. data/src/core/util/match.h +74 -0
  1742. data/src/core/util/matchers.cc +336 -0
  1743. data/src/core/util/matchers.h +162 -0
  1744. data/src/core/util/memory.h +52 -0
  1745. data/src/core/util/mpscq.cc +108 -0
  1746. data/src/core/util/mpscq.h +98 -0
  1747. data/src/core/util/msys/tmpfile.cc +3 -4
  1748. data/src/core/util/no_destruct.h +95 -0
  1749. data/src/core/util/notification.h +66 -0
  1750. data/src/core/util/orphanable.h +153 -0
  1751. data/src/core/util/overload.h +59 -0
  1752. data/src/core/util/packed_table.h +40 -0
  1753. data/src/core/util/per_cpu.cc +34 -0
  1754. data/src/core/util/per_cpu.h +102 -0
  1755. data/src/core/util/posix/cpu.cc +3 -5
  1756. data/src/core/util/posix/directory_reader.cc +82 -0
  1757. data/src/core/util/posix/env.cc +47 -0
  1758. data/src/core/util/posix/stat.cc +54 -0
  1759. data/src/core/util/posix/string.cc +2 -3
  1760. data/src/core/util/posix/sync.cc +2 -5
  1761. data/src/core/util/posix/thd.cc +243 -0
  1762. data/src/core/util/posix/time.cc +3 -5
  1763. data/src/core/util/posix/tmpfile.cc +4 -6
  1764. data/src/core/util/random_early_detection.cc +33 -0
  1765. data/src/core/util/random_early_detection.h +61 -0
  1766. data/src/core/util/ref_counted.h +403 -0
  1767. data/src/core/util/ref_counted_ptr.h +443 -0
  1768. data/src/core/util/ref_counted_string.cc +42 -0
  1769. data/src/core/util/ref_counted_string.h +159 -0
  1770. data/src/core/util/ring_buffer.h +4 -5
  1771. data/src/core/util/single_set_ptr.h +89 -0
  1772. data/src/core/util/sorted_pack.h +89 -0
  1773. data/src/core/util/spinlock.h +1 -2
  1774. data/src/core/util/stat.h +35 -0
  1775. data/src/core/util/status_helper.cc +450 -0
  1776. data/src/core/util/status_helper.h +143 -0
  1777. data/src/core/util/strerror.cc +40 -0
  1778. data/src/core/util/strerror.h +29 -0
  1779. data/src/core/util/string.cc +6 -9
  1780. data/src/core/util/string.h +1 -3
  1781. data/src/core/util/sync.cc +3 -5
  1782. data/src/core/util/sync.h +199 -0
  1783. data/src/core/util/sync_abseil.cc +4 -7
  1784. data/src/core/util/table.h +471 -0
  1785. data/src/core/util/tchar.cc +49 -0
  1786. data/src/core/util/tchar.h +33 -0
  1787. data/src/core/util/thd.h +193 -0
  1788. data/src/core/util/time.cc +174 -204
  1789. data/src/core/util/time.h +385 -0
  1790. data/src/core/util/time_averaged_stats.cc +60 -0
  1791. data/src/core/util/time_averaged_stats.h +79 -0
  1792. data/src/core/util/time_precise.cc +2 -4
  1793. data/src/core/util/time_precise.h +0 -1
  1794. data/src/core/util/time_util.cc +80 -0
  1795. data/src/core/util/time_util.h +41 -0
  1796. data/src/core/util/tmpfile.h +0 -1
  1797. data/src/core/util/type_list.h +88 -0
  1798. data/src/core/util/unique_type_name.h +123 -0
  1799. data/src/core/util/uri.cc +378 -0
  1800. data/src/core/util/uri.h +112 -0
  1801. data/src/core/util/useful.h +13 -15
  1802. data/src/core/util/uuid_v4.cc +37 -0
  1803. data/src/core/util/uuid_v4.h +35 -0
  1804. data/src/core/util/validation_errors.cc +73 -0
  1805. data/src/core/util/validation_errors.h +144 -0
  1806. data/src/core/util/wait_for_single_owner.h +62 -0
  1807. data/src/core/util/windows/cpu.cc +1 -1
  1808. data/src/core/util/windows/directory_reader.cc +79 -0
  1809. data/src/core/util/windows/env.cc +56 -0
  1810. data/src/core/util/windows/stat.cc +50 -0
  1811. data/src/core/util/windows/string.cc +2 -3
  1812. data/src/core/util/windows/string_util.cc +5 -7
  1813. data/src/core/util/windows/sync.cc +1 -3
  1814. data/src/core/util/windows/thd.cc +182 -0
  1815. data/src/core/util/windows/time.cc +1 -4
  1816. data/src/core/util/windows/tmpfile.cc +4 -5
  1817. data/src/core/util/work_serializer.cc +298 -0
  1818. data/src/core/util/work_serializer.h +81 -0
  1819. data/src/core/util/xxhash_inline.h +29 -0
  1820. data/src/core/xds/grpc/certificate_provider_store.cc +16 -22
  1821. data/src/core/xds/grpc/certificate_provider_store.h +12 -13
  1822. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +8 -9
  1823. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +7 -8
  1824. data/src/core/xds/grpc/xds_audit_logger_registry.cc +5 -6
  1825. data/src/core/xds/grpc/xds_audit_logger_registry.h +3 -4
  1826. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +23 -24
  1827. data/src/core/xds/grpc/xds_bootstrap_grpc.h +6 -6
  1828. data/src/core/xds/grpc/xds_certificate_provider.cc +18 -19
  1829. data/src/core/xds/grpc/xds_certificate_provider.h +10 -11
  1830. data/src/core/xds/grpc/xds_client_grpc.cc +74 -50
  1831. data/src/core/xds/grpc/xds_client_grpc.h +17 -9
  1832. data/src/core/xds/grpc/xds_cluster.cc +9 -4
  1833. data/src/core/xds/grpc/xds_cluster.h +34 -8
  1834. data/src/core/xds/grpc/xds_cluster_parser.cc +131 -50
  1835. data/src/core/xds/grpc/xds_cluster_parser.h +6 -2
  1836. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +9 -11
  1837. data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +5 -6
  1838. data/src/core/xds/grpc/xds_common_types.cc +3 -4
  1839. data/src/core/xds/grpc/xds_common_types.h +6 -7
  1840. data/src/core/xds/grpc/xds_common_types_parser.cc +68 -34
  1841. data/src/core/xds/grpc/xds_common_types_parser.h +15 -9
  1842. data/src/core/xds/grpc/xds_endpoint.cc +3 -4
  1843. data/src/core/xds/grpc/xds_endpoint.h +7 -5
  1844. data/src/core/xds/grpc/xds_endpoint_parser.cc +92 -56
  1845. data/src/core/xds/grpc/xds_endpoint_parser.h +1 -2
  1846. data/src/core/xds/grpc/xds_health_status.cc +4 -4
  1847. data/src/core/xds/grpc/xds_health_status.h +4 -4
  1848. data/src/core/xds/grpc/xds_http_fault_filter.cc +24 -28
  1849. data/src/core/xds/grpc/xds_http_fault_filter.h +8 -8
  1850. data/src/core/xds/grpc/xds_http_filter.h +6 -7
  1851. data/src/core/xds/grpc/xds_http_filter_registry.cc +9 -10
  1852. data/src/core/xds/grpc/xds_http_filter_registry.h +6 -7
  1853. data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +12 -13
  1854. data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +6 -6
  1855. data/src/core/xds/grpc/xds_http_rbac_filter.cc +71 -61
  1856. data/src/core/xds/grpc/xds_http_rbac_filter.h +8 -8
  1857. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +15 -16
  1858. data/src/core/xds/grpc/xds_http_stateful_session_filter.h +8 -8
  1859. data/src/core/xds/grpc/xds_lb_policy_registry.cc +9 -11
  1860. data/src/core/xds/grpc/xds_lb_policy_registry.h +4 -5
  1861. data/src/core/xds/grpc/xds_listener.cc +5 -8
  1862. data/src/core/xds/grpc/xds_listener.h +11 -12
  1863. data/src/core/xds/grpc/xds_listener_parser.cc +62 -58
  1864. data/src/core/xds/grpc/xds_listener_parser.h +3 -3
  1865. data/src/core/xds/grpc/xds_metadata.cc +5 -5
  1866. data/src/core/xds/grpc/xds_metadata.h +34 -3
  1867. data/src/core/xds/grpc/xds_metadata_parser.cc +102 -48
  1868. data/src/core/xds/grpc/xds_metadata_parser.h +1 -2
  1869. data/src/core/xds/grpc/xds_route_config.cc +12 -18
  1870. data/src/core/xds/grpc/xds_route_config.h +12 -13
  1871. data/src/core/xds/grpc/xds_route_config_parser.cc +125 -129
  1872. data/src/core/xds/grpc/xds_route_config_parser.h +8 -11
  1873. data/src/core/xds/grpc/xds_routing.cc +8 -10
  1874. data/src/core/xds/grpc/xds_routing.h +7 -9
  1875. data/src/core/xds/grpc/xds_server_grpc.cc +83 -51
  1876. data/src/core/xds/grpc/xds_server_grpc.h +28 -15
  1877. data/src/core/xds/grpc/xds_server_grpc_interface.h +33 -0
  1878. data/src/core/xds/grpc/xds_transport_grpc.cc +101 -57
  1879. data/src/core/xds/grpc/xds_transport_grpc.h +33 -20
  1880. data/src/core/xds/xds_client/lrs_client.cc +1281 -0
  1881. data/src/core/xds/xds_client/lrs_client.h +394 -0
  1882. data/src/core/xds/xds_client/xds_api.cc +28 -465
  1883. data/src/core/xds/xds_client/xds_api.h +6 -161
  1884. data/src/core/xds/xds_client/xds_backend_metric_propagation.cc +63 -0
  1885. data/src/core/xds/xds_client/xds_backend_metric_propagation.h +59 -0
  1886. data/src/core/xds/xds_client/xds_bootstrap.cc +12 -3
  1887. data/src/core/xds/xds_client/xds_bootstrap.h +25 -3
  1888. data/src/core/xds/xds_client/xds_client.cc +1086 -1296
  1889. data/src/core/xds/xds_client/xds_client.h +170 -115
  1890. data/src/core/xds/xds_client/xds_locality.h +102 -0
  1891. data/src/core/xds/xds_client/xds_metrics.h +2 -2
  1892. data/src/core/xds/xds_client/xds_resource_type.h +7 -10
  1893. data/src/core/xds/xds_client/xds_resource_type_impl.h +15 -11
  1894. data/src/core/xds/xds_client/xds_transport.h +29 -14
  1895. data/src/ruby/ext/grpc/extconf.rb +2 -1
  1896. data/src/ruby/ext/grpc/rb_byte_buffer.c +3 -3
  1897. data/src/ruby/ext/grpc/rb_call.c +5 -5
  1898. data/src/ruby/ext/grpc/rb_call_credentials.c +5 -6
  1899. data/src/ruby/ext/grpc/rb_channel.c +6 -7
  1900. data/src/ruby/ext/grpc/rb_channel_args.c +3 -3
  1901. data/src/ruby/ext/grpc/rb_channel_credentials.c +5 -6
  1902. data/src/ruby/ext/grpc/rb_channel_credentials.h +1 -2
  1903. data/src/ruby/ext/grpc/rb_completion_queue.c +3 -4
  1904. data/src/ruby/ext/grpc/rb_compression_options.c +6 -7
  1905. data/src/ruby/ext/grpc/rb_event_thread.c +4 -5
  1906. data/src/ruby/ext/grpc/rb_grpc.c +3 -4
  1907. data/src/ruby/ext/grpc/rb_grpc.h +2 -3
  1908. data/src/ruby/ext/grpc/rb_server.c +6 -6
  1909. data/src/ruby/ext/grpc/rb_server_credentials.c +3 -3
  1910. data/src/ruby/ext/grpc/rb_server_credentials.h +1 -2
  1911. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +5 -6
  1912. data/src/ruby/ext/grpc/rb_xds_channel_credentials.h +1 -2
  1913. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +4 -4
  1914. data/src/ruby/ext/grpc/rb_xds_server_credentials.h +1 -2
  1915. data/src/ruby/lib/grpc/version.rb +1 -1
  1916. data/src/ruby/spec/generic/client_stub_spec.rb +20 -20
  1917. data/third_party/abseil-cpp/absl/algorithm/container.h +57 -18
  1918. data/third_party/abseil-cpp/absl/base/attributes.h +84 -0
  1919. data/third_party/abseil-cpp/absl/base/config.h +32 -51
  1920. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +0 -16
  1921. data/third_party/abseil-cpp/absl/base/internal/nullability_impl.h +3 -1
  1922. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +13 -3
  1923. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +0 -12
  1924. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +4 -4
  1925. data/third_party/abseil-cpp/absl/base/macros.h +48 -0
  1926. data/third_party/abseil-cpp/absl/base/no_destructor.h +35 -40
  1927. data/third_party/abseil-cpp/absl/base/nullability.h +33 -7
  1928. data/third_party/abseil-cpp/absl/base/optimization.h +11 -0
  1929. data/third_party/abseil-cpp/absl/base/options.h +1 -1
  1930. data/third_party/abseil-cpp/absl/base/prefetch.h +1 -1
  1931. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +68 -12
  1932. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +60 -6
  1933. data/third_party/abseil-cpp/absl/container/hash_container_defaults.h +45 -0
  1934. data/third_party/abseil-cpp/absl/container/inlined_vector.h +13 -0
  1935. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +20 -11
  1936. data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +15 -16
  1937. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +34 -1
  1938. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +68 -1
  1939. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +50 -0
  1940. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +22 -7
  1941. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +26 -8
  1942. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +39 -35
  1943. data/third_party/abseil-cpp/absl/container/internal/layout.h +190 -74
  1944. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +8 -6
  1945. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +334 -71
  1946. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1299 -458
  1947. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +19 -17
  1948. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +4 -3
  1949. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +2 -1
  1950. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_arm_combined.cc +12 -8
  1951. data/third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +1 -1
  1952. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +11 -7
  1953. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +18 -17
  1954. data/third_party/abseil-cpp/absl/debugging/internal/bounded_utf8_length_sequence.h +126 -0
  1955. data/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.cc +258 -0
  1956. data/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.h +55 -0
  1957. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +1057 -86
  1958. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +3 -0
  1959. data/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.cc +925 -0
  1960. data/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.h +42 -0
  1961. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +43 -16
  1962. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +8 -7
  1963. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +10 -7
  1964. data/third_party/abseil-cpp/absl/debugging/internal/utf8_for_code_point.cc +70 -0
  1965. data/third_party/abseil-cpp/absl/debugging/internal/utf8_for_code_point.h +47 -0
  1966. data/third_party/abseil-cpp/absl/flags/commandlineflag.h +11 -0
  1967. data/third_party/abseil-cpp/absl/flags/flag.h +2 -0
  1968. data/third_party/abseil-cpp/absl/flags/internal/flag.cc +117 -30
  1969. data/third_party/abseil-cpp/absl/flags/internal/flag.h +192 -30
  1970. data/third_party/abseil-cpp/absl/flags/reflection.cc +10 -0
  1971. data/third_party/abseil-cpp/absl/functional/any_invocable.h +13 -3
  1972. data/third_party/abseil-cpp/absl/functional/bind_front.h +3 -2
  1973. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +7 -7
  1974. data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +9 -9
  1975. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +1 -1
  1976. data/third_party/abseil-cpp/absl/hash/internal/hash.h +13 -3
  1977. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +60 -28
  1978. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.h +4 -0
  1979. data/third_party/abseil-cpp/absl/log/absl_vlog_is_on.h +3 -3
  1980. data/third_party/abseil-cpp/absl/log/globals.h +28 -15
  1981. data/third_party/abseil-cpp/absl/log/internal/check_op.cc +20 -0
  1982. data/third_party/abseil-cpp/absl/log/internal/check_op.h +63 -21
  1983. data/third_party/abseil-cpp/absl/log/internal/conditions.h +2 -2
  1984. data/third_party/abseil-cpp/absl/log/internal/log_impl.h +23 -23
  1985. data/third_party/abseil-cpp/absl/log/internal/log_message.cc +104 -47
  1986. data/third_party/abseil-cpp/absl/log/internal/log_message.h +23 -4
  1987. data/third_party/abseil-cpp/absl/log/internal/nullstream.h +1 -10
  1988. data/third_party/abseil-cpp/absl/log/internal/strip.h +36 -0
  1989. data/third_party/abseil-cpp/absl/log/log.h +5 -1
  1990. data/third_party/abseil-cpp/absl/log/log_sink.h +11 -4
  1991. data/third_party/abseil-cpp/absl/log/vlog_is_on.h +3 -3
  1992. data/third_party/abseil-cpp/absl/meta/type_traits.h +138 -42
  1993. data/third_party/abseil-cpp/absl/numeric/int128.cc +0 -3
  1994. data/third_party/abseil-cpp/absl/numeric/int128.h +35 -5
  1995. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +14 -0
  1996. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +18 -0
  1997. data/third_party/abseil-cpp/absl/numeric/internal/bits.h +6 -2
  1998. data/third_party/abseil-cpp/absl/random/beta_distribution.h +8 -8
  1999. data/third_party/abseil-cpp/absl/random/bit_gen_ref.h +9 -7
  2000. data/third_party/abseil-cpp/absl/random/distributions.h +11 -11
  2001. data/third_party/abseil-cpp/absl/random/seed_sequences.h +2 -0
  2002. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +61 -2
  2003. data/third_party/abseil-cpp/absl/status/status.cc +0 -4
  2004. data/third_party/abseil-cpp/absl/status/status.h +4 -4
  2005. data/third_party/abseil-cpp/absl/status/statusor.h +108 -142
  2006. data/third_party/abseil-cpp/absl/strings/ascii.cc +32 -71
  2007. data/third_party/abseil-cpp/absl/strings/cord.cc +20 -15
  2008. data/third_party/abseil-cpp/absl/strings/cord.h +68 -7
  2009. data/third_party/abseil-cpp/absl/strings/escaping.cc +96 -21
  2010. data/third_party/abseil-cpp/absl/strings/escaping.h +25 -8
  2011. data/third_party/abseil-cpp/absl/strings/has_absl_stringify.h +1 -0
  2012. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +10 -0
  2013. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +29 -9
  2014. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +2 -2
  2015. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc +19 -13
  2016. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +23 -13
  2017. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +24 -24
  2018. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +12 -7
  2019. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +9 -4
  2020. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +5 -2
  2021. data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +23 -2
  2022. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +5 -1
  2023. data/third_party/abseil-cpp/absl/strings/numbers.cc +107 -333
  2024. data/third_party/abseil-cpp/absl/strings/numbers.h +12 -151
  2025. data/third_party/abseil-cpp/absl/strings/str_cat.cc +49 -142
  2026. data/third_party/abseil-cpp/absl/strings/str_cat.h +70 -85
  2027. data/third_party/abseil-cpp/absl/strings/str_format.h +1 -1
  2028. data/third_party/abseil-cpp/absl/strings/str_join.h +19 -5
  2029. data/third_party/abseil-cpp/absl/strings/str_split.h +2 -2
  2030. data/third_party/abseil-cpp/absl/strings/string_view.h +3 -2
  2031. data/third_party/abseil-cpp/absl/strings/substitute.cc +4 -0
  2032. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +11 -2
  2033. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.h +5 -0
  2034. data/third_party/abseil-cpp/absl/synchronization/mutex.h +5 -4
  2035. data/third_party/abseil-cpp/absl/time/civil_time.h +2 -2
  2036. data/third_party/abseil-cpp/absl/time/clock.cc +15 -1
  2037. data/third_party/abseil-cpp/absl/time/duration.cc +58 -53
  2038. data/third_party/abseil-cpp/absl/time/format.cc +2 -1
  2039. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +1 -1
  2040. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +0 -29
  2041. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +3 -3
  2042. data/third_party/abseil-cpp/absl/time/time.h +73 -29
  2043. data/third_party/abseil-cpp/absl/types/compare.h +505 -0
  2044. data/third_party/abseil-cpp/absl/types/internal/optional.h +2 -2
  2045. data/third_party/abseil-cpp/absl/types/internal/variant.h +55 -67
  2046. data/third_party/abseil-cpp/absl/types/optional.h +15 -18
  2047. data/third_party/abseil-cpp/absl/types/span.h +3 -2
  2048. data/third_party/abseil-cpp/absl/types/variant.h +19 -24
  2049. data/third_party/abseil-cpp/absl/utility/utility.h +3 -41
  2050. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.cc +243 -0
  2051. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.cc +53 -0
  2052. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.cc +47 -0
  2053. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.cc +42 -0
  2054. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.cc +109 -0
  2055. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.cc +43 -0
  2056. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.cc +424 -0
  2057. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.cc +239 -0
  2058. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.cc +193 -0
  2059. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.cc +32 -0
  2060. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.cc +415 -0
  2061. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.cc +206 -0
  2062. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.cc +224 -0
  2063. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.cc +172 -0
  2064. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.cc +109 -0
  2065. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.cc +355 -0
  2066. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.cc +61 -0
  2067. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.cc +56 -0
  2068. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.cc +63 -0
  2069. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.cc +52 -0
  2070. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +13 -57
  2071. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.cc +241 -0
  2072. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.cc +932 -0
  2073. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.cc +669 -0
  2074. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.cc +164 -0
  2075. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.cc +276 -0
  2076. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.cc +84 -0
  2077. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.cc +229 -0
  2078. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.cc +434 -0
  2079. data/third_party/boringssl-with-bazel/src/crypto/bcm_support.h +19 -13
  2080. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.cc +658 -0
  2081. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.cc +268 -0
  2082. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.cc +511 -0
  2083. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.cc +50 -0
  2084. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.cc +193 -0
  2085. data/third_party/boringssl-with-bazel/src/crypto/bio/file.cc +292 -0
  2086. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.cc +152 -0
  2087. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +13 -55
  2088. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.cc +446 -0
  2089. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.cc +59 -0
  2090. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.cc +147 -0
  2091. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.cc +133 -0
  2092. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.cc +169 -0
  2093. data/third_party/boringssl-with-bazel/src/crypto/bn/bn_asn1.cc +57 -0
  2094. data/third_party/boringssl-with-bazel/src/crypto/bn/convert.cc +423 -0
  2095. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.cc +118 -0
  2096. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.cc +53 -0
  2097. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.cc +266 -0
  2098. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.cc +702 -0
  2099. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.cc +912 -0
  2100. data/third_party/boringssl-with-bazel/src/crypto/bytestring/internal.h +13 -13
  2101. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.cc +156 -0
  2102. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.cc +224 -0
  2103. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +18 -18
  2104. data/third_party/boringssl-with-bazel/src/crypto/cipher/derive_key.cc +110 -0
  2105. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aesctrhmac.cc +279 -0
  2106. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aesgcmsiv.cc +845 -0
  2107. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_chacha20poly1305.cc +341 -0
  2108. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_des.cc +198 -0
  2109. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_null.cc +51 -0
  2110. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc2.cc +417 -0
  2111. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc4.cc +54 -0
  2112. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_tls.cc +599 -0
  2113. data/third_party/boringssl-with-bazel/src/crypto/cipher/get_cipher.cc +85 -0
  2114. data/third_party/boringssl-with-bazel/src/crypto/cipher/internal.h +240 -0
  2115. data/third_party/boringssl-with-bazel/src/crypto/cipher/tls_cbc.cc +476 -0
  2116. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.cc +631 -0
  2117. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +13 -13
  2118. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.cc +73 -0
  2119. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.cc +53 -0
  2120. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.cc +60 -0
  2121. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.cc +59 -0
  2122. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.cc +92 -0
  2123. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.cc +39 -0
  2124. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.cc +53 -0
  2125. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.cc +150 -0
  2126. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.h +13 -13
  2127. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.cc +287 -0
  2128. data/third_party/boringssl-with-bazel/src/crypto/crypto.cc +181 -0
  2129. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.cc +2154 -0
  2130. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.cc +18 -0
  2131. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +13 -13
  2132. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +13 -13
  2133. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.cc +529 -0
  2134. data/third_party/boringssl-with-bazel/src/crypto/des/des.cc +829 -0
  2135. data/third_party/boringssl-with-bazel/src/crypto/des/internal.h +27 -69
  2136. data/third_party/boringssl-with-bazel/src/crypto/dh/dh_asn1.cc +124 -0
  2137. data/third_party/boringssl-with-bazel/src/crypto/dh/params.cc +442 -0
  2138. data/third_party/boringssl-with-bazel/src/crypto/digest/digest_extra.cc +306 -0
  2139. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.cc +951 -0
  2140. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.cc +379 -0
  2141. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +13 -15
  2142. data/third_party/boringssl-with-bazel/src/crypto/ec/ec_asn1.cc +570 -0
  2143. data/third_party/boringssl-with-bazel/src/crypto/ec/ec_derive.cc +96 -0
  2144. data/third_party/boringssl-with-bazel/src/crypto/ec/hash_to_curve.cc +510 -0
  2145. data/third_party/boringssl-with-bazel/src/crypto/ec/internal.h +78 -0
  2146. data/third_party/boringssl-with-bazel/src/crypto/ecdh/ecdh.cc +73 -0
  2147. data/third_party/boringssl-with-bazel/src/crypto/ecdsa/ecdsa_asn1.cc +357 -0
  2148. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.cc +95 -0
  2149. data/third_party/boringssl-with-bazel/src/crypto/err/err.cc +810 -0
  2150. data/third_party/boringssl-with-bazel/src/crypto/err/internal.h +13 -13
  2151. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.cc +379 -0
  2152. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.cc +471 -0
  2153. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.cc +440 -0
  2154. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +13 -55
  2155. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.cc +153 -0
  2156. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.cc +142 -0
  2157. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.cc +279 -0
  2158. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.cc +230 -0
  2159. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.cc +286 -0
  2160. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.cc +103 -0
  2161. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.cc +225 -0
  2162. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.cc +236 -0
  2163. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.cc +609 -0
  2164. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.cc +198 -0
  2165. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.cc +109 -0
  2166. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.cc +237 -0
  2167. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.cc +98 -0
  2168. data/third_party/boringssl-with-bazel/src/crypto/evp/print.cc +342 -0
  2169. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.cc +216 -0
  2170. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.cc +114 -0
  2171. data/third_party/boringssl-with-bazel/src/crypto/ex_data.cc +141 -0
  2172. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.cc.inc +191 -0
  2173. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.cc.inc +1281 -0
  2174. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/cbc.cc.inc +130 -0
  2175. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/cfb.cc.inc +166 -0
  2176. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ctr.cc.inc +100 -0
  2177. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/gcm.cc.inc +604 -0
  2178. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/gcm_nohw.cc.inc +302 -0
  2179. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +419 -70
  2180. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.cc.inc +208 -0
  2181. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.cc.inc +84 -0
  2182. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ofb.cc.inc +53 -0
  2183. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/polyval.cc.inc +89 -0
  2184. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.cc +282 -0
  2185. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm_interface.h +665 -25
  2186. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.cc.inc +269 -0
  2187. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +554 -0
  2188. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.cc.inc +374 -0
  2189. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.cc.inc +225 -0
  2190. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.cc.inc +159 -0
  2191. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.cc.inc +191 -0
  2192. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.cc.inc +825 -0
  2193. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.cc.inc +87 -0
  2194. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.cc.inc +1227 -0
  2195. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.cc.inc +300 -0
  2196. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.cc.inc +339 -0
  2197. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.cc.inc +582 -0
  2198. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +25 -134
  2199. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.cc.inc +108 -0
  2200. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.cc.inc +430 -0
  2201. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.cc.inc +222 -0
  2202. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.cc.inc +698 -0
  2203. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.cc.inc +980 -0
  2204. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.cc.inc +260 -0
  2205. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.cc.inc +142 -0
  2206. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.h +20 -17
  2207. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.cc.inc +320 -0
  2208. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.cc.inc +459 -0
  2209. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.cc.inc +295 -0
  2210. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.cc.inc +672 -0
  2211. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.cc.inc +1242 -0
  2212. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.cc.inc +409 -0
  2213. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +14 -65
  2214. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.cc.inc +288 -0
  2215. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +26 -22
  2216. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.cc.inc +203 -0
  2217. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.cc.inc +443 -0
  2218. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/internal.h +13 -15
  2219. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.cc.inc +250 -0
  2220. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.cc.inc +178 -0
  2221. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/internal.h +13 -55
  2222. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +13 -47
  2223. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.cc.inc +226 -0
  2224. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/builtin_curves.h +91 -91
  2225. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.cc.inc +986 -0
  2226. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.cc.inc +501 -0
  2227. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.cc.inc +439 -0
  2228. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.cc.inc +104 -0
  2229. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +19 -66
  2230. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.cc.inc +306 -0
  2231. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.cc.inc +1163 -0
  2232. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz-table.h +15 -10
  2233. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.cc.inc +741 -0
  2234. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.h +22 -17
  2235. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.cc.inc +749 -0
  2236. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +13 -13
  2237. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.cc.inc +179 -0
  2238. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.cc.inc +284 -0
  2239. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.cc.inc +269 -0
  2240. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.cc.inc +255 -0
  2241. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.cc.inc +221 -0
  2242. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.cc.inc +88 -0
  2243. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +278 -0
  2244. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +13 -13
  2245. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.cc +28 -0
  2246. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.cc.inc +112 -0
  2247. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.cc.inc +215 -0
  2248. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/keccak/internal.h +70 -0
  2249. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/keccak/keccak.cc.inc +279 -0
  2250. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mldsa/mldsa.cc.inc +1993 -0
  2251. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mlkem/mlkem.cc.inc +1165 -0
  2252. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.cc.inc +214 -0
  2253. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +18 -24
  2254. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.cc.inc +483 -0
  2255. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.cc.inc +147 -0
  2256. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +13 -56
  2257. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.cc.inc +379 -0
  2258. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.cc.inc +983 -0
  2259. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1296 -0
  2260. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  2261. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.cc.inc +1042 -0
  2262. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/internal.h +34 -34
  2263. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +327 -0
  2264. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +43 -57
  2265. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.cc.inc +390 -0
  2266. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.cc.inc +299 -0
  2267. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  2268. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/address.h +119 -0
  2269. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.cc.inc +169 -0
  2270. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.h +58 -0
  2271. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.cc.inc +161 -0
  2272. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.h +70 -0
  2273. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/params.h +78 -0
  2274. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +329 -0
  2275. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.cc.inc +173 -0
  2276. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.h +85 -0
  2277. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.cc.inc +171 -0
  2278. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.h +50 -0
  2279. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +13 -13
  2280. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  2281. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.cc +1095 -0
  2282. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.cc +2185 -0
  2283. data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +13 -13
  2284. data/third_party/boringssl-with-bazel/src/crypto/internal.h +262 -445
  2285. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +13 -13
  2286. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.cc +869 -0
  2287. data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +31 -75
  2288. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.cc +309 -0
  2289. data/third_party/boringssl-with-bazel/src/crypto/md4/md4.cc +194 -0
  2290. data/third_party/boringssl-with-bazel/src/crypto/md5/internal.h +37 -0
  2291. data/third_party/boringssl-with-bazel/src/crypto/md5/md5.cc +243 -0
  2292. data/third_party/boringssl-with-bazel/src/crypto/mem.cc +583 -0
  2293. data/third_party/boringssl-with-bazel/src/crypto/mldsa/mldsa.cc +90 -0
  2294. data/third_party/boringssl-with-bazel/src/crypto/mlkem/mlkem.cc +97 -1042
  2295. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.cc +519 -0
  2296. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +14 -56
  2297. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.cc +80 -0
  2298. data/third_party/boringssl-with-bazel/src/crypto/pem/internal.h +44 -0
  2299. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.cc +149 -0
  2300. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.cc +254 -0
  2301. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.cc +741 -0
  2302. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.cc +45 -0
  2303. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.cc +208 -0
  2304. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.cc +141 -0
  2305. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.cc +22 -0
  2306. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.cc +22 -0
  2307. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +13 -13
  2308. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.cc +193 -0
  2309. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.cc +526 -0
  2310. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +13 -54
  2311. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.cc +275 -0
  2312. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.cc +487 -0
  2313. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.cc +1304 -0
  2314. data/third_party/boringssl-with-bazel/src/crypto/poly1305/internal.h +13 -13
  2315. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.cc +314 -0
  2316. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.cc +310 -0
  2317. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.cc +850 -0
  2318. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +13 -13
  2319. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.cc +262 -0
  2320. data/third_party/boringssl-with-bazel/src/crypto/rand/deterministic.cc +65 -0
  2321. data/third_party/boringssl-with-bazel/src/crypto/rand/fork_detect.cc +194 -0
  2322. data/third_party/boringssl-with-bazel/src/crypto/rand/forkunsafe.cc +44 -0
  2323. data/third_party/boringssl-with-bazel/src/crypto/rand/getentropy.cc +60 -0
  2324. data/third_party/boringssl-with-bazel/src/crypto/rand/getrandom_fillin.h +64 -0
  2325. data/third_party/boringssl-with-bazel/src/crypto/rand/ios.cc +42 -0
  2326. data/third_party/boringssl-with-bazel/src/crypto/rand/passive.cc +178 -0
  2327. data/third_party/boringssl-with-bazel/src/crypto/rand/rand.cc +77 -0
  2328. data/third_party/boringssl-with-bazel/src/crypto/rand/sysrand_internal.h +37 -0
  2329. data/third_party/boringssl-with-bazel/src/crypto/rand/trusty.cc +46 -0
  2330. data/third_party/boringssl-with-bazel/src/crypto/rand/urandom.cc +328 -0
  2331. data/third_party/boringssl-with-bazel/src/crypto/rand/windows.cc +102 -0
  2332. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.cc +56 -0
  2333. data/third_party/boringssl-with-bazel/src/crypto/refcount.cc +59 -0
  2334. data/third_party/boringssl-with-bazel/src/crypto/rsa/internal.h +36 -0
  2335. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_asn1.cc +283 -0
  2336. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_crypt.cc +531 -0
  2337. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_extra.cc +19 -0
  2338. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_print.cc +27 -0
  2339. data/third_party/boringssl-with-bazel/src/crypto/sha/sha1.cc +52 -0
  2340. data/third_party/boringssl-with-bazel/src/crypto/sha/sha256.cc +87 -0
  2341. data/third_party/boringssl-with-bazel/src/crypto/sha/sha512.cc +104 -0
  2342. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.cc +79 -0
  2343. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/slhdsa.cc +113 -0
  2344. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/internal.h +204 -0
  2345. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/spake2plus.cc +501 -0
  2346. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.cc +496 -0
  2347. data/third_party/boringssl-with-bazel/src/crypto/thread.cc +68 -0
  2348. data/third_party/boringssl-with-bazel/src/crypto/thread_none.cc +51 -0
  2349. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.cc +151 -0
  2350. data/third_party/boringssl-with-bazel/src/crypto/thread_win.cc +240 -0
  2351. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +13 -13
  2352. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.cc +1656 -0
  2353. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.cc +685 -0
  2354. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.cc +1263 -0
  2355. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.cc +52 -0
  2356. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.cc +97 -0
  2357. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.cc +74 -0
  2358. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.cc +136 -0
  2359. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.cc +542 -0
  2360. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.cc +355 -0
  2361. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.cc +227 -0
  2362. data/third_party/boringssl-with-bazel/src/crypto/x509/ext_dat.h +13 -55
  2363. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.cc +37 -0
  2364. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +13 -57
  2365. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.cc +185 -0
  2366. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.cc +796 -0
  2367. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.cc +364 -0
  2368. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.cc +103 -0
  2369. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.cc +203 -0
  2370. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.cc +287 -0
  2371. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.cc +79 -0
  2372. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.cc +181 -0
  2373. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.cc +31 -0
  2374. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.cc +593 -0
  2375. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.cc +95 -0
  2376. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.cc +102 -0
  2377. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.cc +374 -0
  2378. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.cc +444 -0
  2379. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.cc +557 -0
  2380. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.cc +73 -0
  2381. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.cc +114 -0
  2382. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.cc +228 -0
  2383. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.cc +79 -0
  2384. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.cc +164 -0
  2385. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.cc +81 -0
  2386. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.cc +304 -0
  2387. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.cc +514 -0
  2388. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.cc +89 -0
  2389. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.cc +101 -0
  2390. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.cc +109 -0
  2391. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.cc +183 -0
  2392. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.cc +590 -0
  2393. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.cc +131 -0
  2394. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.cc +1342 -0
  2395. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.cc +47 -0
  2396. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.cc +186 -0
  2397. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.cc +238 -0
  2398. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.cc +66 -0
  2399. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.cc +44 -0
  2400. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.cc +139 -0
  2401. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.cc +554 -0
  2402. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.cc +164 -0
  2403. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.cc +257 -0
  2404. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.cc +198 -0
  2405. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.cc +118 -0
  2406. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.cc +147 -0
  2407. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.cc +249 -0
  2408. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.cc +1600 -0
  2409. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.cc +440 -0
  2410. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.cc +235 -0
  2411. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.cc +365 -0
  2412. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.cc +67 -0
  2413. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.cc +91 -0
  2414. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.cc +107 -0
  2415. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.cc +318 -0
  2416. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.cc +55 -0
  2417. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.cc +342 -0
  2418. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.cc +36 -0
  2419. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.cc +492 -0
  2420. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.cc +170 -0
  2421. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.cc +74 -0
  2422. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.cc +51 -0
  2423. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.cc +34 -0
  2424. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.cc +28 -0
  2425. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.cc +506 -0
  2426. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.cc +169 -0
  2427. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.cc +1529 -0
  2428. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +13 -13
  2429. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +13 -47
  2430. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +16 -76
  2431. data/third_party/boringssl-with-bazel/src/include/openssl/asm_base.h +14 -14
  2432. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +23 -62
  2433. data/third_party/boringssl-with-bazel/src/include/openssl/asn1_mac.h +13 -13
  2434. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +248 -328
  2435. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +24 -55
  2436. data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +13 -55
  2437. data/third_party/boringssl-with-bazel/src/include/openssl/bcm_public.h +82 -0
  2438. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +13 -55
  2439. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +13 -13
  2440. data/third_party/boringssl-with-bazel/src/include/openssl/blowfish.h +13 -55
  2441. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +14 -121
  2442. data/third_party/boringssl-with-bazel/src/include/openssl/buf.h +13 -55
  2443. data/third_party/boringssl-with-bazel/src/include/openssl/buffer.h +13 -13
  2444. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +31 -16
  2445. data/third_party/boringssl-with-bazel/src/include/openssl/cast.h +13 -55
  2446. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +13 -13
  2447. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +31 -59
  2448. data/third_party/boringssl-with-bazel/src/include/openssl/cmac.h +13 -13
  2449. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +13 -55
  2450. data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +13 -13
  2451. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +25 -14
  2452. data/third_party/boringssl-with-bazel/src/include/openssl/ctrdrbg.h +13 -13
  2453. data/third_party/boringssl-with-bazel/src/include/openssl/curve25519.h +13 -13
  2454. data/third_party/boringssl-with-bazel/src/include/openssl/des.h +13 -55
  2455. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +17 -55
  2456. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +19 -56
  2457. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +17 -58
  2458. data/third_party/boringssl-with-bazel/src/include/openssl/dtls1.h +13 -13
  2459. data/third_party/boringssl-with-bazel/src/include/openssl/e_os2.h +13 -13
  2460. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +14 -66
  2461. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +31 -72
  2462. data/third_party/boringssl-with-bazel/src/include/openssl/ecdh.h +14 -65
  2463. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +13 -51
  2464. data/third_party/boringssl-with-bazel/src/include/openssl/engine.h +13 -13
  2465. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +13 -107
  2466. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +14 -56
  2467. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +13 -55
  2468. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +13 -107
  2469. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/kyber.h +13 -13
  2470. data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +13 -13
  2471. data/third_party/boringssl-with-bazel/src/include/openssl/hmac.h +13 -55
  2472. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +13 -13
  2473. data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +13 -13
  2474. data/third_party/boringssl-with-bazel/src/include/openssl/is_boringssl.h +13 -13
  2475. data/third_party/boringssl-with-bazel/src/include/openssl/kdf.h +13 -13
  2476. data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +13 -55
  2477. data/third_party/boringssl-with-bazel/src/include/openssl/md4.h +13 -55
  2478. data/third_party/boringssl-with-bazel/src/include/openssl/md5.h +13 -55
  2479. data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +13 -55
  2480. data/third_party/boringssl-with-bazel/src/include/openssl/mldsa.h +20 -26
  2481. data/third_party/boringssl-with-bazel/src/include/openssl/mlkem.h +13 -37
  2482. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +27 -69
  2483. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +13 -55
  2484. data/third_party/boringssl-with-bazel/src/include/openssl/obj_mac.h +13 -13
  2485. data/third_party/boringssl-with-bazel/src/include/openssl/objects.h +13 -13
  2486. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +13 -13
  2487. data/third_party/boringssl-with-bazel/src/include/openssl/opensslv.h +13 -13
  2488. data/third_party/boringssl-with-bazel/src/include/openssl/ossl_typ.h +13 -13
  2489. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +22 -60
  2490. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs12.h +13 -13
  2491. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +13 -13
  2492. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +13 -55
  2493. data/third_party/boringssl-with-bazel/src/include/openssl/poly1305.h +13 -13
  2494. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +13 -13
  2495. data/third_party/boringssl-with-bazel/src/include/openssl/posix_time.h +13 -13
  2496. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +13 -13
  2497. data/third_party/boringssl-with-bazel/src/include/openssl/rc4.h +13 -55
  2498. data/third_party/boringssl-with-bazel/src/include/openssl/ripemd.h +13 -55
  2499. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +23 -63
  2500. data/third_party/boringssl-with-bazel/src/include/openssl/safestack.h +13 -13
  2501. data/third_party/boringssl-with-bazel/src/include/openssl/service_indicator.h +13 -13
  2502. data/third_party/boringssl-with-bazel/src/include/openssl/sha.h +15 -95
  2503. data/third_party/boringssl-with-bazel/src/include/openssl/siphash.h +13 -13
  2504. data/third_party/boringssl-with-bazel/src/include/openssl/slhdsa.h +174 -0
  2505. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +24 -32
  2506. data/third_party/boringssl-with-bazel/src/include/openssl/srtp.h +13 -13
  2507. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +358 -290
  2508. data/third_party/boringssl-with-bazel/src/include/openssl/ssl3.h +15 -114
  2509. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +13 -55
  2510. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +23 -13
  2511. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +15 -57
  2512. data/third_party/boringssl-with-bazel/src/include/openssl/time.h +13 -13
  2513. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +27 -156
  2514. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +15 -15
  2515. data/third_party/boringssl-with-bazel/src/include/openssl/type_check.h +13 -55
  2516. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +14 -61
  2517. data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +13 -13
  2518. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +13 -13
  2519. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3_errors.h +13 -53
  2520. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +15 -14
  2521. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +680 -434
  2522. data/third_party/boringssl-with-bazel/src/ssl/d1_lib.cc +129 -174
  2523. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +176 -131
  2524. data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +21 -127
  2525. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +107 -104
  2526. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +311 -312
  2527. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +54 -47
  2528. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +673 -475
  2529. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +66 -73
  2530. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +61 -153
  2531. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +199 -332
  2532. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +89 -213
  2533. data/third_party/boringssl-with-bazel/src/ssl/internal.h +961 -536
  2534. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +47 -157
  2535. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +29 -159
  2536. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +18 -112
  2537. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +103 -196
  2538. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +52 -145
  2539. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +15 -20
  2540. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +117 -157
  2541. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +229 -365
  2542. data/third_party/boringssl-with-bazel/src/ssl/ssl_credential.cc +218 -32
  2543. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +13 -109
  2544. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +34 -33
  2545. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +194 -350
  2546. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +38 -83
  2547. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +101 -236
  2548. data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +17 -91
  2549. data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +109 -157
  2550. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +44 -30
  2551. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +66 -195
  2552. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +45 -176
  2553. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +58 -42
  2554. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +147 -95
  2555. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +251 -180
  2556. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +237 -108
  2557. data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +64 -117
  2558. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +52 -134
  2559. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_32.h +6 -0
  2560. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64.h +6 -0
  2561. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64_adx.h +4 -1
  2562. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_32.h +1 -1
  2563. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64.h +3 -0
  2564. data/third_party/upb/upb/base/internal/log2.h +3 -1
  2565. data/third_party/upb/upb/base/string_view.h +10 -0
  2566. data/third_party/upb/upb/hash/common.c +5 -1
  2567. data/third_party/upb/upb/json/decode.c +59 -13
  2568. data/third_party/upb/upb/json/decode.h +25 -3
  2569. data/third_party/upb/upb/json/encode.c +2 -2
  2570. data/third_party/upb/upb/lex/round_trip.c +10 -0
  2571. data/third_party/upb/upb/mem/alloc.h +5 -0
  2572. data/third_party/upb/upb/mem/arena.c +306 -141
  2573. data/third_party/upb/upb/mem/arena.h +56 -11
  2574. data/third_party/upb/upb/mem/arena.hpp +9 -21
  2575. data/third_party/upb/upb/mem/internal/arena.h +4 -6
  2576. data/third_party/upb/upb/message/accessors.c +2 -4
  2577. data/third_party/upb/upb/message/accessors.h +219 -379
  2578. data/third_party/upb/upb/message/compat.c +11 -14
  2579. data/third_party/upb/upb/message/compat.h +4 -3
  2580. data/third_party/upb/upb/message/copy.c +46 -37
  2581. data/third_party/upb/upb/message/internal/accessors.h +717 -36
  2582. data/third_party/upb/upb/message/internal/extension.c +29 -25
  2583. data/third_party/upb/upb/message/internal/extension.h +21 -5
  2584. data/third_party/upb/upb/message/internal/iterator.c +58 -0
  2585. data/third_party/upb/upb/message/internal/iterator.h +29 -0
  2586. data/third_party/upb/upb/message/internal/map.h +2 -3
  2587. data/third_party/upb/upb/message/internal/map_sorter.h +3 -2
  2588. data/third_party/upb/upb/message/internal/message.c +57 -39
  2589. data/third_party/upb/upb/message/internal/message.h +162 -31
  2590. data/third_party/upb/upb/message/map_sorter.c +20 -8
  2591. data/third_party/upb/upb/message/merge.c +38 -0
  2592. data/third_party/upb/upb/message/merge.h +26 -0
  2593. data/third_party/upb/upb/message/message.c +90 -38
  2594. data/third_party/upb/upb/message/message.h +64 -12
  2595. data/third_party/upb/upb/message/value.h +35 -0
  2596. data/third_party/upb/upb/mini_descriptor/build_enum.c +1 -1
  2597. data/third_party/upb/upb/mini_descriptor/decode.c +104 -138
  2598. data/third_party/upb/upb/mini_descriptor/decode.h +4 -3
  2599. data/third_party/upb/upb/mini_descriptor/internal/encode.hpp +1 -1
  2600. data/third_party/upb/upb/mini_descriptor/link.c +7 -3
  2601. data/third_party/upb/upb/mini_table/extension_registry.c +41 -11
  2602. data/third_party/upb/upb/mini_table/extension_registry.h +30 -6
  2603. data/third_party/upb/upb/mini_table/internal/extension.h +9 -0
  2604. data/third_party/upb/upb/mini_table/internal/message.c +21 -1
  2605. data/third_party/upb/upb/mini_table/internal/message.h +40 -20
  2606. data/third_party/upb/upb/mini_table/internal/sub.h +5 -0
  2607. data/third_party/upb/upb/mini_table/message.c +21 -13
  2608. data/third_party/upb/upb/mini_table/message.h +11 -1
  2609. data/third_party/upb/upb/port/atomic.h +134 -7
  2610. data/third_party/upb/upb/port/def.inc +229 -37
  2611. data/third_party/upb/upb/port/undef.inc +17 -0
  2612. data/third_party/upb/upb/reflection/common.h +1 -11
  2613. data/third_party/upb/upb/reflection/def.hpp +13 -1
  2614. data/third_party/upb/upb/reflection/def_pool.c +10 -3
  2615. data/third_party/upb/upb/reflection/descriptor_bootstrap.h +19 -0
  2616. data/third_party/upb/upb/reflection/field_def.c +11 -22
  2617. data/third_party/upb/upb/reflection/field_def.h +1 -0
  2618. data/third_party/upb/upb/reflection/file_def.c +12 -5
  2619. data/third_party/upb/upb/reflection/internal/def_builder.c +1 -1
  2620. data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +1 -1
  2621. data/third_party/upb/upb/reflection/message.c +27 -19
  2622. data/third_party/upb/upb/reflection/message.h +5 -3
  2623. data/third_party/upb/upb/text/encode.c +51 -406
  2624. data/third_party/upb/upb/text/encode.h +1 -11
  2625. data/third_party/upb/upb/text/internal/encode.c +199 -0
  2626. data/third_party/upb/upb/text/internal/encode.h +244 -0
  2627. data/third_party/upb/upb/text/options.h +22 -0
  2628. data/third_party/upb/upb/wire/decode.c +130 -83
  2629. data/third_party/upb/upb/wire/decode.h +8 -3
  2630. data/third_party/upb/upb/wire/encode.c +113 -55
  2631. data/third_party/upb/upb/wire/encode.h +5 -0
  2632. data/third_party/upb/upb/wire/eps_copy_input_stream.h +18 -20
  2633. data/third_party/upb/upb/wire/internal/decode_fast.c +3 -0
  2634. data/third_party/upb/upb/wire/internal/decoder.h +4 -11
  2635. data/third_party/utf8_range/utf8_range.c +15 -275
  2636. data/third_party/utf8_range/utf8_range_neon.inc +117 -0
  2637. data/third_party/utf8_range/utf8_range_sse.inc +272 -0
  2638. data/third_party/zlib/deflate.c +40 -15
  2639. data/third_party/zlib/deflate.h +33 -2
  2640. data/third_party/zlib/gzguts.h +2 -6
  2641. data/third_party/zlib/inflate.c +1 -1
  2642. data/third_party/zlib/inftrees.c +3 -3
  2643. data/third_party/zlib/inftrees.h +2 -2
  2644. data/third_party/zlib/trees.c +18 -4
  2645. data/third_party/zlib/zconf.h +1 -9
  2646. data/third_party/zlib/zlib.h +12 -12
  2647. data/third_party/zlib/zutil.h +4 -25
  2648. metadata +648 -599
  2649. data/include/grpc/grpc_cronet.h +0 -37
  2650. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb.h +0 -419
  2651. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.c +0 -84
  2652. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.h +0 -30
  2653. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb.h +0 -400
  2654. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.c +0 -118
  2655. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.h +0 -33
  2656. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.c +0 -107
  2657. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.h +0 -32
  2658. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.c +0 -66
  2659. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.h +0 -47
  2660. data/src/core/lib/avl/avl.h +0 -325
  2661. data/src/core/lib/backoff/backoff.cc +0 -44
  2662. data/src/core/lib/backoff/backoff.h +0 -87
  2663. data/src/core/lib/backoff/random_early_detection.cc +0 -33
  2664. data/src/core/lib/backoff/random_early_detection.h +0 -62
  2665. data/src/core/lib/channel/call_finalization.h +0 -88
  2666. data/src/core/lib/channel/status_util.cc +0 -155
  2667. data/src/core/lib/channel/status_util.h +0 -80
  2668. data/src/core/lib/config/config_vars.cc +0 -152
  2669. data/src/core/lib/config/config_vars.h +0 -129
  2670. data/src/core/lib/config/config_vars_non_generated.cc +0 -49
  2671. data/src/core/lib/config/core_configuration.cc +0 -111
  2672. data/src/core/lib/config/core_configuration.h +0 -243
  2673. data/src/core/lib/config/load_config.cc +0 -79
  2674. data/src/core/lib/config/load_config.h +0 -55
  2675. data/src/core/lib/debug/event_log.cc +0 -87
  2676. data/src/core/lib/debug/event_log.h +0 -81
  2677. data/src/core/lib/gprpp/atomic_utils.h +0 -47
  2678. data/src/core/lib/gprpp/bitset.h +0 -225
  2679. data/src/core/lib/gprpp/chunked_vector.h +0 -257
  2680. data/src/core/lib/gprpp/construct_destruct.h +0 -40
  2681. data/src/core/lib/gprpp/cpp_impl_of.h +0 -49
  2682. data/src/core/lib/gprpp/crash.cc +0 -41
  2683. data/src/core/lib/gprpp/crash.h +0 -37
  2684. data/src/core/lib/gprpp/debug_location.h +0 -106
  2685. data/src/core/lib/gprpp/directory_reader.h +0 -48
  2686. data/src/core/lib/gprpp/down_cast.h +0 -48
  2687. data/src/core/lib/gprpp/dual_ref_counted.h +0 -377
  2688. data/src/core/lib/gprpp/dump_args.cc +0 -54
  2689. data/src/core/lib/gprpp/dump_args.h +0 -117
  2690. data/src/core/lib/gprpp/env.h +0 -53
  2691. data/src/core/lib/gprpp/examine_stack.cc +0 -43
  2692. data/src/core/lib/gprpp/examine_stack.h +0 -45
  2693. data/src/core/lib/gprpp/fork.cc +0 -241
  2694. data/src/core/lib/gprpp/fork.h +0 -98
  2695. data/src/core/lib/gprpp/glob.h +0 -29
  2696. data/src/core/lib/gprpp/host_port.cc +0 -115
  2697. data/src/core/lib/gprpp/host_port.h +0 -57
  2698. data/src/core/lib/gprpp/if_list.h +0 -4530
  2699. data/src/core/lib/gprpp/linux/env.cc +0 -62
  2700. data/src/core/lib/gprpp/load_file.cc +0 -76
  2701. data/src/core/lib/gprpp/load_file.h +0 -34
  2702. data/src/core/lib/gprpp/manual_constructor.h +0 -146
  2703. data/src/core/lib/gprpp/match.h +0 -75
  2704. data/src/core/lib/gprpp/memory.h +0 -52
  2705. data/src/core/lib/gprpp/mpscq.cc +0 -108
  2706. data/src/core/lib/gprpp/mpscq.h +0 -99
  2707. data/src/core/lib/gprpp/no_destruct.h +0 -95
  2708. data/src/core/lib/gprpp/notification.h +0 -67
  2709. data/src/core/lib/gprpp/orphanable.h +0 -153
  2710. data/src/core/lib/gprpp/overload.h +0 -59
  2711. data/src/core/lib/gprpp/packed_table.h +0 -40
  2712. data/src/core/lib/gprpp/per_cpu.cc +0 -34
  2713. data/src/core/lib/gprpp/per_cpu.h +0 -103
  2714. data/src/core/lib/gprpp/posix/directory_reader.cc +0 -82
  2715. data/src/core/lib/gprpp/posix/env.cc +0 -47
  2716. data/src/core/lib/gprpp/posix/stat.cc +0 -55
  2717. data/src/core/lib/gprpp/posix/thd.cc +0 -246
  2718. data/src/core/lib/gprpp/ref_counted.h +0 -403
  2719. data/src/core/lib/gprpp/ref_counted_ptr.h +0 -445
  2720. data/src/core/lib/gprpp/ref_counted_string.cc +0 -43
  2721. data/src/core/lib/gprpp/ref_counted_string.h +0 -161
  2722. data/src/core/lib/gprpp/single_set_ptr.h +0 -89
  2723. data/src/core/lib/gprpp/sorted_pack.h +0 -89
  2724. data/src/core/lib/gprpp/stat.h +0 -36
  2725. data/src/core/lib/gprpp/status_helper.cc +0 -433
  2726. data/src/core/lib/gprpp/status_helper.h +0 -162
  2727. data/src/core/lib/gprpp/strerror.cc +0 -41
  2728. data/src/core/lib/gprpp/strerror.h +0 -29
  2729. data/src/core/lib/gprpp/sync.h +0 -199
  2730. data/src/core/lib/gprpp/table.h +0 -488
  2731. data/src/core/lib/gprpp/tchar.cc +0 -49
  2732. data/src/core/lib/gprpp/tchar.h +0 -33
  2733. data/src/core/lib/gprpp/thd.h +0 -194
  2734. data/src/core/lib/gprpp/time.cc +0 -241
  2735. data/src/core/lib/gprpp/time.h +0 -379
  2736. data/src/core/lib/gprpp/time_averaged_stats.cc +0 -60
  2737. data/src/core/lib/gprpp/time_averaged_stats.h +0 -79
  2738. data/src/core/lib/gprpp/time_util.cc +0 -81
  2739. data/src/core/lib/gprpp/time_util.h +0 -41
  2740. data/src/core/lib/gprpp/type_list.h +0 -32
  2741. data/src/core/lib/gprpp/unique_type_name.h +0 -124
  2742. data/src/core/lib/gprpp/uuid_v4.cc +0 -37
  2743. data/src/core/lib/gprpp/uuid_v4.h +0 -36
  2744. data/src/core/lib/gprpp/validation_errors.cc +0 -74
  2745. data/src/core/lib/gprpp/validation_errors.h +0 -145
  2746. data/src/core/lib/gprpp/windows/directory_reader.cc +0 -79
  2747. data/src/core/lib/gprpp/windows/env.cc +0 -56
  2748. data/src/core/lib/gprpp/windows/stat.cc +0 -51
  2749. data/src/core/lib/gprpp/windows/thd.cc +0 -184
  2750. data/src/core/lib/gprpp/work_serializer.cc +0 -543
  2751. data/src/core/lib/gprpp/work_serializer.h +0 -106
  2752. data/src/core/lib/gprpp/xxhash_inline.h +0 -29
  2753. data/src/core/lib/iomgr/gethostname.h +0 -26
  2754. data/src/core/lib/iomgr/gethostname_fallback.cc +0 -30
  2755. data/src/core/lib/iomgr/gethostname_host_name_max.cc +0 -40
  2756. data/src/core/lib/iomgr/gethostname_sysconf.cc +0 -40
  2757. data/src/core/lib/iomgr/grpc_if_nametoindex.h +0 -30
  2758. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +0 -42
  2759. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +0 -37
  2760. data/src/core/lib/matchers/matchers.cc +0 -330
  2761. data/src/core/lib/matchers/matchers.h +0 -163
  2762. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +0 -70
  2763. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +0 -50
  2764. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +0 -76
  2765. data/src/core/lib/security/context/security_context.cc +0 -333
  2766. data/src/core/lib/security/context/security_context.h +0 -204
  2767. data/src/core/lib/security/credentials/alts/alts_credentials.cc +0 -116
  2768. data/src/core/lib/security/credentials/alts/alts_credentials.h +0 -123
  2769. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +0 -72
  2770. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +0 -57
  2771. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +0 -68
  2772. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +0 -33
  2773. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +0 -102
  2774. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +0 -124
  2775. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +0 -45
  2776. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +0 -74
  2777. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +0 -55
  2778. data/src/core/lib/security/credentials/call_creds_util.cc +0 -96
  2779. data/src/core/lib/security/credentials/call_creds_util.h +0 -43
  2780. data/src/core/lib/security/credentials/channel_creds_registry.h +0 -127
  2781. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +0 -242
  2782. data/src/core/lib/security/credentials/composite/composite_credentials.cc +0 -169
  2783. data/src/core/lib/security/credentials/composite/composite_credentials.h +0 -135
  2784. data/src/core/lib/security/credentials/credentials.cc +0 -163
  2785. data/src/core/lib/security/credentials/credentials.h +0 -299
  2786. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +0 -531
  2787. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +0 -116
  2788. data/src/core/lib/security/credentials/external/aws_request_signer.cc +0 -231
  2789. data/src/core/lib/security/credentials/external/aws_request_signer.h +0 -72
  2790. data/src/core/lib/security/credentials/external/external_account_credentials.cc +0 -644
  2791. data/src/core/lib/security/credentials/external/external_account_credentials.h +0 -209
  2792. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +0 -176
  2793. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +0 -79
  2794. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +0 -223
  2795. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +0 -72
  2796. data/src/core/lib/security/credentials/fake/fake_credentials.cc +0 -105
  2797. data/src/core/lib/security/credentials/fake/fake_credentials.h +0 -125
  2798. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +0 -196
  2799. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.h +0 -90
  2800. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +0 -39
  2801. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +0 -433
  2802. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +0 -99
  2803. data/src/core/lib/security/credentials/iam/iam_credentials.cc +0 -80
  2804. data/src/core/lib/security/credentials/iam/iam_credentials.h +0 -67
  2805. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +0 -71
  2806. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +0 -61
  2807. data/src/core/lib/security/credentials/jwt/json_token.cc +0 -321
  2808. data/src/core/lib/security/credentials/jwt/json_token.h +0 -79
  2809. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +0 -184
  2810. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +0 -108
  2811. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +0 -991
  2812. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +0 -123
  2813. data/src/core/lib/security/credentials/local/local_credentials.cc +0 -68
  2814. data/src/core/lib/security/credentials/local/local_credentials.h +0 -77
  2815. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +0 -655
  2816. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +0 -198
  2817. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +0 -203
  2818. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +0 -125
  2819. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +0 -476
  2820. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +0 -146
  2821. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +0 -338
  2822. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +0 -216
  2823. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_match.cc +0 -86
  2824. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +0 -412
  2825. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +0 -204
  2826. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +0 -239
  2827. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +0 -170
  2828. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +0 -162
  2829. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +0 -145
  2830. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +0 -260
  2831. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.h +0 -132
  2832. data/src/core/lib/security/credentials/tls/tls_credentials.cc +0 -171
  2833. data/src/core/lib/security/credentials/tls/tls_credentials.h +0 -73
  2834. data/src/core/lib/security/credentials/tls/tls_utils.cc +0 -128
  2835. data/src/core/lib/security/credentials/tls/tls_utils.h +0 -50
  2836. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.cc +0 -298
  2837. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.h +0 -176
  2838. data/src/core/lib/security/credentials/xds/xds_credentials.cc +0 -231
  2839. data/src/core/lib/security/credentials/xds/xds_credentials.h +0 -112
  2840. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +0 -305
  2841. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +0 -78
  2842. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +0 -316
  2843. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +0 -42
  2844. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +0 -120
  2845. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +0 -103
  2846. data/src/core/lib/security/security_connector/load_system_roots.h +0 -35
  2847. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +0 -36
  2848. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +0 -167
  2849. data/src/core/lib/security/security_connector/load_system_roots_supported.h +0 -44
  2850. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +0 -86
  2851. data/src/core/lib/security/security_connector/local/local_security_connector.cc +0 -302
  2852. data/src/core/lib/security/security_connector/local/local_security_connector.h +0 -62
  2853. data/src/core/lib/security/security_connector/security_connector.cc +0 -125
  2854. data/src/core/lib/security/security_connector/security_connector.h +0 -198
  2855. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +0 -405
  2856. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +0 -82
  2857. data/src/core/lib/security/security_connector/ssl_utils.cc +0 -630
  2858. data/src/core/lib/security/security_connector/ssl_utils.h +0 -190
  2859. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +0 -818
  2860. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +0 -286
  2861. data/src/core/lib/security/transport/auth_filters.h +0 -145
  2862. data/src/core/lib/security/transport/client_auth_filter.cc +0 -221
  2863. data/src/core/lib/security/transport/server_auth_filter.cc +0 -216
  2864. data/src/core/lib/security/util/json_util.cc +0 -70
  2865. data/src/core/lib/security/util/json_util.h +0 -43
  2866. data/src/core/lib/surface/client_call.cc +0 -429
  2867. data/src/core/lib/surface/client_call.h +0 -179
  2868. data/src/core/lib/surface/server_call.cc +0 -223
  2869. data/src/core/lib/surface/server_call.h +0 -168
  2870. data/src/core/lib/transport/call_arena_allocator.cc +0 -27
  2871. data/src/core/lib/transport/call_arena_allocator.h +0 -92
  2872. data/src/core/lib/transport/call_destination.h +0 -76
  2873. data/src/core/lib/transport/call_filters.cc +0 -254
  2874. data/src/core/lib/transport/call_filters.h +0 -1532
  2875. data/src/core/lib/transport/call_spine.cc +0 -132
  2876. data/src/core/lib/transport/call_spine.h +0 -418
  2877. data/src/core/lib/transport/call_state.cc +0 -39
  2878. data/src/core/lib/transport/call_state.h +0 -957
  2879. data/src/core/lib/transport/custom_metadata.h +0 -30
  2880. data/src/core/lib/transport/http2_errors.h +0 -41
  2881. data/src/core/lib/transport/interception_chain.cc +0 -147
  2882. data/src/core/lib/transport/interception_chain.h +0 -244
  2883. data/src/core/lib/transport/message.cc +0 -44
  2884. data/src/core/lib/transport/message.h +0 -61
  2885. data/src/core/lib/transport/metadata.cc +0 -61
  2886. data/src/core/lib/transport/metadata.h +0 -113
  2887. data/src/core/lib/transport/metadata_batch.cc +0 -376
  2888. data/src/core/lib/transport/metadata_batch.h +0 -1601
  2889. data/src/core/lib/transport/metadata_compression_traits.h +0 -67
  2890. data/src/core/lib/transport/metadata_info.cc +0 -55
  2891. data/src/core/lib/transport/metadata_info.h +0 -85
  2892. data/src/core/lib/transport/parsed_metadata.cc +0 -35
  2893. data/src/core/lib/transport/parsed_metadata.h +0 -431
  2894. data/src/core/lib/transport/simple_slice_based_metadata.h +0 -54
  2895. data/src/core/lib/uri/uri_parser.cc +0 -371
  2896. data/src/core/lib/uri/uri_parser.h +0 -101
  2897. data/src/core/resolver/binder/binder_resolver.cc +0 -153
  2898. data/src/core/util/atm.cc +0 -35
  2899. data/src/core/xds/xds_client/xds_client_stats.cc +0 -164
  2900. data/src/core/xds/xds_client/xds_client_stats.h +0 -258
  2901. data/third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h +0 -44
  2902. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +0 -284
  2903. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +0 -95
  2904. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +0 -89
  2905. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.c +0 -84
  2906. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +0 -151
  2907. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.c +0 -85
  2908. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +0 -465
  2909. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +0 -279
  2910. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +0 -235
  2911. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c +0 -74
  2912. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +0 -457
  2913. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +0 -245
  2914. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +0 -259
  2915. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +0 -214
  2916. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +0 -183
  2917. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +0 -397
  2918. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +0 -103
  2919. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +0 -98
  2920. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +0 -105
  2921. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +0 -94
  2922. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.c +0 -241
  2923. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +0 -973
  2924. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +0 -708
  2925. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +0 -212
  2926. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +0 -317
  2927. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +0 -126
  2928. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +0 -268
  2929. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +0 -479
  2930. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +0 -726
  2931. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +0 -309
  2932. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +0 -544
  2933. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.c +0 -92
  2934. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +0 -235
  2935. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +0 -334
  2936. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.c +0 -192
  2937. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +0 -480
  2938. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.c +0 -102
  2939. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +0 -189
  2940. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +0 -133
  2941. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +0 -169
  2942. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/bn_asn1.c +0 -57
  2943. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/convert.c +0 -465
  2944. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.c +0 -158
  2945. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.c +0 -53
  2946. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +0 -266
  2947. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +0 -718
  2948. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +0 -911
  2949. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.c +0 -156
  2950. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +0 -224
  2951. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +0 -127
  2952. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/derive_key.c +0 -152
  2953. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesctrhmac.c +0 -284
  2954. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesgcmsiv.c +0 -841
  2955. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_chacha20poly1305.c +0 -348
  2956. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_des.c +0 -228
  2957. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +0 -90
  2958. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +0 -455
  2959. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +0 -94
  2960. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +0 -598
  2961. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +0 -280
  2962. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +0 -514
  2963. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +0 -672
  2964. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.c +0 -75
  2965. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.c +0 -55
  2966. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.c +0 -62
  2967. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.c +0 -61
  2968. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.c +0 -93
  2969. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.c +0 -41
  2970. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.c +0 -54
  2971. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.c +0 -151
  2972. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.c +0 -326
  2973. data/third_party/boringssl-with-bazel/src/crypto/crypto.c +0 -188
  2974. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +0 -2157
  2975. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.c +0 -18
  2976. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.c +0 -523
  2977. data/third_party/boringssl-with-bazel/src/crypto/des/des.c +0 -871
  2978. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +0 -165
  2979. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +0 -480
  2980. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +0 -266
  2981. data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +0 -1539
  2982. data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +0 -58
  2983. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +0 -997
  2984. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -419
  2985. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +0 -572
  2986. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_derive.c +0 -96
  2987. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +0 -508
  2988. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +0 -78
  2989. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.c +0 -124
  2990. data/third_party/boringssl-with-bazel/src/crypto/ecdsa_extra/ecdsa_asn1.c +0 -411
  2991. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.c +0 -91
  2992. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +0 -903
  2993. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +0 -430
  2994. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +0 -547
  2995. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.c +0 -483
  2996. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.c +0 -137
  2997. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.c +0 -120
  2998. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +0 -338
  2999. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +0 -274
  3000. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +0 -332
  3001. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +0 -100
  3002. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.c +0 -224
  3003. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.c +0 -232
  3004. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +0 -646
  3005. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +0 -241
  3006. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +0 -106
  3007. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.c +0 -236
  3008. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.c +0 -146
  3009. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +0 -381
  3010. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +0 -209
  3011. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.c +0 -156
  3012. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +0 -236
  3013. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.c.inc +0 -127
  3014. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.c.inc +0 -1281
  3015. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.c.inc +0 -242
  3016. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c.inc +0 -124
  3017. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +0 -279
  3018. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.c.inc +0 -310
  3019. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.c.inc +0 -541
  3020. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.c.inc +0 -428
  3021. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c.inc +0 -267
  3022. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.c.inc +0 -201
  3023. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.c.inc +0 -234
  3024. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c.inc +0 -876
  3025. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c.inc +0 -87
  3026. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c.inc +0 -1320
  3027. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c.inc +0 -397
  3028. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c.inc +0 -331
  3029. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.c.inc +0 -624
  3030. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.c.inc +0 -146
  3031. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c.inc +0 -532
  3032. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c.inc +0 -222
  3033. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c.inc +0 -744
  3034. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c.inc +0 -1077
  3035. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c.inc +0 -354
  3036. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c.inc +0 -137
  3037. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.c.inc +0 -363
  3038. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c.inc +0 -499
  3039. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.c.inc +0 -287
  3040. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c.inc +0 -717
  3041. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c.inc +0 -1464
  3042. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.c.inc +0 -446
  3043. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.c.inc +0 -322
  3044. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c.inc +0 -245
  3045. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c.inc +0 -489
  3046. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c.inc +0 -288
  3047. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.c.inc +0 -304
  3048. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.c.inc +0 -267
  3049. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c.inc +0 -1043
  3050. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c.inc +0 -561
  3051. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c.inc +0 -491
  3052. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.c.inc +0 -104
  3053. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c.inc +0 -359
  3054. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c.inc +0 -1163
  3055. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.c.inc +0 -734
  3056. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c.inc +0 -749
  3057. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c.inc +0 -173
  3058. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c.inc +0 -336
  3059. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c.inc +0 -269
  3060. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.c.inc +0 -255
  3061. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c.inc +0 -264
  3062. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c.inc +0 -130
  3063. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c.inc +0 -317
  3064. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +0 -29
  3065. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.c.inc +0 -112
  3066. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.c.inc +0 -256
  3067. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c.inc +0 -240
  3068. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/internal.h +0 -37
  3069. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c.inc +0 -284
  3070. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c.inc +0 -164
  3071. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c.inc +0 -200
  3072. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c.inc +0 -196
  3073. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c.inc +0 -743
  3074. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c.inc +0 -302
  3075. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +0 -428
  3076. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c.inc +0 -87
  3077. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/polyval.c.inc +0 -90
  3078. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.c.inc +0 -220
  3079. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c.inc +0 -479
  3080. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.c.inc +0 -241
  3081. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c.inc +0 -420
  3082. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c.inc +0 -1038
  3083. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c.inc +0 -1351
  3084. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c.inc +0 -121
  3085. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c.inc +0 -1038
  3086. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c.inc +0 -328
  3087. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c.inc +0 -439
  3088. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c.inc +0 -359
  3089. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c.inc +0 -543
  3090. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c.inc +0 -218
  3091. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +0 -1092
  3092. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +0 -2234
  3093. data/third_party/boringssl-with-bazel/src/crypto/keccak/internal.h +0 -70
  3094. data/third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c +0 -279
  3095. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +0 -845
  3096. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c +0 -350
  3097. data/third_party/boringssl-with-bazel/src/crypto/mem.c +0 -613
  3098. data/third_party/boringssl-with-bazel/src/crypto/mldsa/internal.h +0 -73
  3099. data/third_party/boringssl-with-bazel/src/crypto/mldsa/mldsa.c +0 -1687
  3100. data/third_party/boringssl-with-bazel/src/crypto/mlkem/internal.h +0 -90
  3101. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +0 -564
  3102. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.c +0 -122
  3103. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +0 -243
  3104. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +0 -294
  3105. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +0 -789
  3106. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.c +0 -87
  3107. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +0 -250
  3108. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +0 -183
  3109. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.c +0 -64
  3110. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.c +0 -64
  3111. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +0 -193
  3112. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +0 -523
  3113. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.c +0 -316
  3114. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +0 -527
  3115. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +0 -1352
  3116. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +0 -314
  3117. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.c +0 -308
  3118. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.c +0 -847
  3119. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +0 -261
  3120. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +0 -65
  3121. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/fork_detect.c +0 -195
  3122. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.c +0 -44
  3123. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getentropy.c +0 -60
  3124. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getrandom_fillin.h +0 -64
  3125. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/ios.c +0 -42
  3126. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +0 -174
  3127. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +0 -77
  3128. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/sysrand_internal.h +0 -37
  3129. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/trusty.c +0 -46
  3130. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/urandom.c +0 -328
  3131. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +0 -102
  3132. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.c +0 -98
  3133. data/third_party/boringssl-with-bazel/src/crypto/refcount.c +0 -59
  3134. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/internal.h +0 -79
  3135. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_asn1.c +0 -324
  3136. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c +0 -570
  3137. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c +0 -22
  3138. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +0 -79
  3139. data/third_party/boringssl-with-bazel/src/crypto/spx/address.c +0 -101
  3140. data/third_party/boringssl-with-bazel/src/crypto/spx/address.h +0 -50
  3141. data/third_party/boringssl-with-bazel/src/crypto/spx/fors.c +0 -133
  3142. data/third_party/boringssl-with-bazel/src/crypto/spx/fors.h +0 -54
  3143. data/third_party/boringssl-with-bazel/src/crypto/spx/merkle.c +0 -150
  3144. data/third_party/boringssl-with-bazel/src/crypto/spx/merkle.h +0 -61
  3145. data/third_party/boringssl-with-bazel/src/crypto/spx/params.h +0 -71
  3146. data/third_party/boringssl-with-bazel/src/crypto/spx/spx.c +0 -140
  3147. data/third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c +0 -53
  3148. data/third_party/boringssl-with-bazel/src/crypto/spx/spx_util.h +0 -44
  3149. data/third_party/boringssl-with-bazel/src/crypto/spx/thash.c +0 -136
  3150. data/third_party/boringssl-with-bazel/src/crypto/spx/thash.h +0 -70
  3151. data/third_party/boringssl-with-bazel/src/crypto/spx/wots.c +0 -135
  3152. data/third_party/boringssl-with-bazel/src/crypto/spx/wots.h +0 -45
  3153. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +0 -534
  3154. data/third_party/boringssl-with-bazel/src/crypto/thread.c +0 -110
  3155. data/third_party/boringssl-with-bazel/src/crypto/thread_none.c +0 -51
  3156. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +0 -150
  3157. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +0 -236
  3158. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +0 -1668
  3159. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +0 -687
  3160. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +0 -1267
  3161. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c +0 -94
  3162. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +0 -136
  3163. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +0 -116
  3164. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +0 -178
  3165. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +0 -585
  3166. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +0 -400
  3167. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +0 -269
  3168. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c +0 -79
  3169. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +0 -227
  3170. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +0 -786
  3171. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +0 -401
  3172. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +0 -145
  3173. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +0 -245
  3174. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +0 -329
  3175. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +0 -121
  3176. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c +0 -221
  3177. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c +0 -73
  3178. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c +0 -634
  3179. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c +0 -135
  3180. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c +0 -141
  3181. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c +0 -416
  3182. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c +0 -482
  3183. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c +0 -598
  3184. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c +0 -112
  3185. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c +0 -154
  3186. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c +0 -270
  3187. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c +0 -122
  3188. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c +0 -211
  3189. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c +0 -121
  3190. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c +0 -344
  3191. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c +0 -555
  3192. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c +0 -81
  3193. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c +0 -142
  3194. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c +0 -150
  3195. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c +0 -224
  3196. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c +0 -624
  3197. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c +0 -170
  3198. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +0 -1390
  3199. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +0 -89
  3200. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +0 -227
  3201. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +0 -280
  3202. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +0 -108
  3203. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.c +0 -86
  3204. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +0 -181
  3205. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -599
  3206. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +0 -206
  3207. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +0 -299
  3208. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +0 -240
  3209. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +0 -160
  3210. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +0 -189
  3211. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +0 -291
  3212. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +0 -1638
  3213. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +0 -440
  3214. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +0 -277
  3215. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +0 -407
  3216. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +0 -109
  3217. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +0 -133
  3218. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +0 -149
  3219. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +0 -356
  3220. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +0 -97
  3221. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +0 -384
  3222. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +0 -78
  3223. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +0 -527
  3224. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +0 -210
  3225. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +0 -116
  3226. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +0 -93
  3227. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.c +0 -79
  3228. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +0 -70
  3229. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +0 -544
  3230. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +0 -209
  3231. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.c +0 -1514
  3232. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +0 -129
  3233. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/spx.h +0 -90
  3234. data/third_party/upb/upb/message/internal/compare_unknown.c +0 -289
  3235. data/third_party/upb/upb/message/internal/compare_unknown.h +0 -49
  3236. /data/src/core/{lib/gprpp → util}/glob.cc +0 -0
@@ -1,142 +1,18 @@
1
- /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
2
- * All rights reserved.
3
- *
4
- * This package is an SSL implementation written
5
- * by Eric Young (eay@cryptsoft.com).
6
- * The implementation was written so as to conform with Netscapes SSL.
7
- *
8
- * This library is free for commercial and non-commercial use as long as
9
- * the following conditions are aheared to. The following conditions
10
- * apply to all code found in this distribution, be it the RC4, RSA,
11
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
12
- * included with this distribution is covered by the same copyright terms
13
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
14
- *
15
- * Copyright remains Eric Young's, and as such any Copyright notices in
16
- * the code are not to be removed.
17
- * If this package is used in a product, Eric Young should be given attribution
18
- * as the author of the parts of the library used.
19
- * This can be in the form of a textual message at program startup or
20
- * in documentation (online or textual) provided with the package.
21
- *
22
- * Redistribution and use in source and binary forms, with or without
23
- * modification, are permitted provided that the following conditions
24
- * are met:
25
- * 1. Redistributions of source code must retain the copyright
26
- * notice, this list of conditions and the following disclaimer.
27
- * 2. Redistributions in binary form must reproduce the above copyright
28
- * notice, this list of conditions and the following disclaimer in the
29
- * documentation and/or other materials provided with the distribution.
30
- * 3. All advertising materials mentioning features or use of this software
31
- * must display the following acknowledgement:
32
- * "This product includes cryptographic software written by
33
- * Eric Young (eay@cryptsoft.com)"
34
- * The word 'cryptographic' can be left out if the rouines from the library
35
- * being used are not cryptographic related :-).
36
- * 4. If you include any Windows specific code (or a derivative thereof) from
37
- * the apps directory (application code) you must include an acknowledgement:
38
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
39
- *
40
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
41
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
42
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
43
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
44
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
45
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
46
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
47
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
48
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
49
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
50
- * SUCH DAMAGE.
51
- *
52
- * The licence and distribution terms for any publically available version or
53
- * derivative of this code cannot be changed. i.e. this code cannot simply be
54
- * copied and put under another distribution licence
55
- * [including the GNU Public Licence.]
56
- */
57
- /* ====================================================================
58
- * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved.
59
- *
60
- * Redistribution and use in source and binary forms, with or without
61
- * modification, are permitted provided that the following conditions
62
- * are met:
63
- *
64
- * 1. Redistributions of source code must retain the above copyright
65
- * notice, this list of conditions and the following disclaimer.
66
- *
67
- * 2. Redistributions in binary form must reproduce the above copyright
68
- * notice, this list of conditions and the following disclaimer in
69
- * the documentation and/or other materials provided with the
70
- * distribution.
71
- *
72
- * 3. All advertising materials mentioning features or use of this
73
- * software must display the following acknowledgment:
74
- * "This product includes software developed by the OpenSSL Project
75
- * for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
76
- *
77
- * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
78
- * endorse or promote products derived from this software without
79
- * prior written permission. For written permission, please contact
80
- * openssl-core@openssl.org.
81
- *
82
- * 5. Products derived from this software may not be called "OpenSSL"
83
- * nor may "OpenSSL" appear in their names without prior written
84
- * permission of the OpenSSL Project.
85
- *
86
- * 6. Redistributions of any form whatsoever must retain the following
87
- * acknowledgment:
88
- * "This product includes software developed by the OpenSSL Project
89
- * for use in the OpenSSL Toolkit (http://www.openssl.org/)"
90
- *
91
- * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
92
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
93
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
94
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
95
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
96
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
97
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
98
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
99
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
100
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
101
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
102
- * OF THE POSSIBILITY OF SUCH DAMAGE.
103
- * ====================================================================
104
- *
105
- * This product includes cryptographic software written by Eric Young
106
- * (eay@cryptsoft.com). This product includes software written by Tim
107
- * Hudson (tjh@cryptsoft.com).
108
- *
109
- */
110
- /* ====================================================================
111
- * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
112
- * ECC cipher suite support in OpenSSL originally developed by
113
- * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project.
114
- */
115
- /* ====================================================================
116
- * Copyright 2005 Nokia. All rights reserved.
117
- *
118
- * The portions of the attached software ("Contribution") is developed by
119
- * Nokia Corporation and is licensed pursuant to the OpenSSL open source
120
- * license.
121
- *
122
- * The Contribution, originally written by Mika Kousa and Pasi Eronen of
123
- * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites
124
- * support (see RFC 4279) to OpenSSL.
125
- *
126
- * No patent licenses or other rights except those expressly stated in
127
- * the OpenSSL open source license shall be deemed granted or received
128
- * expressly, by implication, estoppel, or otherwise.
129
- *
130
- * No assurances are provided by Nokia that the Contribution does not
131
- * infringe the patent or other intellectual property rights of any third
132
- * party or that the license provides you with all the necessary rights
133
- * to make use of the Contribution.
134
- *
135
- * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN
136
- * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA
137
- * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY
138
- * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR
139
- * OTHERWISE. */
1
+ // Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
2
+ // Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
3
+ // Copyright 2005 Nokia. All rights reserved.
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
+ // https://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.
140
16
 
141
17
  #include <openssl/ssl.h>
142
18
 
@@ -154,8 +30,8 @@
154
30
  #include <openssl/mem.h>
155
31
  #include <openssl/rand.h>
156
32
 
157
- #include "internal.h"
158
33
  #include "../crypto/internal.h"
34
+ #include "internal.h"
159
35
 
160
36
  #if defined(OPENSSL_WINDOWS)
161
37
  #include <sys/timeb.h>
@@ -213,7 +89,7 @@ void ssl_reset_error_state(SSL *ssl) {
213
89
  ERR_clear_system_error();
214
90
  }
215
91
 
216
- void ssl_set_read_error(SSL* ssl) {
92
+ void ssl_set_read_error(SSL *ssl) {
217
93
  ssl->s3->read_shutdown = ssl_shutdown_error;
218
94
  ssl->s3->read_error.reset(ERR_save_state());
219
95
  }
@@ -287,7 +163,7 @@ static uint8_t hex_char_consttime(uint8_t b) {
287
163
 
288
164
  static bool cbb_add_hex_consttime(CBB *cbb, Span<const uint8_t> in) {
289
165
  uint8_t *out;
290
- if (!CBB_add_space(cbb, &out, in.size() * 2)) {
166
+ if (!CBB_add_space(cbb, &out, in.size() * 2)) {
291
167
  return false;
292
168
  }
293
169
 
@@ -307,10 +183,10 @@ bool ssl_log_secret(const SSL *ssl, const char *label,
307
183
 
308
184
  ScopedCBB cbb;
309
185
  Array<uint8_t> line;
186
+ auto label_bytes = bssl::StringAsBytes(label);
310
187
  if (!CBB_init(cbb.get(), strlen(label) + 1 + SSL3_RANDOM_SIZE * 2 + 1 +
311
188
  secret.size() * 2 + 1) ||
312
- !CBB_add_bytes(cbb.get(), reinterpret_cast<const uint8_t *>(label),
313
- strlen(label)) ||
189
+ !CBB_add_bytes(cbb.get(), label_bytes.data(), label_bytes.size()) ||
314
190
  !CBB_add_u8(cbb.get(), ' ') ||
315
191
  !cbb_add_hex_consttime(cbb.get(), ssl->s3->client_random) ||
316
192
  !CBB_add_u8(cbb.get(), ' ') ||
@@ -364,14 +240,7 @@ void ssl_do_msg_callback(const SSL *ssl, int is_write, int content_type,
364
240
  const_cast<SSL *>(ssl), ssl->msg_callback_arg);
365
241
  }
366
242
 
367
- void ssl_get_current_time(const SSL *ssl, struct OPENSSL_timeval *out_clock) {
368
- // TODO(martinkr): Change callers to |ssl_ctx_get_current_time| and drop the
369
- // |ssl| arg from |current_time_cb| if possible.
370
- ssl_ctx_get_current_time(ssl->ctx.get(), out_clock);
371
- }
372
-
373
- void ssl_ctx_get_current_time(const SSL_CTX *ctx,
374
- struct OPENSSL_timeval *out_clock) {
243
+ OPENSSL_timeval ssl_ctx_get_current_time(const SSL_CTX *ctx) {
375
244
  if (ctx->current_time_cb != NULL) {
376
245
  // TODO(davidben): Update current_time_cb to use OPENSSL_timeval. See
377
246
  // https://crbug.com/boringssl/155.
@@ -379,54 +248,47 @@ void ssl_ctx_get_current_time(const SSL_CTX *ctx,
379
248
  ctx->current_time_cb(nullptr /* ssl */, &clock);
380
249
  if (clock.tv_sec < 0) {
381
250
  assert(0);
382
- out_clock->tv_sec = 0;
383
- out_clock->tv_usec = 0;
251
+ return {0, 0};
384
252
  } else {
385
- out_clock->tv_sec = (uint64_t)clock.tv_sec;
386
- out_clock->tv_usec = (uint32_t)clock.tv_usec;
253
+ return {static_cast<uint64_t>(clock.tv_sec),
254
+ static_cast<uint32_t>(clock.tv_usec)};
387
255
  }
388
- return;
389
256
  }
390
257
 
391
258
  #if defined(BORINGSSL_UNSAFE_DETERMINISTIC_MODE)
392
- out_clock->tv_sec = 1234;
393
- out_clock->tv_usec = 1234;
259
+ return {1234, 1234};
394
260
  #elif defined(OPENSSL_WINDOWS)
395
261
  struct _timeb time;
396
262
  _ftime(&time);
397
263
  if (time.time < 0) {
398
264
  assert(0);
399
- out_clock->tv_sec = 0;
400
- out_clock->tv_usec = 0;
265
+ return {0, 0};
401
266
  } else {
402
- out_clock->tv_sec = time.time;
403
- out_clock->tv_usec = time.millitm * 1000;
267
+ return {static_cast<uint64_t>(time.time),
268
+ static_cast<uint32_t>(time.millitm * 1000)};
404
269
  }
405
270
  #else
406
271
  struct timeval clock;
407
272
  gettimeofday(&clock, NULL);
408
273
  if (clock.tv_sec < 0) {
409
274
  assert(0);
410
- out_clock->tv_sec = 0;
411
- out_clock->tv_usec = 0;
275
+ return {0, 0};
412
276
  } else {
413
- out_clock->tv_sec = (uint64_t)clock.tv_sec;
414
- out_clock->tv_usec = (uint32_t)clock.tv_usec;
277
+ return {static_cast<uint64_t>(clock.tv_sec),
278
+ static_cast<uint32_t>(clock.tv_usec)};
415
279
  }
416
280
  #endif
417
281
  }
418
282
 
419
- void SSL_CTX_set_handoff_mode(SSL_CTX *ctx, bool on) {
420
- ctx->handoff = on;
421
- }
283
+ void SSL_CTX_set_handoff_mode(SSL_CTX *ctx, bool on) { ctx->handoff = on; }
422
284
 
423
285
  static bool ssl_can_renegotiate(const SSL *ssl) {
424
286
  if (ssl->server || SSL_is_dtls(ssl)) {
425
287
  return false;
426
288
  }
427
289
 
428
- if (ssl->s3->have_version &&
429
- ssl_protocol_version(ssl) >= TLS1_3_VERSION) {
290
+ if (ssl->s3->version != 0 //
291
+ && ssl_protocol_version(ssl) >= TLS1_3_VERSION) {
430
292
  return false;
431
293
  }
432
294
 
@@ -452,9 +314,9 @@ static bool ssl_can_renegotiate(const SSL *ssl) {
452
314
  }
453
315
 
454
316
  static void ssl_maybe_shed_handshake_config(SSL *ssl) {
455
- if (ssl->s3->hs != nullptr ||
456
- ssl->config == nullptr ||
457
- !ssl->config->shed_handshake_config ||
317
+ if (ssl->s3->hs != nullptr || //
318
+ ssl->config == nullptr || //
319
+ !ssl->config->shed_handshake_config || //
458
320
  ssl_can_renegotiate(ssl)) {
459
321
  return;
460
322
  }
@@ -472,8 +334,10 @@ void SSL_set_handoff_mode(SSL *ssl, bool on) {
472
334
  bool SSL_get_traffic_secrets(const SSL *ssl,
473
335
  Span<const uint8_t> *out_read_traffic_secret,
474
336
  Span<const uint8_t> *out_write_traffic_secret) {
475
- if (SSL_version(ssl) < TLS1_3_VERSION) {
476
- OPENSSL_PUT_ERROR(SSL, SSL_R_WRONG_SSL_VERSION);
337
+ // This API is not well-defined for DTLS 1.3 (see https://crbug.com/42290608)
338
+ // or QUIC, where multiple epochs may be alive at once.
339
+ if (SSL_is_dtls(ssl) || SSL_is_quic(ssl)) {
340
+ OPENSSL_PUT_ERROR(SSL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
477
341
  return false;
478
342
  }
479
343
 
@@ -482,11 +346,13 @@ bool SSL_get_traffic_secrets(const SSL *ssl,
482
346
  return false;
483
347
  }
484
348
 
485
- *out_read_traffic_secret = Span<const uint8_t>(
486
- ssl->s3->read_traffic_secret, ssl->s3->read_traffic_secret_len);
487
- *out_write_traffic_secret = Span<const uint8_t>(
488
- ssl->s3->write_traffic_secret, ssl->s3->write_traffic_secret_len);
349
+ if (SSL_version(ssl) < TLS1_3_VERSION) {
350
+ OPENSSL_PUT_ERROR(SSL, SSL_R_WRONG_SSL_VERSION);
351
+ return false;
352
+ }
489
353
 
354
+ *out_read_traffic_secret = ssl->s3->read_traffic_secret;
355
+ *out_write_traffic_secret = ssl->s3->write_traffic_secret;
490
356
  return true;
491
357
  }
492
358
 
@@ -512,16 +378,11 @@ int OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) {
512
378
  }
513
379
 
514
380
  static uint32_t ssl_session_hash(const SSL_SESSION *sess) {
515
- return ssl_hash_session_id(
516
- MakeConstSpan(sess->session_id, sess->session_id_length));
381
+ return ssl_hash_session_id(sess->session_id);
517
382
  }
518
383
 
519
384
  static int ssl_session_cmp(const SSL_SESSION *a, const SSL_SESSION *b) {
520
- if (a->session_id_length != b->session_id_length) {
521
- return 1;
522
- }
523
-
524
- return OPENSSL_memcmp(a->session_id, b->session_id, a->session_id_length);
385
+ return Span(a->session_id) == b->session_id ? 0 : 1;
525
386
  }
526
387
 
527
388
  ssl_ctx_st::ssl_ctx_st(const SSL_METHOD *ssl_method)
@@ -572,10 +433,12 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *method) {
572
433
  ret->cert = MakeUnique<CERT>(method->x509_method);
573
434
  ret->sessions = lh_SSL_SESSION_new(ssl_session_hash, ssl_session_cmp);
574
435
  ret->client_CA.reset(sk_CRYPTO_BUFFER_new_null());
436
+ ret->CA_names.reset(sk_CRYPTO_BUFFER_new_null());
575
437
  if (ret->cert == nullptr || //
576
438
  !ret->cert->is_valid() || //
577
439
  ret->sessions == nullptr || //
578
440
  ret->client_CA == nullptr || //
441
+ ret->CA_names == nullptr || //
579
442
  !ret->x509_method->ssl_ctx_new(ret.get())) {
580
443
  return nullptr;
581
444
  }
@@ -659,7 +522,7 @@ SSL *SSL_new(SSL_CTX *ctx) {
659
522
  ssl->config->permute_extensions = ctx->permute_extensions;
660
523
  ssl->config->aes_hw_override = ctx->aes_hw_override;
661
524
  ssl->config->aes_hw_override_value = ctx->aes_hw_override_value;
662
- ssl->config->tls13_cipher_policy = ctx->tls13_cipher_policy;
525
+ ssl->config->compliance_policy = ctx->compliance_policy;
663
526
 
664
527
  if (!ssl->config->supported_group_list.CopyFrom(ctx->supported_group_list) ||
665
528
  !ssl->config->alpn_client_proto_list.CopyFrom(
@@ -708,9 +571,7 @@ SSL_CONFIG::SSL_CONFIG(SSL *ssl_arg)
708
571
  jdk11_workaround(false),
709
572
  quic_use_legacy_codepoint(false),
710
573
  permute_extensions(false),
711
- alps_use_new_codepoint(false),
712
- check_client_certificate_type(true),
713
- check_ecdsa_curve(true) {
574
+ alps_use_new_codepoint(false) {
714
575
  assert(ssl);
715
576
  }
716
577
 
@@ -720,9 +581,7 @@ SSL_CONFIG::~SSL_CONFIG() {
720
581
  }
721
582
  }
722
583
 
723
- void SSL_free(SSL *ssl) {
724
- Delete(ssl);
725
- }
584
+ void SSL_free(SSL *ssl) { Delete(ssl); }
726
585
 
727
586
  void SSL_set_connect_state(SSL *ssl) {
728
587
  ssl->server = false;
@@ -734,13 +593,9 @@ void SSL_set_accept_state(SSL *ssl) {
734
593
  ssl->do_handshake = ssl_server_handshake;
735
594
  }
736
595
 
737
- void SSL_set0_rbio(SSL *ssl, BIO *rbio) {
738
- ssl->rbio.reset(rbio);
739
- }
596
+ void SSL_set0_rbio(SSL *ssl, BIO *rbio) { ssl->rbio.reset(rbio); }
740
597
 
741
- void SSL_set0_wbio(SSL *ssl, BIO *wbio) {
742
- ssl->wbio.reset(wbio);
743
- }
598
+ void SSL_set0_wbio(SSL *ssl, BIO *wbio) { ssl->wbio.reset(wbio); }
744
599
 
745
600
  void SSL_set_bio(SSL *ssl, BIO *rbio, BIO *wbio) {
746
601
  // For historical reasons, this function has many different cases in ownership
@@ -803,8 +658,8 @@ size_t SSL_quic_max_handshake_flight_len(const SSL *ssl,
803
658
  } else {
804
659
  // Clients may receive both Certificate message and a CertificateRequest
805
660
  // message.
806
- if (2*ssl->max_cert_list > kDefaultLimit) {
807
- return 2*ssl->max_cert_list;
661
+ if (2 * ssl->max_cert_list > kDefaultLimit) {
662
+ return 2 * ssl->max_cert_list;
808
663
  }
809
664
  }
810
665
  return kDefaultLimit;
@@ -819,21 +674,23 @@ size_t SSL_quic_max_handshake_flight_len(const SSL *ssl,
819
674
  }
820
675
 
821
676
  enum ssl_encryption_level_t SSL_quic_read_level(const SSL *ssl) {
822
- return ssl->s3->read_level;
677
+ assert(SSL_is_quic(ssl));
678
+ return ssl->s3->quic_read_level;
823
679
  }
824
680
 
825
681
  enum ssl_encryption_level_t SSL_quic_write_level(const SSL *ssl) {
826
- return ssl->s3->write_level;
682
+ assert(SSL_is_quic(ssl));
683
+ return ssl->s3->quic_write_level;
827
684
  }
828
685
 
829
686
  int SSL_provide_quic_data(SSL *ssl, enum ssl_encryption_level_t level,
830
687
  const uint8_t *data, size_t len) {
831
- if (ssl->quic_method == nullptr) {
688
+ if (!SSL_is_quic(ssl)) {
832
689
  OPENSSL_PUT_ERROR(SSL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
833
690
  return 0;
834
691
  }
835
692
 
836
- if (level != ssl->s3->read_level) {
693
+ if (level != ssl->s3->quic_read_level) {
837
694
  OPENSSL_PUT_ERROR(SSL, SSL_R_WRONG_ENCRYPTION_LEVEL_RECEIVED);
838
695
  return 0;
839
696
  }
@@ -845,7 +702,7 @@ int SSL_provide_quic_data(SSL *ssl, enum ssl_encryption_level_t level,
845
702
  return 0;
846
703
  }
847
704
 
848
- return tls_append_handshake_data(ssl, MakeConstSpan(data, len));
705
+ return tls_append_handshake_data(ssl, Span(data, len));
849
706
  }
850
707
 
851
708
  int SSL_do_handshake(SSL *ssl) {
@@ -937,7 +794,7 @@ static int ssl_do_post_handshake(SSL *ssl, const SSLMessage &msg) {
937
794
  int SSL_process_quic_post_handshake(SSL *ssl) {
938
795
  ssl_reset_error_state(ssl);
939
796
 
940
- if (SSL_in_init(ssl)) {
797
+ if (!SSL_is_quic(ssl) || SSL_in_init(ssl)) {
941
798
  OPENSSL_PUT_ERROR(SSL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
942
799
  return 0;
943
800
  }
@@ -980,6 +837,15 @@ static int ssl_read_impl(SSL *ssl) {
980
837
  return -1;
981
838
  }
982
839
 
840
+ // If a read triggered a DTLS ACK or retransmit, resolve that before reading
841
+ // more.
842
+ if (SSL_is_dtls(ssl)) {
843
+ int ret = ssl->method->flush(ssl);
844
+ if (ret <= 0) {
845
+ return ret;
846
+ }
847
+ }
848
+
983
849
  // Complete the current handshake, if any. False Start will cause
984
850
  // |SSL_do_handshake| to return mid-handshake, so this may require multiple
985
851
  // iterations.
@@ -1047,7 +913,7 @@ int SSL_read(SSL *ssl, void *buf, int num) {
1047
913
  }
1048
914
 
1049
915
  int SSL_peek(SSL *ssl, void *buf, int num) {
1050
- if (ssl->quic_method != nullptr) {
916
+ if (SSL_is_quic(ssl)) {
1051
917
  OPENSSL_PUT_ERROR(SSL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
1052
918
  return -1;
1053
919
  }
@@ -1068,7 +934,7 @@ int SSL_peek(SSL *ssl, void *buf, int num) {
1068
934
  int SSL_write(SSL *ssl, const void *buf, int num) {
1069
935
  ssl_reset_error_state(ssl);
1070
936
 
1071
- if (ssl->quic_method != nullptr) {
937
+ if (SSL_is_quic(ssl)) {
1072
938
  OPENSSL_PUT_ERROR(SSL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
1073
939
  return -1;
1074
940
  }
@@ -1100,8 +966,7 @@ int SSL_write(SSL *ssl, const void *buf, int num) {
1100
966
  }
1101
967
  ret = ssl->method->write_app_data(
1102
968
  ssl, &needs_handshake, &bytes_written,
1103
- MakeConstSpan(static_cast<const uint8_t *>(buf),
1104
- static_cast<size_t>(num)));
969
+ Span(static_cast<const uint8_t *>(buf), static_cast<size_t>(num)));
1105
970
  } while (needs_handshake);
1106
971
  return ret <= 0 ? ret : static_cast<int>(bytes_written);
1107
972
  }
@@ -1114,7 +979,7 @@ int SSL_key_update(SSL *ssl, int request_type) {
1114
979
  return 0;
1115
980
  }
1116
981
 
1117
- if (ssl->ctx->quic_method != nullptr) {
982
+ if (SSL_is_quic(ssl)) {
1118
983
  OPENSSL_PUT_ERROR(SSL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
1119
984
  return 0;
1120
985
  }
@@ -1129,12 +994,7 @@ int SSL_key_update(SSL *ssl, int request_type) {
1129
994
  return 0;
1130
995
  }
1131
996
 
1132
- if (!ssl->s3->key_update_pending &&
1133
- !tls13_add_key_update(ssl, request_type)) {
1134
- return 0;
1135
- }
1136
-
1137
- return 1;
997
+ return tls13_add_key_update(ssl, request_type);
1138
998
  }
1139
999
 
1140
1000
  int SSL_shutdown(SSL *ssl) {
@@ -1217,8 +1077,8 @@ int SSL_send_fatal_alert(SSL *ssl, uint8_t alert) {
1217
1077
 
1218
1078
  int SSL_set_quic_transport_params(SSL *ssl, const uint8_t *params,
1219
1079
  size_t params_len) {
1220
- return ssl->config && ssl->config->quic_transport_params.CopyFrom(
1221
- MakeConstSpan(params, params_len));
1080
+ return ssl->config &&
1081
+ ssl->config->quic_transport_params.CopyFrom(Span(params, params_len));
1222
1082
  }
1223
1083
 
1224
1084
  void SSL_get_peer_quic_transport_params(const SSL *ssl,
@@ -1231,7 +1091,7 @@ void SSL_get_peer_quic_transport_params(const SSL *ssl,
1231
1091
  int SSL_set_quic_early_data_context(SSL *ssl, const uint8_t *context,
1232
1092
  size_t context_len) {
1233
1093
  return ssl->config && ssl->config->quic_early_data_context.CopyFrom(
1234
- MakeConstSpan(context, context_len));
1094
+ Span(context, context_len));
1235
1095
  }
1236
1096
 
1237
1097
  void SSL_CTX_set_early_data_enabled(SSL_CTX *ctx, int enabled) {
@@ -1255,7 +1115,7 @@ int SSL_early_data_accepted(const SSL *ssl) {
1255
1115
 
1256
1116
  void SSL_reset_early_data_reject(SSL *ssl) {
1257
1117
  SSL_HANDSHAKE *hs = ssl->s3->hs.get();
1258
- if (hs == NULL ||
1118
+ if (hs == NULL || //
1259
1119
  hs->wait != ssl_hs_early_data_rejected) {
1260
1120
  abort();
1261
1121
  }
@@ -1360,7 +1220,7 @@ int SSL_get_error(const SSL *ssl, int ret_code) {
1360
1220
  return ssl->s3->rwstate;
1361
1221
 
1362
1222
  case SSL_ERROR_WANT_READ: {
1363
- if (ssl->quic_method) {
1223
+ if (SSL_is_quic(ssl)) {
1364
1224
  return SSL_ERROR_WANT_READ;
1365
1225
  }
1366
1226
  BIO *bio = SSL_get_rbio(ssl);
@@ -1515,36 +1375,31 @@ int SSL_get_tls_unique(const SSL *ssl, uint8_t *out, size_t *out_len,
1515
1375
  // The tls-unique value is the first Finished message in the handshake, which
1516
1376
  // is the client's in a full handshake and the server's for a resumption. See
1517
1377
  // https://tools.ietf.org/html/rfc5929#section-3.1.
1518
- const uint8_t *finished = ssl->s3->previous_client_finished;
1519
- size_t finished_len = ssl->s3->previous_client_finished_len;
1378
+ Span<const uint8_t> finished = ssl->s3->previous_client_finished;
1520
1379
  if (ssl->session != NULL) {
1521
1380
  // tls-unique is broken for resumed sessions unless EMS is used.
1522
1381
  if (!ssl->session->extended_master_secret) {
1523
1382
  return 0;
1524
1383
  }
1525
1384
  finished = ssl->s3->previous_server_finished;
1526
- finished_len = ssl->s3->previous_server_finished_len;
1527
1385
  }
1528
1386
 
1529
- *out_len = finished_len;
1530
- if (finished_len > max_out) {
1387
+ *out_len = finished.size();
1388
+ if (finished.size() > max_out) {
1531
1389
  *out_len = max_out;
1532
1390
  }
1533
1391
 
1534
- OPENSSL_memcpy(out, finished, *out_len);
1392
+ OPENSSL_memcpy(out, finished.data(), *out_len);
1535
1393
  return 1;
1536
1394
  }
1537
1395
 
1538
1396
  static int set_session_id_context(CERT *cert, const uint8_t *sid_ctx,
1539
- size_t sid_ctx_len) {
1540
- if (sid_ctx_len > sizeof(cert->sid_ctx)) {
1397
+ size_t sid_ctx_len) {
1398
+ if (!cert->sid_ctx.TryCopyFrom(Span(sid_ctx, sid_ctx_len))) {
1541
1399
  OPENSSL_PUT_ERROR(SSL, SSL_R_SSL_SESSION_ID_CONTEXT_TOO_LONG);
1542
1400
  return 0;
1543
1401
  }
1544
1402
 
1545
- static_assert(sizeof(cert->sid_ctx) < 256, "sid_ctx too large");
1546
- cert->sid_ctx_length = (uint8_t)sid_ctx_len;
1547
- OPENSSL_memcpy(cert->sid_ctx, sid_ctx, sid_ctx_len);
1548
1403
  return 1;
1549
1404
  }
1550
1405
 
@@ -1567,8 +1422,8 @@ const uint8_t *SSL_get0_session_id_context(const SSL *ssl, size_t *out_len) {
1567
1422
  *out_len = 0;
1568
1423
  return NULL;
1569
1424
  }
1570
- *out_len = ssl->config->cert->sid_ctx_length;
1571
- return ssl->config->cert->sid_ctx;
1425
+ *out_len = ssl->config->cert->sid_ctx.size();
1426
+ return ssl->config->cert->sid_ctx.data();
1572
1427
  }
1573
1428
 
1574
1429
  int SSL_get_fd(const SSL *ssl) { return SSL_get_rfd(ssl); }
@@ -1643,13 +1498,12 @@ int SSL_set_rfd(SSL *ssl, int fd) {
1643
1498
  }
1644
1499
  #endif // !OPENSSL_NO_SOCK
1645
1500
 
1646
- static size_t copy_finished(void *out, size_t out_len, const uint8_t *in,
1647
- size_t in_len) {
1648
- if (out_len > in_len) {
1649
- out_len = in_len;
1501
+ static size_t copy_finished(void *out, size_t out_len, Span<const uint8_t> in) {
1502
+ if (out_len > in.size()) {
1503
+ out_len = in.size();
1650
1504
  }
1651
- OPENSSL_memcpy(out, in, out_len);
1652
- return in_len;
1505
+ OPENSSL_memcpy(out, in.data(), out_len);
1506
+ return in.size();
1653
1507
  }
1654
1508
 
1655
1509
  size_t SSL_get_finished(const SSL *ssl, void *buf, size_t count) {
@@ -1659,12 +1513,10 @@ size_t SSL_get_finished(const SSL *ssl, void *buf, size_t count) {
1659
1513
  }
1660
1514
 
1661
1515
  if (ssl->server) {
1662
- return copy_finished(buf, count, ssl->s3->previous_server_finished,
1663
- ssl->s3->previous_server_finished_len);
1516
+ return copy_finished(buf, count, ssl->s3->previous_server_finished);
1664
1517
  }
1665
1518
 
1666
- return copy_finished(buf, count, ssl->s3->previous_client_finished,
1667
- ssl->s3->previous_client_finished_len);
1519
+ return copy_finished(buf, count, ssl->s3->previous_client_finished);
1668
1520
  }
1669
1521
 
1670
1522
  size_t SSL_get_peer_finished(const SSL *ssl, void *buf, size_t count) {
@@ -1674,12 +1526,10 @@ size_t SSL_get_peer_finished(const SSL *ssl, void *buf, size_t count) {
1674
1526
  }
1675
1527
 
1676
1528
  if (ssl->server) {
1677
- return copy_finished(buf, count, ssl->s3->previous_client_finished,
1678
- ssl->s3->previous_client_finished_len);
1529
+ return copy_finished(buf, count, ssl->s3->previous_client_finished);
1679
1530
  }
1680
1531
 
1681
- return copy_finished(buf, count, ssl->s3->previous_server_finished,
1682
- ssl->s3->previous_server_finished_len);
1532
+ return copy_finished(buf, count, ssl->s3->previous_server_finished);
1683
1533
  }
1684
1534
 
1685
1535
  int SSL_get_verify_mode(const SSL *ssl) {
@@ -1693,7 +1543,7 @@ int SSL_get_verify_mode(const SSL *ssl) {
1693
1543
  int SSL_get_extms_support(const SSL *ssl) {
1694
1544
  // TLS 1.3 does not require extended master secret and always reports as
1695
1545
  // supporting it.
1696
- if (!ssl->s3->have_version) {
1546
+ if (ssl->s3->version == 0) {
1697
1547
  return 0;
1698
1548
  }
1699
1549
  if (ssl_protocol_version(ssl) >= TLS1_3_VERSION) {
@@ -1748,7 +1598,7 @@ static bool has_cert_and_key(const SSL_CREDENTIAL *cred) {
1748
1598
  int SSL_CTX_check_private_key(const SSL_CTX *ctx) {
1749
1599
  // There is no need to actually check consistency because inconsistent values
1750
1600
  // can never be configured.
1751
- return has_cert_and_key(ctx->cert->default_credential.get());
1601
+ return has_cert_and_key(ctx->cert->legacy_credential.get());
1752
1602
  }
1753
1603
 
1754
1604
  int SSL_check_private_key(const SSL *ssl) {
@@ -1758,7 +1608,7 @@ int SSL_check_private_key(const SSL *ssl) {
1758
1608
 
1759
1609
  // There is no need to actually check consistency because inconsistent values
1760
1610
  // can never be configured.
1761
- return has_cert_and_key(ssl->config->cert->default_credential.get());
1611
+ return has_cert_and_key(ssl->config->cert->legacy_credential.get());
1762
1612
  }
1763
1613
 
1764
1614
  long SSL_get_default_timeout(const SSL *ssl) {
@@ -1824,9 +1674,7 @@ void SSL_CTX_set_max_cert_list(SSL_CTX *ctx, size_t max_cert_list) {
1824
1674
  ctx->max_cert_list = (uint32_t)max_cert_list;
1825
1675
  }
1826
1676
 
1827
- size_t SSL_get_max_cert_list(const SSL *ssl) {
1828
- return ssl->max_cert_list;
1829
- }
1677
+ size_t SSL_get_max_cert_list(const SSL *ssl) { return ssl->max_cert_list; }
1830
1678
 
1831
1679
  void SSL_set_max_cert_list(SSL *ssl, size_t max_cert_list) {
1832
1680
  if (max_cert_list > kMaxHandshakeSize) {
@@ -1868,7 +1716,7 @@ int SSL_set_mtu(SSL *ssl, unsigned mtu) {
1868
1716
  }
1869
1717
 
1870
1718
  int SSL_get_secure_renegotiation_support(const SSL *ssl) {
1871
- if (!ssl->s3->have_version) {
1719
+ if (ssl->s3->version == 0) {
1872
1720
  return 0;
1873
1721
  }
1874
1722
  return ssl_protocol_version(ssl) >= TLS1_3_VERSION ||
@@ -1949,9 +1797,9 @@ int SSL_CTX_set_tlsext_ticket_keys(SSL_CTX *ctx, const void *in, size_t len) {
1949
1797
  }
1950
1798
 
1951
1799
  int SSL_CTX_set_tlsext_ticket_key_cb(
1952
- SSL_CTX *ctx, int (*callback)(SSL *ssl, uint8_t *key_name, uint8_t *iv,
1953
- EVP_CIPHER_CTX *ctx, HMAC_CTX *hmac_ctx,
1954
- int encrypt)) {
1800
+ SSL_CTX *ctx,
1801
+ int (*callback)(SSL *ssl, uint8_t *key_name, uint8_t *iv,
1802
+ EVP_CIPHER_CTX *ctx, HMAC_CTX *hmac_ctx, int encrypt)) {
1955
1803
  ctx->ticket_key_cb = callback;
1956
1804
  return 1;
1957
1805
  }
@@ -1968,7 +1816,7 @@ static bool check_group_ids(Span<const uint16_t> group_ids) {
1968
1816
 
1969
1817
  int SSL_CTX_set1_group_ids(SSL_CTX *ctx, const uint16_t *group_ids,
1970
1818
  size_t num_group_ids) {
1971
- auto span = MakeConstSpan(group_ids, num_group_ids);
1819
+ auto span = Span(group_ids, num_group_ids);
1972
1820
  return check_group_ids(span) && ctx->supported_group_list.CopyFrom(span);
1973
1821
  }
1974
1822
 
@@ -1977,7 +1825,7 @@ int SSL_set1_group_ids(SSL *ssl, const uint16_t *group_ids,
1977
1825
  if (!ssl->config) {
1978
1826
  return 0;
1979
1827
  }
1980
- auto span = MakeConstSpan(group_ids, num_group_ids);
1828
+ auto span = Span(group_ids, num_group_ids);
1981
1829
  return check_group_ids(span) &&
1982
1830
  ssl->config->supported_group_list.CopyFrom(span);
1983
1831
  }
@@ -1985,7 +1833,7 @@ int SSL_set1_group_ids(SSL *ssl, const uint16_t *group_ids,
1985
1833
  static bool ssl_nids_to_group_ids(Array<uint16_t> *out_group_ids,
1986
1834
  Span<const int> nids) {
1987
1835
  Array<uint16_t> group_ids;
1988
- if (!group_ids.Init(nids.size())) {
1836
+ if (!group_ids.InitForOverwrite(nids.size())) {
1989
1837
  return false;
1990
1838
  }
1991
1839
 
@@ -2002,7 +1850,7 @@ static bool ssl_nids_to_group_ids(Array<uint16_t> *out_group_ids,
2002
1850
 
2003
1851
  int SSL_CTX_set1_groups(SSL_CTX *ctx, const int *groups, size_t num_groups) {
2004
1852
  return ssl_nids_to_group_ids(&ctx->supported_group_list,
2005
- MakeConstSpan(groups, num_groups));
1853
+ Span(groups, num_groups));
2006
1854
  }
2007
1855
 
2008
1856
  int SSL_set1_groups(SSL *ssl, const int *groups, size_t num_groups) {
@@ -2010,7 +1858,7 @@ int SSL_set1_groups(SSL *ssl, const int *groups, size_t num_groups) {
2010
1858
  return 0;
2011
1859
  }
2012
1860
  return ssl_nids_to_group_ids(&ssl->config->supported_group_list,
2013
- MakeConstSpan(groups, num_groups));
1861
+ Span(groups, num_groups));
2014
1862
  }
2015
1863
 
2016
1864
  static bool ssl_str_to_group_ids(Array<uint16_t> *out_group_ids,
@@ -2027,7 +1875,7 @@ static bool ssl_str_to_group_ids(Array<uint16_t> *out_group_ids,
2027
1875
  } while (col);
2028
1876
 
2029
1877
  Array<uint16_t> group_ids;
2030
- if (!group_ids.Init(count)) {
1878
+ if (!group_ids.InitForOverwrite(count)) {
2031
1879
  return false;
2032
1880
  }
2033
1881
 
@@ -2078,13 +1926,9 @@ int SSL_get_negotiated_group(const SSL *ssl) {
2078
1926
  return ssl_group_id_to_nid(group_id);
2079
1927
  }
2080
1928
 
2081
- int SSL_CTX_set_tmp_dh(SSL_CTX *ctx, const DH *dh) {
2082
- return 1;
2083
- }
1929
+ int SSL_CTX_set_tmp_dh(SSL_CTX *ctx, const DH *dh) { return 1; }
2084
1930
 
2085
- int SSL_set_tmp_dh(SSL *ssl, const DH *dh) {
2086
- return 1;
2087
- }
1931
+ int SSL_set_tmp_dh(SSL *ssl, const DH *dh) { return 1; }
2088
1932
 
2089
1933
  STACK_OF(SSL_CIPHER) *SSL_CTX_get_ciphers(const SSL_CTX *ctx) {
2090
1934
  return ctx->cipher_list->ciphers.get();
@@ -2107,7 +1951,7 @@ STACK_OF(SSL_CIPHER) *SSL_get_ciphers(const SSL *ssl) {
2107
1951
  }
2108
1952
 
2109
1953
  return ssl->config->cipher_list ? ssl->config->cipher_list->ciphers.get()
2110
- : ssl->ctx->cipher_list->ciphers.get();
1954
+ : ssl->ctx->cipher_list->ciphers.get();
2111
1955
  }
2112
1956
 
2113
1957
  const char *SSL_get_cipher_list(const SSL *ssl, int n) {
@@ -2287,8 +2131,8 @@ int SSL_select_next_proto(uint8_t **out, uint8_t *out_len, const uint8_t *peer,
2287
2131
 
2288
2132
  // Both |peer| and |supported| must be valid protocol lists, but |peer| may be
2289
2133
  // empty in NPN.
2290
- auto peer_span = MakeConstSpan(peer, peer_len);
2291
- auto supported_span = MakeConstSpan(supported, supported_len);
2134
+ auto peer_span = Span(peer, peer_len);
2135
+ auto supported_span = Span(supported, supported_len);
2292
2136
  if ((!peer_span.empty() && !ssl_is_valid_alpn_list(peer_span)) ||
2293
2137
  !ssl_is_valid_alpn_list(supported_span)) {
2294
2138
  return OPENSSL_NPN_NO_OVERLAP;
@@ -2301,7 +2145,7 @@ int SSL_select_next_proto(uint8_t **out, uint8_t *out_len, const uint8_t *peer,
2301
2145
  return OPENSSL_NPN_NO_OVERLAP;
2302
2146
  }
2303
2147
 
2304
- if (ssl_alpn_list_contains_protocol(MakeConstSpan(supported, supported_len),
2148
+ if (ssl_alpn_list_contains_protocol(Span(supported, supported_len),
2305
2149
  proto)) {
2306
2150
  // This function is not const-correct for compatibility with existing
2307
2151
  // callers.
@@ -2343,10 +2187,12 @@ void SSL_CTX_set_next_protos_advertised_cb(
2343
2187
  ctx->next_protos_advertised_cb_arg = arg;
2344
2188
  }
2345
2189
 
2346
- void SSL_CTX_set_next_proto_select_cb(
2347
- SSL_CTX *ctx, int (*cb)(SSL *ssl, uint8_t **out, uint8_t *out_len,
2348
- const uint8_t *in, unsigned in_len, void *arg),
2349
- void *arg) {
2190
+ void SSL_CTX_set_next_proto_select_cb(SSL_CTX *ctx,
2191
+ int (*cb)(SSL *ssl, uint8_t **out,
2192
+ uint8_t *out_len,
2193
+ const uint8_t *in,
2194
+ unsigned in_len, void *arg),
2195
+ void *arg) {
2350
2196
  ctx->next_proto_select_cb = cb;
2351
2197
  ctx->next_proto_select_cb_arg = arg;
2352
2198
  }
@@ -2354,7 +2200,7 @@ void SSL_CTX_set_next_proto_select_cb(
2354
2200
  int SSL_CTX_set_alpn_protos(SSL_CTX *ctx, const uint8_t *protos,
2355
2201
  size_t protos_len) {
2356
2202
  // Note this function's return value is backwards.
2357
- auto span = MakeConstSpan(protos, protos_len);
2203
+ auto span = Span(protos, protos_len);
2358
2204
  if (!span.empty() && !ssl_is_valid_alpn_list(span)) {
2359
2205
  OPENSSL_PUT_ERROR(SSL, SSL_R_INVALID_ALPN_PROTOCOL_LIST);
2360
2206
  return 1;
@@ -2367,7 +2213,7 @@ int SSL_set_alpn_protos(SSL *ssl, const uint8_t *protos, size_t protos_len) {
2367
2213
  if (!ssl->config) {
2368
2214
  return 1;
2369
2215
  }
2370
- auto span = MakeConstSpan(protos, protos_len);
2216
+ auto span = Span(protos, protos_len);
2371
2217
  if (!span.empty() && !ssl_is_valid_alpn_list(span)) {
2372
2218
  OPENSSL_PUT_ERROR(SSL, SSL_R_INVALID_ALPN_PROTOCOL_LIST);
2373
2219
  return 1;
@@ -2409,8 +2255,8 @@ int SSL_add_application_settings(SSL *ssl, const uint8_t *proto,
2409
2255
  return 0;
2410
2256
  }
2411
2257
  ALPSConfig config;
2412
- if (!config.protocol.CopyFrom(MakeConstSpan(proto, proto_len)) ||
2413
- !config.settings.CopyFrom(MakeConstSpan(settings, settings_len)) ||
2258
+ if (!config.protocol.CopyFrom(Span(proto, proto_len)) ||
2259
+ !config.settings.CopyFrom(Span(settings, settings_len)) ||
2414
2260
  !ssl->config->alps_configs.Push(std::move(config))) {
2415
2261
  return 0;
2416
2262
  }
@@ -2480,9 +2326,8 @@ int SSL_enable_tls_channel_id(SSL *ssl) {
2480
2326
 
2481
2327
  static int is_p256_key(EVP_PKEY *private_key) {
2482
2328
  const EC_KEY *ec_key = EVP_PKEY_get0_EC_KEY(private_key);
2483
- return ec_key != NULL &&
2484
- EC_GROUP_get_curve_name(EC_KEY_get0_group(ec_key)) ==
2485
- NID_X9_62_prime256v1;
2329
+ return ec_key != NULL && EC_GROUP_get_curve_name(EC_KEY_get0_group(ec_key)) ==
2330
+ NID_X9_62_prime256v1;
2486
2331
  }
2487
2332
 
2488
2333
  int SSL_CTX_set1_tls_channel_id(SSL_CTX *ctx, EVP_PKEY *private_key) {
@@ -2536,7 +2381,7 @@ size_t SSL_get0_peer_verify_algorithms(const SSL *ssl,
2536
2381
  }
2537
2382
 
2538
2383
  size_t SSL_get0_peer_delegation_algorithms(const SSL *ssl,
2539
- const uint16_t **out_sigalgs){
2384
+ const uint16_t **out_sigalgs) {
2540
2385
  Span<const uint16_t> sigalgs;
2541
2386
  if (ssl->s3->hs != nullptr) {
2542
2387
  sigalgs = ssl->s3->hs->peer_delegated_credential_sigalgs;
@@ -2550,11 +2395,11 @@ EVP_PKEY *SSL_get_privatekey(const SSL *ssl) {
2550
2395
  assert(ssl->config);
2551
2396
  return nullptr;
2552
2397
  }
2553
- return ssl->config->cert->default_credential->privkey.get();
2398
+ return ssl->config->cert->legacy_credential->privkey.get();
2554
2399
  }
2555
2400
 
2556
2401
  EVP_PKEY *SSL_CTX_get0_privatekey(const SSL_CTX *ctx) {
2557
- return ctx->cert->default_credential->privkey.get();
2402
+ return ctx->cert->legacy_credential->privkey.get();
2558
2403
  }
2559
2404
 
2560
2405
  const SSL_CIPHER *SSL_get_current_cipher(const SSL *ssl) {
@@ -2658,7 +2503,7 @@ int SSL_state(const SSL *ssl) {
2658
2503
  return SSL_in_init(ssl) ? SSL_ST_INIT : SSL_ST_OK;
2659
2504
  }
2660
2505
 
2661
- void SSL_set_state(SSL *ssl, int state) { }
2506
+ void SSL_set_state(SSL *ssl, int state) {}
2662
2507
 
2663
2508
  char *SSL_get_shared_ciphers(const SSL *ssl, char *buf, int len) {
2664
2509
  if (len <= 0) {
@@ -2707,7 +2552,7 @@ int SSL_CTX_get_ex_new_index(long argl, void *argp, CRYPTO_EX_unused *unused,
2707
2552
  CRYPTO_EX_dup *dup_unused,
2708
2553
  CRYPTO_EX_free *free_func) {
2709
2554
  return CRYPTO_get_ex_new_index_ex(&g_ex_data_class_ssl_ctx, argl, argp,
2710
- free_func);
2555
+ free_func);
2711
2556
  }
2712
2557
 
2713
2558
  int SSL_CTX_set_ex_data(SSL_CTX *ctx, int idx, void *data) {
@@ -2814,9 +2659,10 @@ void SSL_CTX_set_psk_client_callback(
2814
2659
  ctx->psk_client_callback = cb;
2815
2660
  }
2816
2661
 
2817
- void SSL_set_psk_server_callback(
2818
- SSL *ssl, unsigned (*cb)(SSL *ssl, const char *identity, uint8_t *psk,
2819
- unsigned max_psk_len)) {
2662
+ void SSL_set_psk_server_callback(SSL *ssl,
2663
+ unsigned (*cb)(SSL *ssl, const char *identity,
2664
+ uint8_t *psk,
2665
+ unsigned max_psk_len)) {
2820
2666
  if (!ssl->config) {
2821
2667
  return;
2822
2668
  }
@@ -2824,8 +2670,8 @@ void SSL_set_psk_server_callback(
2824
2670
  }
2825
2671
 
2826
2672
  void SSL_CTX_set_psk_server_callback(
2827
- SSL_CTX *ctx, unsigned (*cb)(SSL *ssl, const char *identity,
2828
- uint8_t *psk, unsigned max_psk_len)) {
2673
+ SSL_CTX *ctx, unsigned (*cb)(SSL *ssl, const char *identity, uint8_t *psk,
2674
+ unsigned max_psk_len)) {
2829
2675
  ctx->psk_server_callback = cb;
2830
2676
  }
2831
2677
 
@@ -2878,9 +2724,7 @@ int SSL_can_release_private_key(const SSL *ssl) {
2878
2724
  return !ssl->s3->hs || ssl->s3->hs->can_release_private_key;
2879
2725
  }
2880
2726
 
2881
- int SSL_is_init_finished(const SSL *ssl) {
2882
- return !SSL_in_init(ssl);
2883
- }
2727
+ int SSL_is_init_finished(const SSL *ssl) { return !SSL_in_init(ssl); }
2884
2728
 
2885
2729
  int SSL_in_init(const SSL *ssl) {
2886
2730
  // This returns false once all the handshake state has been finalized, to
@@ -2897,14 +2741,14 @@ int SSL_in_false_start(const SSL *ssl) {
2897
2741
  return ssl->s3->hs->in_false_start;
2898
2742
  }
2899
2743
 
2900
- int SSL_cutthrough_complete(const SSL *ssl) {
2901
- return SSL_in_false_start(ssl);
2902
- }
2744
+ int SSL_cutthrough_complete(const SSL *ssl) { return SSL_in_false_start(ssl); }
2903
2745
 
2904
2746
  int SSL_is_server(const SSL *ssl) { return ssl->server; }
2905
2747
 
2906
2748
  int SSL_is_dtls(const SSL *ssl) { return ssl->method->is_dtls; }
2907
2749
 
2750
+ int SSL_is_quic(const SSL *ssl) { return ssl->quic_method != nullptr; }
2751
+
2908
2752
  void SSL_CTX_set_select_certificate_cb(
2909
2753
  SSL_CTX *ctx,
2910
2754
  enum ssl_select_cert_result_t (*cb)(const SSL_CLIENT_HELLO *)) {
@@ -2942,6 +2786,13 @@ void SSL_set_renegotiate_mode(SSL *ssl, enum ssl_renegotiate_mode_t mode) {
2942
2786
 
2943
2787
  int SSL_get_ivs(const SSL *ssl, const uint8_t **out_read_iv,
2944
2788
  const uint8_t **out_write_iv, size_t *out_iv_len) {
2789
+ // No cipher suites maintain stateful internal IVs in DTLS. It would not be
2790
+ // compatible with reordering.
2791
+ if (SSL_is_dtls(ssl)) {
2792
+ OPENSSL_PUT_ERROR(SSL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
2793
+ return 0;
2794
+ }
2795
+
2945
2796
  size_t write_iv_len;
2946
2797
  if (!ssl->s3->aead_read_ctx->GetIV(out_read_iv, out_iv_len) ||
2947
2798
  !ssl->s3->aead_write_ctx->GetIV(out_write_iv, &write_iv_len) ||
@@ -2954,30 +2805,30 @@ int SSL_get_ivs(const SSL *ssl, const uint8_t **out_read_iv,
2954
2805
 
2955
2806
  uint64_t SSL_get_read_sequence(const SSL *ssl) {
2956
2807
  if (SSL_is_dtls(ssl)) {
2957
- // TODO(crbug.com/42290608): The API for read sequences in DTLS 1.3 needs to
2958
- // reworked. In DTLS 1.3, the read epoch is updated once new keys are
2959
- // derived (before we receive a message encrypted with those keys), which
2960
- // results in the read epoch being ahead of the highest record received.
2961
- // Additionally, when we process a KeyUpdate, we will install new read keys
2962
- // for the new epoch, but we may receive messages from the old epoch for
2963
- // some time if the ACK gets lost or there is reordering.
2964
-
2965
- // max_seq_num already includes the epoch. However, the current epoch may
2966
- // be one ahead of the highest record received, immediately after a key
2967
- // change.
2968
- assert(ssl->d1->r_epoch >= ssl->d1->bitmap.max_seq_num >> 48);
2969
- return ssl->d1->bitmap.max_seq_num;
2808
+ // TODO(crbug.com/42290608): This API needs to reworked.
2809
+ //
2810
+ // In DTLS 1.2, right at an epoch transition, |read_epoch| may not have
2811
+ // received any records. We will then return that sequence 0 is the highest
2812
+ // received, but it's really -1, which is not representable. This is mostly
2813
+ // moot because, after the handshake, we will never be in the state.
2814
+ //
2815
+ // In DTLS 1.3, epochs do not transition until the first record comes in.
2816
+ // This avoids the DTLS 1.2 problem but introduces a different problem:
2817
+ // during a KeyUpdate (which may occur in the steady state), both epochs are
2818
+ // live. We'll likely need a new API for DTLS offload.
2819
+ const DTLSReadEpoch *read_epoch = &ssl->d1->read_epoch;
2820
+ return DTLSRecordNumber(read_epoch->epoch, read_epoch->bitmap.max_seq_num())
2821
+ .combined();
2970
2822
  }
2971
2823
  return ssl->s3->read_sequence;
2972
2824
  }
2973
2825
 
2974
2826
  uint64_t SSL_get_write_sequence(const SSL *ssl) {
2975
- uint64_t ret = ssl->s3->write_sequence;
2976
2827
  if (SSL_is_dtls(ssl)) {
2977
- assert((ret >> 48) == 0);
2978
- ret |= uint64_t{ssl->d1->w_epoch} << 48;
2828
+ return ssl->d1->write_epoch.next_record.combined();
2979
2829
  }
2980
- return ret;
2830
+
2831
+ return ssl->s3->write_sequence;
2981
2832
  }
2982
2833
 
2983
2834
  uint16_t SSL_get_peer_signature_algorithm(const SSL *ssl) {
@@ -3071,20 +2922,6 @@ void SSL_set_jdk11_workaround(SSL *ssl, int enable) {
3071
2922
  ssl->config->jdk11_workaround = !!enable;
3072
2923
  }
3073
2924
 
3074
- void SSL_set_check_client_certificate_type(SSL *ssl, int enable) {
3075
- if (!ssl->config) {
3076
- return;
3077
- }
3078
- ssl->config->check_client_certificate_type = !!enable;
3079
- }
3080
-
3081
- void SSL_set_check_ecdsa_curve(SSL *ssl, int enable) {
3082
- if (!ssl->config) {
3083
- return;
3084
- }
3085
- ssl->config->check_ecdsa_curve = !!enable;
3086
- }
3087
-
3088
2925
  void SSL_set_quic_use_legacy_codepoint(SSL *ssl, int use_legacy) {
3089
2926
  if (!ssl->config) {
3090
2927
  return;
@@ -3179,8 +3016,8 @@ void SSL_CTX_set_ticket_aead_method(SSL_CTX *ctx,
3179
3016
 
3180
3017
  SSL_SESSION *SSL_process_tls13_new_session_ticket(SSL *ssl, const uint8_t *buf,
3181
3018
  size_t buf_len) {
3182
- if (SSL_in_init(ssl) ||
3183
- ssl_protocol_version(ssl) != TLS1_3_VERSION ||
3019
+ if (SSL_in_init(ssl) || //
3020
+ ssl_protocol_version(ssl) != TLS1_3_VERSION || //
3184
3021
  ssl->server) {
3185
3022
  // Only TLS 1.3 clients are supported.
3186
3023
  OPENSSL_PUT_ERROR(SSL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED);
@@ -3190,8 +3027,8 @@ SSL_SESSION *SSL_process_tls13_new_session_ticket(SSL *ssl, const uint8_t *buf,
3190
3027
  CBS cbs, body;
3191
3028
  CBS_init(&cbs, buf, buf_len);
3192
3029
  uint8_t type;
3193
- if (!CBS_get_u8(&cbs, &type) ||
3194
- !CBS_get_u24_length_prefixed(&cbs, &body) ||
3030
+ if (!CBS_get_u8(&cbs, &type) || //
3031
+ !CBS_get_u24_length_prefixed(&cbs, &body) || //
3195
3032
  CBS_len(&cbs) != 0) {
3196
3033
  OPENSSL_PUT_ERROR(SSL, SSL_R_DECODE_ERROR);
3197
3034
  return nullptr;
@@ -3226,8 +3063,8 @@ int SSL_get_tlsext_status_type(const SSL *ssl) {
3226
3063
  if (ssl->server) {
3227
3064
  SSL_HANDSHAKE *hs = ssl->s3->hs.get();
3228
3065
  return hs != nullptr && hs->ocsp_stapling_requested
3229
- ? TLSEXT_STATUSTYPE_ocsp
3230
- : TLSEXT_STATUSTYPE_nothing;
3066
+ ? TLSEXT_STATUSTYPE_ocsp
3067
+ : TLSEXT_STATUSTYPE_nothing;
3231
3068
  }
3232
3069
 
3233
3070
  return ssl->config != nullptr && ssl->config->ocsp_stapling_enabled
@@ -3319,7 +3156,7 @@ static const char kTLS12Ciphers[] =
3319
3156
  "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384";
3320
3157
 
3321
3158
  static int Configure(SSL_CTX *ctx) {
3322
- ctx->tls13_cipher_policy = ssl_compliance_policy_fips_202205;
3159
+ ctx->compliance_policy = ssl_compliance_policy_fips_202205;
3323
3160
 
3324
3161
  return
3325
3162
  // Section 3.1:
@@ -3342,7 +3179,7 @@ static int Configure(SSL_CTX *ctx) {
3342
3179
  }
3343
3180
 
3344
3181
  static int Configure(SSL *ssl) {
3345
- ssl->config->tls13_cipher_policy = ssl_compliance_policy_fips_202205;
3182
+ ssl->config->compliance_policy = ssl_compliance_policy_fips_202205;
3346
3183
 
3347
3184
  // See |Configure(SSL_CTX)|, above, for reasoning.
3348
3185
  return SSL_set_min_proto_version(ssl, TLS1_2_VERSION) &&
@@ -3376,7 +3213,7 @@ static const char kTLS12Ciphers[] =
3376
3213
  "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384";
3377
3214
 
3378
3215
  static int Configure(SSL_CTX *ctx) {
3379
- ctx->tls13_cipher_policy = ssl_compliance_policy_wpa3_192_202304;
3216
+ ctx->compliance_policy = ssl_compliance_policy_wpa3_192_202304;
3380
3217
 
3381
3218
  return SSL_CTX_set_min_proto_version(ctx, TLS1_2_VERSION) &&
3382
3219
  SSL_CTX_set_max_proto_version(ctx, TLS1_3_VERSION) &&
@@ -3389,7 +3226,7 @@ static int Configure(SSL_CTX *ctx) {
3389
3226
  }
3390
3227
 
3391
3228
  static int Configure(SSL *ssl) {
3392
- ssl->config->tls13_cipher_policy = ssl_compliance_policy_wpa3_192_202304;
3229
+ ssl->config->compliance_policy = ssl_compliance_policy_wpa3_192_202304;
3393
3230
 
3394
3231
  return SSL_set_min_proto_version(ssl, TLS1_2_VERSION) &&
3395
3232
  SSL_set_max_proto_version(ssl, TLS1_3_VERSION) &&
@@ -3406,17 +3243,16 @@ static int Configure(SSL *ssl) {
3406
3243
  namespace cnsa202407 {
3407
3244
 
3408
3245
  static int Configure(SSL_CTX *ctx) {
3409
- ctx->tls13_cipher_policy = ssl_compliance_policy_cnsa_202407;
3246
+ ctx->compliance_policy = ssl_compliance_policy_cnsa_202407;
3410
3247
  return 1;
3411
3248
  }
3412
3249
 
3413
3250
  static int Configure(SSL *ssl) {
3414
- ssl->config->tls13_cipher_policy =
3415
- ssl_compliance_policy_cnsa_202407;
3251
+ ssl->config->compliance_policy = ssl_compliance_policy_cnsa_202407;
3416
3252
  return 1;
3417
3253
  }
3418
3254
 
3419
- }
3255
+ } // namespace cnsa202407
3420
3256
 
3421
3257
  int SSL_CTX_set_compliance_policy(SSL_CTX *ctx,
3422
3258
  enum ssl_compliance_policy_t policy) {
@@ -3432,6 +3268,10 @@ int SSL_CTX_set_compliance_policy(SSL_CTX *ctx,
3432
3268
  }
3433
3269
  }
3434
3270
 
3271
+ enum ssl_compliance_policy_t SSL_CTX_get_compliance_policy(const SSL_CTX *ctx) {
3272
+ return ctx->compliance_policy;
3273
+ }
3274
+
3435
3275
  int SSL_set_compliance_policy(SSL *ssl, enum ssl_compliance_policy_t policy) {
3436
3276
  switch (policy) {
3437
3277
  case ssl_compliance_policy_fips_202205:
@@ -3444,3 +3284,7 @@ int SSL_set_compliance_policy(SSL *ssl, enum ssl_compliance_policy_t policy) {
3444
3284
  return 0;
3445
3285
  }
3446
3286
  }
3287
+
3288
+ enum ssl_compliance_policy_t SSL_get_compliance_policy(const SSL *ssl) {
3289
+ return ssl->config->compliance_policy;
3290
+ }