grpc 1.70.1 → 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 (1432) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +116 -149
  3. data/include/grpc/event_engine/endpoint_config.h +5 -5
  4. data/include/grpc/event_engine/event_engine.h +44 -5
  5. data/include/grpc/event_engine/memory_request.h +3 -3
  6. data/include/grpc/impl/channel_arg_names.h +70 -50
  7. data/include/grpc/status.h +1 -1
  8. data/include/grpc/support/json.h +16 -16
  9. data/include/grpc/support/workaround_list.h +1 -4
  10. data/src/core/{lib/transport → call}/call_arena_allocator.cc +1 -1
  11. data/src/core/{lib/transport → call}/call_arena_allocator.h +3 -3
  12. data/src/core/{lib/transport → call}/call_destination.h +4 -4
  13. data/src/core/{lib/transport → call}/call_filters.cc +2 -2
  14. data/src/core/{lib/transport → call}/call_filters.h +125 -65
  15. data/src/core/{lib/channel → call}/call_finalization.h +3 -3
  16. data/src/core/{lib/transport → call}/call_spine.cc +33 -35
  17. data/src/core/{lib/transport → call}/call_spine.h +124 -39
  18. data/src/core/{lib/transport → call}/call_state.cc +1 -1
  19. data/src/core/{lib/transport → call}/call_state.h +11 -11
  20. data/src/core/{lib/surface → call}/client_call.cc +22 -13
  21. data/src/core/{lib/surface → call}/client_call.h +6 -6
  22. data/src/core/{lib/transport → call}/custom_metadata.h +3 -3
  23. data/src/core/{lib/transport → call}/interception_chain.cc +5 -5
  24. data/src/core/{lib/transport → call}/interception_chain.h +34 -14
  25. data/src/core/{lib/transport → call}/message.cc +1 -1
  26. data/src/core/{lib/transport → call}/message.h +7 -3
  27. data/src/core/{lib/transport → call}/metadata.cc +2 -2
  28. data/src/core/{lib/transport → call}/metadata.h +92 -4
  29. data/src/core/{lib/transport → call}/metadata_batch.cc +3 -3
  30. data/src/core/{lib/transport → call}/metadata_batch.h +86 -25
  31. data/src/core/{lib/transport → call}/metadata_compression_traits.h +3 -3
  32. data/src/core/{lib/transport → call}/metadata_info.cc +27 -9
  33. data/src/core/{lib/transport → call}/metadata_info.h +4 -4
  34. data/src/core/{lib/transport → call}/parsed_metadata.cc +1 -1
  35. data/src/core/{lib/transport → call}/parsed_metadata.h +3 -3
  36. data/src/core/call/request_buffer.cc +22 -22
  37. data/src/core/call/request_buffer.h +7 -7
  38. data/src/core/call/security_context.cc +125 -0
  39. data/src/core/call/security_context.h +114 -0
  40. data/src/core/{lib/surface → call}/server_call.cc +26 -9
  41. data/src/core/{lib/surface → call}/server_call.h +7 -5
  42. data/src/core/{lib/transport → call}/simple_slice_based_metadata.h +4 -4
  43. data/src/core/{lib/channel → call}/status_util.cc +1 -1
  44. data/src/core/{lib/channel → call}/status_util.h +3 -3
  45. data/src/core/channelz/channelz.cc +2 -2
  46. data/src/core/channelz/channelz.h +3 -22
  47. data/src/core/channelz/channelz_registry.cc +0 -7
  48. data/src/core/client_channel/client_channel.cc +40 -42
  49. data/src/core/client_channel/client_channel.h +6 -5
  50. data/src/core/client_channel/client_channel_filter.cc +64 -151
  51. data/src/core/client_channel/client_channel_filter.h +11 -7
  52. data/src/core/client_channel/client_channel_internal.h +1 -1
  53. data/src/core/client_channel/client_channel_plugin.cc +2 -1
  54. data/src/core/client_channel/client_channel_service_config.cc +1 -1
  55. data/src/core/client_channel/client_channel_service_config.h +5 -5
  56. data/src/core/client_channel/config_selector.h +2 -2
  57. data/src/core/client_channel/direct_channel.cc +3 -3
  58. data/src/core/client_channel/direct_channel.h +1 -1
  59. data/src/core/client_channel/dynamic_filters.cc +0 -1
  60. data/src/core/client_channel/dynamic_filters.h +0 -1
  61. data/src/core/client_channel/lb_metadata.cc +7 -8
  62. data/src/core/client_channel/lb_metadata.h +4 -4
  63. data/src/core/client_channel/load_balanced_call_destination.cc +5 -5
  64. data/src/core/client_channel/load_balanced_call_destination.h +1 -1
  65. data/src/core/client_channel/retry_filter.cc +1 -1
  66. data/src/core/client_channel/retry_filter.h +1 -1
  67. data/src/core/client_channel/retry_filter_legacy_call_data.cc +50 -50
  68. data/src/core/client_channel/retry_filter_legacy_call_data.h +11 -11
  69. data/src/core/client_channel/retry_interceptor.cc +16 -14
  70. data/src/core/client_channel/retry_interceptor.h +3 -3
  71. data/src/core/client_channel/retry_service_config.cc +2 -2
  72. data/src/core/client_channel/retry_service_config.h +4 -4
  73. data/src/core/client_channel/retry_throttle.cc +30 -34
  74. data/src/core/client_channel/retry_throttle.h +10 -2
  75. data/src/core/client_channel/subchannel.cc +50 -84
  76. data/src/core/client_channel/subchannel.h +5 -6
  77. data/src/core/client_channel/subchannel_stream_client.cc +14 -12
  78. data/src/core/client_channel/subchannel_stream_client.h +5 -5
  79. data/src/core/config/config_vars.cc +1 -0
  80. data/src/core/config/config_vars.h +1 -0
  81. data/src/core/config/core_configuration.h +2 -2
  82. data/src/core/config/load_config.cc +3 -2
  83. data/src/core/config/load_config.h +1 -1
  84. data/src/core/credentials/call/call_credentials.h +157 -0
  85. data/src/core/{lib/security/credentials → credentials/call}/call_creds_util.cc +4 -4
  86. data/src/core/{lib/security/credentials → credentials/call}/call_creds_util.h +4 -4
  87. data/src/core/{lib/security/credentials/composite/composite_credentials.cc → credentials/call/composite/composite_call_credentials.cc} +4 -57
  88. data/src/core/credentials/call/composite/composite_call_credentials.h +82 -0
  89. data/src/core/{lib/security/credentials → credentials/call}/external/aws_external_account_credentials.cc +3 -4
  90. data/src/core/{lib/security/credentials → credentials/call}/external/aws_external_account_credentials.h +5 -5
  91. data/src/core/{lib/security/credentials → credentials/call}/external/aws_request_signer.cc +1 -1
  92. data/src/core/{lib/security/credentials → credentials/call}/external/aws_request_signer.h +3 -3
  93. data/src/core/{lib/security/credentials → credentials/call}/external/external_account_credentials.cc +7 -9
  94. data/src/core/{lib/security/credentials → credentials/call}/external/external_account_credentials.h +5 -5
  95. data/src/core/{lib/security/credentials → credentials/call}/external/file_external_account_credentials.cc +1 -2
  96. data/src/core/{lib/security/credentials → credentials/call}/external/file_external_account_credentials.h +4 -4
  97. data/src/core/{lib/security/credentials → credentials/call}/external/url_external_account_credentials.cc +3 -2
  98. data/src/core/{lib/security/credentials → credentials/call}/external/url_external_account_credentials.h +4 -4
  99. data/src/core/{lib/security/credentials → credentials/call}/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +3 -2
  100. data/src/core/{lib/security/credentials → credentials/call}/gcp_service_account_identity/gcp_service_account_identity_credentials.h +6 -6
  101. data/src/core/{lib/security/credentials → credentials/call}/iam/iam_credentials.cc +3 -3
  102. data/src/core/{lib/security/credentials → credentials/call}/iam/iam_credentials.h +6 -6
  103. data/src/core/{lib/security/util → credentials/call}/json_util.cc +1 -1
  104. data/src/core/{lib/security/util → credentials/call}/json_util.h +3 -3
  105. data/src/core/{lib/security/credentials → credentials/call}/jwt/json_token.cc +2 -2
  106. data/src/core/{lib/security/credentials → credentials/call}/jwt/json_token.h +3 -3
  107. data/src/core/{lib/security/credentials → credentials/call}/jwt/jwt_credentials.cc +4 -5
  108. data/src/core/{lib/security/credentials → credentials/call}/jwt/jwt_credentials.h +7 -7
  109. data/src/core/{lib/security/credentials → credentials/call}/jwt/jwt_verifier.cc +3 -3
  110. data/src/core/{lib/security/credentials → credentials/call}/jwt/jwt_verifier.h +3 -3
  111. data/src/core/{lib/security/credentials → credentials/call}/oauth2/oauth2_credentials.cc +8 -7
  112. data/src/core/{lib/security/credentials → credentials/call}/oauth2/oauth2_credentials.h +8 -8
  113. data/src/core/{lib/security/credentials → credentials/call}/plugin/plugin_credentials.cc +2 -3
  114. data/src/core/{lib/security/credentials → credentials/call}/plugin/plugin_credentials.h +5 -5
  115. data/src/core/{lib/security/credentials → credentials/call}/token_fetcher/token_fetcher_credentials.cc +5 -6
  116. data/src/core/{lib/security/credentials → credentials/call}/token_fetcher/token_fetcher_credentials.h +9 -9
  117. data/src/core/{lib/security/credentials → credentials/transport}/alts/alts_credentials.cc +4 -4
  118. data/src/core/{lib/security/credentials → credentials/transport}/alts/alts_credentials.h +5 -5
  119. data/src/core/{lib/security/security_connector → credentials/transport}/alts/alts_security_connector.cc +5 -5
  120. data/src/core/{lib/security/security_connector → credentials/transport}/alts/alts_security_connector.h +4 -4
  121. data/src/core/{lib/security/credentials → credentials/transport}/alts/check_gcp_environment.cc +1 -1
  122. data/src/core/{lib/security/credentials → credentials/transport}/alts/check_gcp_environment.h +3 -3
  123. data/src/core/{lib/security/credentials → credentials/transport}/alts/check_gcp_environment_linux.cc +1 -1
  124. data/src/core/{lib/security/credentials → credentials/transport}/alts/check_gcp_environment_no_op.cc +1 -1
  125. data/src/core/{lib/security/credentials → credentials/transport}/alts/check_gcp_environment_windows.cc +1 -1
  126. data/src/core/{lib/security/credentials → credentials/transport}/alts/grpc_alts_credentials_client_options.cc +1 -1
  127. data/src/core/{lib/security/credentials → credentials/transport}/alts/grpc_alts_credentials_options.cc +1 -1
  128. data/src/core/{lib/security/credentials → credentials/transport}/alts/grpc_alts_credentials_options.h +3 -3
  129. data/src/core/{lib/security/credentials → credentials/transport}/alts/grpc_alts_credentials_server_options.cc +1 -1
  130. data/src/core/{lib/security/credentials → credentials/transport}/channel_creds_registry.h +4 -4
  131. data/src/core/{lib/security/credentials → credentials/transport}/channel_creds_registry_init.cc +21 -17
  132. data/src/core/credentials/transport/composite/composite_channel_credentials.cc +68 -0
  133. data/src/core/{lib/security/credentials/composite/composite_credentials.h → credentials/transport/composite/composite_channel_credentials.h} +6 -51
  134. data/src/core/{lib/security/credentials → credentials/transport}/fake/fake_credentials.cc +4 -26
  135. data/src/core/{lib/security/credentials → credentials/transport}/fake/fake_credentials.h +5 -37
  136. data/src/core/{lib/security/security_connector → credentials/transport}/fake/fake_security_connector.cc +7 -7
  137. data/src/core/{lib/security/security_connector → credentials/transport}/fake/fake_security_connector.h +4 -4
  138. data/src/core/{lib/security/credentials → credentials/transport}/google_default/credentials_generic.cc +3 -3
  139. data/src/core/{lib/security/credentials → credentials/transport}/google_default/google_default_credentials.cc +33 -21
  140. data/src/core/{lib/security/credentials → credentials/transport}/google_default/google_default_credentials.h +5 -5
  141. data/src/core/{lib/security/credentials → credentials/transport}/insecure/insecure_credentials.cc +2 -2
  142. data/src/core/{lib/security/credentials → credentials/transport}/insecure/insecure_credentials.h +5 -5
  143. data/src/core/{lib/security/security_connector → credentials/transport}/insecure/insecure_security_connector.cc +2 -2
  144. data/src/core/{lib/security/security_connector → credentials/transport}/insecure/insecure_security_connector.h +5 -5
  145. data/src/core/{lib/security/credentials → credentials/transport}/local/local_credentials.cc +2 -2
  146. data/src/core/{lib/security/credentials → credentials/transport}/local/local_credentials.h +5 -5
  147. data/src/core/{lib/security/security_connector → credentials/transport}/local/local_security_connector.cc +5 -5
  148. data/src/core/{lib/security/security_connector → credentials/transport}/local/local_security_connector.h +4 -4
  149. data/src/core/{lib/security/security_connector → credentials/transport}/security_connector.cc +2 -2
  150. data/src/core/{lib/security/security_connector → credentials/transport}/security_connector.h +3 -3
  151. data/src/core/{lib/security/credentials → credentials/transport}/ssl/ssl_credentials.cc +4 -4
  152. data/src/core/{lib/security/credentials → credentials/transport}/ssl/ssl_credentials.h +6 -6
  153. data/src/core/{lib/security/security_connector → credentials/transport}/ssl/ssl_security_connector.cc +5 -5
  154. data/src/core/{lib/security/security_connector → credentials/transport}/ssl/ssl_security_connector.h +4 -4
  155. data/src/core/{lib/security/certificate_provider → credentials/transport/tls}/certificate_provider_factory.h +3 -3
  156. data/src/core/{lib/security/certificate_provider → credentials/transport/tls}/certificate_provider_registry.cc +1 -1
  157. data/src/core/{lib/security/certificate_provider → credentials/transport/tls}/certificate_provider_registry.h +4 -4
  158. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_certificate_distributor.cc +13 -14
  159. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_certificate_distributor.h +18 -18
  160. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_certificate_match.cc +1 -1
  161. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_certificate_provider.cc +25 -17
  162. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_certificate_provider.h +8 -8
  163. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_certificate_verifier.cc +2 -2
  164. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_certificate_verifier.h +3 -3
  165. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_credentials_options.cc +1 -1
  166. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_credentials_options.h +7 -7
  167. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_crl_provider.cc +1 -2
  168. data/src/core/{lib/security/credentials → credentials/transport}/tls/grpc_tls_crl_provider.h +4 -5
  169. data/src/core/{lib/security/security_connector → credentials/transport/tls}/load_system_roots.h +3 -3
  170. data/src/core/{lib/security/security_connector → credentials/transport/tls}/load_system_roots_fallback.cc +1 -1
  171. data/src/core/{lib/security/security_connector → credentials/transport/tls}/load_system_roots_supported.cc +2 -2
  172. data/src/core/{lib/security/security_connector → credentials/transport/tls}/load_system_roots_supported.h +3 -3
  173. data/src/core/{lib/security/security_connector → credentials/transport/tls}/load_system_roots_windows.cc +1 -1
  174. data/src/core/{lib/security/security_connector → credentials/transport/tls}/ssl_utils.cc +3 -3
  175. data/src/core/{lib/security/security_connector → credentials/transport/tls}/ssl_utils.h +4 -4
  176. data/src/core/{lib/security/credentials → credentials/transport}/tls/tls_credentials.cc +6 -6
  177. data/src/core/{lib/security/credentials → credentials/transport}/tls/tls_credentials.h +5 -5
  178. data/src/core/{lib/security/security_connector → credentials/transport}/tls/tls_security_connector.cc +15 -15
  179. data/src/core/{lib/security/security_connector → credentials/transport}/tls/tls_security_connector.h +19 -19
  180. data/src/core/{lib/security/credentials → credentials/transport}/tls/tls_utils.cc +1 -1
  181. data/src/core/{lib/security/credentials → credentials/transport}/tls/tls_utils.h +3 -3
  182. data/src/core/{lib/security/credentials/credentials.cc → credentials/transport/transport_credentials.cc} +1 -3
  183. data/src/core/{lib/security/credentials/credentials.h → credentials/transport/transport_credentials.h} +5 -121
  184. data/src/core/{lib/security/credentials → credentials/transport}/xds/xds_credentials.cc +7 -6
  185. data/src/core/{lib/security/credentials → credentials/transport}/xds/xds_credentials.h +6 -6
  186. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +5 -12
  187. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +7 -7
  188. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +9 -6
  189. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +10 -17
  190. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +6 -6
  191. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +2 -2
  192. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +2 -9
  193. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +7 -7
  194. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.cc +1 -1
  195. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.h +1 -1
  196. data/src/core/ext/filters/http/client/http_client_filter.cc +1 -6
  197. data/src/core/ext/filters/http/client/http_client_filter.h +5 -5
  198. data/src/core/ext/filters/http/client_authority_filter.cc +8 -13
  199. data/src/core/ext/filters/http/client_authority_filter.h +6 -6
  200. data/src/core/ext/filters/http/message_compress/compression_filter.cc +19 -23
  201. data/src/core/ext/filters/http/message_compress/compression_filter.h +19 -14
  202. data/src/core/ext/filters/http/server/http_server_filter.cc +4 -9
  203. data/src/core/ext/filters/http/server/http_server_filter.h +4 -4
  204. data/src/core/ext/filters/message_size/message_size_filter.cc +14 -26
  205. data/src/core/ext/filters/message_size/message_size_filter.h +20 -21
  206. data/src/core/ext/filters/rbac/rbac_filter.cc +2 -9
  207. data/src/core/ext/filters/rbac/rbac_filter.h +6 -6
  208. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +3 -3
  209. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +2 -7
  210. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +4 -4
  211. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +1 -1
  212. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +2 -2
  213. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +4 -5
  214. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +4 -3
  215. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +37 -24
  216. data/src/core/ext/transport/chttp2/server/chttp2_server.h +10 -6
  217. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +1 -1
  218. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.cc +2 -2
  219. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.h +5 -7
  220. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +136 -110
  221. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +7 -7
  222. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +3 -3
  223. data/src/core/ext/transport/chttp2/transport/flow_control.cc +1 -1
  224. data/src/core/ext/transport/chttp2/transport/flow_control.h +3 -3
  225. data/src/core/ext/transport/chttp2/transport/frame.cc +91 -70
  226. data/src/core/ext/transport/chttp2/transport/frame.h +41 -5
  227. data/src/core/ext/transport/chttp2/transport/frame_data.cc +2 -0
  228. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +8 -8
  229. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +6 -3
  230. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +9 -7
  231. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +2 -2
  232. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +3 -3
  233. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +34 -33
  234. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +7 -8
  235. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +2 -2
  236. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +13 -11
  237. data/src/core/ext/transport/chttp2/transport/http2_settings.h +4 -4
  238. data/src/core/ext/transport/chttp2/transport/http2_status.h +52 -0
  239. data/src/core/ext/transport/chttp2/transport/internal.h +21 -13
  240. data/src/core/ext/transport/chttp2/transport/parsing.cc +49 -36
  241. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +1 -1
  242. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +2 -2
  243. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +2 -2
  244. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +2 -2
  245. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +2 -2
  246. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +1 -39
  247. data/src/core/ext/transport/chttp2/transport/varint.cc +4 -4
  248. data/src/core/ext/transport/chttp2/transport/writing.cc +29 -34
  249. data/src/core/ext/transport/inproc/inproc_transport.cc +2 -4
  250. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +16 -11
  251. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +65 -65
  252. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +28 -28
  253. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +14 -14
  254. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +6 -6
  255. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +6 -6
  256. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +4 -4
  257. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +146 -130
  258. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +72 -71
  259. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +26 -26
  260. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +7 -7
  261. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +216 -218
  262. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +66 -66
  263. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +27 -27
  264. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +9 -9
  265. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +326 -328
  266. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +103 -103
  267. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +58 -58
  268. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +14 -14
  269. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +22 -24
  270. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +3 -3
  271. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +29 -29
  272. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +16 -16
  273. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +186 -192
  274. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +54 -54
  275. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +54 -54
  276. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +21 -21
  277. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +59 -61
  278. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +15 -15
  279. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +100 -100
  280. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +34 -34
  281. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +12 -12
  282. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +5 -5
  283. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +144 -114
  284. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +42 -40
  285. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +19 -19
  286. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +9 -9
  287. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +27 -27
  288. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +10 -10
  289. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +12 -14
  290. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +2 -2
  291. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +41 -41
  292. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +16 -16
  293. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +24 -24
  294. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +9 -9
  295. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +139 -139
  296. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +46 -46
  297. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +61 -61
  298. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +20 -20
  299. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +3 -3
  300. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +1 -1
  301. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +6 -6
  302. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +4 -4
  303. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +33 -33
  304. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +14 -14
  305. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +12 -14
  306. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +2 -2
  307. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +52 -54
  308. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +10 -10
  309. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +738 -626
  310. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +246 -221
  311. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +2 -0
  312. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +13 -13
  313. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +4 -4
  314. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +3 -3
  315. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +2 -2
  316. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +7 -7
  317. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +3 -3
  318. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +15 -15
  319. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +7 -7
  320. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +7 -7
  321. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +3 -3
  322. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +16 -16
  323. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +10 -10
  324. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +306 -312
  325. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +96 -96
  326. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +61 -61
  327. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +27 -27
  328. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb.h +19 -19
  329. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.c +6 -6
  330. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +25 -25
  331. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +9 -9
  332. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +34 -34
  333. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +9 -9
  334. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +3 -3
  335. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +2 -2
  336. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +294 -294
  337. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +105 -105
  338. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +3 -3
  339. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +1 -1
  340. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +23 -23
  341. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +8 -8
  342. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +84 -84
  343. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +28 -28
  344. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +87 -87
  345. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +31 -31
  346. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +37 -7
  347. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +7 -5
  348. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +24 -24
  349. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +5 -5
  350. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +130 -132
  351. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +43 -43
  352. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +6 -6
  353. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +2 -2
  354. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +60 -60
  355. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +26 -26
  356. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +7 -7
  357. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +3 -3
  358. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb.h +142 -0
  359. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.c +55 -0
  360. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.h +32 -0
  361. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +33 -0
  362. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +7 -4
  363. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +6 -6
  364. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +2 -2
  365. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +7 -7
  366. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +3 -3
  367. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +11 -11
  368. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +4 -4
  369. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +85 -89
  370. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +20 -20
  371. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +80 -83
  372. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +27 -27
  373. data/src/core/ext/upb-gen/google/api/http.upb.h +51 -51
  374. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +22 -22
  375. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +327 -301
  376. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +97 -85
  377. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +1 -0
  378. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +9 -11
  379. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +9 -10
  380. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +110 -113
  381. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +25 -25
  382. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +6 -6
  383. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +4 -4
  384. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +21 -22
  385. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +3 -3
  386. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +70 -72
  387. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +17 -17
  388. data/src/core/ext/upb-gen/validate/validate.upb.h +368 -368
  389. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +117 -117
  390. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +9 -10
  391. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +7 -7
  392. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +3 -3
  393. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +12 -12
  394. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +2 -2
  395. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +27 -30
  396. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +7 -7
  397. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +3 -3
  398. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +3 -3
  399. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +1 -1
  400. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +22 -24
  401. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +3 -3
  402. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.c +6 -4
  403. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.c +50 -47
  404. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.c +210 -199
  405. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +5 -0
  406. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +33 -33
  407. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +19 -17
  408. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.c +41 -0
  409. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.h +33 -0
  410. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.c +26 -19
  411. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +98 -87
  412. data/src/core/{lib/security/transport → filter/auth}/auth_filters.h +101 -12
  413. data/src/core/{lib/security/transport → filter/auth}/client_auth_filter.cc +103 -12
  414. data/src/core/{lib/security/transport → filter/auth}/server_auth_filter.cc +5 -12
  415. data/src/core/filter/blackboard.cc +2 -2
  416. data/src/core/filter/filter_args.h +2 -2
  417. data/src/core/handshaker/handshaker.cc +0 -11
  418. data/src/core/handshaker/http_connect/http_connect_handshaker.cc +3 -5
  419. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +31 -32
  420. data/src/core/handshaker/http_connect/http_proxy_mapper.h +4 -4
  421. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.cc +5 -5
  422. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.h +5 -5
  423. data/src/core/handshaker/proxy_mapper.h +4 -4
  424. data/src/core/handshaker/proxy_mapper_registry.cc +5 -6
  425. data/src/core/handshaker/proxy_mapper_registry.h +4 -4
  426. data/src/core/handshaker/security/secure_endpoint.cc +2 -2
  427. data/src/core/handshaker/security/security_handshaker.cc +4 -6
  428. data/src/core/handshaker/security/security_handshaker.h +1 -1
  429. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +6 -4
  430. data/src/core/lib/channel/channel_args.cc +13 -13
  431. data/src/core/lib/channel/channel_args.h +57 -38
  432. data/src/core/lib/channel/channel_stack.h +1 -2
  433. data/src/core/lib/channel/channel_stack_builder_impl.cc +1 -1
  434. data/src/core/lib/channel/connected_channel.cc +3 -3
  435. data/src/core/lib/channel/promise_based_filter.cc +9 -9
  436. data/src/core/lib/channel/promise_based_filter.h +82 -83
  437. data/src/core/lib/compression/compression.cc +3 -2
  438. data/src/core/lib/compression/compression_internal.cc +9 -9
  439. data/src/core/lib/compression/compression_internal.h +3 -3
  440. data/src/core/lib/debug/trace_flags.cc +5 -6
  441. data/src/core/lib/debug/trace_flags.h +2 -3
  442. data/src/core/lib/event_engine/ares_resolver.cc +9 -11
  443. data/src/core/lib/event_engine/ares_resolver.h +6 -10
  444. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +2 -4
  445. data/src/core/lib/event_engine/cf_engine/cf_engine.h +2 -4
  446. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +6 -7
  447. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +2 -4
  448. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +2 -4
  449. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +3 -7
  450. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +2 -4
  451. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +5 -7
  452. data/src/core/lib/event_engine/channel_args_endpoint_config.h +6 -7
  453. data/src/core/lib/event_engine/common_closures.h +2 -4
  454. data/src/core/lib/event_engine/default_event_engine.cc +62 -33
  455. data/src/core/lib/event_engine/default_event_engine.h +24 -33
  456. data/src/core/lib/event_engine/default_event_engine_factory.cc +12 -18
  457. data/src/core/lib/event_engine/default_event_engine_factory.h +3 -5
  458. data/src/core/lib/event_engine/event_engine.cc +2 -4
  459. data/src/core/lib/event_engine/extensions/can_track_errors.h +2 -4
  460. data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +2 -4
  461. data/src/core/lib/event_engine/extensions/iomgr_compatible.h +39 -0
  462. data/src/core/lib/event_engine/extensions/supports_fd.h +2 -4
  463. data/src/core/lib/event_engine/extensions/supports_win_sockets.h +48 -0
  464. data/src/core/lib/event_engine/extensions/tcp_trace.h +3 -5
  465. data/src/core/lib/event_engine/forkable.cc +2 -4
  466. data/src/core/lib/event_engine/forkable.h +2 -4
  467. data/src/core/lib/event_engine/grpc_polled_fd.h +2 -4
  468. data/src/core/lib/event_engine/handle_containers.h +2 -4
  469. data/src/core/lib/event_engine/memory_allocator_factory.h +2 -4
  470. data/src/core/lib/event_engine/poller.h +2 -4
  471. data/src/core/lib/event_engine/posix.h +2 -4
  472. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +4 -50
  473. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +2 -4
  474. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +4 -51
  475. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +2 -4
  476. data/src/core/lib/event_engine/posix_engine/event_poller.h +2 -4
  477. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +2 -4
  478. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +2 -4
  479. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +2 -4
  480. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +2 -4
  481. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +2 -4
  482. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +2 -4
  483. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +2 -4
  484. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +2 -4
  485. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +2 -4
  486. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +6 -12
  487. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +2 -4
  488. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +3 -7
  489. data/src/core/lib/event_engine/posix_engine/posix_engine.h +2 -4
  490. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +2 -4
  491. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +3 -5
  492. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +2 -4
  493. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +28 -4
  494. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +6 -4
  495. data/src/core/lib/event_engine/posix_engine/set_socket_dualstack.cc +64 -0
  496. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +5 -17
  497. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +2 -4
  498. data/src/core/lib/event_engine/posix_engine/timer.cc +4 -6
  499. data/src/core/lib/event_engine/posix_engine/timer.h +4 -6
  500. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +2 -4
  501. data/src/core/lib/event_engine/posix_engine/timer_heap.h +2 -4
  502. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +5 -7
  503. data/src/core/lib/event_engine/posix_engine/timer_manager.h +4 -6
  504. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +4 -8
  505. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +24 -25
  506. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +2 -4
  507. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +2 -4
  508. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +12 -6
  509. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +2 -4
  510. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +2 -4
  511. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +2 -4
  512. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +2 -4
  513. data/src/core/lib/event_engine/query_extensions.h +2 -4
  514. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +2 -4
  515. data/src/core/lib/event_engine/resolved_address.cc +2 -4
  516. data/src/core/lib/event_engine/resolved_address_internal.h +2 -4
  517. data/src/core/lib/event_engine/shim.cc +11 -20
  518. data/src/core/lib/event_engine/shim.h +13 -4
  519. data/src/core/lib/event_engine/slice.cc +2 -4
  520. data/src/core/lib/event_engine/slice_buffer.cc +2 -4
  521. data/src/core/lib/event_engine/tcp_socket_utils.cc +6 -8
  522. data/src/core/lib/event_engine/tcp_socket_utils.h +5 -7
  523. data/src/core/lib/event_engine/thread_local.cc +2 -4
  524. data/src/core/lib/event_engine/thread_local.h +2 -4
  525. data/src/core/lib/event_engine/thread_pool/thread_count.cc +2 -4
  526. data/src/core/lib/event_engine/thread_pool/thread_count.h +4 -18
  527. data/src/core/lib/event_engine/thread_pool/thread_pool.h +2 -4
  528. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +2 -4
  529. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +18 -12
  530. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +4 -5
  531. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +2 -4
  532. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +2 -4
  533. data/src/core/lib/event_engine/time_util.cc +2 -4
  534. data/src/core/lib/event_engine/time_util.h +2 -4
  535. data/src/core/lib/event_engine/utils.cc +2 -4
  536. data/src/core/lib/event_engine/utils.h +2 -4
  537. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +2 -4
  538. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.h +2 -4
  539. data/src/core/lib/event_engine/windows/iocp.cc +2 -4
  540. data/src/core/lib/event_engine/windows/iocp.h +2 -4
  541. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +2 -4
  542. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.h +2 -4
  543. data/src/core/lib/event_engine/windows/win_socket.cc +13 -4
  544. data/src/core/lib/event_engine/windows/win_socket.h +5 -4
  545. data/src/core/lib/event_engine/windows/windows_endpoint.cc +7 -14
  546. data/src/core/lib/event_engine/windows/windows_endpoint.h +4 -6
  547. data/src/core/lib/event_engine/windows/windows_engine.cc +44 -4
  548. data/src/core/lib/event_engine/windows/windows_engine.h +10 -6
  549. data/src/core/lib/event_engine/windows/windows_listener.cc +7 -10
  550. data/src/core/lib/event_engine/windows/windows_listener.h +11 -8
  551. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +2 -4
  552. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +2 -4
  553. data/src/core/lib/event_engine/work_queue/work_queue.h +2 -4
  554. data/src/core/lib/experiments/experiments.cc +276 -234
  555. data/src/core/lib/experiments/experiments.h +121 -100
  556. data/src/core/lib/iomgr/buffer_list.h +22 -21
  557. data/src/core/lib/iomgr/cfstream_handle.cc +0 -2
  558. data/src/core/lib/iomgr/closure.h +1 -4
  559. data/src/core/lib/iomgr/combiner.cc +0 -1
  560. data/src/core/lib/iomgr/endpoint_pair_posix.cc +43 -16
  561. data/src/core/lib/iomgr/endpoint_pair_windows.cc +43 -8
  562. data/src/core/lib/iomgr/error.cc +28 -44
  563. data/src/core/lib/iomgr/ev_epoll1_linux.cc +13 -1
  564. data/src/core/lib/iomgr/ev_poll_posix.cc +13 -0
  565. data/src/core/lib/iomgr/event_engine_shims/closure.cc +0 -1
  566. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +0 -2
  567. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +0 -1
  568. data/src/core/lib/iomgr/exec_ctx.cc +1 -7
  569. data/src/core/lib/iomgr/exec_ctx.h +1 -132
  570. data/src/core/lib/iomgr/executor.cc +0 -11
  571. data/src/core/lib/iomgr/polling_entity.cc +2 -7
  572. data/src/core/lib/iomgr/resolve_address_posix.cc +0 -2
  573. data/src/core/lib/iomgr/resolve_address_windows.cc +0 -2
  574. data/src/core/lib/iomgr/socket_utils_common_posix.cc +1 -0
  575. data/src/core/lib/iomgr/socket_utils_posix.cc +23 -11
  576. data/src/core/lib/iomgr/socket_utils_posix.h +12 -2
  577. data/src/core/lib/iomgr/tcp_client_cfstream.cc +8 -9
  578. data/src/core/lib/iomgr/tcp_client_posix.cc +11 -15
  579. data/src/core/lib/iomgr/tcp_client_posix.h +1 -1
  580. data/src/core/lib/iomgr/tcp_posix.cc +59 -31
  581. data/src/core/lib/iomgr/tcp_posix.h +10 -2
  582. data/src/core/lib/iomgr/tcp_server_posix.cc +10 -4
  583. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +1 -4
  584. data/src/core/lib/iomgr/tcp_server_windows.cc +27 -17
  585. data/src/core/lib/iomgr/timer_manager.cc +1 -9
  586. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +10 -2
  587. data/src/core/lib/promise/activity.h +4 -4
  588. data/src/core/lib/promise/all_ok.h +31 -0
  589. data/src/core/lib/promise/detail/join_state.h +16 -68
  590. data/src/core/lib/promise/detail/promise_factory.h +85 -25
  591. data/src/core/lib/promise/detail/promise_like.h +16 -19
  592. data/src/core/lib/promise/detail/seq_state.h +102 -315
  593. data/src/core/lib/promise/for_each.h +14 -5
  594. data/src/core/lib/promise/if.h +48 -20
  595. data/src/core/lib/promise/interceptor_list.h +9 -9
  596. data/src/core/lib/promise/latch.h +14 -6
  597. data/src/core/lib/promise/loop.h +61 -18
  598. data/src/core/lib/promise/map.h +166 -49
  599. data/src/core/lib/promise/party.cc +48 -14
  600. data/src/core/lib/promise/party.h +220 -27
  601. data/src/core/lib/promise/pipe.h +12 -12
  602. data/src/core/lib/promise/poll.h +29 -24
  603. data/src/core/lib/promise/prioritized_race.h +16 -22
  604. data/src/core/lib/promise/promise.h +4 -5
  605. data/src/core/lib/promise/race.h +4 -12
  606. data/src/core/lib/promise/seq.h +41 -6
  607. data/src/core/lib/promise/sleep.cc +3 -3
  608. data/src/core/lib/promise/sleep.h +14 -1
  609. data/src/core/lib/promise/status_flag.h +32 -14
  610. data/src/core/lib/promise/try_join.h +119 -5
  611. data/src/core/lib/promise/try_seq.h +39 -12
  612. data/src/core/lib/resource_quota/arena.h +79 -0
  613. data/src/core/lib/resource_quota/memory_quota.cc +53 -49
  614. data/src/core/lib/resource_quota/memory_quota.h +4 -4
  615. data/src/core/lib/security/authorization/evaluate_args.cc +4 -4
  616. data/src/core/lib/security/authorization/evaluate_args.h +4 -4
  617. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +1 -8
  618. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +7 -7
  619. data/src/core/lib/security/authorization/matchers.h +3 -3
  620. data/src/core/lib/security/authorization/rbac_policy.cc +1 -1
  621. data/src/core/lib/security/authorization/rbac_policy.h +3 -3
  622. data/src/core/lib/slice/slice.h +6 -0
  623. data/src/core/lib/slice/slice_buffer.cc +2 -2
  624. data/src/core/lib/slice/slice_buffer.h +2 -2
  625. data/src/core/lib/surface/call.cc +20 -22
  626. data/src/core/lib/surface/call.h +4 -3
  627. data/src/core/lib/surface/call_utils.cc +5 -5
  628. data/src/core/lib/surface/call_utils.h +11 -7
  629. data/src/core/lib/surface/channel.cc +6 -14
  630. data/src/core/lib/surface/channel.h +5 -5
  631. data/src/core/lib/surface/channel_init.cc +1 -1
  632. data/src/core/lib/surface/channel_init.h +2 -2
  633. data/src/core/lib/surface/completion_queue.cc +87 -66
  634. data/src/core/lib/surface/filter_stack_call.cc +42 -31
  635. data/src/core/lib/surface/filter_stack_call.h +2 -2
  636. data/src/core/lib/surface/init.cc +19 -15
  637. data/src/core/lib/surface/lame_client.cc +1 -1
  638. data/src/core/lib/surface/legacy_channel.cc +37 -31
  639. data/src/core/lib/surface/legacy_channel.h +3 -3
  640. data/src/core/lib/surface/version.cc +2 -2
  641. data/src/core/lib/transport/connectivity_state.cc +8 -9
  642. data/src/core/lib/transport/connectivity_state.h +2 -4
  643. data/src/core/lib/transport/error_utils.cc +65 -11
  644. data/src/core/lib/transport/error_utils.h +2 -2
  645. data/src/core/lib/transport/status_conversion.cc +16 -14
  646. data/src/core/lib/transport/status_conversion.h +5 -4
  647. data/src/core/lib/transport/timeout_encoding.cc +15 -15
  648. data/src/core/lib/transport/timeout_encoding.h +3 -2
  649. data/src/core/lib/transport/transport.cc +0 -1
  650. data/src/core/lib/transport/transport.h +17 -12
  651. data/src/core/lib/transport/transport_op_string.cc +1 -1
  652. data/src/core/load_balancing/backend_metric_parser.cc +21 -28
  653. data/src/core/load_balancing/delegating_helper.h +1 -1
  654. data/src/core/load_balancing/endpoint_list.cc +1 -1
  655. data/src/core/load_balancing/endpoint_list.h +7 -7
  656. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +2 -7
  657. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +4 -4
  658. data/src/core/load_balancing/grpclb/grpclb.cc +22 -40
  659. data/src/core/load_balancing/health_check_client.cc +16 -48
  660. data/src/core/load_balancing/health_check_client_internal.h +7 -7
  661. data/src/core/load_balancing/lb_policy.cc +4 -6
  662. data/src/core/load_balancing/lb_policy.h +4 -4
  663. data/src/core/load_balancing/lb_policy_registry.cc +10 -8
  664. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +57 -68
  665. data/src/core/load_balancing/outlier_detection/outlier_detection.h +4 -3
  666. data/src/core/load_balancing/pick_first/pick_first.cc +11 -966
  667. data/src/core/load_balancing/priority/priority.cc +8 -13
  668. data/src/core/load_balancing/ring_hash/ring_hash.cc +54 -90
  669. data/src/core/load_balancing/rls/rls.cc +132 -227
  670. data/src/core/load_balancing/rls/rls.h +97 -1
  671. data/src/core/load_balancing/round_robin/round_robin.cc +5 -5
  672. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +4 -4
  673. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h +2 -2
  674. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +8 -14
  675. data/src/core/load_balancing/weighted_target/weighted_target.cc +8 -16
  676. data/src/core/load_balancing/xds/cds.cc +14 -25
  677. data/src/core/load_balancing/xds/xds_cluster_impl.cc +16 -19
  678. data/src/core/load_balancing/xds/xds_cluster_manager.cc +10 -18
  679. data/src/core/load_balancing/xds/xds_override_host.cc +45 -92
  680. data/src/core/load_balancing/xds/xds_wrr_locality.cc +10 -12
  681. data/src/core/plugin_registry/grpc_plugin_registry.cc +2 -0
  682. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +0 -2
  683. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +8 -10
  684. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +4 -0
  685. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +10 -15
  686. data/src/core/resolver/dns/native/dns_resolver.cc +1 -1
  687. data/src/core/resolver/fake/fake_resolver.cc +10 -11
  688. data/src/core/resolver/fake/fake_resolver.h +2 -2
  689. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +10 -13
  690. data/src/core/resolver/polling_resolver.cc +2 -5
  691. data/src/core/resolver/polling_resolver.h +3 -3
  692. data/src/core/resolver/resolver_registry.cc +4 -3
  693. data/src/core/resolver/xds/xds_config.cc +6 -6
  694. data/src/core/resolver/xds/xds_config.h +2 -2
  695. data/src/core/resolver/xds/xds_dependency_manager.cc +88 -80
  696. data/src/core/resolver/xds/xds_dependency_manager.h +4 -0
  697. data/src/core/resolver/xds/xds_resolver.cc +55 -77
  698. data/src/core/server/server.cc +78 -83
  699. data/src/core/server/server.h +17 -6
  700. data/src/core/server/server_call_tracer_filter.cc +4 -8
  701. data/src/core/server/server_config_selector.h +1 -1
  702. data/src/core/server/server_config_selector_filter.cc +9 -16
  703. data/src/core/server/xds_server_config_fetcher.cc +21 -23
  704. data/src/core/service_config/service_config_channel_arg_filter.cc +8 -20
  705. data/src/core/service_config/service_config_impl.cc +3 -3
  706. data/src/core/telemetry/call_tracer.cc +10 -12
  707. data/src/core/telemetry/call_tracer.h +8 -7
  708. data/src/core/telemetry/metrics.cc +33 -15
  709. data/src/core/telemetry/metrics.h +17 -11
  710. data/src/core/telemetry/stats_data.cc +75 -2
  711. data/src/core/telemetry/stats_data.h +46 -4
  712. data/src/core/telemetry/tcp_tracer.h +91 -85
  713. data/src/core/{lib/security/context/security_context.cc → transport/auth_context.cc} +1 -96
  714. data/src/core/{lib/security/context/security_context.h → transport/auth_context.h} +6 -76
  715. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +2 -2
  716. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +14 -14
  717. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +1 -1
  718. data/src/core/tsi/fake_transport_security.cc +5 -0
  719. data/src/core/tsi/ssl_transport_security.cc +1 -1
  720. data/src/core/util/check_class_size.h +48 -0
  721. data/src/core/util/dump_args.h +1 -9
  722. data/src/core/util/env.h +3 -4
  723. data/src/core/util/examine_stack.cc +2 -2
  724. data/src/core/util/examine_stack.h +3 -4
  725. data/src/core/util/gcp_metadata_query.cc +1 -1
  726. data/src/core/util/gpr_time.cc +0 -2
  727. data/src/core/util/http_client/httpcli.cc +7 -8
  728. data/src/core/util/http_client/httpcli.h +4 -4
  729. data/src/core/util/http_client/httpcli_security_connector.cc +5 -5
  730. data/src/core/util/json/json_channel_args.h +2 -1
  731. data/src/core/util/json/json_object_loader.cc +4 -4
  732. data/src/core/util/json/json_object_loader.h +12 -12
  733. data/src/core/util/json/json_reader.cc +4 -4
  734. data/src/core/util/json/json_writer.cc +3 -3
  735. data/src/core/util/latent_see.cc +3 -3
  736. data/src/core/util/latent_see.h +2 -2
  737. data/src/core/util/linux/env.cc +3 -4
  738. data/src/core/util/load_file.cc +26 -14
  739. data/src/core/util/lru_cache.h +4 -4
  740. data/src/core/util/match.h +7 -7
  741. data/src/core/util/matchers.cc +1 -2
  742. data/src/core/util/matchers.h +2 -2
  743. data/src/core/util/posix/env.cc +2 -2
  744. data/src/core/util/posix/sync.cc +0 -1
  745. data/src/core/util/posix/time.cc +0 -1
  746. data/src/core/util/ring_buffer.h +4 -5
  747. data/src/core/util/status_helper.cc +98 -79
  748. data/src/core/util/status_helper.h +13 -30
  749. data/src/core/util/sync_abseil.cc +0 -1
  750. data/src/core/util/table.h +6 -21
  751. data/src/core/util/time.cc +1 -1
  752. data/src/core/util/time.h +3 -3
  753. data/src/core/util/time_precise.cc +0 -1
  754. data/src/core/util/type_list.h +56 -0
  755. data/src/core/util/uri.cc +6 -4
  756. data/src/core/util/uri.h +7 -0
  757. data/src/core/util/useful.h +4 -4
  758. data/src/core/util/validation_errors.cc +5 -5
  759. data/src/core/util/wait_for_single_owner.h +62 -0
  760. data/src/core/util/windows/env.cc +3 -3
  761. data/src/core/util/windows/sync.cc +0 -1
  762. data/src/core/util/windows/time.cc +0 -1
  763. data/src/core/util/work_serializer.cc +27 -267
  764. data/src/core/util/work_serializer.h +3 -27
  765. data/src/core/xds/grpc/certificate_provider_store.cc +13 -18
  766. data/src/core/xds/grpc/certificate_provider_store.h +3 -3
  767. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +5 -5
  768. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +1 -1
  769. data/src/core/xds/grpc/xds_audit_logger_registry.cc +1 -1
  770. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +20 -20
  771. data/src/core/xds/grpc/xds_bootstrap_grpc.h +2 -2
  772. data/src/core/xds/grpc/xds_certificate_provider.cc +16 -16
  773. data/src/core/xds/grpc/xds_certificate_provider.h +2 -2
  774. data/src/core/xds/grpc/xds_client_grpc.cc +14 -14
  775. data/src/core/xds/grpc/xds_client_grpc.h +4 -2
  776. data/src/core/xds/grpc/xds_cluster.h +7 -7
  777. data/src/core/xds/grpc/xds_cluster_parser.cc +28 -27
  778. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +4 -4
  779. data/src/core/xds/grpc/xds_common_types.cc +2 -2
  780. data/src/core/xds/grpc/xds_common_types.h +4 -4
  781. data/src/core/xds/grpc/xds_common_types_parser.cc +29 -31
  782. data/src/core/xds/grpc/xds_common_types_parser.h +8 -7
  783. data/src/core/xds/grpc/xds_endpoint.cc +3 -4
  784. data/src/core/xds/grpc/xds_endpoint_parser.cc +14 -14
  785. data/src/core/xds/grpc/xds_health_status.cc +4 -4
  786. data/src/core/xds/grpc/xds_health_status.h +4 -3
  787. data/src/core/xds/grpc/xds_http_fault_filter.cc +19 -21
  788. data/src/core/xds/grpc/xds_http_fault_filter.h +4 -3
  789. data/src/core/xds/grpc/xds_http_filter.h +4 -4
  790. data/src/core/xds/grpc/xds_http_filter_registry.cc +7 -7
  791. data/src/core/xds/grpc/xds_http_filter_registry.h +4 -4
  792. data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +7 -7
  793. data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +4 -3
  794. data/src/core/xds/grpc/xds_http_rbac_filter.cc +30 -23
  795. data/src/core/xds/grpc/xds_http_rbac_filter.h +4 -3
  796. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +10 -10
  797. data/src/core/xds/grpc/xds_http_stateful_session_filter.h +4 -3
  798. data/src/core/xds/grpc/xds_lb_policy_registry.cc +4 -4
  799. data/src/core/xds/grpc/xds_listener.cc +4 -6
  800. data/src/core/xds/grpc/xds_listener.h +10 -10
  801. data/src/core/xds/grpc/xds_listener_parser.cc +58 -51
  802. data/src/core/xds/grpc/xds_listener_parser.h +2 -1
  803. data/src/core/xds/grpc/xds_metadata.cc +5 -5
  804. data/src/core/xds/grpc/xds_metadata_parser.cc +65 -52
  805. data/src/core/xds/grpc/xds_route_config.cc +9 -15
  806. data/src/core/xds/grpc/xds_route_config.h +10 -10
  807. data/src/core/xds/grpc/xds_route_config_parser.cc +115 -117
  808. data/src/core/xds/grpc/xds_route_config_parser.h +5 -5
  809. data/src/core/xds/grpc/xds_routing.cc +6 -6
  810. data/src/core/xds/grpc/xds_routing.h +6 -6
  811. data/src/core/xds/grpc/xds_server_grpc.cc +82 -49
  812. data/src/core/xds/grpc/xds_server_grpc.h +26 -13
  813. data/src/core/xds/grpc/xds_server_grpc_interface.h +33 -0
  814. data/src/core/xds/grpc/xds_transport_grpc.cc +10 -11
  815. data/src/core/xds/grpc/xds_transport_grpc.h +5 -3
  816. data/src/core/xds/xds_client/lrs_client.cc +77 -88
  817. data/src/core/xds/xds_client/lrs_client.h +15 -15
  818. data/src/core/xds/xds_client/xds_api.cc +5 -5
  819. data/src/core/xds/xds_client/xds_bootstrap.cc +11 -1
  820. data/src/core/xds/xds_client/xds_bootstrap.h +23 -1
  821. data/src/core/xds/xds_client/xds_client.cc +573 -378
  822. data/src/core/xds/xds_client/xds_client.h +42 -15
  823. data/src/core/xds/xds_client/xds_resource_type.h +3 -5
  824. data/src/core/xds/xds_client/xds_resource_type_impl.h +3 -3
  825. data/src/core/xds/xds_client/xds_transport.h +1 -1
  826. data/src/ruby/ext/grpc/extconf.rb +1 -1
  827. data/src/ruby/lib/grpc/version.rb +1 -1
  828. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.cc +13 -55
  829. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.cc +13 -55
  830. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.cc +13 -55
  831. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.cc +13 -55
  832. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.cc +17 -59
  833. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.cc +13 -55
  834. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.cc +13 -55
  835. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.cc +13 -55
  836. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.cc +13 -55
  837. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.cc +13 -55
  838. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.cc +13 -55
  839. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.cc +13 -55
  840. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.cc +41 -76
  841. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.cc +13 -55
  842. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.cc +17 -91
  843. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.cc +13 -55
  844. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.cc +13 -55
  845. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.cc +13 -55
  846. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.cc +13 -55
  847. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.cc +13 -55
  848. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +13 -57
  849. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.cc +13 -13
  850. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.cc +13 -55
  851. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.cc +13 -55
  852. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.cc +13 -55
  853. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.cc +13 -55
  854. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.cc +13 -55
  855. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.cc +13 -55
  856. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.cc +13 -55
  857. data/third_party/boringssl-with-bazel/src/crypto/bcm_support.h +13 -13
  858. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.cc +13 -55
  859. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.cc +13 -55
  860. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.cc +16 -57
  861. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.cc +13 -55
  862. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.cc +14 -56
  863. data/third_party/boringssl-with-bazel/src/crypto/bio/file.cc +14 -56
  864. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.cc +18 -58
  865. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +13 -55
  866. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.cc +15 -51
  867. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.cc +17 -60
  868. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.cc +13 -55
  869. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.cc +13 -13
  870. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.cc +13 -13
  871. data/third_party/boringssl-with-bazel/src/crypto/{bn_extra → bn}/bn_asn1.cc +13 -13
  872. data/third_party/boringssl-with-bazel/src/crypto/{bn_extra → bn}/convert.cc +13 -55
  873. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.cc +14 -57
  874. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.cc +13 -13
  875. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.cc +13 -13
  876. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.cc +13 -13
  877. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.cc +23 -15
  878. data/third_party/boringssl-with-bazel/src/crypto/bytestring/internal.h +13 -13
  879. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.cc +13 -13
  880. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.cc +13 -13
  881. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +18 -18
  882. data/third_party/boringssl-with-bazel/src/crypto/cipher/derive_key.cc +110 -0
  883. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → cipher}/e_aesctrhmac.cc +18 -23
  884. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → cipher}/e_aesgcmsiv.cc +20 -13
  885. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → cipher}/e_chacha20poly1305.cc +13 -13
  886. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → cipher}/e_des.cc +13 -55
  887. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_null.cc +51 -0
  888. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → cipher}/e_rc2.cc +27 -69
  889. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc4.cc +54 -0
  890. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → cipher}/e_tls.cc +13 -13
  891. data/third_party/boringssl-with-bazel/src/crypto/cipher/get_cipher.cc +85 -0
  892. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → cipher}/internal.h +29 -69
  893. data/third_party/boringssl-with-bazel/src/crypto/{cipher_extra → cipher}/tls_cbc.cc +13 -51
  894. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.cc +14 -58
  895. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +13 -13
  896. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.cc +13 -15
  897. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.cc +13 -15
  898. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.cc +13 -15
  899. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.cc +13 -15
  900. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.cc +13 -15
  901. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.cc +14 -16
  902. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.cc +13 -14
  903. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.cc +13 -14
  904. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.h +13 -13
  905. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.cc +13 -67
  906. data/third_party/boringssl-with-bazel/src/crypto/crypto.cc +14 -16
  907. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.cc +13 -13
  908. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.cc +13 -13
  909. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +13 -13
  910. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +13 -13
  911. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.cc +15 -13
  912. data/third_party/boringssl-with-bazel/src/crypto/des/des.cc +13 -55
  913. data/third_party/boringssl-with-bazel/src/crypto/des/internal.h +27 -69
  914. data/third_party/boringssl-with-bazel/src/crypto/dh/dh_asn1.cc +124 -0
  915. data/third_party/boringssl-with-bazel/src/crypto/{dh_extra → dh}/params.cc +13 -51
  916. data/third_party/boringssl-with-bazel/src/crypto/{digest_extra → digest}/digest_extra.cc +13 -55
  917. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.cc +13 -58
  918. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.cc +13 -53
  919. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +13 -13
  920. data/third_party/boringssl-with-bazel/src/crypto/{ec_extra → ec}/ec_asn1.cc +24 -61
  921. data/third_party/boringssl-with-bazel/src/crypto/{ec_extra → ec}/ec_derive.cc +13 -13
  922. data/third_party/boringssl-with-bazel/src/crypto/{ec_extra → ec}/hash_to_curve.cc +14 -14
  923. data/third_party/boringssl-with-bazel/src/crypto/{ec_extra → ec}/internal.h +13 -13
  924. data/third_party/boringssl-with-bazel/src/crypto/ecdh/ecdh.cc +73 -0
  925. data/third_party/boringssl-with-bazel/src/crypto/{ecdsa_extra → ecdsa}/ecdsa_asn1.cc +17 -61
  926. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.cc +13 -13
  927. data/third_party/boringssl-with-bazel/src/crypto/err/err.cc +17 -107
  928. data/third_party/boringssl-with-bazel/src/crypto/err/internal.h +13 -13
  929. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.cc +29 -79
  930. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.cc +122 -198
  931. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.cc +13 -55
  932. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +13 -55
  933. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.cc +15 -8
  934. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.cc +13 -8
  935. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.cc +56 -110
  936. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.cc +13 -54
  937. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.cc +20 -66
  938. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.cc +13 -13
  939. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.cc +13 -13
  940. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.cc +13 -13
  941. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.cc +19 -57
  942. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.cc +13 -54
  943. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.cc +13 -13
  944. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.cc +13 -13
  945. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.cc +29 -77
  946. data/third_party/boringssl-with-bazel/src/crypto/evp/print.cc +13 -51
  947. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.cc +13 -8
  948. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.cc +13 -55
  949. data/third_party/boringssl-with-bazel/src/crypto/ex_data.cc +13 -107
  950. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.cc.inc +112 -48
  951. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.cc.inc +13 -13
  952. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/{modes → aes}/cbc.cc.inc +13 -47
  953. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/{modes → aes}/cfb.cc.inc +13 -47
  954. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ctr.cc.inc +100 -0
  955. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/{modes → aes}/gcm.cc.inc +127 -314
  956. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/{modes → aes}/gcm_nohw.cc.inc +13 -13
  957. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +419 -66
  958. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.cc.inc +13 -47
  959. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.cc.inc +13 -53
  960. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ofb.cc.inc +53 -0
  961. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/{modes → aes}/polyval.cc.inc +13 -13
  962. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.cc +28 -20
  963. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm_interface.h +501 -14
  964. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.cc.inc +13 -55
  965. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +15 -2
  966. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.cc.inc +13 -55
  967. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.cc.inc +13 -55
  968. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.cc.inc +13 -55
  969. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.cc.inc +16 -57
  970. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.cc.inc +13 -55
  971. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.cc.inc +13 -13
  972. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.cc.inc +16 -109
  973. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.cc.inc +13 -107
  974. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.cc.inc +13 -13
  975. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.cc.inc +13 -55
  976. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +25 -134
  977. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.cc.inc +13 -51
  978. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.cc.inc +14 -109
  979. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.cc.inc +13 -13
  980. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.cc.inc +13 -55
  981. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.cc.inc +13 -107
  982. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.cc.inc +13 -107
  983. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.cc.inc +18 -13
  984. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.h +20 -17
  985. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.cc.inc +13 -55
  986. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.cc.inc +13 -53
  987. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.cc.inc +13 -13
  988. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.cc.inc +14 -56
  989. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.cc.inc +69 -283
  990. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.cc.inc +21 -58
  991. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +14 -65
  992. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.cc.inc +13 -47
  993. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +13 -13
  994. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.cc.inc +13 -55
  995. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.cc.inc +13 -55
  996. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/internal.h +13 -13
  997. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.cc.inc +13 -55
  998. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.cc.inc +13 -55
  999. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/internal.h +13 -55
  1000. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +13 -47
  1001. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.cc.inc +13 -54
  1002. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/builtin_curves.h +91 -91
  1003. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.cc.inc +14 -66
  1004. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.cc.inc +14 -72
  1005. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.cc.inc +14 -66
  1006. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.cc.inc +13 -13
  1007. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +19 -66
  1008. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.cc.inc +14 -66
  1009. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.cc.inc +13 -13
  1010. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz-table.h +15 -10
  1011. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.cc.inc +22 -17
  1012. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.h +22 -17
  1013. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.cc.inc +13 -13
  1014. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +13 -13
  1015. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.cc.inc +21 -15
  1016. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.cc.inc +14 -66
  1017. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.cc.inc +13 -13
  1018. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.cc.inc +13 -13
  1019. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.cc.inc +14 -66
  1020. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.cc.inc +14 -65
  1021. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +13 -51
  1022. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +13 -13
  1023. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.cc +13 -13
  1024. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.cc.inc +13 -13
  1025. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.cc.inc +13 -55
  1026. data/third_party/boringssl-with-bazel/src/crypto/{keccak → fipsmodule/keccak}/internal.h +13 -13
  1027. data/third_party/boringssl-with-bazel/src/crypto/{keccak/keccak.cc → fipsmodule/keccak/keccak.cc.inc} +14 -14
  1028. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mldsa/mldsa.cc.inc +1993 -0
  1029. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mlkem/mlkem.cc.inc +1165 -0
  1030. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.cc.inc +18 -25
  1031. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +18 -24
  1032. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.cc.inc +15 -13
  1033. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.cc.inc +14 -109
  1034. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +13 -56
  1035. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.cc.inc +13 -54
  1036. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.cc.inc +18 -77
  1037. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.cc.inc +38 -90
  1038. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.cc.inc +13 -13
  1039. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.cc.inc +13 -13
  1040. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/internal.h +34 -34
  1041. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +13 -13
  1042. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +44 -56
  1043. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.cc.inc +13 -55
  1044. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.cc.inc +13 -55
  1045. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.cc.inc +13 -55
  1046. data/third_party/boringssl-with-bazel/src/crypto/{slhdsa → fipsmodule/slhdsa}/address.h +28 -32
  1047. data/third_party/boringssl-with-bazel/src/crypto/{slhdsa/fors.cc → fipsmodule/slhdsa/fors.cc.inc} +44 -44
  1048. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.h +58 -0
  1049. data/third_party/boringssl-with-bazel/src/crypto/{slhdsa/merkle.cc → fipsmodule/slhdsa/merkle.cc.inc} +46 -46
  1050. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.h +70 -0
  1051. data/third_party/boringssl-with-bazel/src/crypto/{slhdsa → fipsmodule/slhdsa}/params.h +20 -25
  1052. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +329 -0
  1053. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.cc.inc +173 -0
  1054. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.h +85 -0
  1055. data/third_party/boringssl-with-bazel/src/crypto/{slhdsa/wots.cc → fipsmodule/slhdsa/wots.cc.inc} +46 -46
  1056. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.h +50 -0
  1057. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +13 -13
  1058. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.cc.inc +13 -51
  1059. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.cc +13 -13
  1060. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.cc +21 -13
  1061. data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +13 -13
  1062. data/third_party/boringssl-with-bazel/src/crypto/internal.h +82 -208
  1063. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +13 -13
  1064. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.cc +52 -28
  1065. data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +31 -75
  1066. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.cc +13 -55
  1067. data/third_party/boringssl-with-bazel/src/crypto/md4/md4.cc +13 -55
  1068. data/third_party/boringssl-with-bazel/src/crypto/md5/internal.h +13 -13
  1069. data/third_party/boringssl-with-bazel/src/crypto/md5/md5.cc +13 -55
  1070. data/third_party/boringssl-with-bazel/src/crypto/mem.cc +13 -55
  1071. data/third_party/boringssl-with-bazel/src/crypto/mldsa/mldsa.cc +47 -1747
  1072. data/third_party/boringssl-with-bazel/src/crypto/mlkem/mlkem.cc +97 -1042
  1073. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.cc +13 -55
  1074. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +14 -56
  1075. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.cc +13 -55
  1076. data/third_party/boringssl-with-bazel/src/crypto/pem/internal.h +44 -0
  1077. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.cc +13 -107
  1078. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.cc +18 -58
  1079. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.cc +56 -103
  1080. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.cc +13 -55
  1081. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.cc +13 -55
  1082. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.cc +13 -55
  1083. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.cc +13 -55
  1084. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.cc +13 -55
  1085. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +13 -13
  1086. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.cc +13 -13
  1087. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.cc +15 -13
  1088. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +13 -54
  1089. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.cc +13 -54
  1090. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.cc +13 -54
  1091. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.cc +13 -54
  1092. data/third_party/boringssl-with-bazel/src/crypto/poly1305/internal.h +13 -13
  1093. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.cc +13 -13
  1094. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.cc +13 -13
  1095. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.cc +13 -13
  1096. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +13 -13
  1097. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.cc +13 -13
  1098. data/third_party/boringssl-with-bazel/src/crypto/{rand_extra → rand}/deterministic.cc +13 -13
  1099. data/third_party/boringssl-with-bazel/src/crypto/{rand_extra → rand}/fork_detect.cc +13 -13
  1100. data/third_party/boringssl-with-bazel/src/crypto/rand/forkunsafe.cc +44 -0
  1101. data/third_party/boringssl-with-bazel/src/crypto/{rand_extra → rand}/getentropy.cc +13 -13
  1102. data/third_party/boringssl-with-bazel/src/crypto/{rand_extra → rand}/getrandom_fillin.h +13 -13
  1103. data/third_party/boringssl-with-bazel/src/crypto/rand/ios.cc +42 -0
  1104. data/third_party/boringssl-with-bazel/src/crypto/{rand_extra → rand}/passive.cc +13 -13
  1105. data/third_party/boringssl-with-bazel/src/crypto/{rand_extra/rand_extra.cc → rand/rand.cc} +13 -13
  1106. data/third_party/boringssl-with-bazel/src/crypto/rand/sysrand_internal.h +37 -0
  1107. data/third_party/boringssl-with-bazel/src/crypto/rand/trusty.cc +46 -0
  1108. data/third_party/boringssl-with-bazel/src/crypto/{rand_extra → rand}/urandom.cc +13 -13
  1109. data/third_party/boringssl-with-bazel/src/crypto/{rand_extra → rand}/windows.cc +13 -13
  1110. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.cc +13 -55
  1111. data/third_party/boringssl-with-bazel/src/crypto/refcount.cc +13 -13
  1112. data/third_party/boringssl-with-bazel/src/crypto/rsa/internal.h +36 -0
  1113. data/third_party/boringssl-with-bazel/src/crypto/{rsa_extra → rsa}/rsa_asn1.cc +13 -54
  1114. data/third_party/boringssl-with-bazel/src/crypto/{rsa_extra → rsa}/rsa_crypt.cc +13 -55
  1115. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_extra.cc +19 -0
  1116. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_print.cc +27 -0
  1117. data/third_party/boringssl-with-bazel/src/crypto/sha/sha1.cc +13 -13
  1118. data/third_party/boringssl-with-bazel/src/crypto/sha/sha256.cc +13 -13
  1119. data/third_party/boringssl-with-bazel/src/crypto/sha/sha512.cc +13 -13
  1120. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.cc +13 -13
  1121. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/slhdsa.cc +62 -256
  1122. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/internal.h +204 -0
  1123. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/spake2plus.cc +501 -0
  1124. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.cc +13 -55
  1125. data/third_party/boringssl-with-bazel/src/crypto/thread.cc +13 -55
  1126. data/third_party/boringssl-with-bazel/src/crypto/thread_none.cc +13 -13
  1127. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.cc +13 -13
  1128. data/third_party/boringssl-with-bazel/src/crypto/thread_win.cc +13 -13
  1129. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +13 -13
  1130. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.cc +14 -14
  1131. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.cc +14 -14
  1132. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.cc +14 -14
  1133. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.cc +13 -55
  1134. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.cc +13 -55
  1135. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.cc +13 -55
  1136. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.cc +13 -55
  1137. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.cc +14 -56
  1138. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.cc +25 -71
  1139. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.cc +13 -55
  1140. data/third_party/boringssl-with-bazel/src/crypto/x509/ext_dat.h +13 -55
  1141. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.cc +13 -55
  1142. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +13 -57
  1143. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.cc +13 -55
  1144. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.cc +13 -13
  1145. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.cc +13 -54
  1146. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.cc +13 -55
  1147. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.cc +13 -55
  1148. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.cc +13 -55
  1149. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.cc +13 -55
  1150. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.cc +13 -55
  1151. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.cc +13 -55
  1152. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.cc +13 -54
  1153. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.cc +13 -55
  1154. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.cc +13 -55
  1155. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.cc +13 -55
  1156. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.cc +13 -57
  1157. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.cc +13 -55
  1158. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.cc +13 -55
  1159. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.cc +13 -55
  1160. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.cc +13 -55
  1161. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.cc +13 -57
  1162. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.cc +17 -66
  1163. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.cc +13 -55
  1164. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.cc +14 -57
  1165. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.cc +13 -54
  1166. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.cc +13 -8
  1167. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.cc +13 -54
  1168. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.cc +13 -54
  1169. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.cc +13 -55
  1170. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.cc +13 -55
  1171. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.cc +13 -55
  1172. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.cc +17 -70
  1173. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.cc +13 -55
  1174. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.cc +13 -55
  1175. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.cc +13 -55
  1176. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.cc +13 -55
  1177. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.cc +13 -55
  1178. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.cc +13 -55
  1179. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.cc +14 -60
  1180. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.cc +13 -55
  1181. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.cc +13 -55
  1182. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.cc +13 -55
  1183. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.cc +13 -55
  1184. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.cc +13 -55
  1185. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.cc +13 -55
  1186. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.cc +13 -55
  1187. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.cc +13 -55
  1188. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.cc +13 -55
  1189. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.cc +13 -55
  1190. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.cc +13 -55
  1191. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.cc +13 -55
  1192. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.cc +13 -55
  1193. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.cc +13 -55
  1194. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.cc +13 -55
  1195. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.cc +13 -55
  1196. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.cc +13 -55
  1197. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.cc +13 -55
  1198. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.cc +13 -55
  1199. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.cc +13 -55
  1200. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.cc +13 -55
  1201. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.cc +13 -58
  1202. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.cc +13 -55
  1203. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.cc +13 -55
  1204. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.cc +13 -55
  1205. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.cc +465 -451
  1206. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +13 -13
  1207. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +13 -47
  1208. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +16 -76
  1209. data/third_party/boringssl-with-bazel/src/include/openssl/asm_base.h +14 -14
  1210. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +23 -62
  1211. data/third_party/boringssl-with-bazel/src/include/openssl/asn1_mac.h +13 -13
  1212. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +14 -56
  1213. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +15 -53
  1214. data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +13 -55
  1215. data/third_party/boringssl-with-bazel/src/include/openssl/bcm_public.h +13 -13
  1216. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +13 -55
  1217. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +13 -13
  1218. data/third_party/boringssl-with-bazel/src/include/openssl/blowfish.h +13 -55
  1219. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +14 -121
  1220. data/third_party/boringssl-with-bazel/src/include/openssl/buf.h +13 -55
  1221. data/third_party/boringssl-with-bazel/src/include/openssl/buffer.h +13 -13
  1222. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +31 -16
  1223. data/third_party/boringssl-with-bazel/src/include/openssl/cast.h +13 -55
  1224. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +13 -13
  1225. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +31 -59
  1226. data/third_party/boringssl-with-bazel/src/include/openssl/cmac.h +13 -13
  1227. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +13 -55
  1228. data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +13 -13
  1229. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +13 -13
  1230. data/third_party/boringssl-with-bazel/src/include/openssl/ctrdrbg.h +13 -13
  1231. data/third_party/boringssl-with-bazel/src/include/openssl/curve25519.h +13 -13
  1232. data/third_party/boringssl-with-bazel/src/include/openssl/des.h +13 -55
  1233. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +13 -55
  1234. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +13 -55
  1235. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +13 -58
  1236. data/third_party/boringssl-with-bazel/src/include/openssl/dtls1.h +13 -13
  1237. data/third_party/boringssl-with-bazel/src/include/openssl/e_os2.h +13 -13
  1238. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +14 -66
  1239. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +14 -71
  1240. data/third_party/boringssl-with-bazel/src/include/openssl/ecdh.h +14 -65
  1241. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +13 -51
  1242. data/third_party/boringssl-with-bazel/src/include/openssl/engine.h +13 -13
  1243. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +13 -107
  1244. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +13 -55
  1245. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +13 -55
  1246. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +13 -107
  1247. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/kyber.h +13 -13
  1248. data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +13 -13
  1249. data/third_party/boringssl-with-bazel/src/include/openssl/hmac.h +13 -55
  1250. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +13 -13
  1251. data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +13 -13
  1252. data/third_party/boringssl-with-bazel/src/include/openssl/is_boringssl.h +13 -13
  1253. data/third_party/boringssl-with-bazel/src/include/openssl/kdf.h +13 -13
  1254. data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +13 -55
  1255. data/third_party/boringssl-with-bazel/src/include/openssl/md4.h +13 -55
  1256. data/third_party/boringssl-with-bazel/src/include/openssl/md5.h +13 -55
  1257. data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +13 -55
  1258. data/third_party/boringssl-with-bazel/src/include/openssl/mldsa.h +13 -19
  1259. data/third_party/boringssl-with-bazel/src/include/openssl/mlkem.h +13 -37
  1260. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +27 -69
  1261. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +13 -55
  1262. data/third_party/boringssl-with-bazel/src/include/openssl/obj_mac.h +13 -13
  1263. data/third_party/boringssl-with-bazel/src/include/openssl/objects.h +13 -13
  1264. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +13 -13
  1265. data/third_party/boringssl-with-bazel/src/include/openssl/opensslv.h +13 -13
  1266. data/third_party/boringssl-with-bazel/src/include/openssl/ossl_typ.h +13 -13
  1267. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +22 -60
  1268. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs12.h +13 -13
  1269. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +13 -13
  1270. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +13 -55
  1271. data/third_party/boringssl-with-bazel/src/include/openssl/poly1305.h +13 -13
  1272. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +13 -13
  1273. data/third_party/boringssl-with-bazel/src/include/openssl/posix_time.h +13 -13
  1274. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +13 -13
  1275. data/third_party/boringssl-with-bazel/src/include/openssl/rc4.h +13 -55
  1276. data/third_party/boringssl-with-bazel/src/include/openssl/ripemd.h +13 -55
  1277. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +13 -58
  1278. data/third_party/boringssl-with-bazel/src/include/openssl/safestack.h +13 -13
  1279. data/third_party/boringssl-with-bazel/src/include/openssl/service_indicator.h +13 -13
  1280. data/third_party/boringssl-with-bazel/src/include/openssl/sha.h +13 -55
  1281. data/third_party/boringssl-with-bazel/src/include/openssl/siphash.h +13 -13
  1282. data/third_party/boringssl-with-bazel/src/include/openssl/slhdsa.h +54 -13
  1283. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +19 -32
  1284. data/third_party/boringssl-with-bazel/src/include/openssl/srtp.h +13 -13
  1285. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +198 -174
  1286. data/third_party/boringssl-with-bazel/src/include/openssl/ssl3.h +14 -114
  1287. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +13 -55
  1288. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +23 -13
  1289. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +13 -55
  1290. data/third_party/boringssl-with-bazel/src/include/openssl/time.h +13 -13
  1291. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +27 -156
  1292. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +15 -15
  1293. data/third_party/boringssl-with-bazel/src/include/openssl/type_check.h +13 -55
  1294. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +14 -61
  1295. data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +13 -13
  1296. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +13 -13
  1297. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3_errors.h +13 -53
  1298. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +13 -8
  1299. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +15 -114
  1300. data/third_party/boringssl-with-bazel/src/ssl/d1_lib.cc +13 -55
  1301. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +13 -110
  1302. data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +17 -115
  1303. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +13 -55
  1304. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +16 -115
  1305. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +32 -34
  1306. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +310 -132
  1307. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +19 -16
  1308. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +23 -123
  1309. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +56 -175
  1310. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +27 -158
  1311. data/third_party/boringssl-with-bazel/src/ssl/internal.h +117 -246
  1312. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +22 -120
  1313. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +16 -148
  1314. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +16 -110
  1315. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +16 -16
  1316. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +14 -81
  1317. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +15 -20
  1318. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +14 -113
  1319. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +19 -145
  1320. data/third_party/boringssl-with-bazel/src/ssl/ssl_credential.cc +166 -38
  1321. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +13 -109
  1322. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +15 -17
  1323. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +51 -184
  1324. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +23 -67
  1325. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +25 -144
  1326. data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +14 -82
  1327. data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +20 -143
  1328. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +15 -15
  1329. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +15 -139
  1330. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +28 -156
  1331. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +16 -16
  1332. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +92 -44
  1333. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +68 -80
  1334. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +155 -53
  1335. data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +13 -55
  1336. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +15 -109
  1337. data/third_party/upb/upb/base/internal/log2.h +3 -1
  1338. data/third_party/upb/upb/base/string_view.h +10 -0
  1339. data/third_party/upb/upb/hash/common.c +5 -1
  1340. data/third_party/upb/upb/json/decode.c +2 -2
  1341. data/third_party/upb/upb/json/decode.h +0 -1
  1342. data/third_party/upb/upb/mem/alloc.h +5 -0
  1343. data/third_party/upb/upb/mem/arena.c +296 -142
  1344. data/third_party/upb/upb/mem/arena.h +47 -11
  1345. data/third_party/upb/upb/mem/arena.hpp +4 -20
  1346. data/third_party/upb/upb/mem/internal/arena.h +4 -6
  1347. data/third_party/upb/upb/message/accessors.h +41 -0
  1348. data/third_party/upb/upb/message/compat.c +11 -14
  1349. data/third_party/upb/upb/message/compat.h +4 -3
  1350. data/third_party/upb/upb/message/copy.c +35 -30
  1351. data/third_party/upb/upb/message/internal/accessors.h +139 -10
  1352. data/third_party/upb/upb/message/internal/extension.c +28 -25
  1353. data/third_party/upb/upb/message/internal/extension.h +21 -5
  1354. data/third_party/upb/upb/message/internal/iterator.c +58 -0
  1355. data/third_party/upb/upb/message/internal/iterator.h +29 -0
  1356. data/third_party/upb/upb/message/internal/map.h +2 -3
  1357. data/third_party/upb/upb/message/internal/map_sorter.h +3 -2
  1358. data/third_party/upb/upb/message/internal/message.c +48 -29
  1359. data/third_party/upb/upb/message/internal/message.h +154 -24
  1360. data/third_party/upb/upb/message/map_sorter.c +20 -8
  1361. data/third_party/upb/upb/message/message.c +90 -38
  1362. data/third_party/upb/upb/message/message.h +58 -2
  1363. data/third_party/upb/upb/message/value.h +9 -0
  1364. data/third_party/upb/upb/mini_descriptor/build_enum.c +1 -1
  1365. data/third_party/upb/upb/mini_descriptor/decode.c +97 -136
  1366. data/third_party/upb/upb/mini_descriptor/decode.h +4 -3
  1367. data/third_party/upb/upb/mini_descriptor/internal/encode.hpp +1 -1
  1368. data/third_party/upb/upb/mini_table/extension_registry.c +24 -12
  1369. data/third_party/upb/upb/mini_table/extension_registry.h +13 -6
  1370. data/third_party/upb/upb/mini_table/message.c +21 -13
  1371. data/third_party/upb/upb/port/atomic.h +134 -7
  1372. data/third_party/upb/upb/port/def.inc +140 -38
  1373. data/third_party/upb/upb/port/undef.inc +11 -1
  1374. data/third_party/upb/upb/reflection/def.hpp +5 -1
  1375. data/third_party/upb/upb/reflection/def_pool.c +10 -3
  1376. data/third_party/upb/upb/reflection/descriptor_bootstrap.h +1 -1
  1377. data/third_party/upb/upb/reflection/file_def.c +12 -5
  1378. data/third_party/upb/upb/reflection/internal/def_builder.c +1 -1
  1379. data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +1 -1
  1380. data/third_party/upb/upb/reflection/message.c +19 -16
  1381. data/third_party/upb/upb/reflection/message.h +3 -1
  1382. data/third_party/upb/upb/text/encode.c +1 -13
  1383. data/third_party/upb/upb/text/internal/encode.c +25 -6
  1384. data/third_party/upb/upb/text/internal/encode.h +4 -0
  1385. data/third_party/upb/upb/wire/decode.c +60 -45
  1386. data/third_party/upb/upb/wire/decode.h +4 -2
  1387. data/third_party/upb/upb/wire/encode.c +77 -42
  1388. data/third_party/upb/upb/wire/encode.h +2 -0
  1389. data/third_party/upb/upb/wire/eps_copy_input_stream.h +18 -20
  1390. data/third_party/upb/upb/wire/internal/decoder.h +4 -11
  1391. data/third_party/utf8_range/utf8_range.c +15 -275
  1392. data/third_party/utf8_range/utf8_range_neon.inc +117 -0
  1393. data/third_party/utf8_range/utf8_range_sse.inc +272 -0
  1394. data/third_party/zlib/deflate.c +40 -15
  1395. data/third_party/zlib/deflate.h +33 -2
  1396. data/third_party/zlib/gzguts.h +2 -6
  1397. data/third_party/zlib/inflate.c +1 -1
  1398. data/third_party/zlib/inftrees.c +3 -3
  1399. data/third_party/zlib/inftrees.h +2 -2
  1400. data/third_party/zlib/trees.c +18 -4
  1401. data/third_party/zlib/zconf.h +1 -9
  1402. data/third_party/zlib/zlib.h +12 -12
  1403. data/third_party/zlib/zutil.h +4 -25
  1404. metadata +227 -208
  1405. data/include/grpc/grpc_cronet.h +0 -37
  1406. data/src/core/lib/transport/http2_errors.h +0 -41
  1407. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.cc +0 -127
  1408. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/derive_key.cc +0 -152
  1409. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.cc +0 -93
  1410. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.cc +0 -96
  1411. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.cc +0 -165
  1412. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.cc +0 -124
  1413. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.cc.inc +0 -196
  1414. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +0 -448
  1415. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.cc.inc +0 -87
  1416. data/third_party/boringssl-with-bazel/src/crypto/mldsa/internal.h +0 -76
  1417. data/third_party/boringssl-with-bazel/src/crypto/mlkem/internal.h +0 -90
  1418. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.cc +0 -44
  1419. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/ios.cc +0 -42
  1420. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/sysrand_internal.h +0 -37
  1421. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/trusty.cc +0 -46
  1422. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/internal.h +0 -79
  1423. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_extra.cc +0 -17
  1424. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.cc +0 -22
  1425. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/fors.h +0 -58
  1426. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/internal.h +0 -63
  1427. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/merkle.h +0 -70
  1428. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/thash.cc +0 -173
  1429. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/thash.h +0 -85
  1430. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/wots.h +0 -50
  1431. data/third_party/upb/upb/message/internal/compare_unknown.c +0 -289
  1432. data/third_party/upb/upb/message/internal/compare_unknown.h +0 -49
@@ -61,167 +61,181 @@ namespace grpc_core {
61
61
  inline bool IsBackoffCapInitialAtMaxEnabled() { return true; }
62
62
  #define GRPC_EXPERIMENT_IS_INCLUDED_CALL_TRACER_IN_TRANSPORT
63
63
  inline bool IsCallTracerInTransportEnabled() { return true; }
64
- inline bool IsChaoticGoodLegacyProtocolEnabled() { return false; }
65
- inline bool IsDisableBufferHintOnHighMemoryPressureEnabled() { return false; }
66
- #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_APPLICATION_CALLBACKS
67
- inline bool IsEventEngineApplicationCallbacksEnabled() { return true; }
68
- #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CALLBACK_CQ
69
- inline bool IsEventEngineCallbackCqEnabled() { return true; }
64
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CALL_TRACER_TRANSPORT_FIX
65
+ inline bool IsCallTracerTransportFixEnabled() { return true; }
66
+ inline bool IsCallv3ClientAuthFilterEnabled() { return false; }
67
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CHAOTIC_GOOD_FRAMING_LAYER
68
+ inline bool IsChaoticGoodFramingLayerEnabled() { return true; }
69
+ inline bool IsErrorFlattenEnabled() { return false; }
70
70
  inline bool IsEventEngineClientEnabled() { return false; }
71
71
  inline bool IsEventEngineDnsEnabled() { return false; }
72
72
  inline bool IsEventEngineDnsNonClientChannelEnabled() { return false; }
73
+ inline bool IsEventEngineForkEnabled() { return false; }
73
74
  inline bool IsEventEngineListenerEnabled() { return false; }
75
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CALLBACK_CQ
76
+ inline bool IsEventEngineCallbackCqEnabled() { return true; }
77
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_FOR_ALL_OTHER_ENDPOINTS
78
+ inline bool IsEventEngineForAllOtherEndpointsEnabled() { return true; }
74
79
  inline bool IsFreeLargeAllocatorEnabled() { return false; }
80
+ inline bool IsKeepAlivePingTimerBatchEnabled() { return false; }
75
81
  inline bool IsLocalConnectorSecureEnabled() { return false; }
76
- inline bool IsMaxPingsWoDataThrottleEnabled() { return false; }
82
+ #define GRPC_EXPERIMENT_IS_INCLUDED_MAX_PINGS_WO_DATA_THROTTLE
83
+ inline bool IsMaxPingsWoDataThrottleEnabled() { return true; }
77
84
  #define GRPC_EXPERIMENT_IS_INCLUDED_MONITORING_EXPERIMENT
78
85
  inline bool IsMonitoringExperimentEnabled() { return true; }
79
86
  inline bool IsMultipingEnabled() { return false; }
80
- #define GRPC_EXPERIMENT_IS_INCLUDED_PICK_FIRST_NEW
81
- inline bool IsPickFirstNewEnabled() { return true; }
82
- inline bool IsPosixEeSkipGrpcInitEnabled() { return false; }
83
- inline bool IsPrioritizeFinishedRequestsEnabled() { return false; }
87
+ inline bool IsPollsetAlternativeEnabled() { return false; }
88
+ #define GRPC_EXPERIMENT_IS_INCLUDED_POSIX_EE_SKIP_GRPC_INIT
89
+ inline bool IsPosixEeSkipGrpcInitEnabled() { return true; }
84
90
  inline bool IsPromiseBasedHttp2ClientTransportEnabled() { return false; }
85
91
  inline bool IsPromiseBasedHttp2ServerTransportEnabled() { return false; }
86
92
  inline bool IsPromiseBasedInprocTransportEnabled() { return false; }
87
93
  inline bool IsRetryInCallv3Enabled() { return false; }
88
94
  inline bool IsRqFastRejectEnabled() { return false; }
95
+ #define GRPC_EXPERIMENT_IS_INCLUDED_RST_STREAM_FIX
96
+ inline bool IsRstStreamFixEnabled() { return true; }
89
97
  inline bool IsScheduleCancellationOverWriteEnabled() { return false; }
98
+ inline bool IsServerGlobalCallbacksOwnershipEnabled() { return false; }
99
+ #define GRPC_EXPERIMENT_IS_INCLUDED_SERVER_LISTENER
100
+ inline bool IsServerListenerEnabled() { return true; }
90
101
  inline bool IsTcpFrameSizeTuningEnabled() { return false; }
91
102
  inline bool IsTcpRcvLowatEnabled() { return false; }
92
- #define GRPC_EXPERIMENT_IS_INCLUDED_TIME_CACHING_IN_PARTY
93
- inline bool IsTimeCachingInPartyEnabled() { return true; }
94
- #define GRPC_EXPERIMENT_IS_INCLUDED_TRACE_RECORD_CALLOPS
95
- inline bool IsTraceRecordCallopsEnabled() { return true; }
96
103
  inline bool IsUnconstrainedMaxQuotaBufferSizeEnabled() { return false; }
97
- #define GRPC_EXPERIMENT_IS_INCLUDED_WORK_SERIALIZER_DISPATCH
98
- inline bool IsWorkSerializerDispatchEnabled() { return true; }
99
- inline bool IsServerListenerEnabled() { return false; }
100
104
 
101
105
  #elif defined(GPR_WINDOWS)
102
106
  #define GRPC_EXPERIMENT_IS_INCLUDED_BACKOFF_CAP_INITIAL_AT_MAX
103
107
  inline bool IsBackoffCapInitialAtMaxEnabled() { return true; }
104
108
  #define GRPC_EXPERIMENT_IS_INCLUDED_CALL_TRACER_IN_TRANSPORT
105
109
  inline bool IsCallTracerInTransportEnabled() { return true; }
106
- inline bool IsChaoticGoodLegacyProtocolEnabled() { return false; }
107
- inline bool IsDisableBufferHintOnHighMemoryPressureEnabled() { return false; }
108
- #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_APPLICATION_CALLBACKS
109
- inline bool IsEventEngineApplicationCallbacksEnabled() { return true; }
110
- #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CALLBACK_CQ
111
- inline bool IsEventEngineCallbackCqEnabled() { return true; }
110
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CALL_TRACER_TRANSPORT_FIX
111
+ inline bool IsCallTracerTransportFixEnabled() { return true; }
112
+ inline bool IsCallv3ClientAuthFilterEnabled() { return false; }
113
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CHAOTIC_GOOD_FRAMING_LAYER
114
+ inline bool IsChaoticGoodFramingLayerEnabled() { return true; }
115
+ inline bool IsErrorFlattenEnabled() { return false; }
112
116
  #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CLIENT
113
117
  inline bool IsEventEngineClientEnabled() { return true; }
114
118
  #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_DNS
115
119
  inline bool IsEventEngineDnsEnabled() { return true; }
116
120
  inline bool IsEventEngineDnsNonClientChannelEnabled() { return false; }
121
+ inline bool IsEventEngineForkEnabled() { return false; }
117
122
  #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_LISTENER
118
123
  inline bool IsEventEngineListenerEnabled() { return true; }
124
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CALLBACK_CQ
125
+ inline bool IsEventEngineCallbackCqEnabled() { return true; }
126
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_FOR_ALL_OTHER_ENDPOINTS
127
+ inline bool IsEventEngineForAllOtherEndpointsEnabled() { return true; }
119
128
  inline bool IsFreeLargeAllocatorEnabled() { return false; }
129
+ inline bool IsKeepAlivePingTimerBatchEnabled() { return false; }
120
130
  inline bool IsLocalConnectorSecureEnabled() { return false; }
121
- inline bool IsMaxPingsWoDataThrottleEnabled() { return false; }
131
+ #define GRPC_EXPERIMENT_IS_INCLUDED_MAX_PINGS_WO_DATA_THROTTLE
132
+ inline bool IsMaxPingsWoDataThrottleEnabled() { return true; }
122
133
  #define GRPC_EXPERIMENT_IS_INCLUDED_MONITORING_EXPERIMENT
123
134
  inline bool IsMonitoringExperimentEnabled() { return true; }
124
135
  inline bool IsMultipingEnabled() { return false; }
125
- #define GRPC_EXPERIMENT_IS_INCLUDED_PICK_FIRST_NEW
126
- inline bool IsPickFirstNewEnabled() { return true; }
127
- inline bool IsPosixEeSkipGrpcInitEnabled() { return false; }
128
- inline bool IsPrioritizeFinishedRequestsEnabled() { return false; }
136
+ inline bool IsPollsetAlternativeEnabled() { return false; }
137
+ #define GRPC_EXPERIMENT_IS_INCLUDED_POSIX_EE_SKIP_GRPC_INIT
138
+ inline bool IsPosixEeSkipGrpcInitEnabled() { return true; }
129
139
  inline bool IsPromiseBasedHttp2ClientTransportEnabled() { return false; }
130
140
  inline bool IsPromiseBasedHttp2ServerTransportEnabled() { return false; }
131
141
  inline bool IsPromiseBasedInprocTransportEnabled() { return false; }
132
142
  inline bool IsRetryInCallv3Enabled() { return false; }
133
143
  inline bool IsRqFastRejectEnabled() { return false; }
144
+ #define GRPC_EXPERIMENT_IS_INCLUDED_RST_STREAM_FIX
145
+ inline bool IsRstStreamFixEnabled() { return true; }
134
146
  inline bool IsScheduleCancellationOverWriteEnabled() { return false; }
147
+ inline bool IsServerGlobalCallbacksOwnershipEnabled() { return false; }
148
+ #define GRPC_EXPERIMENT_IS_INCLUDED_SERVER_LISTENER
149
+ inline bool IsServerListenerEnabled() { return true; }
135
150
  inline bool IsTcpFrameSizeTuningEnabled() { return false; }
136
151
  inline bool IsTcpRcvLowatEnabled() { return false; }
137
- #define GRPC_EXPERIMENT_IS_INCLUDED_TIME_CACHING_IN_PARTY
138
- inline bool IsTimeCachingInPartyEnabled() { return true; }
139
- #define GRPC_EXPERIMENT_IS_INCLUDED_TRACE_RECORD_CALLOPS
140
- inline bool IsTraceRecordCallopsEnabled() { return true; }
141
152
  inline bool IsUnconstrainedMaxQuotaBufferSizeEnabled() { return false; }
142
- #define GRPC_EXPERIMENT_IS_INCLUDED_WORK_SERIALIZER_DISPATCH
143
- inline bool IsWorkSerializerDispatchEnabled() { return true; }
144
- inline bool IsServerListenerEnabled() { return false; }
145
153
 
146
154
  #else
147
155
  #define GRPC_EXPERIMENT_IS_INCLUDED_BACKOFF_CAP_INITIAL_AT_MAX
148
156
  inline bool IsBackoffCapInitialAtMaxEnabled() { return true; }
149
157
  #define GRPC_EXPERIMENT_IS_INCLUDED_CALL_TRACER_IN_TRANSPORT
150
158
  inline bool IsCallTracerInTransportEnabled() { return true; }
151
- inline bool IsChaoticGoodLegacyProtocolEnabled() { return false; }
152
- inline bool IsDisableBufferHintOnHighMemoryPressureEnabled() { return false; }
153
- #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_APPLICATION_CALLBACKS
154
- inline bool IsEventEngineApplicationCallbacksEnabled() { return true; }
155
- #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CALLBACK_CQ
156
- inline bool IsEventEngineCallbackCqEnabled() { return true; }
159
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CALL_TRACER_TRANSPORT_FIX
160
+ inline bool IsCallTracerTransportFixEnabled() { return true; }
161
+ inline bool IsCallv3ClientAuthFilterEnabled() { return false; }
162
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CHAOTIC_GOOD_FRAMING_LAYER
163
+ inline bool IsChaoticGoodFramingLayerEnabled() { return true; }
164
+ inline bool IsErrorFlattenEnabled() { return false; }
157
165
  #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CLIENT
158
166
  inline bool IsEventEngineClientEnabled() { return true; }
159
167
  #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_DNS
160
168
  inline bool IsEventEngineDnsEnabled() { return true; }
161
169
  inline bool IsEventEngineDnsNonClientChannelEnabled() { return false; }
170
+ inline bool IsEventEngineForkEnabled() { return false; }
162
171
  #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_LISTENER
163
172
  inline bool IsEventEngineListenerEnabled() { return true; }
173
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CALLBACK_CQ
174
+ inline bool IsEventEngineCallbackCqEnabled() { return true; }
175
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_FOR_ALL_OTHER_ENDPOINTS
176
+ inline bool IsEventEngineForAllOtherEndpointsEnabled() { return true; }
164
177
  inline bool IsFreeLargeAllocatorEnabled() { return false; }
178
+ inline bool IsKeepAlivePingTimerBatchEnabled() { return false; }
165
179
  inline bool IsLocalConnectorSecureEnabled() { return false; }
166
- inline bool IsMaxPingsWoDataThrottleEnabled() { return false; }
180
+ #define GRPC_EXPERIMENT_IS_INCLUDED_MAX_PINGS_WO_DATA_THROTTLE
181
+ inline bool IsMaxPingsWoDataThrottleEnabled() { return true; }
167
182
  #define GRPC_EXPERIMENT_IS_INCLUDED_MONITORING_EXPERIMENT
168
183
  inline bool IsMonitoringExperimentEnabled() { return true; }
169
184
  inline bool IsMultipingEnabled() { return false; }
170
- #define GRPC_EXPERIMENT_IS_INCLUDED_PICK_FIRST_NEW
171
- inline bool IsPickFirstNewEnabled() { return true; }
172
- inline bool IsPosixEeSkipGrpcInitEnabled() { return false; }
173
- inline bool IsPrioritizeFinishedRequestsEnabled() { return false; }
185
+ inline bool IsPollsetAlternativeEnabled() { return false; }
186
+ #define GRPC_EXPERIMENT_IS_INCLUDED_POSIX_EE_SKIP_GRPC_INIT
187
+ inline bool IsPosixEeSkipGrpcInitEnabled() { return true; }
174
188
  inline bool IsPromiseBasedHttp2ClientTransportEnabled() { return false; }
175
189
  inline bool IsPromiseBasedHttp2ServerTransportEnabled() { return false; }
176
190
  inline bool IsPromiseBasedInprocTransportEnabled() { return false; }
177
191
  inline bool IsRetryInCallv3Enabled() { return false; }
178
192
  inline bool IsRqFastRejectEnabled() { return false; }
193
+ #define GRPC_EXPERIMENT_IS_INCLUDED_RST_STREAM_FIX
194
+ inline bool IsRstStreamFixEnabled() { return true; }
179
195
  inline bool IsScheduleCancellationOverWriteEnabled() { return false; }
196
+ inline bool IsServerGlobalCallbacksOwnershipEnabled() { return false; }
197
+ #define GRPC_EXPERIMENT_IS_INCLUDED_SERVER_LISTENER
198
+ inline bool IsServerListenerEnabled() { return true; }
180
199
  inline bool IsTcpFrameSizeTuningEnabled() { return false; }
181
200
  inline bool IsTcpRcvLowatEnabled() { return false; }
182
- #define GRPC_EXPERIMENT_IS_INCLUDED_TIME_CACHING_IN_PARTY
183
- inline bool IsTimeCachingInPartyEnabled() { return true; }
184
- #define GRPC_EXPERIMENT_IS_INCLUDED_TRACE_RECORD_CALLOPS
185
- inline bool IsTraceRecordCallopsEnabled() { return true; }
186
201
  inline bool IsUnconstrainedMaxQuotaBufferSizeEnabled() { return false; }
187
- #define GRPC_EXPERIMENT_IS_INCLUDED_WORK_SERIALIZER_DISPATCH
188
- inline bool IsWorkSerializerDispatchEnabled() { return true; }
189
- inline bool IsServerListenerEnabled() { return false; }
190
202
  #endif
191
203
 
192
204
  #else
193
205
  enum ExperimentIds {
194
206
  kExperimentIdBackoffCapInitialAtMax,
195
207
  kExperimentIdCallTracerInTransport,
196
- kExperimentIdChaoticGoodLegacyProtocol,
197
- kExperimentIdDisableBufferHintOnHighMemoryPressure,
198
- kExperimentIdEventEngineApplicationCallbacks,
199
- kExperimentIdEventEngineCallbackCq,
208
+ kExperimentIdCallTracerTransportFix,
209
+ kExperimentIdCallv3ClientAuthFilter,
210
+ kExperimentIdChaoticGoodFramingLayer,
211
+ kExperimentIdErrorFlatten,
200
212
  kExperimentIdEventEngineClient,
201
213
  kExperimentIdEventEngineDns,
202
214
  kExperimentIdEventEngineDnsNonClientChannel,
215
+ kExperimentIdEventEngineFork,
203
216
  kExperimentIdEventEngineListener,
217
+ kExperimentIdEventEngineCallbackCq,
218
+ kExperimentIdEventEngineForAllOtherEndpoints,
204
219
  kExperimentIdFreeLargeAllocator,
220
+ kExperimentIdKeepAlivePingTimerBatch,
205
221
  kExperimentIdLocalConnectorSecure,
206
222
  kExperimentIdMaxPingsWoDataThrottle,
207
223
  kExperimentIdMonitoringExperiment,
208
224
  kExperimentIdMultiping,
209
- kExperimentIdPickFirstNew,
225
+ kExperimentIdPollsetAlternative,
210
226
  kExperimentIdPosixEeSkipGrpcInit,
211
- kExperimentIdPrioritizeFinishedRequests,
212
227
  kExperimentIdPromiseBasedHttp2ClientTransport,
213
228
  kExperimentIdPromiseBasedHttp2ServerTransport,
214
229
  kExperimentIdPromiseBasedInprocTransport,
215
230
  kExperimentIdRetryInCallv3,
216
231
  kExperimentIdRqFastReject,
232
+ kExperimentIdRstStreamFix,
217
233
  kExperimentIdScheduleCancellationOverWrite,
234
+ kExperimentIdServerGlobalCallbacksOwnership,
235
+ kExperimentIdServerListener,
218
236
  kExperimentIdTcpFrameSizeTuning,
219
237
  kExperimentIdTcpRcvLowat,
220
- kExperimentIdTimeCachingInParty,
221
- kExperimentIdTraceRecordCallops,
222
238
  kExperimentIdUnconstrainedMaxQuotaBufferSize,
223
- kExperimentIdWorkSerializerDispatch,
224
- kExperimentIdServerListener,
225
239
  kNumExperiments
226
240
  };
227
241
  #define GRPC_EXPERIMENT_IS_INCLUDED_BACKOFF_CAP_INITIAL_AT_MAX
@@ -232,22 +246,21 @@ inline bool IsBackoffCapInitialAtMaxEnabled() {
232
246
  inline bool IsCallTracerInTransportEnabled() {
233
247
  return IsExperimentEnabled<kExperimentIdCallTracerInTransport>();
234
248
  }
235
- #define GRPC_EXPERIMENT_IS_INCLUDED_CHAOTIC_GOOD_LEGACY_PROTOCOL
236
- inline bool IsChaoticGoodLegacyProtocolEnabled() {
237
- return IsExperimentEnabled<kExperimentIdChaoticGoodLegacyProtocol>();
249
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CALL_TRACER_TRANSPORT_FIX
250
+ inline bool IsCallTracerTransportFixEnabled() {
251
+ return IsExperimentEnabled<kExperimentIdCallTracerTransportFix>();
238
252
  }
239
- #define GRPC_EXPERIMENT_IS_INCLUDED_DISABLE_BUFFER_HINT_ON_HIGH_MEMORY_PRESSURE
240
- inline bool IsDisableBufferHintOnHighMemoryPressureEnabled() {
241
- return IsExperimentEnabled<
242
- kExperimentIdDisableBufferHintOnHighMemoryPressure>();
253
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CALLV3_CLIENT_AUTH_FILTER
254
+ inline bool IsCallv3ClientAuthFilterEnabled() {
255
+ return IsExperimentEnabled<kExperimentIdCallv3ClientAuthFilter>();
243
256
  }
244
- #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_APPLICATION_CALLBACKS
245
- inline bool IsEventEngineApplicationCallbacksEnabled() {
246
- return IsExperimentEnabled<kExperimentIdEventEngineApplicationCallbacks>();
257
+ #define GRPC_EXPERIMENT_IS_INCLUDED_CHAOTIC_GOOD_FRAMING_LAYER
258
+ inline bool IsChaoticGoodFramingLayerEnabled() {
259
+ return IsExperimentEnabled<kExperimentIdChaoticGoodFramingLayer>();
247
260
  }
248
- #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CALLBACK_CQ
249
- inline bool IsEventEngineCallbackCqEnabled() {
250
- return IsExperimentEnabled<kExperimentIdEventEngineCallbackCq>();
261
+ #define GRPC_EXPERIMENT_IS_INCLUDED_ERROR_FLATTEN
262
+ inline bool IsErrorFlattenEnabled() {
263
+ return IsExperimentEnabled<kExperimentIdErrorFlatten>();
251
264
  }
252
265
  #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CLIENT
253
266
  inline bool IsEventEngineClientEnabled() {
@@ -261,14 +274,30 @@ inline bool IsEventEngineDnsEnabled() {
261
274
  inline bool IsEventEngineDnsNonClientChannelEnabled() {
262
275
  return IsExperimentEnabled<kExperimentIdEventEngineDnsNonClientChannel>();
263
276
  }
277
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_FORK
278
+ inline bool IsEventEngineForkEnabled() {
279
+ return IsExperimentEnabled<kExperimentIdEventEngineFork>();
280
+ }
264
281
  #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_LISTENER
265
282
  inline bool IsEventEngineListenerEnabled() {
266
283
  return IsExperimentEnabled<kExperimentIdEventEngineListener>();
267
284
  }
285
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_CALLBACK_CQ
286
+ inline bool IsEventEngineCallbackCqEnabled() {
287
+ return IsExperimentEnabled<kExperimentIdEventEngineCallbackCq>();
288
+ }
289
+ #define GRPC_EXPERIMENT_IS_INCLUDED_EVENT_ENGINE_FOR_ALL_OTHER_ENDPOINTS
290
+ inline bool IsEventEngineForAllOtherEndpointsEnabled() {
291
+ return IsExperimentEnabled<kExperimentIdEventEngineForAllOtherEndpoints>();
292
+ }
268
293
  #define GRPC_EXPERIMENT_IS_INCLUDED_FREE_LARGE_ALLOCATOR
269
294
  inline bool IsFreeLargeAllocatorEnabled() {
270
295
  return IsExperimentEnabled<kExperimentIdFreeLargeAllocator>();
271
296
  }
297
+ #define GRPC_EXPERIMENT_IS_INCLUDED_KEEP_ALIVE_PING_TIMER_BATCH
298
+ inline bool IsKeepAlivePingTimerBatchEnabled() {
299
+ return IsExperimentEnabled<kExperimentIdKeepAlivePingTimerBatch>();
300
+ }
272
301
  #define GRPC_EXPERIMENT_IS_INCLUDED_LOCAL_CONNECTOR_SECURE
273
302
  inline bool IsLocalConnectorSecureEnabled() {
274
303
  return IsExperimentEnabled<kExperimentIdLocalConnectorSecure>();
@@ -285,18 +314,14 @@ inline bool IsMonitoringExperimentEnabled() {
285
314
  inline bool IsMultipingEnabled() {
286
315
  return IsExperimentEnabled<kExperimentIdMultiping>();
287
316
  }
288
- #define GRPC_EXPERIMENT_IS_INCLUDED_PICK_FIRST_NEW
289
- inline bool IsPickFirstNewEnabled() {
290
- return IsExperimentEnabled<kExperimentIdPickFirstNew>();
317
+ #define GRPC_EXPERIMENT_IS_INCLUDED_POLLSET_ALTERNATIVE
318
+ inline bool IsPollsetAlternativeEnabled() {
319
+ return IsExperimentEnabled<kExperimentIdPollsetAlternative>();
291
320
  }
292
321
  #define GRPC_EXPERIMENT_IS_INCLUDED_POSIX_EE_SKIP_GRPC_INIT
293
322
  inline bool IsPosixEeSkipGrpcInitEnabled() {
294
323
  return IsExperimentEnabled<kExperimentIdPosixEeSkipGrpcInit>();
295
324
  }
296
- #define GRPC_EXPERIMENT_IS_INCLUDED_PRIORITIZE_FINISHED_REQUESTS
297
- inline bool IsPrioritizeFinishedRequestsEnabled() {
298
- return IsExperimentEnabled<kExperimentIdPrioritizeFinishedRequests>();
299
- }
300
325
  #define GRPC_EXPERIMENT_IS_INCLUDED_PROMISE_BASED_HTTP2_CLIENT_TRANSPORT
301
326
  inline bool IsPromiseBasedHttp2ClientTransportEnabled() {
302
327
  return IsExperimentEnabled<kExperimentIdPromiseBasedHttp2ClientTransport>();
@@ -317,10 +342,22 @@ inline bool IsRetryInCallv3Enabled() {
317
342
  inline bool IsRqFastRejectEnabled() {
318
343
  return IsExperimentEnabled<kExperimentIdRqFastReject>();
319
344
  }
345
+ #define GRPC_EXPERIMENT_IS_INCLUDED_RST_STREAM_FIX
346
+ inline bool IsRstStreamFixEnabled() {
347
+ return IsExperimentEnabled<kExperimentIdRstStreamFix>();
348
+ }
320
349
  #define GRPC_EXPERIMENT_IS_INCLUDED_SCHEDULE_CANCELLATION_OVER_WRITE
321
350
  inline bool IsScheduleCancellationOverWriteEnabled() {
322
351
  return IsExperimentEnabled<kExperimentIdScheduleCancellationOverWrite>();
323
352
  }
353
+ #define GRPC_EXPERIMENT_IS_INCLUDED_SERVER_GLOBAL_CALLBACKS_OWNERSHIP
354
+ inline bool IsServerGlobalCallbacksOwnershipEnabled() {
355
+ return IsExperimentEnabled<kExperimentIdServerGlobalCallbacksOwnership>();
356
+ }
357
+ #define GRPC_EXPERIMENT_IS_INCLUDED_SERVER_LISTENER
358
+ inline bool IsServerListenerEnabled() {
359
+ return IsExperimentEnabled<kExperimentIdServerListener>();
360
+ }
324
361
  #define GRPC_EXPERIMENT_IS_INCLUDED_TCP_FRAME_SIZE_TUNING
325
362
  inline bool IsTcpFrameSizeTuningEnabled() {
326
363
  return IsExperimentEnabled<kExperimentIdTcpFrameSizeTuning>();
@@ -329,26 +366,10 @@ inline bool IsTcpFrameSizeTuningEnabled() {
329
366
  inline bool IsTcpRcvLowatEnabled() {
330
367
  return IsExperimentEnabled<kExperimentIdTcpRcvLowat>();
331
368
  }
332
- #define GRPC_EXPERIMENT_IS_INCLUDED_TIME_CACHING_IN_PARTY
333
- inline bool IsTimeCachingInPartyEnabled() {
334
- return IsExperimentEnabled<kExperimentIdTimeCachingInParty>();
335
- }
336
- #define GRPC_EXPERIMENT_IS_INCLUDED_TRACE_RECORD_CALLOPS
337
- inline bool IsTraceRecordCallopsEnabled() {
338
- return IsExperimentEnabled<kExperimentIdTraceRecordCallops>();
339
- }
340
369
  #define GRPC_EXPERIMENT_IS_INCLUDED_UNCONSTRAINED_MAX_QUOTA_BUFFER_SIZE
341
370
  inline bool IsUnconstrainedMaxQuotaBufferSizeEnabled() {
342
371
  return IsExperimentEnabled<kExperimentIdUnconstrainedMaxQuotaBufferSize>();
343
372
  }
344
- #define GRPC_EXPERIMENT_IS_INCLUDED_WORK_SERIALIZER_DISPATCH
345
- inline bool IsWorkSerializerDispatchEnabled() {
346
- return IsExperimentEnabled<kExperimentIdWorkSerializerDispatch>();
347
- }
348
- #define GRPC_EXPERIMENT_IS_INCLUDED_SERVER_LISTENER
349
- inline bool IsServerListenerEnabled() {
350
- return IsExperimentEnabled<kExperimentIdServerListener>();
351
- }
352
373
 
353
374
  extern const ExperimentMetadata g_experiment_metadata[kNumExperiments];
354
375
 
@@ -22,7 +22,8 @@
22
22
  #include <grpc/support/port_platform.h>
23
23
  #include <grpc/support/time.h>
24
24
 
25
- #include "absl/types/optional.h"
25
+ #include <optional>
26
+
26
27
  #include "src/core/lib/iomgr/error.h"
27
28
  #include "src/core/lib/iomgr/internal_errqueue.h"
28
29
  #include "src/core/lib/iomgr/port.h"
@@ -32,52 +33,52 @@ namespace grpc_core {
32
33
 
33
34
  struct ConnectionMetrics {
34
35
  // Delivery rate in Bytes/s.
35
- absl::optional<uint64_t> delivery_rate;
36
+ std::optional<uint64_t> delivery_rate;
36
37
  // If the delivery rate is limited by the application, this is set to true.
37
- absl::optional<bool> is_delivery_rate_app_limited;
38
+ std::optional<bool> is_delivery_rate_app_limited;
38
39
  // Total packets retransmitted.
39
- absl::optional<uint32_t> packet_retx;
40
+ std::optional<uint32_t> packet_retx;
40
41
  // Total packets retransmitted spuriously. This metric is smaller than or
41
42
  // equal to packet_retx.
42
- absl::optional<uint32_t> packet_spurious_retx;
43
+ std::optional<uint32_t> packet_spurious_retx;
43
44
  // Total packets sent.
44
- absl::optional<uint32_t> packet_sent;
45
+ std::optional<uint32_t> packet_sent;
45
46
  // Total packets delivered.
46
- absl::optional<uint32_t> packet_delivered;
47
+ std::optional<uint32_t> packet_delivered;
47
48
  // Total packets delivered with ECE marked. This metric is smaller than or
48
49
  // equal to packet_delivered.
49
- absl::optional<uint32_t> packet_delivered_ce;
50
+ std::optional<uint32_t> packet_delivered_ce;
50
51
  // Total bytes lost so far.
51
- absl::optional<uint64_t> data_retx;
52
+ std::optional<uint64_t> data_retx;
52
53
  // Total bytes sent so far.
53
- absl::optional<uint64_t> data_sent;
54
+ std::optional<uint64_t> data_sent;
54
55
  // Total bytes in write queue but not sent.
55
- absl::optional<uint64_t> data_notsent;
56
+ std::optional<uint64_t> data_notsent;
56
57
  // Pacing rate of the connection in Bps
57
- absl::optional<uint64_t> pacing_rate;
58
+ std::optional<uint64_t> pacing_rate;
58
59
  // Minimum RTT observed in usec.
59
- absl::optional<uint32_t> min_rtt;
60
+ std::optional<uint32_t> min_rtt;
60
61
  // Smoothed RTT in usec
61
- absl::optional<uint32_t> srtt;
62
+ std::optional<uint32_t> srtt;
62
63
  // Send congestion window.
63
- absl::optional<uint32_t> congestion_window;
64
+ std::optional<uint32_t> congestion_window;
64
65
  // Slow start threshold in packets.
65
- absl::optional<uint32_t> snd_ssthresh;
66
+ std::optional<uint32_t> snd_ssthresh;
66
67
  // Maximum degree of reordering (i.e., maximum number of packets reodered)
67
68
  // on the connection.
68
- absl::optional<uint32_t> reordering;
69
+ std::optional<uint32_t> reordering;
69
70
  // Represents the number of recurring retransmissions of the first sequence
70
71
  // that is not acknowledged yet.
71
- absl::optional<uint8_t> recurring_retrans;
72
+ std::optional<uint8_t> recurring_retrans;
72
73
  // The cumulative time (in usec) that the transport protocol was busy
73
74
  // sending data.
74
- absl::optional<uint64_t> busy_usec;
75
+ std::optional<uint64_t> busy_usec;
75
76
  // The cumulative time (in usec) that the transport protocol was limited by
76
77
  // the receive window size.
77
- absl::optional<uint64_t> rwnd_limited_usec;
78
+ std::optional<uint64_t> rwnd_limited_usec;
78
79
  // The cumulative time (in usec) that the transport protocol was limited by
79
80
  // the send buffer size.
80
- absl::optional<uint64_t> sndbuf_limited_usec;
81
+ std::optional<uint64_t> sndbuf_limited_usec;
81
82
  };
82
83
 
83
84
  struct BufferTimestamp {
@@ -58,7 +58,6 @@ CFStreamHandle* CFStreamHandle::CreateStreamHandle(
58
58
  void CFStreamHandle::ReadCallback(CFReadStreamRef stream,
59
59
  CFStreamEventType type,
60
60
  void* client_callback_info) {
61
- grpc_core::ApplicationCallbackExecCtx callback_exec_ctx;
62
61
  grpc_core::ExecCtx exec_ctx;
63
62
  grpc_error_handle error;
64
63
  CFErrorRef stream_error;
@@ -91,7 +90,6 @@ void CFStreamHandle::ReadCallback(CFReadStreamRef stream,
91
90
  void CFStreamHandle::WriteCallback(CFWriteStreamRef stream,
92
91
  CFStreamEventType type,
93
92
  void* clientCallBackInfo) {
94
- grpc_core::ApplicationCallbackExecCtx callback_exec_ctx;
95
93
  grpc_core::ExecCtx exec_ctx;
96
94
  grpc_error_handle error;
97
95
  CFErrorRef stream_error;
@@ -211,10 +211,7 @@ inline grpc_closure* grpc_closure_create(grpc_iomgr_cb_func cb, void* cb_arg) {
211
211
  grpc_closure_create(cb, cb_arg)
212
212
  #endif
213
213
 
214
- #define GRPC_CLOSURE_LIST_INIT \
215
- { \
216
- nullptr, nullptr \
217
- }
214
+ #define GRPC_CLOSURE_LIST_INIT {nullptr, nullptr}
218
215
 
219
216
  inline void grpc_closure_list_init(grpc_closure_list* closure_list) {
220
217
  closure_list->head = closure_list->tail = nullptr;
@@ -160,7 +160,6 @@ static void queue_offload(grpc_core::Combiner* lock) {
160
160
  gpr_atm_no_barrier_store(&lock->initiating_exec_ctx_or_null, 1);
161
161
  GRPC_TRACE_LOG(combiner, INFO) << "C:" << lock << " queue_offload";
162
162
  lock->event_engine->Run([lock] {
163
- grpc_core::ApplicationCallbackExecCtx callback_exec_ctx;
164
163
  grpc_core::ExecCtx exec_ctx(0);
165
164
  push_last_on_exec_ctx(lock);
166
165
  exec_ctx.Flush();
@@ -22,10 +22,9 @@
22
22
 
23
23
  #ifdef GRPC_POSIX_SOCKET_TCP
24
24
 
25
- #include <errno.h>
26
25
  #include <fcntl.h>
26
+ #include <grpc/event_engine/event_engine.h>
27
27
  #include <grpc/support/alloc.h>
28
- #include <string.h>
29
28
  #include <sys/socket.h>
30
29
  #include <sys/types.h>
31
30
 
@@ -33,16 +32,27 @@
33
32
 
34
33
  #include "absl/log/check.h"
35
34
  #include "absl/strings/str_cat.h"
35
+ #include "src/core/config/core_configuration.h"
36
36
  #include "src/core/lib/event_engine/channel_args_endpoint_config.h"
37
+ #include "src/core/lib/event_engine/extensions/supports_fd.h"
38
+ #include "src/core/lib/event_engine/query_extensions.h"
39
+ #include "src/core/lib/event_engine/shim.h"
37
40
  #include "src/core/lib/iomgr/endpoint_pair.h"
41
+ #include "src/core/lib/iomgr/ev_posix.h"
42
+ #include "src/core/lib/iomgr/event_engine_shims/endpoint.h"
38
43
  #include "src/core/lib/iomgr/socket_utils_posix.h"
39
44
  #include "src/core/lib/iomgr/tcp_posix.h"
40
45
  #include "src/core/lib/iomgr/unix_sockets_posix.h"
41
- #include "src/core/lib/resource_quota/api.h"
42
46
  #include "src/core/util/crash.h"
43
- #include "src/core/util/string.h"
44
47
 
45
- static void create_sockets(int sv[2]) {
48
+ namespace {
49
+ using grpc_event_engine::experimental::ChannelArgsEndpointConfig;
50
+ using grpc_event_engine::experimental::EventEngine;
51
+ using grpc_event_engine::experimental::EventEngineSupportsFdExtension;
52
+ using grpc_event_engine::experimental::QueryExtension;
53
+ using grpc_event_engine::experimental::UsePollsetAlternative;
54
+
55
+ void create_sockets(int sv[2]) {
46
56
  int flags;
47
57
  grpc_create_socketpair_if_unix(sv);
48
58
  flags = fcntl(sv[0], F_GETFL, 0);
@@ -53,27 +63,44 @@ static void create_sockets(int sv[2]) {
53
63
  CHECK(grpc_set_socket_no_sigpipe_if_possible(sv[1]) == absl::OkStatus());
54
64
  }
55
65
 
66
+ } // namespace
67
+
56
68
  grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(
57
69
  const char* name, const grpc_channel_args* args) {
58
70
  int sv[2];
59
71
  grpc_endpoint_pair p;
60
72
  create_sockets(sv);
61
73
  grpc_core::ExecCtx exec_ctx;
62
- std::string final_name = absl::StrCat(name, ":client");
63
74
  auto new_args = grpc_core::CoreConfiguration::Get()
64
75
  .channel_args_preconditioning()
65
76
  .PreconditionChannelArgs(args);
66
- p.client = grpc_tcp_create(
67
- grpc_fd_create(sv[1], final_name.c_str(), false),
68
- TcpOptionsFromEndpointConfig(
69
- grpc_event_engine::experimental::ChannelArgsEndpointConfig(new_args)),
70
- "socketpair-server");
77
+ if (UsePollsetAlternative()) {
78
+ // Return iomgr-wrapped EE endpoints if a Posix-compatible EventEngine is
79
+ // present. If an endpoint cannot be created from an fd, crash.
80
+ auto* event_engine_supports_fd =
81
+ QueryExtension<EventEngineSupportsFdExtension>(
82
+ new_args.GetObjectRef<EventEngine>().get());
83
+ if (event_engine_supports_fd == nullptr) {
84
+ grpc_core::Crash(
85
+ "EventEngine does not support fds, so an endpoint pair cannot be "
86
+ "created.");
87
+ }
88
+ p.client = grpc_event_engine_endpoint_create(
89
+ event_engine_supports_fd->CreateEndpointFromFd(
90
+ sv[1], ChannelArgsEndpointConfig(new_args)));
91
+ p.server = grpc_event_engine_endpoint_create(
92
+ event_engine_supports_fd->CreateEndpointFromFd(
93
+ sv[0], ChannelArgsEndpointConfig(new_args)));
94
+ return p;
95
+ }
96
+ std::string final_name = absl::StrCat(name, ":client");
97
+ p.client =
98
+ grpc_tcp_create(grpc_fd_create(sv[1], final_name.c_str(), false),
99
+ ChannelArgsEndpointConfig(new_args), "socketpair-server");
71
100
  final_name = absl::StrCat(name, ":server");
72
- p.server = grpc_tcp_create(
73
- grpc_fd_create(sv[0], final_name.c_str(), false),
74
- TcpOptionsFromEndpointConfig(
75
- grpc_event_engine::experimental::ChannelArgsEndpointConfig(new_args)),
76
- "socketpair-client");
101
+ p.server =
102
+ grpc_tcp_create(grpc_fd_create(sv[0], final_name.c_str(), false),
103
+ ChannelArgsEndpointConfig(new_args), "socketpair-client");
77
104
  return p;
78
105
  }
79
106