grpc 1.66.0 → 1.71.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 (3048) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +316 -329
  3. data/include/grpc/compression.h +1 -2
  4. data/include/grpc/credentials.h +2 -3
  5. data/include/grpc/event_engine/README.md +1 -1
  6. data/include/grpc/event_engine/endpoint_config.h +7 -7
  7. data/include/grpc/event_engine/event_engine.h +56 -14
  8. data/include/grpc/event_engine/extensible.h +2 -2
  9. data/include/grpc/event_engine/internal/memory_allocator_impl.h +4 -4
  10. data/include/grpc/event_engine/internal/slice_cast.h +1 -1
  11. data/include/grpc/event_engine/memory_allocator.h +3 -4
  12. data/include/grpc/event_engine/memory_request.h +1 -2
  13. data/include/grpc/event_engine/slice.h +3 -5
  14. data/include/grpc/event_engine/slice_buffer.h +6 -8
  15. data/include/grpc/grpc.h +1 -2
  16. data/include/grpc/grpc_audit_logging.h +3 -3
  17. data/include/grpc/grpc_crl_provider.h +5 -5
  18. data/include/grpc/grpc_posix.h +1 -2
  19. data/include/grpc/grpc_security.h +1 -2
  20. data/include/grpc/impl/call.h +2 -2
  21. data/include/grpc/impl/channel_arg_names.h +3 -1
  22. data/include/grpc/impl/grpc_types.h +1 -2
  23. data/include/grpc/impl/slice_type.h +1 -2
  24. data/include/grpc/passive_listener.h +2 -2
  25. data/include/grpc/status.h +1 -1
  26. data/include/grpc/support/alloc.h +1 -2
  27. data/include/grpc/support/atm.h +0 -13
  28. data/include/grpc/support/json.h +17 -18
  29. data/include/grpc/support/log.h +35 -34
  30. data/include/grpc/support/metrics.h +7 -3
  31. data/include/grpc/support/port_platform.h +6 -1
  32. data/include/grpc/support/sync_generic.h +2 -4
  33. data/include/grpc/support/sync_posix.h +1 -2
  34. data/include/grpc/support/time.h +1 -2
  35. data/src/core/call/request_buffer.cc +224 -0
  36. data/src/core/call/request_buffer.h +192 -0
  37. data/src/core/channelz/channel_trace.cc +5 -6
  38. data/src/core/channelz/channel_trace.h +5 -7
  39. data/src/core/channelz/channelz.cc +7 -9
  40. data/src/core/channelz/channelz.h +11 -32
  41. data/src/core/channelz/channelz_registry.cc +6 -15
  42. data/src/core/channelz/channelz_registry.h +4 -5
  43. data/src/core/client_channel/backup_poller.cc +21 -11
  44. data/src/core/client_channel/client_channel.cc +51 -55
  45. data/src/core/client_channel/client_channel.h +7 -5
  46. data/src/core/client_channel/client_channel_args.h +21 -0
  47. data/src/core/client_channel/client_channel_factory.cc +2 -2
  48. data/src/core/client_channel/client_channel_factory.h +1 -2
  49. data/src/core/client_channel/client_channel_filter.cc +91 -162
  50. data/src/core/client_channel/client_channel_filter.h +23 -21
  51. data/src/core/client_channel/client_channel_internal.h +2 -5
  52. data/src/core/client_channel/client_channel_plugin.cc +3 -4
  53. data/src/core/client_channel/client_channel_service_config.cc +3 -4
  54. data/src/core/client_channel/client_channel_service_config.h +9 -11
  55. data/src/core/client_channel/config_selector.h +4 -8
  56. data/src/core/client_channel/connector.h +3 -3
  57. data/src/core/client_channel/direct_channel.cc +4 -4
  58. data/src/core/client_channel/direct_channel.h +1 -1
  59. data/src/core/client_channel/dynamic_filters.cc +10 -10
  60. data/src/core/client_channel/dynamic_filters.h +8 -7
  61. data/src/core/client_channel/global_subchannel_pool.cc +2 -2
  62. data/src/core/client_channel/global_subchannel_pool.h +2 -3
  63. data/src/core/client_channel/lb_metadata.cc +7 -8
  64. data/src/core/client_channel/lb_metadata.h +5 -6
  65. data/src/core/client_channel/load_balanced_call_destination.cc +6 -7
  66. data/src/core/client_channel/load_balanced_call_destination.h +0 -1
  67. data/src/core/client_channel/local_subchannel_pool.cc +2 -5
  68. data/src/core/client_channel/local_subchannel_pool.h +1 -1
  69. data/src/core/client_channel/retry_filter.cc +6 -8
  70. data/src/core/client_channel/retry_filter.h +5 -9
  71. data/src/core/client_channel/retry_filter_legacy_call_data.cc +197 -281
  72. data/src/core/client_channel/retry_filter_legacy_call_data.h +18 -19
  73. data/src/core/client_channel/retry_interceptor.cc +408 -0
  74. data/src/core/client_channel/retry_interceptor.h +157 -0
  75. data/src/core/client_channel/retry_service_config.cc +7 -9
  76. data/src/core/client_channel/retry_service_config.h +19 -8
  77. data/src/core/client_channel/retry_throttle.cc +34 -20
  78. data/src/core/client_channel/retry_throttle.h +6 -9
  79. data/src/core/client_channel/subchannel.cc +76 -118
  80. data/src/core/client_channel/subchannel.h +21 -20
  81. data/src/core/client_channel/subchannel_interface_internal.h +1 -1
  82. data/src/core/client_channel/subchannel_pool_interface.cc +1 -3
  83. data/src/core/client_channel/subchannel_pool_interface.h +2 -3
  84. data/src/core/client_channel/subchannel_stream_client.cc +7 -11
  85. data/src/core/client_channel/subchannel_stream_client.h +11 -13
  86. data/src/core/config/config_vars.cc +152 -0
  87. data/src/core/config/config_vars.h +129 -0
  88. data/src/core/config/config_vars_non_generated.cc +49 -0
  89. data/src/core/config/core_configuration.cc +111 -0
  90. data/src/core/config/core_configuration.h +242 -0
  91. data/src/core/config/load_config.cc +78 -0
  92. data/src/core/config/load_config.h +54 -0
  93. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +21 -29
  94. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +7 -8
  95. data/src/core/ext/filters/census/grpc_context.cc +1 -2
  96. data/src/core/ext/filters/channel_idle/idle_filter_state.cc +1 -2
  97. data/src/core/ext/filters/channel_idle/idle_filter_state.h +0 -1
  98. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +17 -20
  99. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +6 -8
  100. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +20 -25
  101. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +7 -9
  102. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +3 -4
  103. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +4 -7
  104. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +198 -0
  105. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +97 -0
  106. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.cc +80 -0
  107. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.h +86 -0
  108. data/src/core/ext/filters/http/client/http_client_filter.cc +13 -13
  109. data/src/core/ext/filters/http/client/http_client_filter.h +4 -5
  110. data/src/core/ext/filters/http/client_authority_filter.cc +13 -17
  111. data/src/core/ext/filters/http/client_authority_filter.h +6 -7
  112. data/src/core/ext/filters/http/http_filters_plugin.cc +1 -2
  113. data/src/core/ext/filters/http/message_compress/compression_filter.cc +49 -41
  114. data/src/core/ext/filters/http/message_compress/compression_filter.h +19 -17
  115. data/src/core/ext/filters/http/server/http_server_filter.cc +16 -18
  116. data/src/core/ext/filters/http/server/http_server_filter.h +4 -5
  117. data/src/core/ext/filters/message_size/message_size_filter.cc +32 -39
  118. data/src/core/ext/filters/message_size/message_size_filter.h +22 -25
  119. data/src/core/ext/filters/rbac/rbac_filter.cc +6 -13
  120. data/src/core/ext/filters/rbac/rbac_filter.h +6 -8
  121. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +17 -11
  122. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +2 -4
  123. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +12 -14
  124. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +6 -8
  125. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +3 -4
  126. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +5 -7
  127. data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -3
  128. data/src/core/ext/transport/chttp2/alpn/alpn.h +1 -2
  129. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +21 -26
  130. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +7 -7
  131. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +762 -191
  132. data/src/core/ext/transport/chttp2/server/chttp2_server.h +191 -15
  133. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +7 -7
  134. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +2 -3
  135. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +4 -7
  136. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +1 -2
  137. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.cc +53 -0
  138. data/src/core/ext/transport/chttp2/transport/call_tracer_wrapper.h +72 -0
  139. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +500 -394
  140. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +12 -13
  141. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +1 -2
  142. data/src/core/ext/transport/chttp2/transport/decode_huff.h +4 -4
  143. data/src/core/ext/transport/chttp2/transport/flow_control.cc +7 -10
  144. data/src/core/ext/transport/chttp2/transport/flow_control.h +5 -8
  145. data/src/core/ext/transport/chttp2/transport/frame.cc +24 -7
  146. data/src/core/ext/transport/chttp2/transport/frame.h +16 -7
  147. data/src/core/ext/transport/chttp2/transport/frame_data.cc +17 -14
  148. data/src/core/ext/transport/chttp2/transport/frame_data.h +2 -4
  149. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +11 -14
  150. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -2
  151. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +8 -10
  152. data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -2
  153. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +7 -9
  154. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -2
  155. data/src/core/ext/transport/chttp2/transport/frame_security.cc +80 -0
  156. data/src/core/ext/transport/chttp2/transport/frame_security.h +44 -0
  157. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +29 -16
  158. data/src/core/ext/transport/chttp2/transport/frame_settings.h +3 -4
  159. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +21 -4
  160. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +1 -2
  161. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +2 -2
  162. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +12 -14
  163. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +6 -8
  164. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +2 -3
  165. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +4 -5
  166. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +2 -4
  167. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +6 -9
  168. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +39 -40
  169. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +9 -12
  170. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +38 -8
  171. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +29 -10
  172. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +13 -5
  173. data/src/core/ext/transport/chttp2/transport/http2_settings.h +12 -6
  174. data/src/core/ext/transport/chttp2/transport/internal.h +58 -110
  175. data/src/core/ext/transport/chttp2/transport/legacy_frame.h +1 -0
  176. data/src/core/ext/transport/chttp2/transport/parsing.cc +79 -55
  177. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +4 -4
  178. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.h +3 -3
  179. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +4 -5
  180. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +5 -7
  181. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +6 -7
  182. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +4 -6
  183. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +11 -11
  184. data/src/core/ext/transport/chttp2/transport/stream_lists.h +65 -0
  185. data/src/core/ext/transport/chttp2/transport/varint.cc +6 -6
  186. data/src/core/ext/transport/chttp2/transport/varint.h +1 -3
  187. data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +2 -3
  188. data/src/core/ext/transport/chttp2/transport/write_size_policy.h +3 -4
  189. data/src/core/ext/transport/chttp2/transport/writing.cc +49 -55
  190. data/src/core/ext/transport/inproc/inproc_transport.cc +7 -10
  191. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +27 -24
  192. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +35 -4
  193. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +25 -18
  194. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.h +10 -4
  195. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +36 -4
  196. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +24 -18
  197. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.h +9 -4
  198. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +39 -4
  199. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +29 -22
  200. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.h +10 -4
  201. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +140 -5
  202. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +105 -84
  203. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.h +24 -4
  204. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +10 -4
  205. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +8 -4
  206. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.h +7 -4
  207. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +17 -4
  208. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +12 -8
  209. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.h +7 -4
  210. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +5 -4
  211. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +4 -1
  212. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.h +6 -4
  213. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +5 -4
  214. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +4 -1
  215. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.h +6 -4
  216. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +5 -4
  217. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +4 -1
  218. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.h +6 -4
  219. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +35 -4
  220. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +19 -14
  221. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.h +7 -4
  222. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +7 -4
  223. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +7 -4
  224. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.h +6 -4
  225. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +5 -4
  226. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +7 -1
  227. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.h +5 -4
  228. data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +7 -6
  229. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +10 -6
  230. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.h +6 -4
  231. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +61 -4
  232. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +66 -48
  233. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.h +21 -4
  234. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +183 -4
  235. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +131 -106
  236. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.h +28 -4
  237. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +31 -4
  238. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +22 -17
  239. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.h +8 -4
  240. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +251 -40
  241. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +169 -140
  242. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.h +30 -4
  243. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +9 -4
  244. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +8 -5
  245. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.h +6 -4
  246. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +56 -4
  247. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +30 -27
  248. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.h +6 -4
  249. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +96 -4
  250. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +80 -63
  251. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.h +20 -4
  252. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +44 -4
  253. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +36 -26
  254. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.h +13 -4
  255. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +9 -4
  256. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +8 -5
  257. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.h +6 -4
  258. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +225 -4
  259. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +138 -81
  260. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.h +36 -4
  261. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +46 -4
  262. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +36 -27
  263. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.h +12 -4
  264. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +7 -4
  265. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +7 -4
  266. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.h +6 -4
  267. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +7 -4
  268. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +7 -4
  269. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.h +6 -4
  270. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +10 -4
  271. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +8 -4
  272. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.h +7 -4
  273. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +71 -4
  274. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +61 -45
  275. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.h +19 -4
  276. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +92 -4
  277. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +55 -44
  278. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.h +14 -4
  279. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb.h +12 -4
  280. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.c +8 -5
  281. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.h +6 -4
  282. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +7 -4
  283. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +7 -4
  284. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.h +6 -4
  285. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +196 -10
  286. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +101 -77
  287. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.h +21 -4
  288. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +7 -4
  289. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +8 -4
  290. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +7 -4
  291. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +12 -4
  292. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +9 -5
  293. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.h +7 -4
  294. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb.h +151 -0
  295. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.c +60 -0
  296. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_cmsg_headers.upb_minitable.h +32 -0
  297. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +238 -25
  298. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +73 -21
  299. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.h +13 -4
  300. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +16 -4
  301. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +11 -7
  302. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.h +7 -4
  303. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +9 -4
  304. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +8 -5
  305. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.h +6 -4
  306. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +35 -4
  307. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +23 -17
  308. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.h +9 -4
  309. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +48 -4
  310. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +41 -32
  311. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +12 -4
  312. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +44 -4
  313. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +27 -19
  314. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.h +11 -4
  315. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +7 -4
  316. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +7 -4
  317. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.h +6 -4
  318. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +83 -4
  319. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +53 -41
  320. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +15 -4
  321. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +69 -106
  322. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +48 -60
  323. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.h +11 -5
  324. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +112 -4
  325. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +41 -16
  326. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.h +6 -4
  327. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +11 -4
  328. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +10 -6
  329. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.h +7 -4
  330. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +9 -4
  331. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +8 -5
  332. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.h +6 -4
  333. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +33 -4
  334. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +34 -24
  335. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.h +13 -4
  336. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +53 -5
  337. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +41 -29
  338. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.h +15 -4
  339. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +248 -4
  340. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +106 -63
  341. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.h +18 -4
  342. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +52 -4
  343. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +24 -19
  344. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.h +8 -4
  345. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +688 -8
  346. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +374 -257
  347. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +67 -4
  348. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +14 -4
  349. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +13 -8
  350. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.h +8 -4
  351. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +69 -4
  352. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +59 -45
  353. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.h +17 -4
  354. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +9 -4
  355. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +11 -7
  356. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.h +7 -4
  357. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +7 -4
  358. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +7 -4
  359. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.h +6 -4
  360. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +9 -4
  361. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +11 -7
  362. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.h +7 -4
  363. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +7 -4
  364. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +7 -4
  365. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.h +6 -4
  366. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +16 -4
  367. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +10 -7
  368. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.h +6 -4
  369. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +7 -4
  370. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +7 -4
  371. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.h +6 -4
  372. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +11 -4
  373. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +12 -8
  374. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.h +7 -4
  375. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb.h +5 -6
  376. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.c +3 -2
  377. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.h +5 -5
  378. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +13 -4
  379. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +13 -9
  380. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.h +7 -4
  381. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +7 -4
  382. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +7 -4
  383. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.h +6 -4
  384. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +102 -4
  385. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +72 -54
  386. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.h +21 -4
  387. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +5 -4
  388. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +4 -1
  389. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +6 -4
  390. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +17 -4
  391. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +18 -11
  392. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.h +10 -4
  393. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +24 -4
  394. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +18 -13
  395. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.h +8 -4
  396. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb.h +444 -0
  397. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.c +135 -0
  398. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.h +38 -0
  399. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +15 -4
  400. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +14 -10
  401. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.h +7 -4
  402. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +21 -4
  403. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +14 -10
  404. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.h +7 -4
  405. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +9 -4
  406. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +11 -7
  407. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.h +7 -4
  408. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +197 -4
  409. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +137 -113
  410. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +26 -4
  411. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +7 -4
  412. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +7 -4
  413. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.h +6 -4
  414. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +77 -4
  415. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +25 -11
  416. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.h +6 -4
  417. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +21 -4
  418. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +24 -17
  419. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +10 -4
  420. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +5 -4
  421. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +4 -1
  422. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.h +6 -4
  423. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +15 -4
  424. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +11 -8
  425. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.h +6 -4
  426. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +7 -4
  427. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +7 -4
  428. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.h +6 -4
  429. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb.h +105 -0
  430. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.c +51 -0
  431. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upb_minitable.h +32 -0
  432. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +5 -4
  433. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.c +3 -1
  434. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.h +5 -4
  435. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +59 -4
  436. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +42 -32
  437. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.h +13 -4
  438. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +17 -4
  439. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +18 -13
  440. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +8 -4
  441. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +179 -28
  442. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +79 -61
  443. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.h +12 -4
  444. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +49 -11
  445. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +17 -11
  446. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.h +7 -4
  447. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +42 -4
  448. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +32 -26
  449. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +9 -4
  450. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +5 -4
  451. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +4 -1
  452. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.h +6 -4
  453. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +337 -22
  454. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +102 -61
  455. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.h +21 -4
  456. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +14 -4
  457. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +12 -8
  458. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.h +7 -4
  459. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +47 -5
  460. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +32 -25
  461. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.h +10 -4
  462. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +7 -4
  463. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +7 -4
  464. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +6 -4
  465. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +14 -4
  466. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +14 -8
  467. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.h +9 -4
  468. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb.h +142 -0
  469. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.c +55 -0
  470. data/src/core/ext/upb-gen/envoy/type/matcher/v3/address.upb_minitable.h +32 -0
  471. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +40 -4
  472. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +13 -7
  473. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.h +6 -4
  474. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +5 -4
  475. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +8 -1
  476. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.h +10 -4
  477. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +12 -4
  478. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +9 -5
  479. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.h +7 -4
  480. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +12 -4
  481. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +8 -5
  482. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.h +6 -4
  483. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +7 -4
  484. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +7 -4
  485. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.h +6 -4
  486. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +7 -4
  487. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +7 -4
  488. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.h +6 -4
  489. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +11 -4
  490. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +15 -10
  491. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.h +8 -4
  492. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +5 -4
  493. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +5 -1
  494. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.h +7 -4
  495. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +14 -4
  496. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +12 -8
  497. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.h +7 -4
  498. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +12 -4
  499. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +9 -5
  500. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.h +7 -4
  501. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +22 -4
  502. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +20 -14
  503. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.h +9 -4
  504. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +18 -4
  505. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +19 -10
  506. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.h +12 -4
  507. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +17 -4
  508. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +18 -11
  509. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.h +10 -4
  510. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +9 -4
  511. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +10 -5
  512. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.h +8 -4
  513. data/src/core/ext/upb-gen/envoy/type/v3/http.upb.h +5 -4
  514. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.c +3 -1
  515. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.h +5 -4
  516. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +5 -4
  517. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +4 -1
  518. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.h +6 -4
  519. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +5 -4
  520. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +5 -1
  521. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.h +7 -4
  522. data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +5 -4
  523. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +6 -1
  524. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.h +8 -4
  525. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +9 -4
  526. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +9 -5
  527. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.h +7 -4
  528. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb.h +5 -4
  529. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.c +3 -1
  530. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.h +5 -4
  531. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +5 -4
  532. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +4 -1
  533. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.h +6 -4
  534. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +9 -4
  535. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +8 -5
  536. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.h +6 -4
  537. data/src/core/ext/upb-gen/google/api/annotations.upb.h +7 -6
  538. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +5 -2
  539. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.h +5 -4
  540. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +103 -4
  541. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +82 -56
  542. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.h +18 -4
  543. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +482 -26
  544. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +160 -68
  545. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +23 -4
  546. data/src/core/ext/upb-gen/google/api/http.upb.h +18 -4
  547. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +13 -8
  548. data/src/core/ext/upb-gen/google/api/http.upb_minitable.h +8 -4
  549. data/src/core/ext/upb-gen/google/api/httpbody.upb.h +10 -4
  550. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +7 -4
  551. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.h +6 -4
  552. data/src/core/ext/upb-gen/google/protobuf/any.upb.h +6 -4
  553. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +4 -1
  554. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.h +6 -4
  555. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +202 -4
  556. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +241 -206
  557. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +55 -21
  558. data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +6 -4
  559. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +4 -1
  560. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.h +6 -4
  561. data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +6 -4
  562. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +4 -1
  563. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.h +6 -4
  564. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +27 -4
  565. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +20 -14
  566. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.h +9 -4
  567. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +6 -4
  568. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +4 -1
  569. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.h +6 -4
  570. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +6 -4
  571. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +12 -1
  572. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.h +14 -4
  573. data/src/core/ext/upb-gen/google/rpc/status.upb.h +10 -4
  574. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +7 -4
  575. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.h +6 -4
  576. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +13 -4
  577. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +9 -5
  578. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.h +7 -4
  579. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +63 -4
  580. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +51 -37
  581. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.h +17 -4
  582. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +10 -4
  583. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +9 -5
  584. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.h +7 -4
  585. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +6 -4
  586. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +5 -1
  587. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.h +7 -4
  588. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +29 -4
  589. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +31 -20
  590. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.h +14 -4
  591. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +12 -4
  592. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +9 -4
  593. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.h +8 -4
  594. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +57 -4
  595. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +33 -22
  596. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.h +14 -4
  597. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +15 -14
  598. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +22 -12
  599. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.h +8 -4
  600. data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +7 -6
  601. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +10 -6
  602. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.h +6 -4
  603. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +5 -4
  604. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +4 -1
  605. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.h +5 -4
  606. data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +7 -6
  607. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +10 -6
  608. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.h +6 -4
  609. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +7 -6
  610. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +10 -6
  611. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.h +6 -4
  612. data/src/core/ext/upb-gen/validate/validate.upb.h +89 -6
  613. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +116 -87
  614. data/src/core/ext/upb-gen/validate/validate.upb_minitable.h +29 -5
  615. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +15 -14
  616. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +22 -12
  617. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.h +8 -4
  618. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +7 -6
  619. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +10 -6
  620. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.h +6 -4
  621. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +5 -4
  622. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +4 -1
  623. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.h +5 -4
  624. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +11 -10
  625. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +20 -11
  626. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.h +9 -4
  627. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +7 -6
  628. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +10 -6
  629. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.h +6 -4
  630. data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +5 -4
  631. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +4 -1
  632. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.h +6 -4
  633. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +7 -4
  634. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +7 -4
  635. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.h +6 -4
  636. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +11 -4
  637. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +12 -8
  638. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.h +7 -4
  639. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +11 -4
  640. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +8 -4
  641. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.h +7 -4
  642. data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +7 -4
  643. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +7 -4
  644. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.h +6 -4
  645. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +9 -4
  646. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +8 -5
  647. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.h +6 -4
  648. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +14 -4
  649. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +12 -8
  650. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.h +7 -4
  651. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +7 -4
  652. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +7 -4
  653. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.h +6 -4
  654. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +23 -4
  655. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +12 -6
  656. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.h +9 -4
  657. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +7 -4
  658. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +7 -4
  659. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.h +6 -4
  660. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +7 -4
  661. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +7 -4
  662. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.h +6 -4
  663. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +12 -4
  664. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +11 -7
  665. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.h +7 -4
  666. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +5 -4
  667. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +4 -1
  668. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.h +6 -4
  669. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +17 -4
  670. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +12 -8
  671. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.h +7 -4
  672. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +63 -4
  673. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +55 -43
  674. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.h +15 -4
  675. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +41 -4
  676. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +30 -22
  677. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.h +11 -4
  678. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +7 -4
  679. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +8 -4
  680. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.h +7 -4
  681. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +12 -4
  682. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +11 -7
  683. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.h +7 -4
  684. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +13 -4
  685. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +13 -9
  686. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.h +7 -4
  687. data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +6 -4
  688. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +6 -1
  689. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.h +8 -4
  690. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +7 -4
  691. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +7 -4
  692. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.h +6 -4
  693. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.c +2 -1
  694. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.h +5 -4
  695. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.c +2 -1
  696. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.h +5 -4
  697. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.c +2 -1
  698. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.h +5 -4
  699. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.c +13 -11
  700. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.h +5 -4
  701. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.c +2 -1
  702. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.h +5 -4
  703. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.c +2 -1
  704. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.h +5 -4
  705. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.c +2 -1
  706. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.h +5 -4
  707. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.c +2 -1
  708. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.h +5 -4
  709. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.c +2 -1
  710. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.h +5 -4
  711. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.c +8 -5
  712. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.h +5 -4
  713. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.c +2 -1
  714. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.h +5 -4
  715. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.c +2 -1
  716. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.h +5 -4
  717. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.c +2 -1
  718. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.h +5 -4
  719. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.c +2 -1
  720. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.h +5 -4
  721. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +2 -1
  722. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +5 -4
  723. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +2 -1
  724. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +5 -4
  725. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.c +420 -414
  726. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.h +5 -4
  727. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.c +2 -1
  728. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.h +5 -4
  729. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.c +2 -1
  730. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.h +5 -4
  731. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.c +2 -1
  732. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.h +5 -4
  733. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.c +2 -1
  734. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.h +5 -4
  735. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.c +2 -1
  736. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.h +5 -4
  737. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.c +163 -154
  738. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.h +10 -4
  739. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.c +2 -1
  740. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.h +5 -4
  741. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.c +2 -1
  742. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.h +5 -4
  743. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.c +2 -1
  744. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.h +5 -4
  745. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.c +2 -1
  746. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.h +5 -4
  747. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.c +2 -1
  748. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.h +5 -4
  749. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.c +2 -1
  750. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.h +5 -4
  751. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.c +2 -1
  752. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.h +5 -4
  753. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.c +2 -1
  754. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.h +5 -4
  755. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.c +272 -262
  756. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.h +5 -4
  757. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.c +2 -1
  758. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +5 -4
  759. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.c +2 -1
  760. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.h +5 -4
  761. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_cmsg_headers.upbdefs.c +46 -0
  762. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_cmsg_headers.upbdefs.h +33 -0
  763. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.c +31 -20
  764. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.h +20 -4
  765. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.c +2 -1
  766. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.h +5 -4
  767. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.c +2 -1
  768. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.h +5 -4
  769. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.c +2 -1
  770. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.h +5 -4
  771. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +2 -1
  772. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +5 -4
  773. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.c +2 -1
  774. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.h +5 -4
  775. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.c +2 -1
  776. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.h +5 -4
  777. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.c +2 -1
  778. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +5 -4
  779. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.c +60 -66
  780. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.h +5 -9
  781. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.c +75 -64
  782. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.h +5 -4
  783. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.c +2 -1
  784. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.h +5 -4
  785. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.c +2 -1
  786. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.h +5 -4
  787. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.c +2 -1
  788. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.h +5 -4
  789. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.c +51 -49
  790. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.h +5 -4
  791. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.c +119 -101
  792. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.h +10 -4
  793. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.c +2 -1
  794. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.h +5 -4
  795. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.c +919 -899
  796. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +15 -4
  797. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.c +2 -1
  798. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.h +5 -4
  799. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.c +2 -1
  800. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.h +5 -4
  801. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.c +2 -1
  802. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.h +5 -4
  803. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.c +2 -1
  804. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.h +5 -4
  805. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.c +2 -1
  806. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.h +5 -4
  807. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.c +2 -1
  808. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.h +5 -4
  809. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.c +2 -1
  810. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.h +5 -4
  811. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.c +2 -1
  812. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.h +5 -4
  813. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.c +2 -1
  814. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.h +5 -4
  815. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.c +17 -19
  816. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.h +5 -4
  817. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.c +2 -1
  818. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.h +5 -4
  819. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.c +2 -1
  820. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.h +5 -4
  821. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.c +2 -1
  822. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.h +5 -4
  823. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +2 -1
  824. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +5 -4
  825. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +2 -1
  826. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +5 -4
  827. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +2 -1
  828. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +5 -4
  829. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.c +87 -0
  830. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.h +48 -0
  831. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +35 -34
  832. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +5 -4
  833. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.c +2 -1
  834. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.h +5 -4
  835. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +2 -1
  836. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +5 -4
  837. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +462 -458
  838. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +5 -4
  839. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +2 -1
  840. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +5 -4
  841. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upbdefs.c +50 -0
  842. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/http_11_proxy/v3/upstream_http_11_connect.upbdefs.h +33 -0
  843. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +2 -1
  844. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +5 -4
  845. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +97 -96
  846. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +5 -4
  847. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +2 -1
  848. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +5 -4
  849. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +204 -192
  850. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +5 -4
  851. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +21 -18
  852. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +5 -4
  853. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.c +2 -1
  854. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +5 -4
  855. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.c +2 -1
  856. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.h +5 -4
  857. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.c +150 -136
  858. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.h +10 -4
  859. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.c +2 -1
  860. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.h +5 -4
  861. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.c +25 -23
  862. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.h +5 -4
  863. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.c +2 -1
  864. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +5 -4
  865. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.c +2 -1
  866. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.h +5 -4
  867. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.c +41 -0
  868. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/address.upbdefs.h +33 -0
  869. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.c +28 -20
  870. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.h +5 -4
  871. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.c +2 -1
  872. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.h +5 -4
  873. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.c +2 -1
  874. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.h +5 -4
  875. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.c +2 -1
  876. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.h +5 -4
  877. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.c +2 -1
  878. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.h +5 -4
  879. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.c +2 -1
  880. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.h +5 -4
  881. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.c +2 -1
  882. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.h +5 -4
  883. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.c +2 -1
  884. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.h +5 -4
  885. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.c +2 -1
  886. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.h +5 -4
  887. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.c +2 -1
  888. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.h +5 -4
  889. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.c +2 -1
  890. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.h +5 -4
  891. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.c +2 -1
  892. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.h +5 -4
  893. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.c +2 -1
  894. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.h +5 -4
  895. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.c +2 -1
  896. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.h +5 -4
  897. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.c +2 -1
  898. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.h +5 -4
  899. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.c +2 -1
  900. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.h +5 -4
  901. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.c +2 -1
  902. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.h +5 -4
  903. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.c +2 -1
  904. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.h +5 -4
  905. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.c +2 -1
  906. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.h +5 -4
  907. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.c +2 -1
  908. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.h +5 -4
  909. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.c +2 -1
  910. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.h +5 -4
  911. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.c +2 -1
  912. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.h +5 -4
  913. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.c +2 -1
  914. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.h +5 -4
  915. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.c +110 -108
  916. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.h +5 -4
  917. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.c +103 -79
  918. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +15 -4
  919. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.c +2 -1
  920. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.h +5 -4
  921. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.c +2 -1
  922. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.h +5 -4
  923. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.c +2 -1
  924. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.h +5 -4
  925. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +486 -484
  926. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.h +5 -4
  927. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.c +2 -1
  928. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.h +5 -4
  929. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.c +2 -1
  930. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.h +5 -4
  931. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.c +2 -1
  932. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.h +5 -4
  933. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.c +2 -1
  934. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.h +5 -4
  935. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.c +2 -1
  936. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.h +5 -4
  937. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.c +2 -1
  938. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.h +5 -4
  939. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +2 -1
  940. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +5 -4
  941. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.c +2 -1
  942. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.h +5 -4
  943. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.c +2 -1
  944. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.h +5 -4
  945. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.c +2 -1
  946. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.h +5 -4
  947. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.c +2 -1
  948. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.h +5 -4
  949. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.c +2 -1
  950. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.h +5 -4
  951. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.c +2 -1
  952. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.h +5 -4
  953. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.c +2 -1
  954. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.h +5 -4
  955. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.c +2 -1
  956. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.h +5 -4
  957. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.c +2 -1
  958. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.h +5 -4
  959. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.c +2 -1
  960. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.h +5 -4
  961. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.c +2 -1
  962. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.h +5 -4
  963. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.c +2 -1
  964. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.h +5 -4
  965. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.c +2 -1
  966. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.h +5 -4
  967. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.c +2 -1
  968. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.h +5 -4
  969. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.c +2 -1
  970. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.h +5 -4
  971. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.c +2 -1
  972. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.h +5 -4
  973. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.c +2 -1
  974. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.h +5 -4
  975. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.c +2 -1
  976. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.h +5 -4
  977. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.c +2 -1
  978. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.h +5 -4
  979. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.c +2 -1
  980. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.h +5 -4
  981. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.c +2 -1
  982. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.h +5 -4
  983. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.c +2 -1
  984. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.h +5 -4
  985. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.c +2 -1
  986. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.h +5 -4
  987. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.c +2 -1
  988. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.h +5 -4
  989. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.c +2 -1
  990. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.h +5 -4
  991. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.c +2 -1
  992. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.h +5 -4
  993. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.c +2 -1
  994. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.h +5 -4
  995. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.c +2 -1
  996. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.h +5 -4
  997. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.c +2 -1
  998. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.h +5 -4
  999. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.c +2 -1
  1000. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.h +5 -4
  1001. data/src/core/filter/blackboard.cc +33 -0
  1002. data/src/core/filter/blackboard.h +70 -0
  1003. data/src/core/filter/filter_args.h +112 -0
  1004. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.cc +4 -5
  1005. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.h +1 -1
  1006. data/src/core/handshaker/handshaker.cc +29 -43
  1007. data/src/core/handshaker/handshaker.h +8 -10
  1008. data/src/core/handshaker/handshaker_registry.cc +1 -2
  1009. data/src/core/handshaker/handshaker_registry.h +2 -2
  1010. data/src/core/handshaker/http_connect/http_connect_handshaker.cc +17 -16
  1011. data/src/core/handshaker/http_connect/http_connect_handshaker.h +1 -1
  1012. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +38 -41
  1013. data/src/core/handshaker/http_connect/http_proxy_mapper.h +7 -8
  1014. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.cc +57 -0
  1015. data/src/core/handshaker/http_connect/xds_http_proxy_mapper.h +46 -0
  1016. data/src/core/handshaker/proxy_mapper.h +6 -7
  1017. data/src/core/handshaker/proxy_mapper_registry.cc +7 -8
  1018. data/src/core/handshaker/proxy_mapper_registry.h +6 -7
  1019. data/src/core/handshaker/security/secure_endpoint.cc +17 -19
  1020. data/src/core/handshaker/security/secure_endpoint.h +2 -3
  1021. data/src/core/handshaker/security/security_handshaker.cc +76 -96
  1022. data/src/core/handshaker/security/security_handshaker.h +3 -4
  1023. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +16 -16
  1024. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.h +1 -1
  1025. data/src/core/lib/address_utils/parse_address.cc +3 -4
  1026. data/src/core/lib/address_utils/parse_address.h +2 -4
  1027. data/src/core/lib/address_utils/sockaddr_utils.cc +4 -6
  1028. data/src/core/lib/address_utils/sockaddr_utils.h +1 -3
  1029. data/src/core/lib/channel/call_finalization.h +2 -2
  1030. data/src/core/lib/channel/channel_args.cc +17 -19
  1031. data/src/core/lib/channel/channel_args.h +19 -21
  1032. data/src/core/lib/channel/channel_args_preconditioning.cc +2 -2
  1033. data/src/core/lib/channel/channel_args_preconditioning.h +4 -4
  1034. data/src/core/lib/channel/channel_stack.cc +5 -5
  1035. data/src/core/lib/channel/channel_stack.h +17 -18
  1036. data/src/core/lib/channel/channel_stack_builder.cc +2 -2
  1037. data/src/core/lib/channel/channel_stack_builder.h +3 -4
  1038. data/src/core/lib/channel/channel_stack_builder_impl.cc +5 -8
  1039. data/src/core/lib/channel/channel_stack_builder_impl.h +15 -3
  1040. data/src/core/lib/channel/connected_channel.cc +10 -13
  1041. data/src/core/lib/channel/promise_based_filter.cc +184 -223
  1042. data/src/core/lib/channel/promise_based_filter.h +99 -145
  1043. data/src/core/lib/channel/status_util.cc +1 -3
  1044. data/src/core/lib/channel/status_util.h +3 -3
  1045. data/src/core/lib/compression/compression.cc +5 -6
  1046. data/src/core/lib/compression/compression_internal.cc +14 -17
  1047. data/src/core/lib/compression/compression_internal.h +6 -8
  1048. data/src/core/lib/compression/message_compress.cc +3 -6
  1049. data/src/core/lib/debug/trace.cc +5 -6
  1050. data/src/core/lib/debug/trace_flags.cc +8 -20
  1051. data/src/core/lib/debug/trace_flags.h +3 -5
  1052. data/src/core/lib/debug/trace_impl.h +8 -2
  1053. data/src/core/lib/event_engine/ares_resolver.cc +109 -82
  1054. data/src/core/lib/event_engine/ares_resolver.h +13 -29
  1055. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +4 -8
  1056. data/src/core/lib/event_engine/cf_engine/cf_engine.h +3 -5
  1057. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +21 -10
  1058. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +6 -10
  1059. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +3 -5
  1060. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +11 -13
  1061. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +5 -9
  1062. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +7 -10
  1063. data/src/core/lib/event_engine/channel_args_endpoint_config.h +7 -9
  1064. data/src/core/lib/event_engine/common_closures.h +5 -7
  1065. data/src/core/lib/event_engine/default_event_engine.cc +69 -41
  1066. data/src/core/lib/event_engine/default_event_engine.h +27 -36
  1067. data/src/core/lib/event_engine/default_event_engine_factory.cc +8 -14
  1068. data/src/core/lib/event_engine/default_event_engine_factory.h +4 -6
  1069. data/src/core/lib/event_engine/event_engine.cc +4 -6
  1070. data/src/core/lib/event_engine/extensions/can_track_errors.h +4 -6
  1071. data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +3 -6
  1072. data/src/core/lib/event_engine/extensions/supports_fd.h +22 -7
  1073. data/src/core/lib/event_engine/extensions/tcp_trace.h +2 -5
  1074. data/src/core/lib/event_engine/forkable.cc +5 -8
  1075. data/src/core/lib/event_engine/forkable.h +4 -7
  1076. data/src/core/lib/event_engine/grpc_polled_fd.h +5 -8
  1077. data/src/core/lib/event_engine/handle_containers.h +4 -7
  1078. data/src/core/lib/event_engine/memory_allocator_factory.h +5 -8
  1079. data/src/core/lib/event_engine/nameser.h +1 -1
  1080. data/src/core/lib/event_engine/poller.h +4 -6
  1081. data/src/core/lib/event_engine/posix.h +2 -4
  1082. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +14 -62
  1083. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +10 -13
  1084. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +21 -72
  1085. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +6 -9
  1086. data/src/core/lib/event_engine/posix_engine/event_poller.h +5 -8
  1087. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +6 -9
  1088. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +4 -6
  1089. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +6 -10
  1090. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +4 -7
  1091. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +3 -6
  1092. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +7 -11
  1093. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +4 -7
  1094. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +4 -7
  1095. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +4 -7
  1096. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +43 -27
  1097. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +10 -14
  1098. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +53 -34
  1099. data/src/core/lib/event_engine/posix_engine/posix_engine.h +18 -20
  1100. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +5 -7
  1101. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +10 -14
  1102. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +16 -17
  1103. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +6 -10
  1104. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +3 -6
  1105. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +13 -17
  1106. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +10 -14
  1107. data/src/core/lib/event_engine/posix_engine/timer.cc +8 -10
  1108. data/src/core/lib/event_engine/posix_engine/timer.h +9 -13
  1109. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +4 -7
  1110. data/src/core/lib/event_engine/posix_engine/timer_heap.h +4 -6
  1111. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +12 -20
  1112. data/src/core/lib/event_engine/posix_engine/timer_manager.h +9 -13
  1113. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +9 -16
  1114. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +27 -30
  1115. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +7 -10
  1116. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +4 -7
  1117. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +6 -9
  1118. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +4 -7
  1119. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +4 -6
  1120. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +4 -7
  1121. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +4 -6
  1122. data/src/core/lib/event_engine/query_extensions.h +4 -6
  1123. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +5 -9
  1124. data/src/core/lib/event_engine/resolved_address.cc +7 -9
  1125. data/src/core/lib/event_engine/resolved_address_internal.h +2 -4
  1126. data/src/core/lib/event_engine/shim.cc +2 -4
  1127. data/src/core/lib/event_engine/shim.h +2 -4
  1128. data/src/core/lib/event_engine/slice.cc +5 -10
  1129. data/src/core/lib/event_engine/slice_buffer.cc +3 -6
  1130. data/src/core/lib/event_engine/tcp_socket_utils.cc +9 -18
  1131. data/src/core/lib/event_engine/tcp_socket_utils.h +8 -10
  1132. data/src/core/lib/event_engine/thread_local.cc +2 -4
  1133. data/src/core/lib/event_engine/thread_local.h +2 -4
  1134. data/src/core/lib/event_engine/thread_pool/thread_count.cc +4 -9
  1135. data/src/core/lib/event_engine/thread_pool/thread_count.h +9 -24
  1136. data/src/core/lib/event_engine/thread_pool/thread_pool.h +4 -8
  1137. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +4 -7
  1138. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +15 -21
  1139. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +9 -13
  1140. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +7 -9
  1141. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +7 -9
  1142. data/src/core/lib/event_engine/time_util.cc +4 -6
  1143. data/src/core/lib/event_engine/time_util.h +3 -6
  1144. data/src/core/lib/event_engine/utils.cc +21 -9
  1145. data/src/core/lib/event_engine/utils.h +12 -8
  1146. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +128 -105
  1147. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.h +6 -10
  1148. data/src/core/lib/event_engine/windows/iocp.cc +6 -9
  1149. data/src/core/lib/event_engine/windows/iocp.h +3 -6
  1150. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +6 -10
  1151. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.h +2 -4
  1152. data/src/core/lib/event_engine/windows/win_socket.cc +6 -9
  1153. data/src/core/lib/event_engine/windows/win_socket.h +6 -9
  1154. data/src/core/lib/event_engine/windows/windows_endpoint.cc +30 -19
  1155. data/src/core/lib/event_engine/windows/windows_endpoint.h +4 -6
  1156. data/src/core/lib/event_engine/windows/windows_engine.cc +13 -15
  1157. data/src/core/lib/event_engine/windows/windows_engine.h +10 -13
  1158. data/src/core/lib/event_engine/windows/windows_listener.cc +4 -7
  1159. data/src/core/lib/event_engine/windows/windows_listener.h +6 -9
  1160. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +5 -7
  1161. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +5 -9
  1162. data/src/core/lib/event_engine/work_queue/work_queue.h +4 -7
  1163. data/src/core/lib/experiments/config.cc +21 -22
  1164. data/src/core/lib/experiments/config.h +1 -2
  1165. data/src/core/lib/experiments/experiments.cc +271 -177
  1166. data/src/core/lib/experiments/experiments.h +119 -80
  1167. data/src/core/lib/iomgr/buffer_list.cc +4 -6
  1168. data/src/core/lib/iomgr/buffer_list.h +23 -23
  1169. data/src/core/lib/iomgr/call_combiner.cc +2 -4
  1170. data/src/core/lib/iomgr/call_combiner.h +12 -16
  1171. data/src/core/lib/iomgr/cfstream_handle.cc +8 -14
  1172. data/src/core/lib/iomgr/cfstream_handle.h +1 -1
  1173. data/src/core/lib/iomgr/closure.cc +2 -2
  1174. data/src/core/lib/iomgr/closure.h +12 -18
  1175. data/src/core/lib/iomgr/combiner.cc +10 -15
  1176. data/src/core/lib/iomgr/combiner.h +2 -3
  1177. data/src/core/lib/iomgr/endpoint.h +1 -2
  1178. data/src/core/lib/iomgr/endpoint_cfstream.cc +19 -26
  1179. data/src/core/lib/iomgr/endpoint_pair_posix.cc +2 -5
  1180. data/src/core/lib/iomgr/endpoint_pair_windows.cc +1 -2
  1181. data/src/core/lib/iomgr/error.cc +8 -10
  1182. data/src/core/lib/iomgr/error.h +6 -9
  1183. data/src/core/lib/iomgr/error_cfstream.cc +1 -3
  1184. data/src/core/lib/iomgr/ev_apple.cc +16 -22
  1185. data/src/core/lib/iomgr/ev_epoll1_linux.cc +54 -94
  1186. data/src/core/lib/iomgr/ev_poll_posix.cc +20 -29
  1187. data/src/core/lib/iomgr/ev_posix.cc +59 -50
  1188. data/src/core/lib/iomgr/ev_posix.h +1 -7
  1189. data/src/core/lib/iomgr/event_engine_shims/closure.cc +10 -14
  1190. data/src/core/lib/iomgr/event_engine_shims/closure.h +1 -2
  1191. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +14 -18
  1192. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +2 -2
  1193. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +2 -4
  1194. data/src/core/lib/iomgr/exec_ctx.cc +11 -21
  1195. data/src/core/lib/iomgr/exec_ctx.h +22 -145
  1196. data/src/core/lib/iomgr/executor.cc +49 -52
  1197. data/src/core/lib/iomgr/executor.h +1 -1
  1198. data/src/core/lib/iomgr/fork_posix.cc +5 -7
  1199. data/src/core/lib/iomgr/fork_windows.cc +2 -3
  1200. data/src/core/lib/iomgr/internal_errqueue.cc +2 -4
  1201. data/src/core/lib/iomgr/iocp_windows.cc +4 -7
  1202. data/src/core/lib/iomgr/iomgr.cc +7 -9
  1203. data/src/core/lib/iomgr/iomgr.h +1 -2
  1204. data/src/core/lib/iomgr/iomgr_internal.cc +1 -2
  1205. data/src/core/lib/iomgr/iomgr_internal.h +1 -2
  1206. data/src/core/lib/iomgr/iomgr_posix.cc +2 -1
  1207. data/src/core/lib/iomgr/iomgr_windows.cc +4 -5
  1208. data/src/core/lib/iomgr/lockfree_event.cc +10 -15
  1209. data/src/core/lib/iomgr/nameser.h +1 -1
  1210. data/src/core/lib/iomgr/polling_entity.cc +13 -7
  1211. data/src/core/lib/iomgr/pollset_set_windows.cc +1 -2
  1212. data/src/core/lib/iomgr/pollset_windows.cc +2 -4
  1213. data/src/core/lib/iomgr/port.h +2 -2
  1214. data/src/core/lib/iomgr/resolve_address.cc +3 -5
  1215. data/src/core/lib/iomgr/resolve_address.h +4 -6
  1216. data/src/core/lib/iomgr/resolve_address_impl.h +1 -2
  1217. data/src/core/lib/iomgr/resolve_address_posix.cc +6 -10
  1218. data/src/core/lib/iomgr/resolve_address_posix.h +2 -2
  1219. data/src/core/lib/iomgr/resolve_address_windows.cc +8 -13
  1220. data/src/core/lib/iomgr/resolve_address_windows.h +2 -2
  1221. data/src/core/lib/iomgr/resolved_address.h +1 -2
  1222. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +3 -6
  1223. data/src/core/lib/iomgr/socket_mutator.cc +1 -2
  1224. data/src/core/lib/iomgr/socket_mutator.h +1 -2
  1225. data/src/core/lib/iomgr/socket_utils.h +1 -2
  1226. data/src/core/lib/iomgr/socket_utils_common_posix.cc +5 -7
  1227. data/src/core/lib/iomgr/socket_utils_linux.cc +1 -3
  1228. data/src/core/lib/iomgr/socket_utils_posix.cc +6 -8
  1229. data/src/core/lib/iomgr/socket_utils_windows.cc +1 -3
  1230. data/src/core/lib/iomgr/socket_windows.cc +3 -5
  1231. data/src/core/lib/iomgr/socket_windows.h +1 -2
  1232. data/src/core/lib/iomgr/tcp_client_cfstream.cc +12 -19
  1233. data/src/core/lib/iomgr/tcp_client_posix.cc +13 -19
  1234. data/src/core/lib/iomgr/tcp_client_windows.cc +6 -9
  1235. data/src/core/lib/iomgr/tcp_posix.cc +49 -87
  1236. data/src/core/lib/iomgr/tcp_posix.h +1 -1
  1237. data/src/core/lib/iomgr/tcp_server.h +2 -2
  1238. data/src/core/lib/iomgr/tcp_server_posix.cc +17 -25
  1239. data/src/core/lib/iomgr/tcp_server_utils_posix.h +2 -3
  1240. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +3 -5
  1241. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +4 -6
  1242. data/src/core/lib/iomgr/tcp_server_windows.cc +11 -14
  1243. data/src/core/lib/iomgr/tcp_windows.cc +8 -18
  1244. data/src/core/lib/iomgr/timer.h +2 -2
  1245. data/src/core/lib/iomgr/timer_generic.cc +55 -76
  1246. data/src/core/lib/iomgr/timer_heap.cc +2 -3
  1247. data/src/core/lib/iomgr/timer_manager.cc +9 -20
  1248. data/src/core/lib/iomgr/timer_manager.h +1 -2
  1249. data/src/core/lib/iomgr/unix_sockets_posix.cc +3 -5
  1250. data/src/core/lib/iomgr/unix_sockets_posix.h +3 -4
  1251. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +0 -4
  1252. data/src/core/lib/iomgr/vsock.cc +2 -5
  1253. data/src/core/lib/iomgr/vsock.h +3 -4
  1254. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +2 -4
  1255. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +3 -4
  1256. data/src/core/lib/promise/activity.cc +4 -4
  1257. data/src/core/lib/promise/activity.h +43 -25
  1258. data/src/core/lib/promise/all_ok.h +40 -4
  1259. data/src/core/lib/promise/arena_promise.h +2 -4
  1260. data/src/core/lib/promise/cancel_callback.h +4 -4
  1261. data/src/core/lib/promise/context.h +7 -9
  1262. data/src/core/lib/promise/detail/basic_seq.h +33 -19
  1263. data/src/core/lib/promise/detail/join_state.h +64 -117
  1264. data/src/core/lib/promise/detail/promise_factory.h +92 -33
  1265. data/src/core/lib/promise/detail/promise_like.h +34 -15
  1266. data/src/core/lib/promise/detail/seq_state.h +1206 -1676
  1267. data/src/core/lib/promise/detail/status.h +5 -5
  1268. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +2 -3
  1269. data/src/core/lib/promise/for_each.h +31 -30
  1270. data/src/core/lib/promise/if.h +56 -28
  1271. data/src/core/lib/promise/interceptor_list.h +29 -41
  1272. data/src/core/lib/promise/latch.h +31 -33
  1273. data/src/core/lib/promise/loop.h +70 -22
  1274. data/src/core/lib/promise/map.h +167 -21
  1275. data/src/core/lib/promise/observable.h +3 -4
  1276. data/src/core/lib/promise/party.cc +295 -136
  1277. data/src/core/lib/promise/party.h +376 -362
  1278. data/src/core/lib/promise/pipe.h +18 -21
  1279. data/src/core/lib/promise/poll.h +27 -13
  1280. data/src/core/lib/promise/prioritized_race.h +17 -23
  1281. data/src/core/lib/promise/promise.h +7 -9
  1282. data/src/core/lib/promise/race.h +6 -14
  1283. data/src/core/lib/promise/seq.h +58 -45
  1284. data/src/core/lib/promise/sleep.cc +6 -6
  1285. data/src/core/lib/promise/sleep.h +19 -6
  1286. data/src/core/lib/promise/status_flag.h +28 -7
  1287. data/src/core/lib/promise/try_join.h +124 -10
  1288. data/src/core/lib/promise/try_seq.h +84 -59
  1289. data/src/core/lib/resource_quota/api.cc +4 -6
  1290. data/src/core/lib/resource_quota/api.h +2 -3
  1291. data/src/core/lib/resource_quota/arena.cc +3 -4
  1292. data/src/core/lib/resource_quota/arena.h +91 -5
  1293. data/src/core/lib/resource_quota/connection_quota.cc +2 -3
  1294. data/src/core/lib/resource_quota/connection_quota.h +9 -6
  1295. data/src/core/lib/resource_quota/memory_quota.cc +84 -79
  1296. data/src/core/lib/resource_quota/memory_quota.h +27 -21
  1297. data/src/core/lib/resource_quota/periodic_update.cc +6 -7
  1298. data/src/core/lib/resource_quota/periodic_update.h +2 -4
  1299. data/src/core/lib/resource_quota/resource_quota.h +7 -8
  1300. data/src/core/lib/resource_quota/thread_quota.cc +2 -3
  1301. data/src/core/lib/resource_quota/thread_quota.h +5 -6
  1302. data/src/core/lib/security/authorization/audit_logging.cc +5 -7
  1303. data/src/core/lib/security/authorization/audit_logging.h +5 -6
  1304. data/src/core/lib/security/authorization/authorization_engine.h +3 -3
  1305. data/src/core/lib/security/authorization/authorization_policy_provider.h +3 -4
  1306. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -1
  1307. data/src/core/lib/security/authorization/evaluate_args.cc +7 -9
  1308. data/src/core/lib/security/authorization/evaluate_args.h +6 -7
  1309. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +2 -4
  1310. data/src/core/lib/security/authorization/grpc_authorization_engine.h +2 -3
  1311. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +19 -29
  1312. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +8 -9
  1313. data/src/core/lib/security/authorization/matchers.cc +2 -4
  1314. data/src/core/lib/security/authorization/matchers.h +5 -7
  1315. data/src/core/lib/security/authorization/rbac_policy.cc +3 -3
  1316. data/src/core/lib/security/authorization/rbac_policy.h +6 -8
  1317. data/src/core/lib/security/authorization/stdout_logger.cc +4 -5
  1318. data/src/core/lib/security/authorization/stdout_logger.h +4 -4
  1319. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +6 -7
  1320. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +2 -2
  1321. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +2 -3
  1322. data/src/core/lib/security/context/security_context.cc +6 -8
  1323. data/src/core/lib/security/context/security_context.h +16 -10
  1324. data/src/core/lib/security/credentials/alts/alts_credentials.cc +5 -5
  1325. data/src/core/lib/security/credentials/alts/alts_credentials.h +8 -4
  1326. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +2 -4
  1327. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +1 -2
  1328. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +1 -2
  1329. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +3 -5
  1330. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +1 -2
  1331. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +2 -2
  1332. data/src/core/lib/security/credentials/call_creds_util.cc +6 -6
  1333. data/src/core/lib/security/credentials/call_creds_util.h +2 -2
  1334. data/src/core/lib/security/credentials/channel_creds_registry.h +5 -6
  1335. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +10 -11
  1336. data/src/core/lib/security/credentials/composite/composite_credentials.cc +3 -5
  1337. data/src/core/lib/security/credentials/composite/composite_credentials.h +10 -9
  1338. data/src/core/lib/security/credentials/credentials.cc +1 -4
  1339. data/src/core/lib/security/credentials/credentials.h +12 -14
  1340. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +331 -336
  1341. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +58 -46
  1342. data/src/core/lib/security/credentials/external/aws_request_signer.cc +4 -5
  1343. data/src/core/lib/security/credentials/external/aws_request_signer.h +3 -3
  1344. data/src/core/lib/security/credentials/external/external_account_credentials.cc +399 -364
  1345. data/src/core/lib/security/credentials/external/external_account_credentials.h +125 -57
  1346. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +87 -50
  1347. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +32 -11
  1348. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +98 -125
  1349. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +21 -23
  1350. data/src/core/lib/security/credentials/fake/fake_credentials.cc +2 -4
  1351. data/src/core/lib/security/credentials/fake/fake_credentials.h +8 -7
  1352. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +195 -0
  1353. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.h +90 -0
  1354. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +4 -5
  1355. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +47 -64
  1356. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +7 -5
  1357. data/src/core/lib/security/credentials/iam/iam_credentials.cc +3 -6
  1358. data/src/core/lib/security/credentials/iam/iam_credentials.h +8 -7
  1359. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +2 -2
  1360. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +2 -2
  1361. data/src/core/lib/security/credentials/jwt/json_token.cc +11 -14
  1362. data/src/core/lib/security/credentials/jwt/json_token.h +1 -2
  1363. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +9 -12
  1364. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +11 -11
  1365. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +19 -23
  1366. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +2 -3
  1367. data/src/core/lib/security/credentials/local/local_credentials.cc +2 -2
  1368. data/src/core/lib/security/credentials/local/local_credentials.h +2 -2
  1369. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +178 -276
  1370. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +47 -70
  1371. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +15 -21
  1372. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +11 -11
  1373. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +6 -8
  1374. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +4 -7
  1375. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +15 -17
  1376. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +18 -19
  1377. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_match.cc +1 -3
  1378. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +99 -21
  1379. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +16 -15
  1380. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +4 -7
  1381. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +8 -10
  1382. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +4 -5
  1383. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +1 -1
  1384. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +3 -6
  1385. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.h +9 -12
  1386. data/src/core/lib/security/credentials/tls/tls_credentials.cc +8 -9
  1387. data/src/core/lib/security/credentials/tls/tls_credentials.h +5 -3
  1388. data/src/core/lib/security/credentials/tls/tls_utils.cc +1 -2
  1389. data/src/core/lib/security/credentials/tls/tls_utils.h +3 -3
  1390. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.cc +304 -0
  1391. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.h +181 -0
  1392. data/src/core/lib/security/credentials/xds/xds_credentials.cc +3 -4
  1393. data/src/core/lib/security/credentials/xds/xds_credentials.h +7 -9
  1394. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +10 -12
  1395. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +1 -1
  1396. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +12 -15
  1397. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +1 -1
  1398. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +4 -7
  1399. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +5 -6
  1400. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +5 -7
  1401. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +3 -5
  1402. data/src/core/lib/security/security_connector/local/local_security_connector.cc +18 -14
  1403. data/src/core/lib/security/security_connector/local/local_security_connector.h +1 -1
  1404. data/src/core/lib/security/security_connector/security_connector.cc +2 -4
  1405. data/src/core/lib/security/security_connector/security_connector.h +7 -8
  1406. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +6 -8
  1407. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +2 -3
  1408. data/src/core/lib/security/security_connector/ssl_utils.cc +12 -14
  1409. data/src/core/lib/security/security_connector/ssl_utils.h +7 -9
  1410. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +17 -19
  1411. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +20 -21
  1412. data/src/core/lib/security/transport/auth_filters.h +97 -10
  1413. data/src/core/lib/security/transport/client_auth_filter.cc +104 -16
  1414. data/src/core/lib/security/transport/server_auth_filter.cc +14 -25
  1415. data/src/core/lib/security/util/json_util.cc +4 -5
  1416. data/src/core/lib/slice/percent_encoding.cc +2 -5
  1417. data/src/core/lib/slice/slice.cc +4 -7
  1418. data/src/core/lib/slice/slice.h +5 -8
  1419. data/src/core/lib/slice/slice_buffer.cc +7 -9
  1420. data/src/core/lib/slice/slice_buffer.h +5 -6
  1421. data/src/core/lib/slice/slice_internal.h +3 -6
  1422. data/src/core/lib/slice/slice_refcount.h +8 -11
  1423. data/src/core/lib/slice/slice_string_helpers.h +1 -2
  1424. data/src/core/lib/surface/byte_buffer.cc +1 -2
  1425. data/src/core/lib/surface/byte_buffer_reader.cc +3 -6
  1426. data/src/core/lib/surface/call.cc +25 -33
  1427. data/src/core/lib/surface/call.h +10 -11
  1428. data/src/core/lib/surface/call_log_batch.cc +3 -5
  1429. data/src/core/lib/surface/call_test_only.h +1 -2
  1430. data/src/core/lib/surface/call_utils.cc +18 -61
  1431. data/src/core/lib/surface/call_utils.h +67 -24
  1432. data/src/core/lib/surface/channel.cc +7 -17
  1433. data/src/core/lib/surface/channel.h +14 -15
  1434. data/src/core/lib/surface/channel_create.cc +2 -4
  1435. data/src/core/lib/surface/channel_create.h +2 -3
  1436. data/src/core/lib/surface/channel_init.cc +5 -7
  1437. data/src/core/lib/surface/channel_init.h +4 -7
  1438. data/src/core/lib/surface/client_call.cc +122 -96
  1439. data/src/core/lib/surface/client_call.h +34 -22
  1440. data/src/core/lib/surface/completion_queue.cc +32 -49
  1441. data/src/core/lib/surface/completion_queue.h +4 -5
  1442. data/src/core/lib/surface/completion_queue_factory.cc +1 -3
  1443. data/src/core/lib/surface/connection_context.cc +77 -0
  1444. data/src/core/lib/surface/connection_context.h +156 -0
  1445. data/src/core/lib/surface/event_string.cc +9 -3
  1446. data/src/core/lib/surface/event_string.h +2 -2
  1447. data/src/core/lib/surface/filter_stack_call.cc +29 -33
  1448. data/src/core/lib/surface/filter_stack_call.h +17 -20
  1449. data/src/core/lib/surface/init.cc +44 -18
  1450. data/src/core/lib/surface/init.h +5 -0
  1451. data/src/core/lib/surface/init_internally.h +13 -2
  1452. data/src/core/lib/surface/lame_client.cc +10 -12
  1453. data/src/core/lib/surface/lame_client.h +4 -5
  1454. data/src/core/lib/surface/legacy_channel.cc +20 -19
  1455. data/src/core/lib/surface/legacy_channel.h +7 -8
  1456. data/src/core/lib/surface/metadata_array.cc +1 -2
  1457. data/src/core/lib/surface/server_call.cc +128 -93
  1458. data/src/core/lib/surface/server_call.h +21 -21
  1459. data/src/core/lib/surface/validate_metadata.cc +3 -4
  1460. data/src/core/lib/surface/validate_metadata.h +2 -5
  1461. data/src/core/lib/surface/version.cc +2 -2
  1462. data/src/core/lib/transport/bdp_estimator.cc +11 -15
  1463. data/src/core/lib/transport/bdp_estimator.h +9 -13
  1464. data/src/core/lib/transport/call_arena_allocator.cc +4 -18
  1465. data/src/core/lib/transport/call_arena_allocator.h +22 -8
  1466. data/src/core/lib/transport/call_destination.h +1 -1
  1467. data/src/core/lib/transport/call_filters.cc +21 -130
  1468. data/src/core/lib/transport/call_filters.h +510 -94
  1469. data/src/core/lib/transport/call_final_info.cc +2 -2
  1470. data/src/core/lib/transport/call_final_info.h +3 -3
  1471. data/src/core/lib/transport/call_spine.cc +13 -55
  1472. data/src/core/lib/transport/call_spine.h +220 -25
  1473. data/src/core/lib/transport/call_state.h +283 -86
  1474. data/src/core/lib/transport/connectivity_state.cc +43 -53
  1475. data/src/core/lib/transport/connectivity_state.h +7 -10
  1476. data/src/core/lib/transport/error_utils.cc +3 -4
  1477. data/src/core/lib/transport/error_utils.h +4 -5
  1478. data/src/core/lib/transport/http2_errors.h +5 -3
  1479. data/src/core/lib/transport/interception_chain.cc +11 -3
  1480. data/src/core/lib/transport/interception_chain.h +53 -15
  1481. data/src/core/lib/transport/message.cc +2 -2
  1482. data/src/core/lib/transport/message.h +5 -0
  1483. data/src/core/lib/transport/metadata.h +88 -0
  1484. data/src/core/lib/transport/metadata_batch.cc +14 -7
  1485. data/src/core/lib/transport/metadata_batch.h +137 -30
  1486. data/src/core/lib/transport/metadata_compression_traits.h +3 -4
  1487. data/src/core/lib/transport/parsed_metadata.h +3 -5
  1488. data/src/core/lib/transport/simple_slice_based_metadata.h +1 -2
  1489. data/src/core/lib/transport/status_conversion.h +1 -1
  1490. data/src/core/lib/transport/timeout_encoding.cc +22 -23
  1491. data/src/core/lib/transport/timeout_encoding.h +4 -5
  1492. data/src/core/lib/transport/transport.cc +4 -7
  1493. data/src/core/lib/transport/transport.h +25 -24
  1494. data/src/core/lib/transport/transport_framing_endpoint_extension.h +47 -0
  1495. data/src/core/lib/transport/transport_op_string.cc +4 -6
  1496. data/src/core/load_balancing/address_filtering.cc +2 -4
  1497. data/src/core/load_balancing/address_filtering.h +4 -5
  1498. data/src/core/load_balancing/backend_metric_data.h +2 -2
  1499. data/src/core/load_balancing/backend_metric_parser.cc +22 -30
  1500. data/src/core/load_balancing/backend_metric_parser.h +1 -3
  1501. data/src/core/load_balancing/child_policy_handler.cc +5 -6
  1502. data/src/core/load_balancing/child_policy_handler.h +4 -5
  1503. data/src/core/load_balancing/delegating_helper.h +6 -7
  1504. data/src/core/load_balancing/endpoint_list.cc +18 -10
  1505. data/src/core/load_balancing/endpoint_list.h +26 -21
  1506. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +11 -10
  1507. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +5 -6
  1508. data/src/core/load_balancing/grpclb/grpclb.cc +96 -131
  1509. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +1 -2
  1510. data/src/core/load_balancing/grpclb/grpclb_client_stats.cc +2 -3
  1511. data/src/core/load_balancing/grpclb/grpclb_client_stats.h +5 -7
  1512. data/src/core/load_balancing/grpclb/load_balancer_api.cc +4 -6
  1513. data/src/core/load_balancing/grpclb/load_balancer_api.h +4 -6
  1514. data/src/core/load_balancing/health_check_client.cc +67 -110
  1515. data/src/core/load_balancing/health_check_client.h +3 -3
  1516. data/src/core/load_balancing/health_check_client_internal.h +15 -16
  1517. data/src/core/load_balancing/lb_policy.cc +4 -6
  1518. data/src/core/load_balancing/lb_policy.h +17 -27
  1519. data/src/core/load_balancing/lb_policy_factory.h +4 -5
  1520. data/src/core/load_balancing/lb_policy_registry.cc +13 -12
  1521. data/src/core/load_balancing/lb_policy_registry.h +4 -5
  1522. data/src/core/load_balancing/oob_backend_metric.cc +16 -20
  1523. data/src/core/load_balancing/oob_backend_metric.h +3 -3
  1524. data/src/core/load_balancing/oob_backend_metric_internal.h +8 -9
  1525. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +176 -212
  1526. data/src/core/load_balancing/outlier_detection/outlier_detection.h +6 -7
  1527. data/src/core/load_balancing/pick_first/pick_first.cc +297 -321
  1528. data/src/core/load_balancing/priority/priority.cc +97 -133
  1529. data/src/core/load_balancing/ring_hash/ring_hash.cc +247 -211
  1530. data/src/core/load_balancing/ring_hash/ring_hash.h +7 -15
  1531. data/src/core/load_balancing/rls/rls.cc +268 -404
  1532. data/src/core/load_balancing/rls/rls.h +97 -1
  1533. data/src/core/load_balancing/round_robin/round_robin.cc +59 -89
  1534. data/src/core/load_balancing/subchannel_interface.h +13 -6
  1535. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +8 -9
  1536. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h +4 -5
  1537. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +120 -158
  1538. data/src/core/load_balancing/weighted_target/weighted_target.cc +70 -103
  1539. data/src/core/load_balancing/xds/cds.cc +60 -78
  1540. data/src/core/load_balancing/xds/xds_cluster_impl.cc +114 -117
  1541. data/src/core/load_balancing/xds/xds_cluster_manager.cc +56 -80
  1542. data/src/core/load_balancing/xds/xds_override_host.cc +152 -237
  1543. data/src/core/load_balancing/xds/xds_override_host.h +3 -4
  1544. data/src/core/load_balancing/xds/xds_wrr_locality.cc +36 -47
  1545. data/src/core/plugin_registry/grpc_plugin_registry.cc +1 -7
  1546. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +6 -1
  1547. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +86 -71
  1548. data/src/core/resolver/dns/c_ares/dns_resolver_ares.h +2 -3
  1549. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h +4 -6
  1550. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +2 -6
  1551. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +118 -100
  1552. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +147 -115
  1553. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +3 -13
  1554. data/src/core/resolver/dns/dns_resolver_plugin.cc +4 -6
  1555. data/src/core/resolver/dns/dns_resolver_plugin.h +1 -1
  1556. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +59 -65
  1557. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h +3 -4
  1558. data/src/core/resolver/dns/event_engine/service_config_helper.cc +3 -5
  1559. data/src/core/resolver/dns/event_engine/service_config_helper.h +2 -2
  1560. data/src/core/resolver/dns/native/dns_resolver.cc +19 -26
  1561. data/src/core/resolver/dns/native/dns_resolver.h +1 -1
  1562. data/src/core/resolver/endpoint_addresses.cc +1 -4
  1563. data/src/core/resolver/endpoint_addresses.h +2 -3
  1564. data/src/core/resolver/fake/fake_resolver.cc +17 -20
  1565. data/src/core/resolver/fake/fake_resolver.h +9 -10
  1566. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +20 -24
  1567. data/src/core/resolver/polling_resolver.cc +14 -28
  1568. data/src/core/resolver/polling_resolver.h +11 -12
  1569. data/src/core/resolver/resolver.h +4 -5
  1570. data/src/core/resolver/resolver_factory.h +4 -5
  1571. data/src/core/resolver/resolver_registry.cc +6 -5
  1572. data/src/core/resolver/resolver_registry.h +4 -5
  1573. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +5 -6
  1574. data/src/core/resolver/xds/xds_config.cc +95 -0
  1575. data/src/core/resolver/xds/xds_config.h +108 -0
  1576. data/src/core/resolver/xds/xds_dependency_manager.cc +242 -333
  1577. data/src/core/resolver/xds/xds_dependency_manager.h +30 -89
  1578. data/src/core/resolver/xds/xds_resolver.cc +139 -186
  1579. data/src/core/resolver/xds/xds_resolver_attributes.h +2 -3
  1580. data/src/core/server/server.cc +372 -91
  1581. data/src/core/server/server.h +227 -81
  1582. data/src/core/server/server_call_tracer_filter.cc +14 -11
  1583. data/src/core/server/server_call_tracer_filter.h +1 -1
  1584. data/src/core/server/server_config_selector.h +5 -6
  1585. data/src/core/server/server_config_selector_filter.cc +16 -22
  1586. data/src/core/server/xds_channel_stack_modifier.cc +3 -3
  1587. data/src/core/server/xds_channel_stack_modifier.h +5 -6
  1588. data/src/core/server/xds_server_config_fetcher.cc +118 -187
  1589. data/src/core/service_config/service_config.h +3 -5
  1590. data/src/core/service_config/service_config_call_data.h +7 -9
  1591. data/src/core/service_config/service_config_channel_arg_filter.cc +15 -26
  1592. data/src/core/service_config/service_config_impl.cc +7 -9
  1593. data/src/core/service_config/service_config_impl.h +4 -7
  1594. data/src/core/service_config/service_config_parser.cc +1 -2
  1595. data/src/core/service_config/service_config_parser.h +2 -4
  1596. data/src/core/telemetry/call_tracer.cc +10 -12
  1597. data/src/core/telemetry/call_tracer.h +11 -11
  1598. data/src/core/telemetry/histogram_view.cc +3 -3
  1599. data/src/core/telemetry/histogram_view.h +1 -2
  1600. data/src/core/telemetry/metrics.cc +21 -19
  1601. data/src/core/telemetry/metrics.h +15 -19
  1602. data/src/core/telemetry/stats.cc +1 -2
  1603. data/src/core/telemetry/stats.h +2 -4
  1604. data/src/core/telemetry/stats_data.cc +181 -2
  1605. data/src/core/telemetry/stats_data.h +130 -4
  1606. data/src/core/telemetry/tcp_tracer.h +33 -34
  1607. data/src/core/tsi/alts/crypt/aes_gcm.cc +5 -8
  1608. data/src/core/tsi/alts/crypt/gsec.cc +2 -3
  1609. data/src/core/tsi/alts/crypt/gsec.h +3 -4
  1610. data/src/core/tsi/alts/frame_protector/alts_counter.cc +1 -2
  1611. data/src/core/tsi/alts/frame_protector/alts_counter.h +3 -4
  1612. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +1 -2
  1613. data/src/core/tsi/alts/frame_protector/alts_crypter.h +2 -3
  1614. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +4 -5
  1615. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +1 -2
  1616. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +1 -1
  1617. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +1 -1
  1618. data/src/core/tsi/alts/frame_protector/frame_handler.cc +4 -6
  1619. data/src/core/tsi/alts/frame_protector/frame_handler.h +1 -2
  1620. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +14 -15
  1621. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +2 -4
  1622. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +1 -1
  1623. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +33 -31
  1624. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -3
  1625. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -2
  1626. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +3 -4
  1627. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +3 -5
  1628. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +1 -2
  1629. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +2 -3
  1630. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +1 -2
  1631. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +3 -5
  1632. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +3 -5
  1633. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +1 -2
  1634. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +3 -5
  1635. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +1 -2
  1636. data/src/core/tsi/fake_transport_security.cc +14 -11
  1637. data/src/core/tsi/local_transport_security.cc +4 -6
  1638. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +4 -5
  1639. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +8 -10
  1640. data/src/core/tsi/ssl/session_cache/ssl_session.h +4 -5
  1641. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +4 -6
  1642. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +7 -8
  1643. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +2 -4
  1644. data/src/core/tsi/ssl_transport_security.cc +29 -17
  1645. data/src/core/tsi/ssl_transport_security.h +6 -8
  1646. data/src/core/tsi/ssl_transport_security_utils.cc +1 -3
  1647. data/src/core/tsi/ssl_transport_security_utils.h +3 -5
  1648. data/src/core/tsi/ssl_types.h +1 -2
  1649. data/src/core/tsi/transport_security.cc +2 -3
  1650. data/src/core/tsi/transport_security.h +1 -2
  1651. data/src/core/tsi/transport_security_interface.h +3 -4
  1652. data/src/core/util/alloc.cc +2 -6
  1653. data/src/core/util/atomic_utils.h +47 -0
  1654. data/src/core/util/avl.h +324 -0
  1655. data/src/core/util/backoff.cc +57 -0
  1656. data/src/core/util/backoff.h +86 -0
  1657. data/src/core/util/bitset.h +224 -0
  1658. data/src/core/util/chunked_vector.h +256 -0
  1659. data/src/core/util/construct_destruct.h +41 -0
  1660. data/src/core/util/cpp_impl_of.h +49 -0
  1661. data/src/core/util/crash.cc +40 -0
  1662. data/src/core/util/crash.h +36 -0
  1663. data/src/core/util/debug_location.h +106 -0
  1664. data/src/core/util/directory_reader.h +48 -0
  1665. data/src/core/util/down_cast.h +48 -0
  1666. data/src/core/util/dual_ref_counted.h +376 -0
  1667. data/src/core/util/dump_args.cc +54 -0
  1668. data/src/core/util/dump_args.h +114 -0
  1669. data/src/core/util/env.h +52 -0
  1670. data/src/core/util/event_log.cc +87 -0
  1671. data/src/core/util/event_log.h +79 -0
  1672. data/src/core/util/examine_stack.cc +43 -0
  1673. data/src/core/util/examine_stack.h +44 -0
  1674. data/src/core/util/fork.cc +241 -0
  1675. data/src/core/util/fork.h +98 -0
  1676. data/src/core/util/gcp_metadata_query.cc +8 -12
  1677. data/src/core/util/gcp_metadata_query.h +2 -3
  1678. data/src/core/util/gethostname.h +26 -0
  1679. data/src/core/util/gethostname_fallback.cc +30 -0
  1680. data/src/core/util/gethostname_host_name_max.cc +39 -0
  1681. data/src/core/util/gethostname_sysconf.cc +39 -0
  1682. data/src/core/util/glob.h +29 -0
  1683. data/src/core/util/gpr_time.cc +266 -0
  1684. data/src/core/util/grpc_if_nametoindex.h +29 -0
  1685. data/src/core/util/grpc_if_nametoindex_posix.cc +41 -0
  1686. data/src/core/util/grpc_if_nametoindex_unsupported.cc +36 -0
  1687. data/src/core/util/host_port.cc +114 -0
  1688. data/src/core/util/host_port.h +57 -0
  1689. data/src/core/util/http_client/format_request.cc +2 -5
  1690. data/src/core/util/http_client/format_request.h +1 -2
  1691. data/src/core/util/http_client/httpcli.cc +95 -47
  1692. data/src/core/util/http_client/httpcli.h +40 -28
  1693. data/src/core/util/http_client/httpcli_security_connector.cc +11 -14
  1694. data/src/core/util/http_client/httpcli_ssl_credentials.h +2 -3
  1695. data/src/core/util/http_client/parser.cc +5 -8
  1696. data/src/core/util/http_client/parser.h +1 -3
  1697. data/src/core/util/if_list.h +4530 -0
  1698. data/src/core/util/iphone/cpu.cc +1 -2
  1699. data/src/core/util/json/json.h +1 -2
  1700. data/src/core/util/json/json_channel_args.h +2 -2
  1701. data/src/core/util/json/json_object_loader.cc +7 -8
  1702. data/src/core/util/json/json_object_loader.h +20 -21
  1703. data/src/core/util/json/json_reader.cc +6 -10
  1704. data/src/core/util/json/json_reader.h +0 -1
  1705. data/src/core/util/json/json_util.cc +4 -4
  1706. data/src/core/util/json/json_util.h +1 -2
  1707. data/src/core/util/json/json_writer.cc +4 -6
  1708. data/src/core/util/latent_see.cc +112 -62
  1709. data/src/core/util/latent_see.h +157 -37
  1710. data/src/core/util/linux/cpu.cc +4 -6
  1711. data/src/core/util/linux/env.cc +61 -0
  1712. data/src/core/util/load_file.cc +75 -0
  1713. data/src/core/util/load_file.h +33 -0
  1714. data/src/core/util/log.cc +46 -68
  1715. data/src/core/util/lru_cache.h +122 -0
  1716. data/src/core/util/manual_constructor.h +145 -0
  1717. data/src/core/util/match.h +74 -0
  1718. data/src/core/util/matchers.cc +336 -0
  1719. data/src/core/util/matchers.h +162 -0
  1720. data/src/core/util/memory.h +52 -0
  1721. data/src/core/util/mpscq.cc +108 -0
  1722. data/src/core/util/mpscq.h +98 -0
  1723. data/src/core/util/msys/tmpfile.cc +3 -5
  1724. data/src/core/util/no_destruct.h +95 -0
  1725. data/src/core/util/notification.h +66 -0
  1726. data/src/core/util/orphanable.h +153 -0
  1727. data/src/core/util/overload.h +59 -0
  1728. data/src/core/util/packed_table.h +40 -0
  1729. data/src/core/util/per_cpu.cc +34 -0
  1730. data/src/core/util/per_cpu.h +102 -0
  1731. data/src/core/util/posix/cpu.cc +3 -5
  1732. data/src/core/util/posix/directory_reader.cc +82 -0
  1733. data/src/core/util/posix/env.cc +47 -0
  1734. data/src/core/util/posix/stat.cc +54 -0
  1735. data/src/core/util/posix/string.cc +2 -3
  1736. data/src/core/util/posix/sync.cc +2 -6
  1737. data/src/core/util/posix/thd.cc +243 -0
  1738. data/src/core/util/posix/time.cc +3 -6
  1739. data/src/core/util/posix/tmpfile.cc +4 -6
  1740. data/src/core/util/random_early_detection.cc +33 -0
  1741. data/src/core/util/random_early_detection.h +61 -0
  1742. data/src/core/util/ref_counted.h +403 -0
  1743. data/src/core/util/ref_counted_ptr.h +443 -0
  1744. data/src/core/util/ref_counted_string.cc +42 -0
  1745. data/src/core/util/ref_counted_string.h +159 -0
  1746. data/src/core/util/ring_buffer.h +122 -0
  1747. data/src/core/util/single_set_ptr.h +89 -0
  1748. data/src/core/util/sorted_pack.h +89 -0
  1749. data/src/core/util/spinlock.h +2 -4
  1750. data/src/core/util/stat.h +35 -0
  1751. data/src/core/util/status_helper.cc +427 -0
  1752. data/src/core/util/status_helper.h +160 -0
  1753. data/src/core/util/strerror.cc +40 -0
  1754. data/src/core/util/strerror.h +29 -0
  1755. data/src/core/util/string.cc +13 -16
  1756. data/src/core/util/string.h +1 -3
  1757. data/src/core/util/sync.cc +3 -6
  1758. data/src/core/util/sync.h +199 -0
  1759. data/src/core/util/sync_abseil.cc +4 -8
  1760. data/src/core/util/table.h +471 -0
  1761. data/src/core/util/tchar.cc +49 -0
  1762. data/src/core/util/tchar.h +33 -0
  1763. data/src/core/util/thd.h +193 -0
  1764. data/src/core/util/time.cc +174 -205
  1765. data/src/core/util/time.h +385 -0
  1766. data/src/core/util/time_averaged_stats.cc +60 -0
  1767. data/src/core/util/time_averaged_stats.h +79 -0
  1768. data/src/core/util/time_precise.cc +2 -4
  1769. data/src/core/util/time_precise.h +0 -1
  1770. data/src/core/util/time_util.cc +80 -0
  1771. data/src/core/util/time_util.h +41 -0
  1772. data/src/core/util/tmpfile.h +0 -1
  1773. data/src/core/util/type_list.h +88 -0
  1774. data/src/core/util/unique_ptr_with_bitset.h +86 -0
  1775. data/src/core/util/unique_type_name.h +123 -0
  1776. data/src/core/util/uri.cc +378 -0
  1777. data/src/core/util/uri.h +112 -0
  1778. data/src/core/util/useful.h +13 -39
  1779. data/src/core/util/uuid_v4.cc +37 -0
  1780. data/src/core/util/uuid_v4.h +35 -0
  1781. data/src/core/util/validation_errors.cc +73 -0
  1782. data/src/core/util/validation_errors.h +144 -0
  1783. data/src/core/util/wait_for_single_owner.h +62 -0
  1784. data/src/core/util/windows/cpu.cc +1 -2
  1785. data/src/core/util/windows/directory_reader.cc +79 -0
  1786. data/src/core/util/windows/env.cc +56 -0
  1787. data/src/core/util/windows/stat.cc +50 -0
  1788. data/src/core/util/windows/string.cc +2 -3
  1789. data/src/core/util/windows/string_util.cc +5 -7
  1790. data/src/core/util/windows/sync.cc +1 -4
  1791. data/src/core/util/windows/thd.cc +182 -0
  1792. data/src/core/util/windows/time.cc +1 -5
  1793. data/src/core/util/windows/tmpfile.cc +4 -6
  1794. data/src/core/util/work_serializer.cc +298 -0
  1795. data/src/core/util/work_serializer.h +81 -0
  1796. data/src/core/util/xxhash_inline.h +29 -0
  1797. data/src/core/xds/grpc/certificate_provider_store.cc +15 -21
  1798. data/src/core/xds/grpc/certificate_provider_store.h +9 -10
  1799. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +5 -6
  1800. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +6 -7
  1801. data/src/core/xds/grpc/xds_audit_logger_registry.cc +5 -6
  1802. data/src/core/xds/grpc/xds_audit_logger_registry.h +3 -4
  1803. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +13 -49
  1804. data/src/core/xds/grpc/xds_bootstrap_grpc.h +6 -11
  1805. data/src/core/xds/grpc/xds_certificate_provider.cc +17 -19
  1806. data/src/core/xds/grpc/xds_certificate_provider.h +8 -9
  1807. data/src/core/xds/grpc/xds_client_grpc.cc +80 -62
  1808. data/src/core/xds/grpc/xds_client_grpc.h +14 -8
  1809. data/src/core/xds/grpc/xds_cluster.cc +11 -12
  1810. data/src/core/xds/grpc/xds_cluster.h +38 -12
  1811. data/src/core/xds/grpc/xds_cluster_parser.cc +188 -146
  1812. data/src/core/xds/grpc/xds_cluster_parser.h +6 -2
  1813. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +9 -12
  1814. data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +5 -6
  1815. data/src/core/xds/grpc/xds_common_types.cc +3 -4
  1816. data/src/core/xds/grpc/xds_common_types.h +6 -7
  1817. data/src/core/xds/grpc/xds_common_types_parser.cc +72 -38
  1818. data/src/core/xds/grpc/xds_common_types_parser.h +28 -5
  1819. data/src/core/xds/grpc/xds_endpoint.cc +3 -4
  1820. data/src/core/xds/grpc/xds_endpoint.h +7 -5
  1821. data/src/core/xds/grpc/xds_endpoint_parser.cc +106 -70
  1822. data/src/core/xds/grpc/xds_endpoint_parser.h +1 -2
  1823. data/src/core/xds/grpc/xds_health_status.cc +4 -4
  1824. data/src/core/xds/grpc/xds_health_status.h +4 -4
  1825. data/src/core/xds/grpc/xds_http_fault_filter.cc +38 -33
  1826. data/src/core/xds/grpc/xds_http_fault_filter.h +13 -9
  1827. data/src/core/xds/grpc/xds_http_filter.h +16 -7
  1828. data/src/core/xds/grpc/xds_http_filter_registry.cc +16 -11
  1829. data/src/core/xds/grpc/xds_http_filter_registry.h +13 -7
  1830. data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +141 -0
  1831. data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +61 -0
  1832. data/src/core/xds/grpc/xds_http_rbac_filter.cc +85 -67
  1833. data/src/core/xds/grpc/xds_http_rbac_filter.h +13 -9
  1834. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +24 -17
  1835. data/src/core/xds/grpc/xds_http_stateful_session_filter.h +13 -9
  1836. data/src/core/xds/grpc/xds_lb_policy_registry.cc +23 -27
  1837. data/src/core/xds/grpc/xds_lb_policy_registry.h +4 -5
  1838. data/src/core/xds/grpc/xds_listener.cc +5 -8
  1839. data/src/core/xds/grpc/xds_listener.h +11 -12
  1840. data/src/core/xds/grpc/xds_listener_parser.cc +72 -69
  1841. data/src/core/xds/grpc/xds_listener_parser.h +3 -3
  1842. data/src/core/xds/grpc/xds_metadata.cc +62 -0
  1843. data/src/core/xds/grpc/xds_metadata.h +158 -0
  1844. data/src/core/xds/grpc/xds_metadata_parser.cc +197 -0
  1845. data/src/core/xds/grpc/xds_metadata_parser.h +35 -0
  1846. data/src/core/xds/grpc/xds_route_config.cc +12 -18
  1847. data/src/core/xds/grpc/xds_route_config.h +11 -12
  1848. data/src/core/xds/grpc/xds_route_config_parser.cc +135 -144
  1849. data/src/core/xds/grpc/xds_route_config_parser.h +7 -10
  1850. data/src/core/xds/grpc/xds_routing.cc +65 -32
  1851. data/src/core/xds/grpc/xds_routing.h +16 -10
  1852. data/src/core/xds/grpc/xds_server_grpc.cc +23 -3
  1853. data/src/core/xds/grpc/xds_server_grpc.h +7 -4
  1854. data/src/core/xds/grpc/xds_server_grpc_interface.h +33 -0
  1855. data/src/core/xds/grpc/xds_transport_grpc.cc +99 -56
  1856. data/src/core/xds/grpc/xds_transport_grpc.h +33 -22
  1857. data/src/core/xds/xds_client/lrs_client.cc +1280 -0
  1858. data/src/core/xds/xds_client/lrs_client.h +394 -0
  1859. data/src/core/xds/xds_client/xds_api.cc +28 -465
  1860. data/src/core/xds/xds_client/xds_api.h +6 -161
  1861. data/src/core/xds/xds_client/xds_backend_metric_propagation.cc +63 -0
  1862. data/src/core/xds/xds_client/xds_backend_metric_propagation.h +59 -0
  1863. data/src/core/xds/xds_client/xds_bootstrap.cc +12 -3
  1864. data/src/core/xds/xds_client/xds_bootstrap.h +9 -2
  1865. data/src/core/xds/xds_client/xds_client.cc +1109 -1362
  1866. data/src/core/xds/xds_client/xds_client.h +167 -114
  1867. data/src/core/xds/xds_client/xds_locality.h +102 -0
  1868. data/src/core/xds/xds_client/xds_metrics.h +2 -2
  1869. data/src/core/xds/xds_client/xds_resource_type.h +6 -8
  1870. data/src/core/xds/xds_client/xds_resource_type_impl.h +15 -11
  1871. data/src/core/xds/xds_client/xds_transport.h +29 -14
  1872. data/src/ruby/ext/grpc/extconf.rb +2 -1
  1873. data/src/ruby/ext/grpc/rb_byte_buffer.c +3 -3
  1874. data/src/ruby/ext/grpc/rb_call.c +6 -6
  1875. data/src/ruby/ext/grpc/rb_call_credentials.c +39 -33
  1876. data/src/ruby/ext/grpc/rb_channel.c +28 -23
  1877. data/src/ruby/ext/grpc/rb_channel_args.c +3 -3
  1878. data/src/ruby/ext/grpc/rb_channel_credentials.c +5 -6
  1879. data/src/ruby/ext/grpc/rb_channel_credentials.h +1 -2
  1880. data/src/ruby/ext/grpc/rb_completion_queue.c +3 -4
  1881. data/src/ruby/ext/grpc/rb_compression_options.c +6 -7
  1882. data/src/ruby/ext/grpc/rb_event_thread.c +7 -7
  1883. data/src/ruby/ext/grpc/rb_grpc.c +12 -12
  1884. data/src/ruby/ext/grpc/rb_grpc.h +2 -3
  1885. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +6 -10
  1886. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +9 -15
  1887. data/src/ruby/ext/grpc/rb_server.c +16 -14
  1888. data/src/ruby/ext/grpc/rb_server_credentials.c +3 -3
  1889. data/src/ruby/ext/grpc/rb_server_credentials.h +1 -2
  1890. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +5 -6
  1891. data/src/ruby/ext/grpc/rb_xds_channel_credentials.h +1 -2
  1892. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +4 -4
  1893. data/src/ruby/ext/grpc/rb_xds_server_credentials.h +1 -2
  1894. data/src/ruby/lib/grpc/generic/active_call.rb +8 -5
  1895. data/src/ruby/lib/grpc/version.rb +1 -1
  1896. data/src/ruby/spec/call_spec.rb +53 -40
  1897. data/src/ruby/spec/channel_spec.rb +4 -2
  1898. data/src/ruby/spec/client_server_spec.rb +148 -507
  1899. data/src/ruby/spec/generic/active_call_spec.rb +64 -86
  1900. data/src/ruby/spec/generic/client_stub_spec.rb +20 -20
  1901. data/src/ruby/spec/support/services.rb +3 -0
  1902. data/third_party/abseil-cpp/absl/algorithm/container.h +57 -18
  1903. data/third_party/abseil-cpp/absl/base/attributes.h +84 -0
  1904. data/third_party/abseil-cpp/absl/base/config.h +32 -51
  1905. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +0 -16
  1906. data/third_party/abseil-cpp/absl/base/internal/nullability_impl.h +3 -1
  1907. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +13 -3
  1908. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +0 -12
  1909. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +4 -4
  1910. data/third_party/abseil-cpp/absl/base/macros.h +48 -0
  1911. data/third_party/abseil-cpp/absl/base/no_destructor.h +35 -40
  1912. data/third_party/abseil-cpp/absl/base/nullability.h +33 -7
  1913. data/third_party/abseil-cpp/absl/base/optimization.h +11 -0
  1914. data/third_party/abseil-cpp/absl/base/options.h +1 -1
  1915. data/third_party/abseil-cpp/absl/base/prefetch.h +1 -1
  1916. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +68 -12
  1917. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +60 -6
  1918. data/third_party/abseil-cpp/absl/container/hash_container_defaults.h +45 -0
  1919. data/third_party/abseil-cpp/absl/container/inlined_vector.h +13 -0
  1920. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +20 -11
  1921. data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +15 -16
  1922. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +34 -1
  1923. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +68 -1
  1924. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +50 -0
  1925. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +22 -7
  1926. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +26 -8
  1927. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +39 -35
  1928. data/third_party/abseil-cpp/absl/container/internal/layout.h +190 -74
  1929. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +8 -6
  1930. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +334 -71
  1931. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1299 -458
  1932. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +19 -17
  1933. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +4 -3
  1934. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +2 -1
  1935. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_arm_combined.cc +12 -8
  1936. data/third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +1 -1
  1937. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +11 -7
  1938. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +18 -17
  1939. data/third_party/abseil-cpp/absl/debugging/internal/bounded_utf8_length_sequence.h +126 -0
  1940. data/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.cc +258 -0
  1941. data/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.h +55 -0
  1942. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +1057 -86
  1943. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +3 -0
  1944. data/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.cc +925 -0
  1945. data/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.h +42 -0
  1946. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +43 -16
  1947. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +8 -7
  1948. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +10 -7
  1949. data/third_party/abseil-cpp/absl/debugging/internal/utf8_for_code_point.cc +70 -0
  1950. data/third_party/abseil-cpp/absl/debugging/internal/utf8_for_code_point.h +47 -0
  1951. data/third_party/abseil-cpp/absl/flags/commandlineflag.h +11 -0
  1952. data/third_party/abseil-cpp/absl/flags/flag.h +2 -0
  1953. data/third_party/abseil-cpp/absl/flags/internal/flag.cc +117 -30
  1954. data/third_party/abseil-cpp/absl/flags/internal/flag.h +192 -30
  1955. data/third_party/abseil-cpp/absl/flags/reflection.cc +10 -0
  1956. data/third_party/abseil-cpp/absl/functional/any_invocable.h +13 -3
  1957. data/third_party/abseil-cpp/absl/functional/bind_front.h +3 -2
  1958. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +7 -7
  1959. data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +9 -9
  1960. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +1 -1
  1961. data/third_party/abseil-cpp/absl/hash/internal/hash.h +13 -3
  1962. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +60 -28
  1963. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.h +4 -0
  1964. data/third_party/abseil-cpp/absl/log/absl_vlog_is_on.h +3 -3
  1965. data/third_party/abseil-cpp/absl/log/globals.h +28 -15
  1966. data/third_party/abseil-cpp/absl/log/internal/check_op.cc +20 -0
  1967. data/third_party/abseil-cpp/absl/log/internal/check_op.h +63 -21
  1968. data/third_party/abseil-cpp/absl/log/internal/conditions.h +2 -2
  1969. data/third_party/abseil-cpp/absl/log/internal/log_impl.h +23 -23
  1970. data/third_party/abseil-cpp/absl/log/internal/log_message.cc +104 -47
  1971. data/third_party/abseil-cpp/absl/log/internal/log_message.h +23 -4
  1972. data/third_party/abseil-cpp/absl/log/internal/nullstream.h +1 -10
  1973. data/third_party/abseil-cpp/absl/log/internal/strip.h +36 -0
  1974. data/third_party/abseil-cpp/absl/log/log.h +5 -1
  1975. data/third_party/abseil-cpp/absl/log/log_sink.h +11 -4
  1976. data/third_party/abseil-cpp/absl/log/vlog_is_on.h +3 -3
  1977. data/third_party/abseil-cpp/absl/meta/type_traits.h +138 -42
  1978. data/third_party/abseil-cpp/absl/numeric/int128.cc +0 -3
  1979. data/third_party/abseil-cpp/absl/numeric/int128.h +35 -5
  1980. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +14 -0
  1981. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +18 -0
  1982. data/third_party/abseil-cpp/absl/numeric/internal/bits.h +6 -2
  1983. data/third_party/abseil-cpp/absl/random/beta_distribution.h +8 -8
  1984. data/third_party/abseil-cpp/absl/random/bit_gen_ref.h +9 -7
  1985. data/third_party/abseil-cpp/absl/random/distributions.h +11 -11
  1986. data/third_party/abseil-cpp/absl/random/seed_sequences.h +2 -0
  1987. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +61 -2
  1988. data/third_party/abseil-cpp/absl/status/status.cc +0 -4
  1989. data/third_party/abseil-cpp/absl/status/status.h +4 -4
  1990. data/third_party/abseil-cpp/absl/status/statusor.h +108 -142
  1991. data/third_party/abseil-cpp/absl/strings/ascii.cc +32 -71
  1992. data/third_party/abseil-cpp/absl/strings/cord.cc +20 -15
  1993. data/third_party/abseil-cpp/absl/strings/cord.h +68 -7
  1994. data/third_party/abseil-cpp/absl/strings/escaping.cc +96 -21
  1995. data/third_party/abseil-cpp/absl/strings/escaping.h +25 -8
  1996. data/third_party/abseil-cpp/absl/strings/has_absl_stringify.h +1 -0
  1997. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +10 -0
  1998. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +29 -9
  1999. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +2 -2
  2000. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc +19 -13
  2001. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +23 -13
  2002. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +24 -24
  2003. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +12 -7
  2004. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +9 -4
  2005. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +5 -2
  2006. data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +23 -2
  2007. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +5 -1
  2008. data/third_party/abseil-cpp/absl/strings/numbers.cc +107 -333
  2009. data/third_party/abseil-cpp/absl/strings/numbers.h +12 -151
  2010. data/third_party/abseil-cpp/absl/strings/str_cat.cc +49 -142
  2011. data/third_party/abseil-cpp/absl/strings/str_cat.h +70 -85
  2012. data/third_party/abseil-cpp/absl/strings/str_format.h +1 -1
  2013. data/third_party/abseil-cpp/absl/strings/str_join.h +19 -5
  2014. data/third_party/abseil-cpp/absl/strings/str_split.h +2 -2
  2015. data/third_party/abseil-cpp/absl/strings/string_view.h +3 -2
  2016. data/third_party/abseil-cpp/absl/strings/substitute.cc +4 -0
  2017. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +11 -2
  2018. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.h +5 -0
  2019. data/third_party/abseil-cpp/absl/synchronization/mutex.h +5 -4
  2020. data/third_party/abseil-cpp/absl/time/civil_time.h +2 -2
  2021. data/third_party/abseil-cpp/absl/time/clock.cc +15 -1
  2022. data/third_party/abseil-cpp/absl/time/duration.cc +58 -53
  2023. data/third_party/abseil-cpp/absl/time/format.cc +2 -1
  2024. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +1 -1
  2025. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +0 -29
  2026. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +3 -3
  2027. data/third_party/abseil-cpp/absl/time/time.h +73 -29
  2028. data/third_party/abseil-cpp/absl/types/compare.h +505 -0
  2029. data/third_party/abseil-cpp/absl/types/internal/optional.h +2 -2
  2030. data/third_party/abseil-cpp/absl/types/internal/variant.h +55 -67
  2031. data/third_party/abseil-cpp/absl/types/optional.h +15 -18
  2032. data/third_party/abseil-cpp/absl/types/span.h +3 -2
  2033. data/third_party/abseil-cpp/absl/types/variant.h +19 -24
  2034. data/third_party/abseil-cpp/absl/utility/utility.h +3 -41
  2035. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.cc +243 -0
  2036. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.cc +53 -0
  2037. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.cc +47 -0
  2038. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.cc +42 -0
  2039. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.cc +109 -0
  2040. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.cc +43 -0
  2041. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.cc +424 -0
  2042. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.cc +239 -0
  2043. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.cc +193 -0
  2044. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.cc +32 -0
  2045. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.cc +415 -0
  2046. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.cc +206 -0
  2047. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.cc +224 -0
  2048. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.cc +172 -0
  2049. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.cc +109 -0
  2050. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.cc +355 -0
  2051. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.cc +61 -0
  2052. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.cc +56 -0
  2053. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.cc +63 -0
  2054. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.cc +52 -0
  2055. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +13 -57
  2056. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.cc +241 -0
  2057. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.cc +932 -0
  2058. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.cc +669 -0
  2059. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.cc +164 -0
  2060. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.cc +276 -0
  2061. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.cc +84 -0
  2062. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.cc +229 -0
  2063. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.cc +434 -0
  2064. data/third_party/boringssl-with-bazel/src/crypto/bcm_support.h +119 -0
  2065. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.cc +658 -0
  2066. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.cc +268 -0
  2067. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.cc +511 -0
  2068. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.cc +50 -0
  2069. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.cc +193 -0
  2070. data/third_party/boringssl-with-bazel/src/crypto/bio/file.cc +292 -0
  2071. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.cc +152 -0
  2072. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +13 -55
  2073. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.cc +446 -0
  2074. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.cc +59 -0
  2075. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.cc +147 -0
  2076. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.cc +133 -0
  2077. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.cc +169 -0
  2078. data/third_party/boringssl-with-bazel/src/crypto/bn/bn_asn1.cc +57 -0
  2079. data/third_party/boringssl-with-bazel/src/crypto/bn/convert.cc +423 -0
  2080. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.cc +118 -0
  2081. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.cc +53 -0
  2082. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.cc +266 -0
  2083. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.cc +702 -0
  2084. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.cc +912 -0
  2085. data/third_party/boringssl-with-bazel/src/crypto/bytestring/internal.h +13 -13
  2086. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.cc +156 -0
  2087. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.cc +224 -0
  2088. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +18 -18
  2089. data/third_party/boringssl-with-bazel/src/crypto/cipher/derive_key.cc +110 -0
  2090. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aesctrhmac.cc +279 -0
  2091. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_aesgcmsiv.cc +845 -0
  2092. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_chacha20poly1305.cc +341 -0
  2093. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_des.cc +198 -0
  2094. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_null.cc +51 -0
  2095. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc2.cc +417 -0
  2096. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_rc4.cc +54 -0
  2097. data/third_party/boringssl-with-bazel/src/crypto/cipher/e_tls.cc +599 -0
  2098. data/third_party/boringssl-with-bazel/src/crypto/cipher/get_cipher.cc +85 -0
  2099. data/third_party/boringssl-with-bazel/src/crypto/cipher/internal.h +240 -0
  2100. data/third_party/boringssl-with-bazel/src/crypto/cipher/tls_cbc.cc +476 -0
  2101. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.cc +631 -0
  2102. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +13 -13
  2103. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.cc +75 -0
  2104. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.cc +55 -0
  2105. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.cc +62 -0
  2106. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.cc +61 -0
  2107. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.cc +94 -0
  2108. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.cc +41 -0
  2109. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.cc +54 -0
  2110. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.cc +151 -0
  2111. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.h +13 -13
  2112. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.cc +287 -0
  2113. data/third_party/boringssl-with-bazel/src/crypto/crypto.cc +183 -0
  2114. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.cc +2154 -0
  2115. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.cc +18 -0
  2116. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +13 -13
  2117. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +13 -13
  2118. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.cc +529 -0
  2119. data/third_party/boringssl-with-bazel/src/crypto/des/des.cc +829 -0
  2120. data/third_party/boringssl-with-bazel/src/crypto/des/internal.h +27 -69
  2121. data/third_party/boringssl-with-bazel/src/crypto/dh/dh_asn1.cc +124 -0
  2122. data/third_party/boringssl-with-bazel/src/crypto/dh/params.cc +442 -0
  2123. data/third_party/boringssl-with-bazel/src/crypto/digest/digest_extra.cc +306 -0
  2124. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.cc +951 -0
  2125. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.cc +379 -0
  2126. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +13 -15
  2127. data/third_party/boringssl-with-bazel/src/crypto/ec/ec_asn1.cc +570 -0
  2128. data/third_party/boringssl-with-bazel/src/crypto/ec/ec_derive.cc +96 -0
  2129. data/third_party/boringssl-with-bazel/src/crypto/ec/hash_to_curve.cc +510 -0
  2130. data/third_party/boringssl-with-bazel/src/crypto/ec/internal.h +78 -0
  2131. data/third_party/boringssl-with-bazel/src/crypto/ecdh/ecdh.cc +73 -0
  2132. data/third_party/boringssl-with-bazel/src/crypto/ecdsa/ecdsa_asn1.cc +357 -0
  2133. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.cc +95 -0
  2134. data/third_party/boringssl-with-bazel/src/crypto/err/err.cc +810 -0
  2135. data/third_party/boringssl-with-bazel/src/crypto/err/internal.h +13 -13
  2136. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.cc +379 -0
  2137. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.cc +471 -0
  2138. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.cc +440 -0
  2139. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +13 -55
  2140. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.cc +153 -0
  2141. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.cc +142 -0
  2142. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.cc +279 -0
  2143. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.cc +230 -0
  2144. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.cc +286 -0
  2145. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.cc +103 -0
  2146. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.cc +225 -0
  2147. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.cc +236 -0
  2148. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.cc +609 -0
  2149. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.cc +198 -0
  2150. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.cc +109 -0
  2151. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.cc +237 -0
  2152. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.cc +98 -0
  2153. data/third_party/boringssl-with-bazel/src/crypto/evp/print.cc +342 -0
  2154. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.cc +216 -0
  2155. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.cc +114 -0
  2156. data/third_party/boringssl-with-bazel/src/crypto/ex_data.cc +141 -0
  2157. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.cc.inc +191 -0
  2158. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.cc.inc +1281 -0
  2159. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/cbc.cc.inc +130 -0
  2160. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/cfb.cc.inc +166 -0
  2161. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ctr.cc.inc +100 -0
  2162. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/gcm.cc.inc +604 -0
  2163. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/gcm_nohw.cc.inc +302 -0
  2164. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +421 -70
  2165. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.cc.inc +208 -0
  2166. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.cc.inc +84 -0
  2167. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/ofb.cc.inc +53 -0
  2168. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/polyval.cc.inc +89 -0
  2169. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.cc +282 -0
  2170. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm_interface.h +729 -0
  2171. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.cc.inc +269 -0
  2172. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +554 -0
  2173. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.cc.inc +374 -0
  2174. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.cc.inc +225 -0
  2175. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.cc.inc +159 -0
  2176. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.cc.inc +191 -0
  2177. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.cc.inc +825 -0
  2178. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.cc.inc +87 -0
  2179. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.cc.inc +1227 -0
  2180. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.cc.inc +300 -0
  2181. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.cc.inc +339 -0
  2182. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.cc.inc +582 -0
  2183. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +25 -134
  2184. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.cc.inc +108 -0
  2185. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.cc.inc +430 -0
  2186. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.cc.inc +222 -0
  2187. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.cc.inc +698 -0
  2188. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.cc.inc +980 -0
  2189. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.cc.inc +260 -0
  2190. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.cc.inc +142 -0
  2191. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.h +20 -17
  2192. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.cc.inc +320 -0
  2193. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.cc.inc +459 -0
  2194. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.cc.inc +295 -0
  2195. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.cc.inc +672 -0
  2196. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.cc.inc +1242 -0
  2197. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.cc.inc +409 -0
  2198. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +14 -65
  2199. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.cc.inc +288 -0
  2200. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +26 -22
  2201. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.cc.inc +203 -0
  2202. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.cc.inc +443 -0
  2203. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/internal.h +13 -15
  2204. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.cc.inc +250 -0
  2205. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.cc.inc +178 -0
  2206. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/internal.h +13 -55
  2207. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +13 -47
  2208. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.cc.inc +226 -0
  2209. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/builtin_curves.h +91 -91
  2210. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.cc.inc +986 -0
  2211. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.cc.inc +501 -0
  2212. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.cc.inc +439 -0
  2213. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.cc.inc +104 -0
  2214. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +19 -66
  2215. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.cc.inc +306 -0
  2216. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.cc.inc +1163 -0
  2217. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz-table.h +15 -10
  2218. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.cc.inc +741 -0
  2219. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.h +87 -25
  2220. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.cc.inc +749 -0
  2221. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +13 -13
  2222. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.cc.inc +179 -0
  2223. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.cc.inc +284 -0
  2224. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.cc.inc +269 -0
  2225. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.cc.inc +255 -0
  2226. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.cc.inc +221 -0
  2227. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.cc.inc +88 -0
  2228. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +278 -0
  2229. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +41 -24
  2230. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.cc +28 -0
  2231. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.cc.inc +112 -0
  2232. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.cc.inc +215 -0
  2233. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/keccak/internal.h +70 -0
  2234. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/keccak/keccak.cc.inc +279 -0
  2235. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mldsa/mldsa.cc.inc +1993 -0
  2236. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/mlkem/mlkem.cc.inc +1165 -0
  2237. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.cc.inc +214 -0
  2238. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +19 -104
  2239. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.cc.inc +483 -0
  2240. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.cc.inc +147 -0
  2241. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +13 -56
  2242. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.cc.inc +379 -0
  2243. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.cc.inc +983 -0
  2244. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1296 -0
  2245. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  2246. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.cc.inc +1042 -0
  2247. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/internal.h +36 -36
  2248. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +327 -0
  2249. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +43 -57
  2250. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.cc.inc +390 -0
  2251. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.cc.inc +299 -0
  2252. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  2253. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/address.h +119 -0
  2254. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.cc.inc +169 -0
  2255. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/fors.h +58 -0
  2256. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.cc.inc +161 -0
  2257. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/merkle.h +70 -0
  2258. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/params.h +78 -0
  2259. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +329 -0
  2260. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.cc.inc +173 -0
  2261. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/thash.h +85 -0
  2262. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.cc.inc +171 -0
  2263. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/slhdsa/wots.h +50 -0
  2264. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +13 -13
  2265. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  2266. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.cc +1095 -0
  2267. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.cc +2185 -0
  2268. data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +13 -13
  2269. data/third_party/boringssl-with-bazel/src/crypto/internal.h +302 -447
  2270. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +13 -13
  2271. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.cc +869 -0
  2272. data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +31 -75
  2273. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.cc +309 -0
  2274. data/third_party/boringssl-with-bazel/src/crypto/md4/md4.cc +194 -0
  2275. data/third_party/boringssl-with-bazel/src/crypto/md5/internal.h +37 -0
  2276. data/third_party/boringssl-with-bazel/src/crypto/md5/md5.cc +243 -0
  2277. data/third_party/boringssl-with-bazel/src/crypto/mem.cc +583 -0
  2278. data/third_party/boringssl-with-bazel/src/crypto/mldsa/mldsa.cc +90 -0
  2279. data/third_party/boringssl-with-bazel/src/crypto/mlkem/mlkem.cc +152 -0
  2280. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.cc +519 -0
  2281. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +18 -57
  2282. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.cc +80 -0
  2283. data/third_party/boringssl-with-bazel/src/crypto/pem/internal.h +44 -0
  2284. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.cc +149 -0
  2285. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.cc +254 -0
  2286. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.cc +741 -0
  2287. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.cc +45 -0
  2288. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.cc +208 -0
  2289. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.cc +141 -0
  2290. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.cc +22 -0
  2291. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.cc +22 -0
  2292. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +13 -13
  2293. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.cc +193 -0
  2294. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.cc +526 -0
  2295. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +14 -54
  2296. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.cc +275 -0
  2297. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.cc +487 -0
  2298. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.cc +1304 -0
  2299. data/third_party/boringssl-with-bazel/src/crypto/poly1305/internal.h +13 -13
  2300. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.cc +314 -0
  2301. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.cc +310 -0
  2302. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.cc +850 -0
  2303. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +13 -13
  2304. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.cc +262 -0
  2305. data/third_party/boringssl-with-bazel/src/crypto/rand/deterministic.cc +65 -0
  2306. data/third_party/boringssl-with-bazel/src/crypto/rand/fork_detect.cc +194 -0
  2307. data/third_party/boringssl-with-bazel/src/crypto/rand/forkunsafe.cc +44 -0
  2308. data/third_party/boringssl-with-bazel/src/crypto/rand/getentropy.cc +60 -0
  2309. data/third_party/boringssl-with-bazel/src/crypto/rand/getrandom_fillin.h +64 -0
  2310. data/third_party/boringssl-with-bazel/src/crypto/rand/ios.cc +42 -0
  2311. data/third_party/boringssl-with-bazel/src/crypto/rand/passive.cc +178 -0
  2312. data/third_party/boringssl-with-bazel/src/crypto/rand/rand.cc +77 -0
  2313. data/third_party/boringssl-with-bazel/src/crypto/rand/sysrand_internal.h +37 -0
  2314. data/third_party/boringssl-with-bazel/src/crypto/rand/trusty.cc +46 -0
  2315. data/third_party/boringssl-with-bazel/src/crypto/rand/urandom.cc +328 -0
  2316. data/third_party/boringssl-with-bazel/src/crypto/rand/windows.cc +102 -0
  2317. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.cc +56 -0
  2318. data/third_party/boringssl-with-bazel/src/crypto/refcount.cc +59 -0
  2319. data/third_party/boringssl-with-bazel/src/crypto/rsa/internal.h +36 -0
  2320. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_asn1.cc +283 -0
  2321. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_crypt.cc +531 -0
  2322. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_extra.cc +19 -0
  2323. data/third_party/boringssl-with-bazel/src/crypto/rsa/rsa_print.cc +27 -0
  2324. data/third_party/boringssl-with-bazel/src/crypto/sha/sha1.cc +52 -0
  2325. data/third_party/boringssl-with-bazel/src/crypto/sha/sha256.cc +87 -0
  2326. data/third_party/boringssl-with-bazel/src/crypto/sha/sha512.cc +104 -0
  2327. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.cc +79 -0
  2328. data/third_party/boringssl-with-bazel/src/crypto/slhdsa/slhdsa.cc +113 -0
  2329. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/internal.h +204 -0
  2330. data/third_party/boringssl-with-bazel/src/crypto/spake2plus/spake2plus.cc +501 -0
  2331. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.cc +496 -0
  2332. data/third_party/boringssl-with-bazel/src/crypto/thread.cc +68 -0
  2333. data/third_party/boringssl-with-bazel/src/crypto/thread_none.cc +51 -0
  2334. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.cc +151 -0
  2335. data/third_party/boringssl-with-bazel/src/crypto/thread_win.cc +240 -0
  2336. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +13 -13
  2337. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.cc +1656 -0
  2338. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.cc +685 -0
  2339. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.cc +1263 -0
  2340. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.cc +52 -0
  2341. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.cc +97 -0
  2342. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.cc +74 -0
  2343. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.cc +136 -0
  2344. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.cc +542 -0
  2345. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.cc +355 -0
  2346. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.cc +227 -0
  2347. data/third_party/boringssl-with-bazel/src/crypto/x509/ext_dat.h +13 -55
  2348. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.cc +37 -0
  2349. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +13 -57
  2350. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.cc +185 -0
  2351. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.cc +796 -0
  2352. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.cc +364 -0
  2353. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.cc +103 -0
  2354. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.cc +203 -0
  2355. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.cc +287 -0
  2356. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.cc +79 -0
  2357. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.cc +181 -0
  2358. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.cc +31 -0
  2359. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.cc +593 -0
  2360. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.cc +95 -0
  2361. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.cc +102 -0
  2362. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.cc +374 -0
  2363. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.cc +444 -0
  2364. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.cc +557 -0
  2365. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.cc +73 -0
  2366. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.cc +114 -0
  2367. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.cc +228 -0
  2368. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.cc +79 -0
  2369. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.cc +164 -0
  2370. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.cc +81 -0
  2371. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.cc +304 -0
  2372. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.cc +514 -0
  2373. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.cc +89 -0
  2374. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.cc +101 -0
  2375. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.cc +109 -0
  2376. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.cc +183 -0
  2377. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.cc +590 -0
  2378. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.cc +131 -0
  2379. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.cc +1342 -0
  2380. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.cc +47 -0
  2381. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.cc +186 -0
  2382. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.cc +238 -0
  2383. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.cc +66 -0
  2384. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.cc +44 -0
  2385. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.cc +139 -0
  2386. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.cc +554 -0
  2387. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.cc +164 -0
  2388. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.cc +257 -0
  2389. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.cc +198 -0
  2390. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.cc +118 -0
  2391. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.cc +147 -0
  2392. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.cc +249 -0
  2393. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.cc +1600 -0
  2394. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.cc +440 -0
  2395. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.cc +235 -0
  2396. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.cc +365 -0
  2397. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.cc +67 -0
  2398. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.cc +91 -0
  2399. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.cc +107 -0
  2400. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.cc +318 -0
  2401. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.cc +55 -0
  2402. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.cc +342 -0
  2403. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.cc +36 -0
  2404. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.cc +492 -0
  2405. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.cc +170 -0
  2406. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.cc +74 -0
  2407. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.cc +51 -0
  2408. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.cc +34 -0
  2409. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.cc +28 -0
  2410. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.cc +506 -0
  2411. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.cc +169 -0
  2412. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.cc +1529 -0
  2413. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +13 -13
  2414. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +13 -47
  2415. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +13 -51
  2416. data/third_party/boringssl-with-bazel/src/include/openssl/asm_base.h +14 -14
  2417. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +37 -63
  2418. data/third_party/boringssl-with-bazel/src/include/openssl/asn1_mac.h +13 -13
  2419. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +248 -328
  2420. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +24 -55
  2421. data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +13 -55
  2422. data/third_party/boringssl-with-bazel/src/include/openssl/bcm_public.h +82 -0
  2423. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +13 -55
  2424. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +13 -13
  2425. data/third_party/boringssl-with-bazel/src/include/openssl/blowfish.h +13 -55
  2426. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +28 -130
  2427. data/third_party/boringssl-with-bazel/src/include/openssl/buf.h +13 -55
  2428. data/third_party/boringssl-with-bazel/src/include/openssl/buffer.h +13 -13
  2429. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +31 -16
  2430. data/third_party/boringssl-with-bazel/src/include/openssl/cast.h +13 -55
  2431. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +13 -13
  2432. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +31 -59
  2433. data/third_party/boringssl-with-bazel/src/include/openssl/cmac.h +13 -13
  2434. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +13 -55
  2435. data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +13 -13
  2436. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +25 -14
  2437. data/third_party/boringssl-with-bazel/src/include/openssl/ctrdrbg.h +13 -13
  2438. data/third_party/boringssl-with-bazel/src/include/openssl/curve25519.h +13 -13
  2439. data/third_party/boringssl-with-bazel/src/include/openssl/des.h +13 -55
  2440. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +17 -55
  2441. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +19 -56
  2442. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +17 -58
  2443. data/third_party/boringssl-with-bazel/src/include/openssl/dtls1.h +13 -13
  2444. data/third_party/boringssl-with-bazel/src/include/openssl/e_os2.h +13 -13
  2445. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +14 -66
  2446. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +31 -72
  2447. data/third_party/boringssl-with-bazel/src/include/openssl/ecdh.h +14 -65
  2448. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +13 -51
  2449. data/third_party/boringssl-with-bazel/src/include/openssl/engine.h +13 -13
  2450. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +13 -107
  2451. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +14 -56
  2452. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +13 -55
  2453. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +13 -107
  2454. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/kyber.h +13 -13
  2455. data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +13 -13
  2456. data/third_party/boringssl-with-bazel/src/include/openssl/hmac.h +13 -55
  2457. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +21 -19
  2458. data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +13 -13
  2459. data/third_party/boringssl-with-bazel/src/include/openssl/is_boringssl.h +13 -13
  2460. data/third_party/boringssl-with-bazel/src/include/openssl/kdf.h +13 -13
  2461. data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +13 -55
  2462. data/third_party/boringssl-with-bazel/src/include/openssl/md4.h +13 -55
  2463. data/third_party/boringssl-with-bazel/src/include/openssl/md5.h +13 -55
  2464. data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +13 -55
  2465. data/third_party/boringssl-with-bazel/src/include/openssl/mldsa.h +130 -0
  2466. data/third_party/boringssl-with-bazel/src/include/openssl/mlkem.h +222 -0
  2467. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +30 -69
  2468. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +13 -55
  2469. data/third_party/boringssl-with-bazel/src/include/openssl/obj_mac.h +13 -13
  2470. data/third_party/boringssl-with-bazel/src/include/openssl/objects.h +13 -13
  2471. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +13 -13
  2472. data/third_party/boringssl-with-bazel/src/include/openssl/opensslv.h +13 -13
  2473. data/third_party/boringssl-with-bazel/src/include/openssl/ossl_typ.h +13 -13
  2474. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +25 -64
  2475. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs12.h +13 -13
  2476. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +13 -13
  2477. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +13 -55
  2478. data/third_party/boringssl-with-bazel/src/include/openssl/poly1305.h +13 -13
  2479. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +13 -13
  2480. data/third_party/boringssl-with-bazel/src/include/openssl/posix_time.h +13 -13
  2481. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +13 -13
  2482. data/third_party/boringssl-with-bazel/src/include/openssl/rc4.h +13 -55
  2483. data/third_party/boringssl-with-bazel/src/include/openssl/ripemd.h +13 -55
  2484. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +23 -63
  2485. data/third_party/boringssl-with-bazel/src/include/openssl/safestack.h +13 -13
  2486. data/third_party/boringssl-with-bazel/src/include/openssl/service_indicator.h +15 -15
  2487. data/third_party/boringssl-with-bazel/src/include/openssl/sha.h +15 -95
  2488. data/third_party/boringssl-with-bazel/src/include/openssl/siphash.h +13 -13
  2489. data/third_party/boringssl-with-bazel/src/include/openssl/slhdsa.h +174 -0
  2490. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +42 -28
  2491. data/third_party/boringssl-with-bazel/src/include/openssl/srtp.h +13 -13
  2492. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +382 -284
  2493. data/third_party/boringssl-with-bazel/src/include/openssl/ssl3.h +15 -114
  2494. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +13 -55
  2495. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +23 -13
  2496. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +15 -57
  2497. data/third_party/boringssl-with-bazel/src/include/openssl/time.h +13 -13
  2498. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +27 -156
  2499. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +15 -15
  2500. data/third_party/boringssl-with-bazel/src/include/openssl/type_check.h +13 -55
  2501. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +14 -61
  2502. data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +13 -13
  2503. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +13 -13
  2504. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3_errors.h +13 -53
  2505. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +15 -14
  2506. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +684 -439
  2507. data/third_party/boringssl-with-bazel/src/ssl/d1_lib.cc +129 -168
  2508. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +176 -126
  2509. data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +21 -127
  2510. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +112 -97
  2511. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +454 -221
  2512. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +54 -47
  2513. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +679 -475
  2514. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +66 -73
  2515. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +61 -153
  2516. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +232 -334
  2517. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +102 -215
  2518. data/third_party/boringssl-with-bazel/src/ssl/internal.h +993 -482
  2519. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +87 -169
  2520. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +29 -159
  2521. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +39 -113
  2522. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +103 -111
  2523. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +52 -145
  2524. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +22 -24
  2525. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +117 -157
  2526. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +229 -365
  2527. data/third_party/boringssl-with-bazel/src/ssl/ssl_credential.cc +216 -31
  2528. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +13 -109
  2529. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +127 -32
  2530. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +209 -336
  2531. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +38 -83
  2532. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +101 -236
  2533. data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +17 -91
  2534. data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +109 -157
  2535. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +47 -27
  2536. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +66 -195
  2537. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +45 -176
  2538. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +58 -42
  2539. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +152 -86
  2540. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +296 -163
  2541. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +247 -108
  2542. data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +64 -117
  2543. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +55 -157
  2544. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_32.h +6 -0
  2545. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64.h +6 -0
  2546. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64_adx.h +4 -1
  2547. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_32.h +1 -1
  2548. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64.h +3 -0
  2549. data/third_party/upb/upb/json/decode.c +59 -13
  2550. data/third_party/upb/upb/json/decode.h +26 -3
  2551. data/third_party/upb/upb/json/encode.c +2 -2
  2552. data/third_party/upb/upb/lex/round_trip.c +10 -0
  2553. data/third_party/upb/upb/mem/arena.c +13 -2
  2554. data/third_party/upb/upb/mem/arena.h +9 -0
  2555. data/third_party/upb/upb/mem/arena.hpp +5 -1
  2556. data/third_party/upb/upb/message/accessors.c +2 -4
  2557. data/third_party/upb/upb/message/accessors.h +178 -379
  2558. data/third_party/upb/upb/message/copy.c +11 -7
  2559. data/third_party/upb/upb/message/internal/accessors.h +578 -26
  2560. data/third_party/upb/upb/message/internal/extension.c +1 -0
  2561. data/third_party/upb/upb/message/internal/message.c +13 -14
  2562. data/third_party/upb/upb/message/internal/message.h +8 -7
  2563. data/third_party/upb/upb/message/merge.c +38 -0
  2564. data/third_party/upb/upb/message/merge.h +26 -0
  2565. data/third_party/upb/upb/message/message.h +6 -10
  2566. data/third_party/upb/upb/message/value.h +26 -0
  2567. data/third_party/upb/upb/mini_descriptor/decode.c +7 -2
  2568. data/third_party/upb/upb/mini_descriptor/link.c +7 -3
  2569. data/third_party/upb/upb/mini_table/extension_registry.c +18 -0
  2570. data/third_party/upb/upb/mini_table/extension_registry.h +17 -0
  2571. data/third_party/upb/upb/mini_table/internal/extension.h +9 -0
  2572. data/third_party/upb/upb/mini_table/internal/message.c +21 -1
  2573. data/third_party/upb/upb/mini_table/internal/message.h +40 -20
  2574. data/third_party/upb/upb/mini_table/internal/sub.h +5 -0
  2575. data/third_party/upb/upb/mini_table/message.h +11 -1
  2576. data/third_party/upb/upb/port/def.inc +99 -9
  2577. data/third_party/upb/upb/port/undef.inc +7 -0
  2578. data/third_party/upb/upb/reflection/common.h +1 -11
  2579. data/third_party/upb/upb/reflection/def.hpp +8 -0
  2580. data/third_party/upb/upb/reflection/descriptor_bootstrap.h +19 -0
  2581. data/third_party/upb/upb/reflection/field_def.c +11 -22
  2582. data/third_party/upb/upb/reflection/field_def.h +1 -0
  2583. data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +1 -1
  2584. data/third_party/upb/upb/reflection/message.c +8 -3
  2585. data/third_party/upb/upb/reflection/message.h +2 -2
  2586. data/third_party/upb/upb/text/encode.c +51 -394
  2587. data/third_party/upb/upb/text/encode.h +1 -11
  2588. data/third_party/upb/upb/text/internal/encode.c +180 -0
  2589. data/third_party/upb/upb/text/internal/encode.h +240 -0
  2590. data/third_party/upb/upb/text/options.h +22 -0
  2591. data/third_party/upb/upb/wire/decode.c +71 -39
  2592. data/third_party/upb/upb/wire/decode.h +4 -1
  2593. data/third_party/upb/upb/wire/encode.c +41 -18
  2594. data/third_party/upb/upb/wire/encode.h +3 -0
  2595. data/third_party/upb/upb/wire/internal/decode_fast.c +3 -0
  2596. metadata +525 -460
  2597. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.cc +0 -45
  2598. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.h +0 -67
  2599. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb.h +0 -419
  2600. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.c +0 -84
  2601. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.h +0 -30
  2602. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb.h +0 -400
  2603. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.c +0 -118
  2604. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.h +0 -33
  2605. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.c +0 -107
  2606. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.h +0 -32
  2607. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.c +0 -66
  2608. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.h +0 -47
  2609. data/src/core/lib/avl/avl.h +0 -325
  2610. data/src/core/lib/backoff/backoff.cc +0 -47
  2611. data/src/core/lib/backoff/backoff.h +0 -89
  2612. data/src/core/lib/backoff/random_early_detection.cc +0 -33
  2613. data/src/core/lib/backoff/random_early_detection.h +0 -62
  2614. data/src/core/lib/config/config_vars.cc +0 -142
  2615. data/src/core/lib/config/config_vars.h +0 -121
  2616. data/src/core/lib/config/config_vars_non_generated.cc +0 -49
  2617. data/src/core/lib/config/core_configuration.cc +0 -112
  2618. data/src/core/lib/config/core_configuration.h +0 -244
  2619. data/src/core/lib/config/load_config.cc +0 -79
  2620. data/src/core/lib/config/load_config.h +0 -55
  2621. data/src/core/lib/debug/event_log.cc +0 -88
  2622. data/src/core/lib/debug/event_log.h +0 -81
  2623. data/src/core/lib/gprpp/atomic_utils.h +0 -47
  2624. data/src/core/lib/gprpp/bitset.h +0 -225
  2625. data/src/core/lib/gprpp/chunked_vector.h +0 -258
  2626. data/src/core/lib/gprpp/construct_destruct.h +0 -40
  2627. data/src/core/lib/gprpp/cpp_impl_of.h +0 -49
  2628. data/src/core/lib/gprpp/crash.cc +0 -41
  2629. data/src/core/lib/gprpp/crash.h +0 -37
  2630. data/src/core/lib/gprpp/debug_location.h +0 -106
  2631. data/src/core/lib/gprpp/directory_reader.h +0 -48
  2632. data/src/core/lib/gprpp/down_cast.h +0 -49
  2633. data/src/core/lib/gprpp/dual_ref_counted.h +0 -377
  2634. data/src/core/lib/gprpp/dump_args.cc +0 -54
  2635. data/src/core/lib/gprpp/dump_args.h +0 -117
  2636. data/src/core/lib/gprpp/env.h +0 -53
  2637. data/src/core/lib/gprpp/examine_stack.cc +0 -43
  2638. data/src/core/lib/gprpp/examine_stack.h +0 -45
  2639. data/src/core/lib/gprpp/fork.cc +0 -241
  2640. data/src/core/lib/gprpp/fork.h +0 -98
  2641. data/src/core/lib/gprpp/glob.h +0 -29
  2642. data/src/core/lib/gprpp/host_port.cc +0 -116
  2643. data/src/core/lib/gprpp/host_port.h +0 -57
  2644. data/src/core/lib/gprpp/if_list.h +0 -4530
  2645. data/src/core/lib/gprpp/linux/env.cc +0 -62
  2646. data/src/core/lib/gprpp/load_file.cc +0 -77
  2647. data/src/core/lib/gprpp/load_file.h +0 -34
  2648. data/src/core/lib/gprpp/manual_constructor.h +0 -146
  2649. data/src/core/lib/gprpp/match.h +0 -75
  2650. data/src/core/lib/gprpp/memory.h +0 -52
  2651. data/src/core/lib/gprpp/mpscq.cc +0 -108
  2652. data/src/core/lib/gprpp/mpscq.h +0 -100
  2653. data/src/core/lib/gprpp/no_destruct.h +0 -95
  2654. data/src/core/lib/gprpp/notification.h +0 -67
  2655. data/src/core/lib/gprpp/orphanable.h +0 -153
  2656. data/src/core/lib/gprpp/overload.h +0 -59
  2657. data/src/core/lib/gprpp/packed_table.h +0 -40
  2658. data/src/core/lib/gprpp/per_cpu.cc +0 -34
  2659. data/src/core/lib/gprpp/per_cpu.h +0 -103
  2660. data/src/core/lib/gprpp/posix/directory_reader.cc +0 -82
  2661. data/src/core/lib/gprpp/posix/env.cc +0 -47
  2662. data/src/core/lib/gprpp/posix/stat.cc +0 -55
  2663. data/src/core/lib/gprpp/posix/thd.cc +0 -246
  2664. data/src/core/lib/gprpp/ref_counted.h +0 -403
  2665. data/src/core/lib/gprpp/ref_counted_ptr.h +0 -445
  2666. data/src/core/lib/gprpp/ref_counted_string.cc +0 -43
  2667. data/src/core/lib/gprpp/ref_counted_string.h +0 -161
  2668. data/src/core/lib/gprpp/single_set_ptr.h +0 -90
  2669. data/src/core/lib/gprpp/sorted_pack.h +0 -89
  2670. data/src/core/lib/gprpp/stat.h +0 -36
  2671. data/src/core/lib/gprpp/status_helper.cc +0 -434
  2672. data/src/core/lib/gprpp/status_helper.h +0 -162
  2673. data/src/core/lib/gprpp/strerror.cc +0 -41
  2674. data/src/core/lib/gprpp/strerror.h +0 -29
  2675. data/src/core/lib/gprpp/sync.h +0 -200
  2676. data/src/core/lib/gprpp/table.h +0 -460
  2677. data/src/core/lib/gprpp/tchar.cc +0 -49
  2678. data/src/core/lib/gprpp/tchar.h +0 -33
  2679. data/src/core/lib/gprpp/thd.h +0 -195
  2680. data/src/core/lib/gprpp/time.cc +0 -241
  2681. data/src/core/lib/gprpp/time.h +0 -380
  2682. data/src/core/lib/gprpp/time_averaged_stats.cc +0 -60
  2683. data/src/core/lib/gprpp/time_averaged_stats.h +0 -79
  2684. data/src/core/lib/gprpp/time_util.cc +0 -82
  2685. data/src/core/lib/gprpp/time_util.h +0 -41
  2686. data/src/core/lib/gprpp/type_list.h +0 -32
  2687. data/src/core/lib/gprpp/unique_type_name.h +0 -124
  2688. data/src/core/lib/gprpp/uuid_v4.cc +0 -37
  2689. data/src/core/lib/gprpp/uuid_v4.h +0 -36
  2690. data/src/core/lib/gprpp/validation_errors.cc +0 -74
  2691. data/src/core/lib/gprpp/validation_errors.h +0 -145
  2692. data/src/core/lib/gprpp/windows/directory_reader.cc +0 -81
  2693. data/src/core/lib/gprpp/windows/env.cc +0 -56
  2694. data/src/core/lib/gprpp/windows/stat.cc +0 -51
  2695. data/src/core/lib/gprpp/windows/thd.cc +0 -185
  2696. data/src/core/lib/gprpp/work_serializer.cc +0 -554
  2697. data/src/core/lib/gprpp/work_serializer.h +0 -106
  2698. data/src/core/lib/gprpp/xxhash_inline.h +0 -29
  2699. data/src/core/lib/iomgr/gethostname.h +0 -26
  2700. data/src/core/lib/iomgr/gethostname_fallback.cc +0 -30
  2701. data/src/core/lib/iomgr/gethostname_host_name_max.cc +0 -40
  2702. data/src/core/lib/iomgr/gethostname_sysconf.cc +0 -40
  2703. data/src/core/lib/iomgr/grpc_if_nametoindex.h +0 -30
  2704. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +0 -42
  2705. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +0 -37
  2706. data/src/core/lib/matchers/matchers.cc +0 -330
  2707. data/src/core/lib/matchers/matchers.h +0 -163
  2708. data/src/core/lib/uri/uri_parser.cc +0 -372
  2709. data/src/core/lib/uri/uri_parser.h +0 -101
  2710. data/src/core/resolver/binder/binder_resolver.cc +0 -155
  2711. data/src/core/util/android/log.cc +0 -48
  2712. data/src/core/util/atm.cc +0 -35
  2713. data/src/core/util/linux/log.cc +0 -69
  2714. data/src/core/util/posix/log.cc +0 -69
  2715. data/src/core/util/windows/log.cc +0 -73
  2716. data/src/core/xds/xds_client/xds_client_stats.cc +0 -171
  2717. data/src/core/xds/xds_client/xds_client_stats.h +0 -258
  2718. data/third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h +0 -44
  2719. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +0 -284
  2720. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +0 -95
  2721. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +0 -89
  2722. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.c +0 -84
  2723. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +0 -151
  2724. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.c +0 -85
  2725. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +0 -465
  2726. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +0 -279
  2727. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +0 -235
  2728. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c +0 -74
  2729. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +0 -457
  2730. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +0 -245
  2731. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +0 -259
  2732. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +0 -214
  2733. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +0 -183
  2734. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +0 -397
  2735. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +0 -103
  2736. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +0 -98
  2737. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +0 -105
  2738. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +0 -94
  2739. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.c +0 -241
  2740. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +0 -973
  2741. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +0 -708
  2742. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +0 -212
  2743. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +0 -317
  2744. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +0 -126
  2745. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +0 -268
  2746. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +0 -479
  2747. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +0 -726
  2748. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +0 -309
  2749. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +0 -544
  2750. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.c +0 -92
  2751. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +0 -235
  2752. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +0 -334
  2753. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.c +0 -192
  2754. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +0 -480
  2755. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.c +0 -102
  2756. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +0 -189
  2757. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +0 -133
  2758. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +0 -169
  2759. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/bn_asn1.c +0 -57
  2760. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/convert.c +0 -465
  2761. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.c +0 -158
  2762. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.c +0 -53
  2763. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +0 -266
  2764. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +0 -718
  2765. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +0 -911
  2766. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.c +0 -156
  2767. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +0 -224
  2768. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +0 -127
  2769. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/derive_key.c +0 -152
  2770. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesctrhmac.c +0 -284
  2771. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesgcmsiv.c +0 -841
  2772. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_chacha20poly1305.c +0 -348
  2773. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_des.c +0 -228
  2774. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +0 -90
  2775. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +0 -455
  2776. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +0 -94
  2777. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +0 -598
  2778. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +0 -237
  2779. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +0 -514
  2780. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +0 -672
  2781. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.c +0 -75
  2782. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.c +0 -55
  2783. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.c +0 -62
  2784. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.c +0 -61
  2785. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.c +0 -93
  2786. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.c +0 -41
  2787. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.c +0 -54
  2788. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.c +0 -151
  2789. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.c +0 -277
  2790. data/third_party/boringssl-with-bazel/src/crypto/crypto.c +0 -188
  2791. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +0 -2157
  2792. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.c +0 -18
  2793. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.c +0 -523
  2794. data/third_party/boringssl-with-bazel/src/crypto/des/des.c +0 -871
  2795. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +0 -165
  2796. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +0 -480
  2797. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +0 -266
  2798. data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +0 -1539
  2799. data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +0 -58
  2800. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +0 -997
  2801. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -419
  2802. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +0 -572
  2803. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_derive.c +0 -96
  2804. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +0 -508
  2805. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +0 -78
  2806. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.c +0 -124
  2807. data/third_party/boringssl-with-bazel/src/crypto/ecdsa_extra/ecdsa_asn1.c +0 -265
  2808. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.c +0 -91
  2809. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +0 -903
  2810. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +0 -430
  2811. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +0 -547
  2812. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.c +0 -483
  2813. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.c +0 -137
  2814. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.c +0 -120
  2815. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +0 -338
  2816. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +0 -274
  2817. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +0 -332
  2818. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +0 -100
  2819. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.c +0 -224
  2820. data/third_party/boringssl-with-bazel/src/crypto/evp/p_hkdf.c +0 -232
  2821. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +0 -646
  2822. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +0 -241
  2823. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +0 -106
  2824. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.c +0 -236
  2825. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.c +0 -146
  2826. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +0 -381
  2827. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +0 -209
  2828. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.c +0 -156
  2829. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +0 -236
  2830. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.c +0 -127
  2831. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.c +0 -1281
  2832. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.c +0 -242
  2833. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c +0 -124
  2834. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +0 -278
  2835. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.c +0 -310
  2836. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.c +0 -541
  2837. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.c +0 -428
  2838. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c +0 -267
  2839. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.c +0 -201
  2840. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.c +0 -234
  2841. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +0 -909
  2842. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c +0 -87
  2843. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +0 -1320
  2844. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c +0 -397
  2845. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +0 -331
  2846. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.c +0 -624
  2847. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.c +0 -146
  2848. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c +0 -532
  2849. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +0 -222
  2850. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c +0 -744
  2851. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +0 -1077
  2852. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c +0 -356
  2853. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c +0 -137
  2854. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.c +0 -363
  2855. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c +0 -499
  2856. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.c +0 -287
  2857. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +0 -717
  2858. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +0 -1463
  2859. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aesccm.c +0 -446
  2860. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/cmac.c +0 -322
  2861. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c +0 -245
  2862. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +0 -489
  2863. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +0 -288
  2864. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.c +0 -304
  2865. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/digestsign.c +0 -267
  2866. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +0 -1043
  2867. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +0 -557
  2868. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +0 -491
  2869. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.c +0 -104
  2870. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +0 -359
  2871. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +0 -1163
  2872. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.c +0 -642
  2873. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +0 -749
  2874. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +0 -173
  2875. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +0 -336
  2876. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +0 -269
  2877. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.c +0 -255
  2878. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +0 -264
  2879. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c +0 -130
  2880. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +0 -372
  2881. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +0 -29
  2882. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.c +0 -112
  2883. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.c +0 -256
  2884. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c +0 -240
  2885. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/internal.h +0 -37
  2886. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c +0 -284
  2887. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +0 -164
  2888. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c +0 -200
  2889. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +0 -196
  2890. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +0 -743
  2891. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c +0 -302
  2892. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +0 -428
  2893. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +0 -87
  2894. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/polyval.c +0 -90
  2895. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.c +0 -220
  2896. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.c +0 -197
  2897. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.h +0 -68
  2898. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/getrandom_fillin.h +0 -64
  2899. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +0 -493
  2900. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +0 -328
  2901. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.c +0 -241
  2902. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c +0 -423
  2903. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +0 -1038
  2904. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +0 -1351
  2905. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c +0 -121
  2906. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +0 -1064
  2907. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c +0 -328
  2908. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +0 -439
  2909. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +0 -359
  2910. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +0 -543
  2911. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +0 -218
  2912. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +0 -801
  2913. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +0 -2234
  2914. data/third_party/boringssl-with-bazel/src/crypto/keccak/internal.h +0 -70
  2915. data/third_party/boringssl-with-bazel/src/crypto/keccak/keccak.c +0 -279
  2916. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +0 -845
  2917. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c +0 -350
  2918. data/third_party/boringssl-with-bazel/src/crypto/mem.c +0 -609
  2919. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +0 -564
  2920. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.c +0 -122
  2921. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +0 -243
  2922. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +0 -294
  2923. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +0 -790
  2924. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.c +0 -87
  2925. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +0 -251
  2926. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +0 -183
  2927. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.c +0 -64
  2928. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.c +0 -64
  2929. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +0 -193
  2930. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +0 -523
  2931. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.c +0 -316
  2932. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +0 -527
  2933. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +0 -1352
  2934. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +0 -314
  2935. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.c +0 -308
  2936. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.c +0 -847
  2937. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +0 -261
  2938. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +0 -57
  2939. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.c +0 -44
  2940. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getentropy.c +0 -52
  2941. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/ios.c +0 -34
  2942. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +0 -158
  2943. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +0 -74
  2944. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/trusty.c +0 -38
  2945. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +0 -95
  2946. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.c +0 -98
  2947. data/third_party/boringssl-with-bazel/src/crypto/refcount.c +0 -59
  2948. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/internal.h +0 -77
  2949. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_asn1.c +0 -324
  2950. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_crypt.c +0 -570
  2951. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c +0 -22
  2952. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +0 -79
  2953. data/third_party/boringssl-with-bazel/src/crypto/spx/address.c +0 -101
  2954. data/third_party/boringssl-with-bazel/src/crypto/spx/address.h +0 -50
  2955. data/third_party/boringssl-with-bazel/src/crypto/spx/fors.c +0 -133
  2956. data/third_party/boringssl-with-bazel/src/crypto/spx/fors.h +0 -54
  2957. data/third_party/boringssl-with-bazel/src/crypto/spx/merkle.c +0 -150
  2958. data/third_party/boringssl-with-bazel/src/crypto/spx/merkle.h +0 -61
  2959. data/third_party/boringssl-with-bazel/src/crypto/spx/params.h +0 -71
  2960. data/third_party/boringssl-with-bazel/src/crypto/spx/spx.c +0 -140
  2961. data/third_party/boringssl-with-bazel/src/crypto/spx/spx_util.c +0 -53
  2962. data/third_party/boringssl-with-bazel/src/crypto/spx/spx_util.h +0 -44
  2963. data/third_party/boringssl-with-bazel/src/crypto/spx/thash.c +0 -136
  2964. data/third_party/boringssl-with-bazel/src/crypto/spx/thash.h +0 -70
  2965. data/third_party/boringssl-with-bazel/src/crypto/spx/wots.c +0 -135
  2966. data/third_party/boringssl-with-bazel/src/crypto/spx/wots.h +0 -45
  2967. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +0 -534
  2968. data/third_party/boringssl-with-bazel/src/crypto/thread.c +0 -110
  2969. data/third_party/boringssl-with-bazel/src/crypto/thread_none.c +0 -51
  2970. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +0 -150
  2971. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +0 -236
  2972. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +0 -1668
  2973. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +0 -687
  2974. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +0 -1267
  2975. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c +0 -94
  2976. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +0 -136
  2977. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +0 -116
  2978. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +0 -178
  2979. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +0 -585
  2980. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +0 -400
  2981. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +0 -269
  2982. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c +0 -79
  2983. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +0 -227
  2984. data/third_party/boringssl-with-bazel/src/crypto/x509/policy.c +0 -786
  2985. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +0 -401
  2986. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +0 -145
  2987. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +0 -245
  2988. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +0 -329
  2989. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +0 -121
  2990. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akey.c +0 -221
  2991. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_akeya.c +0 -73
  2992. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_alt.c +0 -634
  2993. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bcons.c +0 -135
  2994. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_bitst.c +0 -141
  2995. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_conf.c +0 -416
  2996. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c +0 -482
  2997. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c +0 -598
  2998. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_enum.c +0 -112
  2999. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_extku.c +0 -154
  3000. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_genn.c +0 -270
  3001. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ia5.c +0 -122
  3002. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c +0 -211
  3003. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_int.c +0 -121
  3004. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c +0 -344
  3005. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ncons.c +0 -555
  3006. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_ocsp.c +0 -81
  3007. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pcons.c +0 -142
  3008. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_pmaps.c +0 -150
  3009. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_prn.c +0 -224
  3010. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c +0 -624
  3011. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_skey.c +0 -170
  3012. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +0 -1390
  3013. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +0 -89
  3014. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +0 -227
  3015. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +0 -280
  3016. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +0 -108
  3017. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.c +0 -86
  3018. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +0 -181
  3019. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -599
  3020. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +0 -206
  3021. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +0 -299
  3022. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +0 -240
  3023. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +0 -160
  3024. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +0 -189
  3025. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +0 -291
  3026. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +0 -1638
  3027. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +0 -440
  3028. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +0 -277
  3029. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +0 -407
  3030. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +0 -109
  3031. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +0 -133
  3032. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +0 -149
  3033. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +0 -356
  3034. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +0 -97
  3035. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +0 -384
  3036. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +0 -78
  3037. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +0 -527
  3038. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +0 -210
  3039. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +0 -116
  3040. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +0 -93
  3041. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.c +0 -79
  3042. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +0 -70
  3043. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +0 -544
  3044. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +0 -209
  3045. data/third_party/boringssl-with-bazel/src/gen/crypto/err_data.c +0 -1514
  3046. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +0 -131
  3047. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/spx.h +0 -90
  3048. /data/src/core/{lib/gprpp → util}/glob.cc +0 -0
@@ -1,110 +1,16 @@
1
- /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
2
- * All rights reserved.
3
- *
4
- * This package is an SSL implementation written
5
- * by Eric Young (eay@cryptsoft.com).
6
- * The implementation was written so as to conform with Netscapes SSL.
7
- *
8
- * This library is free for commercial and non-commercial use as long as
9
- * the following conditions are aheared to. The following conditions
10
- * apply to all code found in this distribution, be it the RC4, RSA,
11
- * lhash, DES, etc., code; not just the SSL code. The SSL documentation
12
- * included with this distribution is covered by the same copyright terms
13
- * except that the holder is Tim Hudson (tjh@cryptsoft.com).
14
- *
15
- * Copyright remains Eric Young's, and as such any Copyright notices in
16
- * the code are not to be removed.
17
- * If this package is used in a product, Eric Young should be given attribution
18
- * as the author of the parts of the library used.
19
- * This can be in the form of a textual message at program startup or
20
- * in documentation (online or textual) provided with the package.
21
- *
22
- * Redistribution and use in source and binary forms, with or without
23
- * modification, are permitted provided that the following conditions
24
- * are met:
25
- * 1. Redistributions of source code must retain the copyright
26
- * notice, this list of conditions and the following disclaimer.
27
- * 2. Redistributions in binary form must reproduce the above copyright
28
- * notice, this list of conditions and the following disclaimer in the
29
- * documentation and/or other materials provided with the distribution.
30
- * 3. All advertising materials mentioning features or use of this software
31
- * must display the following acknowledgement:
32
- * "This product includes cryptographic software written by
33
- * Eric Young (eay@cryptsoft.com)"
34
- * The word 'cryptographic' can be left out if the rouines from the library
35
- * being used are not cryptographic related :-).
36
- * 4. If you include any Windows specific code (or a derivative thereof) from
37
- * the apps directory (application code) you must include an acknowledgement:
38
- * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
39
- *
40
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
41
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
42
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
43
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
44
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
45
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
46
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
47
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
48
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
49
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
50
- * SUCH DAMAGE.
51
- *
52
- * The licence and distribution terms for any publically available version or
53
- * derivative of this code cannot be changed. i.e. this code cannot simply be
54
- * copied and put under another distribution licence
55
- * [including the GNU Public Licence.]
56
- */
57
- /* ====================================================================
58
- * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved.
59
- *
60
- * Redistribution and use in source and binary forms, with or without
61
- * modification, are permitted provided that the following conditions
62
- * are met:
63
- *
64
- * 1. Redistributions of source code must retain the above copyright
65
- * notice, this list of conditions and the following disclaimer.
66
- *
67
- * 2. Redistributions in binary form must reproduce the above copyright
68
- * notice, this list of conditions and the following disclaimer in
69
- * the documentation and/or other materials provided with the
70
- * distribution.
71
- *
72
- * 3. All advertising materials mentioning features or use of this
73
- * software must display the following acknowledgment:
74
- * "This product includes software developed by the OpenSSL Project
75
- * for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
76
- *
77
- * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
78
- * endorse or promote products derived from this software without
79
- * prior written permission. For written permission, please contact
80
- * openssl-core@openssl.org.
81
- *
82
- * 5. Products derived from this software may not be called "OpenSSL"
83
- * nor may "OpenSSL" appear in their names without prior written
84
- * permission of the OpenSSL Project.
85
- *
86
- * 6. Redistributions of any form whatsoever must retain the following
87
- * acknowledgment:
88
- * "This product includes software developed by the OpenSSL Project
89
- * for use in the OpenSSL Toolkit (http://www.openssl.org/)"
90
- *
91
- * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
92
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
93
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
94
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
95
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
96
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
97
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
98
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
99
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
100
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
101
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
102
- * OF THE POSSIBILITY OF SUCH DAMAGE.
103
- * ====================================================================
104
- *
105
- * This product includes cryptographic software written by Eric Young
106
- * (eay@cryptsoft.com). This product includes software written by Tim
107
- * Hudson (tjh@cryptsoft.com). */
1
+ // Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // https://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
108
14
 
109
15
  #ifndef OPENSSL_HEADER_CRYPTO_INTERNAL_H
110
16
  #define OPENSSL_HEADER_CRYPTO_INTERNAL_H
@@ -126,16 +32,6 @@
126
32
  #include <stdlib.h>
127
33
  #endif
128
34
 
129
- #if !defined(__cplusplus)
130
- #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
131
- // BoringSSL requires C11 to build the library. The most likely cause of
132
- // pre-C11 modes is stale -std=c99 or -std=gnu99 flags in build configuration.
133
- // Such flags can be removed. If building with MSVC, build with /std:c11.
134
- #error "BoringSSL must be built in C11 mode or higher."
135
- #endif
136
- #include <stdalign.h>
137
- #endif
138
-
139
35
  #if defined(OPENSSL_THREADS) && \
140
36
  (!defined(OPENSSL_WINDOWS) || defined(__MINGW32__))
141
37
  #include <pthread.h>
@@ -147,29 +43,11 @@
147
43
  #define OPENSSL_WINDOWS_THREADS
148
44
  #endif
149
45
 
150
- // Determine the atomics implementation to use with C.
151
- #if !defined(__cplusplus)
152
- #if !defined(OPENSSL_C11_ATOMIC) && defined(OPENSSL_THREADS) && \
153
- !defined(__STDC_NO_ATOMICS__)
154
- #define OPENSSL_C11_ATOMIC
155
- #endif
156
-
157
- #if defined(OPENSSL_C11_ATOMIC)
158
- #include <stdatomic.h>
46
+ #if defined(OPENSSL_THREADS)
47
+ #include <atomic>
159
48
  #endif
160
49
 
161
- // Older MSVC does not support C11 atomics, so we fallback to the Windows APIs.
162
- // When both are available (e.g. clang-cl), we prefer the C11 ones. The Windows
163
- // APIs don't allow some operations to be implemented as efficiently. This can
164
- // be removed once we can rely on
165
- // https://devblogs.microsoft.com/cppblog/c11-atomics-in-visual-studio-2022-version-17-5-preview-2/
166
- #if !defined(OPENSSL_C11_ATOMIC) && defined(OPENSSL_THREADS) && \
167
- defined(OPENSSL_WINDOWS)
168
- #define OPENSSL_WINDOWS_ATOMIC
169
- #endif
170
- #endif // !__cplusplus
171
-
172
- #if defined(OPENSSL_WINDOWS_THREADS) || defined(OPENSSL_WINDOWS_ATOMIC)
50
+ #if defined(OPENSSL_WINDOWS_THREADS)
173
51
  OPENSSL_MSVC_PRAGMA(warning(push, 3))
174
52
  #include <windows.h>
175
53
  OPENSSL_MSVC_PRAGMA(warning(pop))
@@ -195,7 +73,7 @@ void OPENSSL_cpuid_setup(void);
195
73
  // needed. This function is idempotent and may be called concurrently.
196
74
  void OPENSSL_init_cpuid(void);
197
75
  #else
198
- OPENSSL_INLINE void OPENSSL_init_cpuid(void) {}
76
+ inline void OPENSSL_init_cpuid(void) {}
199
77
  #endif
200
78
 
201
79
  #if (defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64)) && \
@@ -217,34 +95,20 @@ typedef __uint128_t uint128_t;
217
95
  // __uint128_t division depends on intrinsics in the compiler runtime. Those
218
96
  // intrinsics are missing in clang-cl (https://crbug.com/787617) and nanolibc.
219
97
  // These may be bugs in the toolchain definition, but just disable it for now.
220
- #if !defined(_MSC_VER) && !defined(OPENSSL_NANOLIBC)
98
+ // EDK2's toolchain is missing __udivti3 (b/339380897) so cannot support
99
+ // 128-bit division currently.
100
+ #if !defined(_MSC_VER) && !defined(OPENSSL_NANOLIBC) && \
101
+ !defined(__EDK2_BORINGSSL__)
221
102
  #define BORINGSSL_CAN_DIVIDE_UINT128
222
103
  #endif
223
104
  #endif
224
105
 
225
106
  #define OPENSSL_ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0]))
226
107
 
227
- // Have a generic fall-through for different versions of C/C++.
228
- #if defined(__cplusplus) && __cplusplus >= 201703L
229
- #define OPENSSL_FALLTHROUGH [[fallthrough]]
230
- #elif defined(__cplusplus) && __cplusplus >= 201103L && defined(__clang__)
231
- #define OPENSSL_FALLTHROUGH [[clang::fallthrough]]
232
- #elif defined(__cplusplus) && __cplusplus >= 201103L && defined(__GNUC__) && \
233
- __GNUC__ >= 7
234
- #define OPENSSL_FALLTHROUGH [[gnu::fallthrough]]
235
- #elif defined(__GNUC__) && __GNUC__ >= 7 // gcc 7
236
- #define OPENSSL_FALLTHROUGH __attribute__ ((fallthrough))
237
- #elif defined(__clang__)
238
- #if __has_attribute(fallthrough) && __clang_major__ >= 5
239
- // Clang 3.5, at least, complains about "error: declaration does not declare
240
- // anything", possibily because we put a semicolon after this macro in
241
- // practice. Thus limit it to >= Clang 5, which does work.
242
- #define OPENSSL_FALLTHROUGH __attribute__ ((fallthrough))
243
- #else // clang versions that do not support fallthrough.
244
- #define OPENSSL_FALLTHROUGH
245
- #endif
246
- #else // C++11 on gcc 6, and all other cases
247
- #define OPENSSL_FALLTHROUGH
108
+ #if defined(__clang__) && __clang_major__ >= 5
109
+ #if __has_attribute(fallthrough)
110
+ #define OPENSSL_CAN_USE_ATTR_FALLTHROUGH
111
+ #endif
248
112
  #endif
249
113
 
250
114
  // GCC-like compilers indicate SSE2 with |__SSE2__|. MSVC leaves the caller to
@@ -272,9 +136,9 @@ typedef __uint128_t uint128_t;
272
136
  #endif
273
137
 
274
138
  #if defined(__GNUC__) || defined(__clang__)
275
- #define OPENSSL_ATTR_PURE __attribute__((pure))
139
+ #define OPENSSL_ATTR_CONST __attribute__((const))
276
140
  #else
277
- #define OPENSSL_ATTR_PURE
141
+ #define OPENSSL_ATTR_CONST
278
142
  #endif
279
143
 
280
144
  #if defined(BORINGSSL_MALLOC_FAILURE_TESTING)
@@ -294,9 +158,9 @@ OPENSSL_EXPORT void OPENSSL_disable_malloc_failures_for_testing(void);
294
158
  // re-enables simulated malloc failures.
295
159
  OPENSSL_EXPORT void OPENSSL_enable_malloc_failures_for_testing(void);
296
160
  #else
297
- OPENSSL_INLINE void OPENSSL_reset_malloc_counter_for_testing(void) {}
298
- OPENSSL_INLINE void OPENSSL_disable_malloc_failures_for_testing(void) {}
299
- OPENSSL_INLINE void OPENSSL_enable_malloc_failures_for_testing(void) {}
161
+ inline void OPENSSL_reset_malloc_counter_for_testing(void) {}
162
+ inline void OPENSSL_disable_malloc_failures_for_testing(void) {}
163
+ inline void OPENSSL_enable_malloc_failures_for_testing(void) {}
300
164
  #endif
301
165
 
302
166
  #if defined(__has_builtin)
@@ -309,8 +173,8 @@ OPENSSL_INLINE void OPENSSL_enable_malloc_failures_for_testing(void) {}
309
173
  // Pointer utility functions.
310
174
 
311
175
  // buffers_alias returns one if |a| and |b| alias and zero otherwise.
312
- static inline int buffers_alias(const void *a, size_t a_bytes,
313
- const void *b, size_t b_bytes) {
176
+ static inline int buffers_alias(const void *a, size_t a_bytes, const void *b,
177
+ size_t b_bytes) {
314
178
  // Cast |a| and |b| to integers. In C, pointer comparisons between unrelated
315
179
  // objects are undefined whereas pointer to integer conversions are merely
316
180
  // implementation-defined. We assume the implementation defined it in a sane
@@ -446,7 +310,7 @@ static inline crypto_word_t constant_time_lt_w(crypto_word_t a,
446
310
  // (assert (not (= (= #x00000001 (bvlshr (lt a b) #x0000001f)) (bvult a b))))
447
311
  // (check-sat)
448
312
  // (get-model)
449
- return constant_time_msb_w(a^((a^b)|((a-b)^a)));
313
+ return constant_time_msb_w(a ^ ((a ^ b) | ((a - b) ^ a)));
450
314
  }
451
315
 
452
316
  // constant_time_lt_8 acts like |constant_time_lt_w| but returns an 8-bit
@@ -477,9 +341,8 @@ static inline crypto_word_t constant_time_is_zero_w(crypto_word_t a) {
477
341
  //
478
342
  // (declare-fun a () (_ BitVec 32))
479
343
  //
480
- // (assert (not (= (= #x00000001 (bvlshr (is_zero a) #x0000001f)) (= a #x00000000))))
481
- // (check-sat)
482
- // (get-model)
344
+ // (assert (not (= (= #x00000001 (bvlshr (is_zero a) #x0000001f)) (= a
345
+ // #x00000000)))) (check-sat) (get-model)
483
346
  return constant_time_msb_w(~a & (a - 1));
484
347
  }
485
348
 
@@ -567,11 +430,22 @@ static inline void constant_time_conditional_memcpy(void *dst, const void *src,
567
430
  // |mask| is 0xff..ff and does nothing if |mask| is 0. The |n|-byte memory
568
431
  // ranges at |dst| and |src| must not overlap, as when calling |memcpy|.
569
432
  static inline void constant_time_conditional_memxor(void *dst, const void *src,
570
- const size_t n,
433
+ size_t n,
571
434
  const crypto_word_t mask) {
572
435
  assert(!buffers_alias(dst, n, src, n));
573
436
  uint8_t *out = (uint8_t *)dst;
574
437
  const uint8_t *in = (const uint8_t *)src;
438
+ #if defined(__GNUC__) && !defined(__clang__)
439
+ // gcc 13.2.0 doesn't automatically vectorize this loop regardless of barrier
440
+ typedef uint8_t v32u8 __attribute__((vector_size(32), aligned(1), may_alias));
441
+ size_t n_vec = n & ~(size_t)31;
442
+ v32u8 masks = ((uint8_t)mask - (v32u8){}); // broadcast
443
+ for (size_t i = 0; i < n_vec; i += 32) {
444
+ *(v32u8 *)&out[i] ^= masks & *(v32u8 *)&in[i];
445
+ }
446
+ out += n_vec;
447
+ n -= n_vec;
448
+ #endif
575
449
  for (size_t i = 0; i < n; i++) {
576
450
  out[i] ^= value_barrier_w(mask) & in[i];
577
451
  }
@@ -658,82 +532,36 @@ OPENSSL_EXPORT void CRYPTO_once(CRYPTO_once_t *once, void (*init)(void));
658
532
  // The following functions provide an API analogous to <stdatomic.h> from C11
659
533
  // and abstract between a few variations on atomics we need to support.
660
534
 
661
- #if defined(__cplusplus)
662
-
663
- // In C++, we can't easily detect whether C will use |OPENSSL_C11_ATOMIC| or
664
- // |OPENSSL_WINDOWS_ATOMIC|. Instead, we define a layout-compatible type without
665
- // the corresponding functions. When we can rely on C11 atomics in MSVC, that
666
- // will no longer be a concern.
667
- typedef uint32_t CRYPTO_atomic_u32;
668
-
669
- #elif defined(OPENSSL_C11_ATOMIC)
670
-
671
- typedef _Atomic uint32_t CRYPTO_atomic_u32;
672
-
673
- // This should be const, but the |OPENSSL_WINDOWS_ATOMIC| implementation is not
674
- // const due to Windows limitations. When we can rely on C11 atomics, make this
675
- // const-correct.
676
- OPENSSL_INLINE uint32_t CRYPTO_atomic_load_u32(CRYPTO_atomic_u32 *val) {
677
- return atomic_load(val);
678
- }
679
-
680
- OPENSSL_INLINE int CRYPTO_atomic_compare_exchange_weak_u32(
681
- CRYPTO_atomic_u32 *val, uint32_t *expected, uint32_t desired) {
682
- return atomic_compare_exchange_weak(val, expected, desired);
683
- }
684
-
685
- OPENSSL_INLINE void CRYPTO_atomic_store_u32(CRYPTO_atomic_u32 *val,
686
- uint32_t desired) {
687
- atomic_store(val, desired);
688
- }
535
+ #if defined(OPENSSL_THREADS)
689
536
 
690
- #elif defined(OPENSSL_WINDOWS_ATOMIC)
537
+ using CRYPTO_atomic_u32 = std::atomic<uint32_t>;
691
538
 
692
- typedef LONG CRYPTO_atomic_u32;
539
+ static_assert(sizeof(CRYPTO_atomic_u32) == sizeof(uint32_t), "");
693
540
 
694
- OPENSSL_INLINE uint32_t CRYPTO_atomic_load_u32(volatile CRYPTO_atomic_u32 *val) {
695
- // This is not ideal because it still writes to a cacheline. MSVC is not able
696
- // to optimize this to a true atomic read, and Windows does not provide an
697
- // InterlockedLoad function.
698
- //
699
- // The Windows documentation [1] does say "Simple reads and writes to
700
- // properly-aligned 32-bit variables are atomic operations", but this is not
701
- // phrased in terms of the C11 and C++11 memory models, and indeed a read or
702
- // write seems to produce slightly different code on MSVC than a sequentially
703
- // consistent std::atomic::load in C++. Moreover, it is unclear if non-MSVC
704
- // compilers on Windows provide the same guarantees. Thus we avoid relying on
705
- // this and instead still use an interlocked function. This is still
706
- // preferable a global mutex, and eventually this code will be replaced by
707
- // [2]. Additionally, on clang-cl, we'll use the |OPENSSL_C11_ATOMIC| path.
708
- //
709
- // [1] https://learn.microsoft.com/en-us/windows/win32/sync/interlocked-variable-access
710
- // [2] https://devblogs.microsoft.com/cppblog/c11-atomics-in-visual-studio-2022-version-17-5-preview-2/
711
- return (uint32_t)InterlockedCompareExchange(val, 0, 0);
541
+ inline uint32_t CRYPTO_atomic_load_u32(const CRYPTO_atomic_u32 *val) {
542
+ return val->load(std::memory_order_seq_cst);
712
543
  }
713
544
 
714
- OPENSSL_INLINE int CRYPTO_atomic_compare_exchange_weak_u32(
715
- volatile CRYPTO_atomic_u32 *val, uint32_t *expected32, uint32_t desired) {
716
- LONG expected = (LONG)*expected32;
717
- LONG actual = InterlockedCompareExchange(val, (LONG)desired, expected);
718
- *expected32 = (uint32_t)actual;
719
- return actual == expected;
545
+ inline bool CRYPTO_atomic_compare_exchange_weak_u32(CRYPTO_atomic_u32 *val,
546
+ uint32_t *expected,
547
+ uint32_t desired) {
548
+ return val->compare_exchange_weak(
549
+ *expected, desired, std::memory_order_seq_cst, std::memory_order_seq_cst);
720
550
  }
721
551
 
722
- OPENSSL_INLINE void CRYPTO_atomic_store_u32(volatile CRYPTO_atomic_u32 *val,
723
- uint32_t desired) {
724
- InterlockedExchange(val, (LONG)desired);
552
+ inline void CRYPTO_atomic_store_u32(CRYPTO_atomic_u32 *val, uint32_t desired) {
553
+ val->store(desired, std::memory_order_seq_cst);
725
554
  }
726
555
 
727
- #elif !defined(OPENSSL_THREADS)
556
+ #else
728
557
 
729
558
  typedef uint32_t CRYPTO_atomic_u32;
730
559
 
731
- OPENSSL_INLINE uint32_t CRYPTO_atomic_load_u32(CRYPTO_atomic_u32 *val) {
732
- return *val;
733
- }
560
+ inline uint32_t CRYPTO_atomic_load_u32(CRYPTO_atomic_u32 *val) { return *val; }
734
561
 
735
- OPENSSL_INLINE int CRYPTO_atomic_compare_exchange_weak_u32(
736
- CRYPTO_atomic_u32 *val, uint32_t *expected, uint32_t desired) {
562
+ inline int CRYPTO_atomic_compare_exchange_weak_u32(CRYPTO_atomic_u32 *val,
563
+ uint32_t *expected,
564
+ uint32_t desired) {
737
565
  if (*val != *expected) {
738
566
  *expected = *val;
739
567
  return 0;
@@ -742,17 +570,10 @@ OPENSSL_INLINE int CRYPTO_atomic_compare_exchange_weak_u32(
742
570
  return 1;
743
571
  }
744
572
 
745
- OPENSSL_INLINE void CRYPTO_atomic_store_u32(CRYPTO_atomic_u32 *val,
746
- uint32_t desired) {
573
+ inline void CRYPTO_atomic_store_u32(CRYPTO_atomic_u32 *val, uint32_t desired) {
747
574
  *val = desired;
748
575
  }
749
576
 
750
- #else
751
-
752
- // Require some atomics implementation. Contact BoringSSL maintainers if you
753
- // have a platform with fails this check.
754
- #error "Thread-compatible configurations require atomics"
755
-
756
577
  #endif
757
578
 
758
579
  // See the comment in the |__cplusplus| section above.
@@ -790,7 +611,8 @@ OPENSSL_EXPORT int CRYPTO_refcount_dec_and_test_zero(CRYPTO_refcount_t *count);
790
611
  typedef struct crypto_mutex_st {
791
612
  char padding; // Empty structs have different sizes in C and C++.
792
613
  } CRYPTO_MUTEX;
793
- #define CRYPTO_MUTEX_INIT { 0 }
614
+ #define CRYPTO_MUTEX_INIT \
615
+ { 0 }
794
616
  #elif defined(OPENSSL_WINDOWS_THREADS)
795
617
  typedef SRWLOCK CRYPTO_MUTEX;
796
618
  #define CRYPTO_MUTEX_INIT SRWLOCK_INIT
@@ -855,7 +677,7 @@ using MutexReadLock =
855
677
 
856
678
  BSSL_NAMESPACE_END
857
679
 
858
- } // extern "C++"
680
+ } // extern "C++"
859
681
  #endif // defined(__cplusplus)
860
682
 
861
683
 
@@ -919,9 +741,10 @@ typedef struct {
919
741
  uint8_t num_reserved;
920
742
  } CRYPTO_EX_DATA_CLASS;
921
743
 
922
- #define CRYPTO_EX_DATA_CLASS_INIT {CRYPTO_MUTEX_INIT, NULL, NULL, 0, 0}
744
+ #define CRYPTO_EX_DATA_CLASS_INIT \
745
+ { CRYPTO_MUTEX_INIT, NULL, NULL, {}, 0 }
923
746
  #define CRYPTO_EX_DATA_CLASS_INIT_WITH_APP_DATA \
924
- {CRYPTO_MUTEX_INIT, NULL, NULL, 0, 1}
747
+ { CRYPTO_MUTEX_INIT, NULL, NULL, {}, 1 }
925
748
 
926
749
  // CRYPTO_get_ex_new_index_ex allocates a new index for |ex_data_class|. Each
927
750
  // class of object should provide a wrapper function that uses the correct
@@ -967,21 +790,13 @@ OPENSSL_MSVC_PRAGMA(warning(push, 3))
967
790
  #include <stdlib.h>
968
791
  OPENSSL_MSVC_PRAGMA(warning(pop))
969
792
  #pragma intrinsic(_byteswap_uint64, _byteswap_ulong, _byteswap_ushort)
970
- static inline uint16_t CRYPTO_bswap2(uint16_t x) {
971
- return _byteswap_ushort(x);
972
- }
793
+ static inline uint16_t CRYPTO_bswap2(uint16_t x) { return _byteswap_ushort(x); }
973
794
 
974
- static inline uint32_t CRYPTO_bswap4(uint32_t x) {
975
- return _byteswap_ulong(x);
976
- }
795
+ static inline uint32_t CRYPTO_bswap4(uint32_t x) { return _byteswap_ulong(x); }
977
796
 
978
- static inline uint64_t CRYPTO_bswap8(uint64_t x) {
979
- return _byteswap_uint64(x);
980
- }
797
+ static inline uint64_t CRYPTO_bswap8(uint64_t x) { return _byteswap_uint64(x); }
981
798
  #else
982
- static inline uint16_t CRYPTO_bswap2(uint16_t x) {
983
- return (x >> 8) | (x << 8);
984
- }
799
+ static inline uint16_t CRYPTO_bswap2(uint16_t x) { return (x >> 8) | (x << 8); }
985
800
 
986
801
  static inline uint32_t CRYPTO_bswap4(uint32_t x) {
987
802
  x = (x >> 16) | (x << 16);
@@ -1028,7 +843,7 @@ static inline void *OPENSSL_memchr(void *s, int c, size_t n) {
1028
843
  return memchr(s, c, n);
1029
844
  }
1030
845
 
1031
- } // extern "C++"
846
+ } // extern "C++"
1032
847
  #else // __cplusplus
1033
848
 
1034
849
  static inline void *OPENSSL_memchr(const void *s, int c, size_t n) {
@@ -1080,6 +895,17 @@ static inline void *OPENSSL_memset(void *dst, int c, size_t n) {
1080
895
  // endianness. They use |memcpy|, and so avoid alignment or strict aliasing
1081
896
  // requirements on the input and output pointers.
1082
897
 
898
+ static inline uint16_t CRYPTO_load_u16_be(const void *in) {
899
+ uint16_t v;
900
+ OPENSSL_memcpy(&v, in, sizeof(v));
901
+ return CRYPTO_bswap2(v);
902
+ }
903
+
904
+ static inline void CRYPTO_store_u16_be(void *out, uint16_t v) {
905
+ v = CRYPTO_bswap2(v);
906
+ OPENSSL_memcpy(out, &v, sizeof(v));
907
+ }
908
+
1083
909
  static inline uint32_t CRYPTO_load_u32_le(const void *in) {
1084
910
  uint32_t v;
1085
911
  OPENSSL_memcpy(&v, in, sizeof(v));
@@ -1184,117 +1010,6 @@ static inline uint64_t CRYPTO_rotr_u64(uint64_t value, int shift) {
1184
1010
  }
1185
1011
 
1186
1012
 
1187
- // Arithmetic functions.
1188
-
1189
- // The most efficient versions of these functions on GCC and Clang depend on C11
1190
- // |_Generic|. If we ever need to call these from C++, we'll need to add a
1191
- // variant that uses C++ overloads instead.
1192
- #if !defined(__cplusplus)
1193
-
1194
- // CRYPTO_addc_* returns |x + y + carry|, and sets |*out_carry| to the carry
1195
- // bit. |carry| must be zero or one.
1196
- #if OPENSSL_HAS_BUILTIN(__builtin_addc)
1197
-
1198
- #define CRYPTO_GENERIC_ADDC(x, y, carry, out_carry) \
1199
- (_Generic((x), \
1200
- unsigned: __builtin_addc, \
1201
- unsigned long: __builtin_addcl, \
1202
- unsigned long long: __builtin_addcll))((x), (y), (carry), (out_carry))
1203
-
1204
- static inline uint32_t CRYPTO_addc_u32(uint32_t x, uint32_t y, uint32_t carry,
1205
- uint32_t *out_carry) {
1206
- declassify_assert(carry <= 1);
1207
- return CRYPTO_GENERIC_ADDC(x, y, carry, out_carry);
1208
- }
1209
-
1210
- static inline uint64_t CRYPTO_addc_u64(uint64_t x, uint64_t y, uint64_t carry,
1211
- uint64_t *out_carry) {
1212
- declassify_assert(carry <= 1);
1213
- return CRYPTO_GENERIC_ADDC(x, y, carry, out_carry);
1214
- }
1215
-
1216
- #else
1217
-
1218
- static inline uint32_t CRYPTO_addc_u32(uint32_t x, uint32_t y, uint32_t carry,
1219
- uint32_t *out_carry) {
1220
- declassify_assert(carry <= 1);
1221
- uint64_t ret = carry;
1222
- ret += (uint64_t)x + y;
1223
- *out_carry = (uint32_t)(ret >> 32);
1224
- return (uint32_t)ret;
1225
- }
1226
-
1227
- static inline uint64_t CRYPTO_addc_u64(uint64_t x, uint64_t y, uint64_t carry,
1228
- uint64_t *out_carry) {
1229
- declassify_assert(carry <= 1);
1230
- #if defined(BORINGSSL_HAS_UINT128)
1231
- uint128_t ret = carry;
1232
- ret += (uint128_t)x + y;
1233
- *out_carry = (uint64_t)(ret >> 64);
1234
- return (uint64_t)ret;
1235
- #else
1236
- x += carry;
1237
- carry = x < carry;
1238
- uint64_t ret = x + y;
1239
- carry += ret < x;
1240
- *out_carry = carry;
1241
- return ret;
1242
- #endif
1243
- }
1244
- #endif
1245
-
1246
- // CRYPTO_subc_* returns |x - y - borrow|, and sets |*out_borrow| to the borrow
1247
- // bit. |borrow| must be zero or one.
1248
- #if OPENSSL_HAS_BUILTIN(__builtin_subc)
1249
-
1250
- #define CRYPTO_GENERIC_SUBC(x, y, borrow, out_borrow) \
1251
- (_Generic((x), \
1252
- unsigned: __builtin_subc, \
1253
- unsigned long: __builtin_subcl, \
1254
- unsigned long long: __builtin_subcll))((x), (y), (borrow), (out_borrow))
1255
-
1256
- static inline uint32_t CRYPTO_subc_u32(uint32_t x, uint32_t y, uint32_t borrow,
1257
- uint32_t *out_borrow) {
1258
- declassify_assert(borrow <= 1);
1259
- return CRYPTO_GENERIC_SUBC(x, y, borrow, out_borrow);
1260
- }
1261
-
1262
- static inline uint64_t CRYPTO_subc_u64(uint64_t x, uint64_t y, uint64_t borrow,
1263
- uint64_t *out_borrow) {
1264
- declassify_assert(borrow <= 1);
1265
- return CRYPTO_GENERIC_SUBC(x, y, borrow, out_borrow);
1266
- }
1267
-
1268
- #else
1269
-
1270
- static inline uint32_t CRYPTO_subc_u32(uint32_t x, uint32_t y, uint32_t borrow,
1271
- uint32_t *out_borrow) {
1272
- declassify_assert(borrow <= 1);
1273
- uint32_t ret = x - y - borrow;
1274
- *out_borrow = (x < y) | ((x == y) & borrow);
1275
- return ret;
1276
- }
1277
-
1278
- static inline uint64_t CRYPTO_subc_u64(uint64_t x, uint64_t y, uint64_t borrow,
1279
- uint64_t *out_borrow) {
1280
- declassify_assert(borrow <= 1);
1281
- uint64_t ret = x - y - borrow;
1282
- *out_borrow = (x < y) | ((x == y) & borrow);
1283
- return ret;
1284
- }
1285
- #endif
1286
-
1287
- #if defined(OPENSSL_64_BIT)
1288
- #define CRYPTO_addc_w CRYPTO_addc_u64
1289
- #define CRYPTO_subc_w CRYPTO_subc_u64
1290
- #else
1291
- #define CRYPTO_addc_w CRYPTO_addc_u32
1292
- #define CRYPTO_subc_w CRYPTO_subc_u32
1293
- #endif
1294
-
1295
- #endif // !__cplusplus
1296
-
1297
-
1298
1013
  // FIPS functions.
1299
1014
 
1300
1015
  #if defined(BORINGSSL_FIPS)
@@ -1328,9 +1043,9 @@ void boringssl_ensure_ffdh_self_test(void);
1328
1043
 
1329
1044
  // Outside of FIPS mode, the lazy tests are no-ops.
1330
1045
 
1331
- OPENSSL_INLINE void boringssl_ensure_rsa_self_test(void) {}
1332
- OPENSSL_INLINE void boringssl_ensure_ecc_self_test(void) {}
1333
- OPENSSL_INLINE void boringssl_ensure_ffdh_self_test(void) {}
1046
+ inline void boringssl_ensure_rsa_self_test(void) {}
1047
+ inline void boringssl_ensure_ecc_self_test(void) {}
1048
+ inline void boringssl_ensure_ffdh_self_test(void) {}
1334
1049
 
1335
1050
  #endif // FIPS
1336
1051
 
@@ -1346,18 +1061,16 @@ int boringssl_self_test_hmac_sha256(void);
1346
1061
  #if defined(BORINGSSL_FIPS_COUNTERS)
1347
1062
  void boringssl_fips_inc_counter(enum fips_counter_t counter);
1348
1063
  #else
1349
- OPENSSL_INLINE void boringssl_fips_inc_counter(enum fips_counter_t counter) {}
1064
+ inline void boringssl_fips_inc_counter(enum fips_counter_t counter) {}
1350
1065
  #endif
1351
1066
 
1352
1067
  #if defined(BORINGSSL_FIPS_BREAK_TESTS)
1353
- OPENSSL_INLINE int boringssl_fips_break_test(const char *test) {
1068
+ inline int boringssl_fips_break_test(const char *test) {
1354
1069
  const char *const value = getenv("BORINGSSL_FIPS_BREAK_TEST");
1355
1070
  return value != NULL && strcmp(value, test) == 0;
1356
1071
  }
1357
1072
  #else
1358
- OPENSSL_INLINE int boringssl_fips_break_test(const char *test) {
1359
- return 0;
1360
- }
1073
+ inline int boringssl_fips_break_test(const char *test) { return 0; }
1361
1074
  #endif // BORINGSSL_FIPS_BREAK_TESTS
1362
1075
 
1363
1076
 
@@ -1369,33 +1082,31 @@ OPENSSL_INLINE int boringssl_fips_break_test(const char *test) {
1369
1082
  //
1370
1083
  // Index 0:
1371
1084
  // EDX for CPUID where EAX = 1
1372
- // Bit 20 is always zero
1373
- // Bit 28 is adjusted to reflect whether the data cache is shared between
1374
- // multiple logical cores
1375
1085
  // Bit 30 is used to indicate an Intel CPU
1376
1086
  // Index 1:
1377
1087
  // ECX for CPUID where EAX = 1
1378
- // Bit 11 is used to indicate AMD XOP support, not SDBG
1379
1088
  // Index 2:
1380
- // EBX for CPUID where EAX = 7
1089
+ // EBX for CPUID where EAX = 7, ECX = 0
1090
+ // Bit 14 (for removed feature MPX) is used to indicate a preference for ymm
1091
+ // registers over zmm even when zmm registers are supported
1381
1092
  // Index 3:
1382
- // ECX for CPUID where EAX = 7
1093
+ // ECX for CPUID where EAX = 7, ECX = 0
1383
1094
  //
1384
- // Note: the CPUID bits are pre-adjusted for the OSXSAVE bit and the YMM and XMM
1385
- // bits in XCR0, so it is not necessary to check those. (WARNING: See caveats
1386
- // in cpu_intel.c.)
1095
+ // Note: the CPUID bits are pre-adjusted for the OSXSAVE bit and the XMM, YMM,
1096
+ // and AVX512 bits in XCR0, so it is not necessary to check those. (WARNING: See
1097
+ // caveats in cpu_intel.c.)
1387
1098
  //
1388
- // From C, this symbol should only be accessed with |OPENSSL_get_ia32cap|.
1099
+ // This symbol should only be accessed with |OPENSSL_get_ia32cap|.
1389
1100
  extern uint32_t OPENSSL_ia32cap_P[4];
1390
1101
 
1391
1102
  // OPENSSL_get_ia32cap initializes the library if needed and returns the |idx|th
1392
- // entry of |OPENSSL_ia32cap_P|. It is marked as a pure function so duplicate
1103
+ // entry of |OPENSSL_ia32cap_P|. It is marked as a const function so duplicate
1393
1104
  // calls can be merged by the compiler, at least when indices match.
1394
- OPENSSL_ATTR_PURE uint32_t OPENSSL_get_ia32cap(int idx);
1105
+ OPENSSL_ATTR_CONST uint32_t OPENSSL_get_ia32cap(int idx);
1395
1106
 
1396
1107
  // See Intel manual, volume 2A, table 3-11.
1397
1108
 
1398
- OPENSSL_INLINE int CRYPTO_is_FXSR_capable(void) {
1109
+ inline int CRYPTO_is_FXSR_capable(void) {
1399
1110
  #if defined(__FXSR__)
1400
1111
  return 1;
1401
1112
  #else
@@ -1403,14 +1114,14 @@ OPENSSL_INLINE int CRYPTO_is_FXSR_capable(void) {
1403
1114
  #endif
1404
1115
  }
1405
1116
 
1406
- OPENSSL_INLINE int CRYPTO_is_intel_cpu(void) {
1117
+ inline int CRYPTO_is_intel_cpu(void) {
1407
1118
  // The reserved bit 30 is used to indicate an Intel CPU.
1408
1119
  return (OPENSSL_get_ia32cap(0) & (1u << 30)) != 0;
1409
1120
  }
1410
1121
 
1411
1122
  // See Intel manual, volume 2A, table 3-10.
1412
1123
 
1413
- OPENSSL_INLINE int CRYPTO_is_PCLMUL_capable(void) {
1124
+ inline int CRYPTO_is_PCLMUL_capable(void) {
1414
1125
  #if defined(__PCLMUL__)
1415
1126
  return 1;
1416
1127
  #else
@@ -1418,7 +1129,7 @@ OPENSSL_INLINE int CRYPTO_is_PCLMUL_capable(void) {
1418
1129
  #endif
1419
1130
  }
1420
1131
 
1421
- OPENSSL_INLINE int CRYPTO_is_SSSE3_capable(void) {
1132
+ inline int CRYPTO_is_SSSE3_capable(void) {
1422
1133
  #if defined(__SSSE3__)
1423
1134
  return 1;
1424
1135
  #else
@@ -1426,7 +1137,7 @@ OPENSSL_INLINE int CRYPTO_is_SSSE3_capable(void) {
1426
1137
  #endif
1427
1138
  }
1428
1139
 
1429
- OPENSSL_INLINE int CRYPTO_is_SSE4_1_capable(void) {
1140
+ inline int CRYPTO_is_SSE4_1_capable(void) {
1430
1141
  #if defined(__SSE4_1__)
1431
1142
  return 1;
1432
1143
  #else
@@ -1434,7 +1145,7 @@ OPENSSL_INLINE int CRYPTO_is_SSE4_1_capable(void) {
1434
1145
  #endif
1435
1146
  }
1436
1147
 
1437
- OPENSSL_INLINE int CRYPTO_is_MOVBE_capable(void) {
1148
+ inline int CRYPTO_is_MOVBE_capable(void) {
1438
1149
  #if defined(__MOVBE__)
1439
1150
  return 1;
1440
1151
  #else
@@ -1442,7 +1153,7 @@ OPENSSL_INLINE int CRYPTO_is_MOVBE_capable(void) {
1442
1153
  #endif
1443
1154
  }
1444
1155
 
1445
- OPENSSL_INLINE int CRYPTO_is_AESNI_capable(void) {
1156
+ inline int CRYPTO_is_AESNI_capable(void) {
1446
1157
  #if defined(__AES__)
1447
1158
  return 1;
1448
1159
  #else
@@ -1453,7 +1164,7 @@ OPENSSL_INLINE int CRYPTO_is_AESNI_capable(void) {
1453
1164
  // We intentionally avoid defining a |CRYPTO_is_XSAVE_capable| function. See
1454
1165
  // |CRYPTO_cpu_perf_is_like_silvermont|.
1455
1166
 
1456
- OPENSSL_INLINE int CRYPTO_is_AVX_capable(void) {
1167
+ inline int CRYPTO_is_AVX_capable(void) {
1457
1168
  #if defined(__AVX__)
1458
1169
  return 1;
1459
1170
  #else
@@ -1461,7 +1172,7 @@ OPENSSL_INLINE int CRYPTO_is_AVX_capable(void) {
1461
1172
  #endif
1462
1173
  }
1463
1174
 
1464
- OPENSSL_INLINE int CRYPTO_is_RDRAND_capable(void) {
1175
+ inline int CRYPTO_is_RDRAND_capable(void) {
1465
1176
  // We intentionally do not check |__RDRND__| here. On some AMD processors, we
1466
1177
  // will act as if the hardware is RDRAND-incapable, even it actually supports
1467
1178
  // it. See cpu_intel.c.
@@ -1470,7 +1181,7 @@ OPENSSL_INLINE int CRYPTO_is_RDRAND_capable(void) {
1470
1181
 
1471
1182
  // See Intel manual, volume 2A, table 3-8.
1472
1183
 
1473
- OPENSSL_INLINE int CRYPTO_is_BMI1_capable(void) {
1184
+ inline int CRYPTO_is_BMI1_capable(void) {
1474
1185
  #if defined(__BMI__)
1475
1186
  return 1;
1476
1187
  #else
@@ -1478,7 +1189,7 @@ OPENSSL_INLINE int CRYPTO_is_BMI1_capable(void) {
1478
1189
  #endif
1479
1190
  }
1480
1191
 
1481
- OPENSSL_INLINE int CRYPTO_is_AVX2_capable(void) {
1192
+ inline int CRYPTO_is_AVX2_capable(void) {
1482
1193
  #if defined(__AVX2__)
1483
1194
  return 1;
1484
1195
  #else
@@ -1486,7 +1197,7 @@ OPENSSL_INLINE int CRYPTO_is_AVX2_capable(void) {
1486
1197
  #endif
1487
1198
  }
1488
1199
 
1489
- OPENSSL_INLINE int CRYPTO_is_BMI2_capable(void) {
1200
+ inline int CRYPTO_is_BMI2_capable(void) {
1490
1201
  #if defined(__BMI2__)
1491
1202
  return 1;
1492
1203
  #else
@@ -1494,7 +1205,7 @@ OPENSSL_INLINE int CRYPTO_is_BMI2_capable(void) {
1494
1205
  #endif
1495
1206
  }
1496
1207
 
1497
- OPENSSL_INLINE int CRYPTO_is_ADX_capable(void) {
1208
+ inline int CRYPTO_is_ADX_capable(void) {
1498
1209
  #if defined(__ADX__)
1499
1210
  return 1;
1500
1211
  #else
@@ -1503,28 +1214,12 @@ OPENSSL_INLINE int CRYPTO_is_ADX_capable(void) {
1503
1214
  }
1504
1215
 
1505
1216
  // SHA-1 and SHA-256 are defined as a single extension.
1506
- OPENSSL_INLINE int CRYPTO_is_x86_SHA_capable(void) {
1507
- // We should check __SHA__ here, but for now we ignore it. We've run into a
1508
- // few places where projects build with -march=goldmont, but need a build that
1509
- // does not require SHA extensions:
1510
- //
1511
- // - Some CrOS toolchain definitions are incorrect and build with
1512
- // -march=goldmont when targetting boards that are not Goldmont. b/320482539
1513
- // tracks fixing this.
1514
- //
1515
- // - Sometimes projects build with -march=goldmont as a rough optimized
1516
- // baseline. However, Intel CPU capabilities are not strictly linear, so
1517
- // this does not quite work. Some combination of -mtune and
1518
- // -march=x86-64-v{1,2,3,4} would be a better strategy here.
1519
- //
1520
- // - QEMU versions before 8.2 do not support SHA extensions and disable it
1521
- // with a warning. Projects that target Goldmont and test on QEMU will
1522
- // break. The long-term fix is to update to 8.2. A principled short-term fix
1523
- // would be -march=goldmont -mno-sha, to reflect that the binary needs to
1524
- // run on both QEMU-8.1-Goldmont and actual-Goldmont.
1525
- //
1526
- // TODO(b/320482539): Once the CrOS toolchain is fixed, try this again.
1217
+ inline int CRYPTO_is_x86_SHA_capable(void) {
1218
+ #if defined(__SHA__)
1219
+ return 1;
1220
+ #else
1527
1221
  return (OPENSSL_get_ia32cap(2) & (1u << 29)) != 0;
1222
+ #endif
1528
1223
  }
1529
1224
 
1530
1225
  // CRYPTO_cpu_perf_is_like_silvermont returns one if, based on a heuristic, the
@@ -1537,7 +1232,7 @@ OPENSSL_INLINE int CRYPTO_is_x86_SHA_capable(void) {
1537
1232
  // isn't matched by this. Various sources indicate AMD first implemented MOVBE
1538
1233
  // and XSAVE at the same time in Jaguar, so it seems like AMD chips will not be
1539
1234
  // matched by this. That seems to be the case for other x86(-64) CPUs.
1540
- OPENSSL_INLINE int CRYPTO_cpu_perf_is_like_silvermont(void) {
1235
+ inline int CRYPTO_cpu_perf_is_like_silvermont(void) {
1541
1236
  // WARNING: This MUST NOT be used to guard the execution of the XSAVE
1542
1237
  // instruction. This is the "hardware supports XSAVE" bit, not the OSXSAVE bit
1543
1238
  // that indicates whether we can safely execute XSAVE. This bit may be set
@@ -1551,6 +1246,46 @@ OPENSSL_INLINE int CRYPTO_cpu_perf_is_like_silvermont(void) {
1551
1246
  return !hardware_supports_xsave && CRYPTO_is_MOVBE_capable();
1552
1247
  }
1553
1248
 
1249
+ inline int CRYPTO_is_AVX512BW_capable(void) {
1250
+ #if defined(__AVX512BW__)
1251
+ return 1;
1252
+ #else
1253
+ return (OPENSSL_get_ia32cap(2) & (1u << 30)) != 0;
1254
+ #endif
1255
+ }
1256
+
1257
+ inline int CRYPTO_is_AVX512VL_capable(void) {
1258
+ #if defined(__AVX512VL__)
1259
+ return 1;
1260
+ #else
1261
+ return (OPENSSL_get_ia32cap(2) & (1u << 31)) != 0;
1262
+ #endif
1263
+ }
1264
+
1265
+ // CRYPTO_cpu_avoid_zmm_registers returns 1 if zmm registers (512-bit vectors)
1266
+ // should not be used even if the CPU supports them.
1267
+ //
1268
+ // Note that this reuses the bit for the removed MPX feature.
1269
+ inline int CRYPTO_cpu_avoid_zmm_registers(void) {
1270
+ return (OPENSSL_get_ia32cap(2) & (1u << 14)) != 0;
1271
+ }
1272
+
1273
+ inline int CRYPTO_is_VAES_capable(void) {
1274
+ #if defined(__VAES__)
1275
+ return 1;
1276
+ #else
1277
+ return (OPENSSL_get_ia32cap(3) & (1u << 9)) != 0;
1278
+ #endif
1279
+ }
1280
+
1281
+ inline int CRYPTO_is_VPCLMULQDQ_capable(void) {
1282
+ #if defined(__VPCLMULQDQ__)
1283
+ return 1;
1284
+ #else
1285
+ return (OPENSSL_get_ia32cap(3) & (1u << 10)) != 0;
1286
+ #endif
1287
+ }
1288
+
1554
1289
  #endif // OPENSSL_X86 || OPENSSL_X86_64
1555
1290
 
1556
1291
  #if defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64)
@@ -1560,19 +1295,9 @@ OPENSSL_INLINE int CRYPTO_cpu_perf_is_like_silvermont(void) {
1560
1295
  extern uint32_t OPENSSL_armcap_P;
1561
1296
 
1562
1297
  // OPENSSL_get_armcap initializes the library if needed and returns ARM CPU
1563
- // capabilities. It is marked as a pure function so duplicate calls can be
1564
- // merged by the compiler, at least when indices match.
1565
- OPENSSL_ATTR_PURE uint32_t OPENSSL_get_armcap(void);
1566
-
1567
- // We do not detect any features at runtime on several 32-bit Arm platforms.
1568
- // Apple platforms and OpenBSD require NEON and moved to 64-bit to pick up Armv8
1569
- // extensions. Android baremetal does not aim to support 32-bit Arm at all, but
1570
- // it simplifies things to make it build.
1571
- #if defined(OPENSSL_ARM) && !defined(OPENSSL_STATIC_ARMCAP) && \
1572
- (defined(OPENSSL_APPLE) || defined(OPENSSL_OPENBSD) || \
1573
- defined(ANDROID_BAREMETAL))
1574
- #define OPENSSL_STATIC_ARMCAP
1575
- #endif
1298
+ // capabilities. It is marked as a const function so duplicate calls can be
1299
+ // merged by the compiler.
1300
+ OPENSSL_ATTR_CONST uint32_t OPENSSL_get_armcap(void);
1576
1301
 
1577
1302
  // Normalize some older feature flags to their modern ACLE values.
1578
1303
  // https://developer.arm.com/architectures/system-architectures/software-standards/acle
@@ -1590,7 +1315,7 @@ OPENSSL_ATTR_PURE uint32_t OPENSSL_get_armcap(void);
1590
1315
 
1591
1316
  // CRYPTO_is_NEON_capable returns true if the current CPU has a NEON unit. If
1592
1317
  // this is known statically, it is a constant inline function.
1593
- OPENSSL_INLINE int CRYPTO_is_NEON_capable(void) {
1318
+ inline int CRYPTO_is_NEON_capable(void) {
1594
1319
  #if defined(OPENSSL_STATIC_ARMCAP_NEON) || defined(__ARM_NEON)
1595
1320
  return 1;
1596
1321
  #elif defined(OPENSSL_STATIC_ARMCAP)
@@ -1600,7 +1325,7 @@ OPENSSL_INLINE int CRYPTO_is_NEON_capable(void) {
1600
1325
  #endif
1601
1326
  }
1602
1327
 
1603
- OPENSSL_INLINE int CRYPTO_is_ARMv8_AES_capable(void) {
1328
+ inline int CRYPTO_is_ARMv8_AES_capable(void) {
1604
1329
  #if defined(OPENSSL_STATIC_ARMCAP_AES) || defined(__ARM_FEATURE_AES)
1605
1330
  return 1;
1606
1331
  #elif defined(OPENSSL_STATIC_ARMCAP)
@@ -1610,7 +1335,7 @@ OPENSSL_INLINE int CRYPTO_is_ARMv8_AES_capable(void) {
1610
1335
  #endif
1611
1336
  }
1612
1337
 
1613
- OPENSSL_INLINE int CRYPTO_is_ARMv8_PMULL_capable(void) {
1338
+ inline int CRYPTO_is_ARMv8_PMULL_capable(void) {
1614
1339
  #if defined(OPENSSL_STATIC_ARMCAP_PMULL) || defined(__ARM_FEATURE_AES)
1615
1340
  return 1;
1616
1341
  #elif defined(OPENSSL_STATIC_ARMCAP)
@@ -1620,7 +1345,7 @@ OPENSSL_INLINE int CRYPTO_is_ARMv8_PMULL_capable(void) {
1620
1345
  #endif
1621
1346
  }
1622
1347
 
1623
- OPENSSL_INLINE int CRYPTO_is_ARMv8_SHA1_capable(void) {
1348
+ inline int CRYPTO_is_ARMv8_SHA1_capable(void) {
1624
1349
  // SHA-1 and SHA-2 (only) share |__ARM_FEATURE_SHA2| but otherwise
1625
1350
  // are dealt with independently.
1626
1351
  #if defined(OPENSSL_STATIC_ARMCAP_SHA1) || defined(__ARM_FEATURE_SHA2)
@@ -1632,7 +1357,7 @@ OPENSSL_INLINE int CRYPTO_is_ARMv8_SHA1_capable(void) {
1632
1357
  #endif
1633
1358
  }
1634
1359
 
1635
- OPENSSL_INLINE int CRYPTO_is_ARMv8_SHA256_capable(void) {
1360
+ inline int CRYPTO_is_ARMv8_SHA256_capable(void) {
1636
1361
  // SHA-1 and SHA-2 (only) share |__ARM_FEATURE_SHA2| but otherwise
1637
1362
  // are dealt with independently.
1638
1363
  #if defined(OPENSSL_STATIC_ARMCAP_SHA256) || defined(__ARM_FEATURE_SHA2)
@@ -1644,7 +1369,7 @@ OPENSSL_INLINE int CRYPTO_is_ARMv8_SHA256_capable(void) {
1644
1369
  #endif
1645
1370
  }
1646
1371
 
1647
- OPENSSL_INLINE int CRYPTO_is_ARMv8_SHA512_capable(void) {
1372
+ inline int CRYPTO_is_ARMv8_SHA512_capable(void) {
1648
1373
  // There is no |OPENSSL_STATIC_ARMCAP_SHA512|.
1649
1374
  #if defined(__ARM_FEATURE_SHA512)
1650
1375
  return 1;
@@ -1668,7 +1393,10 @@ OPENSSL_INLINE int CRYPTO_is_ARMv8_SHA512_capable(void) {
1668
1393
  // 3: aes_hw_set_encrypt_key
1669
1394
  // 4: vpaes_encrypt
1670
1395
  // 5: vpaes_set_encrypt_key
1671
- extern uint8_t BORINGSSL_function_hit[7];
1396
+ // 6: aes_gcm_enc_update_vaes_avx10_256 [reserved]
1397
+ // 7: aes_gcm_enc_update_vaes_avx10_512
1398
+ // 8: aes_gcm_enc_update_vaes_avx2
1399
+ extern uint8_t BORINGSSL_function_hit[9];
1672
1400
  #endif // BORINGSSL_DISPATCH_TEST
1673
1401
 
1674
1402
  // OPENSSL_vasprintf_internal is just like |vasprintf(3)|. If |system_malloc| is
@@ -1683,4 +1411,131 @@ OPENSSL_EXPORT int OPENSSL_vasprintf_internal(char **str, const char *format,
1683
1411
  } // extern C
1684
1412
  #endif
1685
1413
 
1414
+ // Arithmetic functions.
1415
+
1416
+ // CRYPTO_addc_* returns |x + y + carry|, and sets |*out_carry| to the carry
1417
+ // bit. |carry| must be zero or one.
1418
+ #if OPENSSL_HAS_BUILTIN(__builtin_addc)
1419
+
1420
+ inline unsigned int CRYPTO_addc_impl(unsigned int x, unsigned int y,
1421
+ unsigned int carry,
1422
+ unsigned int *out_carry) {
1423
+ return __builtin_addc(x, y, carry, out_carry);
1424
+ }
1425
+
1426
+ inline unsigned long CRYPTO_addc_impl(unsigned long x, unsigned long y,
1427
+ unsigned long carry,
1428
+ unsigned long *out_carry) {
1429
+ return __builtin_addcl(x, y, carry, out_carry);
1430
+ }
1431
+
1432
+ inline unsigned long long CRYPTO_addc_impl(unsigned long long x,
1433
+ unsigned long long y,
1434
+ unsigned long long carry,
1435
+ unsigned long long *out_carry) {
1436
+ return __builtin_addcll(x, y, carry, out_carry);
1437
+ }
1438
+
1439
+ inline uint32_t CRYPTO_addc_u32(uint32_t x, uint32_t y, uint32_t carry,
1440
+ uint32_t *out_carry) {
1441
+ return CRYPTO_addc_impl(x, y, carry, out_carry);
1442
+ }
1443
+
1444
+ inline uint64_t CRYPTO_addc_u64(uint64_t x, uint64_t y, uint64_t carry,
1445
+ uint64_t *out_carry) {
1446
+ return CRYPTO_addc_impl(x, y, carry, out_carry);
1447
+ }
1448
+
1449
+ #else
1450
+
1451
+ static inline uint32_t CRYPTO_addc_u32(uint32_t x, uint32_t y, uint32_t carry,
1452
+ uint32_t *out_carry) {
1453
+ declassify_assert(carry <= 1);
1454
+ uint64_t ret = carry;
1455
+ ret += (uint64_t)x + y;
1456
+ *out_carry = (uint32_t)(ret >> 32);
1457
+ return (uint32_t)ret;
1458
+ }
1459
+
1460
+ static inline uint64_t CRYPTO_addc_u64(uint64_t x, uint64_t y, uint64_t carry,
1461
+ uint64_t *out_carry) {
1462
+ declassify_assert(carry <= 1);
1463
+ #if defined(BORINGSSL_HAS_UINT128)
1464
+ uint128_t ret = carry;
1465
+ ret += (uint128_t)x + y;
1466
+ *out_carry = (uint64_t)(ret >> 64);
1467
+ return (uint64_t)ret;
1468
+ #else
1469
+ x += carry;
1470
+ carry = x < carry;
1471
+ uint64_t ret = x + y;
1472
+ carry += ret < x;
1473
+ *out_carry = carry;
1474
+ return ret;
1475
+ #endif
1476
+ }
1477
+ #endif
1478
+
1479
+
1480
+ // CRYPTO_subc_* returns |x - y - borrow|, and sets |*out_borrow| to the borrow
1481
+ // bit. |borrow| must be zero or one.
1482
+ #if OPENSSL_HAS_BUILTIN(__builtin_subc)
1483
+
1484
+ inline unsigned int CRYPTO_subc_impl(unsigned int x, unsigned int y,
1485
+ unsigned int borrow,
1486
+ unsigned int *out_borrow) {
1487
+ return __builtin_subc(x, y, borrow, out_borrow);
1488
+ }
1489
+
1490
+ inline unsigned long CRYPTO_subc_impl(unsigned long x, unsigned long y,
1491
+ unsigned long borrow,
1492
+ unsigned long *out_borrow) {
1493
+ return __builtin_subcl(x, y, borrow, out_borrow);
1494
+ }
1495
+
1496
+ inline unsigned long long CRYPTO_subc_impl(unsigned long long x,
1497
+ unsigned long long y,
1498
+ unsigned long long borrow,
1499
+ unsigned long long *out_borrow) {
1500
+ return __builtin_subcll(x, y, borrow, out_borrow);
1501
+ }
1502
+
1503
+ inline uint32_t CRYPTO_subc_u32(uint32_t x, uint32_t y, uint32_t borrow,
1504
+ uint32_t *out_borrow) {
1505
+ return CRYPTO_subc_impl(x, y, borrow, out_borrow);
1506
+ }
1507
+
1508
+ inline uint64_t CRYPTO_subc_u64(uint64_t x, uint64_t y, uint64_t borrow,
1509
+ uint64_t *out_borrow) {
1510
+ return CRYPTO_subc_impl(x, y, borrow, out_borrow);
1511
+ }
1512
+
1513
+ #else
1514
+
1515
+ static inline uint32_t CRYPTO_subc_u32(uint32_t x, uint32_t y, uint32_t borrow,
1516
+ uint32_t *out_borrow) {
1517
+ declassify_assert(borrow <= 1);
1518
+ uint32_t ret = x - y - borrow;
1519
+ *out_borrow = (x < y) | ((x == y) & borrow);
1520
+ return ret;
1521
+ }
1522
+
1523
+ static inline uint64_t CRYPTO_subc_u64(uint64_t x, uint64_t y, uint64_t borrow,
1524
+ uint64_t *out_borrow) {
1525
+ declassify_assert(borrow <= 1);
1526
+ uint64_t ret = x - y - borrow;
1527
+ *out_borrow = (x < y) | ((x == y) & borrow);
1528
+ return ret;
1529
+ }
1530
+ #endif
1531
+
1532
+ #if defined(OPENSSL_64_BIT)
1533
+ #define CRYPTO_addc_w CRYPTO_addc_u64
1534
+ #define CRYPTO_subc_w CRYPTO_subc_u64
1535
+ #else
1536
+ #define CRYPTO_addc_w CRYPTO_addc_u32
1537
+ #define CRYPTO_subc_w CRYPTO_subc_u32
1538
+ #endif
1539
+
1540
+
1686
1541
  #endif // OPENSSL_HEADER_CRYPTO_INTERNAL_H